Mês: julho 2020
Robótica e a exploração espacial
- Autor do post Por Mecatronica Junior de Brasilia
- Data de publicação 20/07/2020
- Nenhum comentário em Robótica e a exploração espacial
Do Sputnik 1 ao Robonaut 2. Há mais de 60 anos, robôs desempenham o importante papel de explorar o espaço sideral, que vem contribuindo significamente tanto para o desenvolvimento da robótica quanto para as pesquisas tecnológicas no cenário espacial. Dentre essas pesquisas, a possibilidade de existência de vida em marte, e, até mesmo, a capacidade de abrigar vida, é o principal foco da sociedade, visto as frequentes notícias da NASA (Administração Nacional da Aeronáutica e Espaço), como a recente descoberta de água no estado líquido no planeta vermelho!
E as dificuldades?
Para uma ida ao espaço, várias são as dificuldades enfrentadas pelos engenheiros envolvidos na construção do robô-explorador. Se por um lado o material utilizado na construção dos robôs deva ser suficientemente resistente às adversidades do universo (radiação, material interestelar, ventos solares, entre outros), o material deve ainda garantir a integridade do corpo – na entrada ou reentrada na atmosfera terrestre ou de Marte – e ainda possibilitar a concretização correta da função para o qual o robô foi concebido. Há ainda a considerar as distâncias astronômicas que um corpo robótico deve percorrer, sendo que normalmente os percursos se realizam dentro do sistema solar.
Quais os tipos de Robôs-espaciais?
As funções exercidas pelos robôs fora da superfície terrestre varia de acordo com a missão a qual este foi criado, como exploração, investigação e mesmo serviço em órbita. Para tal, existem dois tipos de robôs espaciais principais: o Remotely Operated Vehicle (ROV) e o Remotely Manipulator System (RMS).
.O RMS, dispositivo robótico mais utilizado, é basicamente um braço mecânico frequentemente utilizado na indústria. Estes “braços mecânicos” tentam ao máximo imitar todas as funcionalidades de um braço humano, nomeadamente os seus sete eixos de liberdade (três graus de liberdade no ombro, um grau de liberdade no cotovelo e três graus de liberdade no punho), conseguindo mesmo operar alguns movimentos que não são possíveis no ser humano (movimento circular de 360º no punho, por exemplo). Este pode ser programado através de um computador, que faz a máquina operar uma função específica, ou com a ajuda de um humano que “ensina” ao braço robótico as coordenadas e outras tarefas. As principais aplicabilidades do RMS são auxiliar astronautas que consertam dispositivos em estações espaciais e satélites. Dentre vários, podem servir como dispositivo de ancoragem, sistema de posicionamento ou mecanismo de garra.
.Em contrapartida, o ROV atua geralmente como um robô autônomo, projetados com características de veículos para todo tipo de terreno, e são conduzidos ao seu destino através de espaçonaves do tipo aterrissador. Eles são usados em condições muito diferentes das encontradas na Terra, o que implica algumas características especiais de projeto, tais como: rodas com movimentação e tração independentes além de braços e instrumentos robóticos. O rover Curiosity, por exemplo, lançado em 2011, que tem como missão explorar a superfície de marte, é um exemplo de ROV equipado com os mais avançados equipamentos científicos.
Por dentro do Rover Curiosity
O curiosity possui alguns dispositivos idênticos aos robôs enviados anteriormente à Marte, spirit e opportunity: um sistema de condução de seis rodas, um sistema de suspensão rocker-bogi e câmeras montadas num mastro para ajudar a equipa de missão a definir alvos para exploração e rotas para os Robôs. O diferencial do Curiosity é possuir equipamentos para recolher e processar amostras de rochas e solo, entre outros, que são distribuídas por câmeras de teste e instrumentos de análise instalados no rover:
.ChemCam: usa pulsos laser para vaporizar camadas finas rochas e solo de Marte a uma distância máxima de 7 metros. Este instrumento inclui um espectrômetro para identificar os vários tipos de átomos libertados na vaporização, assim como possui uma espécie de telescópio que funciona como uma câmera que captura imagens detalhadas da zona iluminada pelo feixe do laser. O laser e o telescópio estão ambos instalados no mastro do robô têm a função de informar os investigadores quais os melhores objetos para submeter a análise com recurso a outros instrumentos.
.Mars Hand Lens Imager (MAHLI) : encontra-se montado no braço robótico e tira fotografias extremamente próximas de rochas do solo e, se presente, do gelo. Estas fotografias são capazes de revelar detalhes mais pequenos do que um cabelo humano e de focar objetos que o braço não consegue alcançar.
.Dynamic Albedo of Neutrons (DAN) : mede os níveis de hidrogênio até a um metro abaixo da superfície marciana. Este instrumento é muito importante pois a presença de hidrogénio pode indicar também a presença de água.
Vale ressaltar que apesar da tecnologia avançada, este robô alcança, em média, uma velocidade máxima de 90 m/h por medidas de segurança.
Diante de todos os recursos tecnológicos mostrados acima, percebe-se que a robótica espacial vem se desenvolvendo progressivamente nas últimas décadas de um modo exponencial. Apostas como a descoberta de novos materiais, mais resistentes e leves, são as principais entre os pesquisadores na área espacial, que, futuramente, poderá permitir a construção de foguetes mais velozes, encurtando o tempo de viagem entre planetas e outros objetos espaciais, que são um dos principais empecilhos na exploração espacial. Além disso, as contribuições da robótica espacial são indubitáveis, como previsões meteorológicas, internet, entre outros. Sendo assim, investimentos neste setor são essenciais para o avanço tecnológico.
Inteligência Artificial nos jogos eletrônicos
- Autor do post Por Mecatronica Junior de Brasilia
- Data de publicação 16/07/2020
- 1 comentário em Inteligência Artificial nos jogos eletrônicos
Quem nunca jogou aquela partida de FPS ou até mesmo pinball contra o computador? Há anos os jogos vêm se tornando “mais inteligentes”, devido ao desenvolvimento da inteligência artificial, que ganham cada vez mais espaço. Um caso famoso é o do robô da IBM que venceu uma partida de xadrez contra o campeão mundial, Garry Kasparov, na década de 90. Mas como as inteligências artificiais aprendem a jogar?
Com um trabalho minucioso, meses (ou anos) são dedicados para para a criação de um jogo eletrônico. A partir de uma boa ideia, equipes de designers gráficos, animadores e músicos são contratados para a realização da parte gráfica do jogo. Concomitantemente, entram em cena para o desenvolvimento da parte lógica do jogo, equipes de desenvolvedores e programadores. Essa parte lógica do jogo, que usufrui da Inteligência artificial, é responsável por deixar o jogo mais realista e desafiante.
Como assim mais realista e desafiante?
Sabe aquele personagem que se mexe por conta própria, que ataca de várias maneiras diferentes? Aí que a inteligência artificial está presente. Formalmente falando, a inteligência artificial é usada para gerar comportamentos responsivos, adaptativos ou inteligentes principalmente em personagens não-jogadores (famosos NPCs), semelhantes à inteligência humana.
Nos games, a IA trabalha de certa forma limitada de acordo com os comandos desenvolvidos por seus programadores. Quando uma inteligência artificial é criada, ela recebe linhas de códigos que podem ser descritas grosseiramente como uma ação X uma reação.
Podemos citar o exemplo de Dark Souls, que os personagens não jogáveis (NPC) reagem de acordo com o progresso do jogador. Por exemplo, a forma de você atacar, desviar são cogitadas no jogo, fazendo com que este aprenda suas estratégias, de acordo com as possibilidades internas do game. Além disso, vale citar que a Inteligência artificial está presente, também, em personagens no jogo que mudam de script a medida que você avança no jogo, isto é, há diferentes possibilidades de caminhos e finais no jogo. Pode-se citar, neste caso, o famoso jogo GTA V. As técnicas usadas tipicamente recorrem a métodos existentes no campo da inteligência artificial.
Métodos no campo da IA em jogos?
Visto as diversas modalidades de jogos existentes atualmente, tem-se a necessidade de utilizar métodos específicos para situações específicas, isto é, a inteligência artificial utilizada em um jogo de FPS possui algoritmos diferentes para a IA utilizada em um jogo de esportes, por exemplo. A seguir, eis algumas técnicas listadas pelo seção “aiforgames” do site WordPress:
FPS (First Person Shooter)
As técnicas mais utilizas nos jogos FPS são as de máquinas de estado finita (FSM – Finite State Machine) e a Lógica Fuzzy.
Na máquina de estados, o personagem está configurado com um série de regras e possui regras de transição para ver se o personagem deve alterar seu estado inicial, como por exemplo, se ele viu um oponente e se vale a pena ir atrás dele.
Adicionalmente existe dois tipos de FSM, as do tipo determinístico (AFD) e não-determinístico (AFN). No determinístico, para cada estado há exatamente uma transição para cada entrada possível, e no não-determinístico, pode haver nenhuma, uma ou mais. A desvaNtagem da FSM são os comportamentos repetitivos (“quanto mais complexo for o ambiente, aumenta o número de estados e transições na qual o FSM terá de prever”).
Já a Lógica Fuzzy ou Lógica Difusa permite representar valores além da lógica clássica, representa somente por 0 (FALSO) e 1 (VERDADEIRO), permitindo representar vários eventos não contáveis (ou imprecisos), como por exemplo 0,5 (TALVEZ).
Uma possibilidade é utilizar a lógica Fuzzy e a FSM, criando as Fuzzy FSMs (FuSMs), criando assim máquina de estado finitas com lógica Fuzzy, dando mais “inteligência” para os oponentes controlados pela máquina.
Jogos de Corrida
Esse gênero de jogo é outro dentre os mais jogados no mundo. Existem franquias para os mais diversos gostos, como os da franquia Need For Speed, que são do tipo arcade e para jogadores mais casuais, e também os da franquia Gran Turismo, em que o foco é o simulação, onde é possível controlar a troca de marchas, o tipo de pneu para determinada clima ou pista, e até a economia de gasolina, para que não acabe durante a corrida.
Uma das técnicas que podem ser utilizadas é a de algoritmos genéticos (AG). Um algoritmo genético é uma classe de algoritmo evolutivos que usam técnicas inspiradas pela biologia evolutiva como hereditariedade, mutação, seleção natural, e recombinação.
Em um jogo de corrida, a aplicação desse tipo de algoritmo é útil para criar vários tipo de carros, baseando-se em um deles. Isso diminui o tempo gasto para criação e aumenta a variedade de elementos dentro do jogo.
Jogos de Futebol
Os jogos de futebol são um dos tipos mais populares no Brasil, afinal, é o esporte mais adorado no país.
Uma das técnicas aplicadas em jogos de futebol é a de redes neurais. Elas são redes computadorizadas onde a sua estrutura é similar a um cérebro humano, tendo nós de rede (neurônios) e conexões entre os nós. A vantagem na rede neural é que ela pode aprender e armazenar informações para uso posterior. Num jogo de futebol, a aplicação de redes neurais pode ser utilizada para que jogadores de futebol aprendam a interceptar a bola durante uma partida.
Outra técnica é a Fuzzy, onde já comentou-se sobre seu uso nos jogos FPS. Ela pode ser aplicada por exemplo para definir se durante uma cobrança de pênalti o chute foi forte ou não.
Há limitação para inteligência artificial em jogos?
Como jogos eletrônicos são feitos com fins interativos, a inteligência artificial é limitada, pois uma IA avançada torna a dificuldade do jogo tão extrema que o jogador não consegue finalizar, ou, simplesmente, passar de fase.
Como explica o site “tecnosense”: “o mundo dos games sempre será limitado. Se você irá completar uma missão, o mundo será voltado para essa missão. Se você está numa sala rodeado de inimigos, o processamento do mundo será resumido à sala e quem estiver nela.”
A cada dia, a Inteligência artificial está mais presente no cotidiano. O universo dos jogos eletrônicos é apenas um destes, porém, é bem visível e de “fácil compreensão” a aplicação da inteligência artificial nessa indústria. Infelizmente, no Brasil, esse ramo é pouco explorado, embora haja potencial para a criação de jogos, há a falta de investimentos.
Inteligência Artificial: Machine Learning e Deep Learning
- Autor do post Por Mecatronica Junior de Brasilia
- Data de publicação 06/07/2020
- Nenhum comentário em Inteligência Artificial: Machine Learning e Deep Learning
O início da inteligência artificial se deu por volta de 1950. Nessa época o primeiro teste de inteligência de uma máquina foi o Teste de Turing, onde determinava se uma máquina possuía inteligência ou não. Nesse teste uma pessoa conhecida conversava com dois personagens desconhecidos: uma pessoa normal e outra a máquina a ser testada. Caso a pessoa conhecida não identificasse qual dos dois personagens era o computador, era considerado que havia inteligência artificial.
Hoje em dia essa inteligência vai muito além de manter uma conversa como um ser humano. Os algoritmos de hoje permitem que as máquinas façam tarefas tão bem quanto ou melhores que seres humanos. Como por exemplo identificar pessoas, ou serem assistentes pessoais – como a cortana, no windows, e a siri, no IOS. Chegando até aos carros autônomos que já funcionam em ruas com boa visibilidade nos testes das grandes empresas. Todo esse desenvolvimento foi possível com o Machine Learning (aprendizagem de máquina) e o Deep Learning.
O que são e qual a diferença entre Machine Learning e Deep Learning?
.Machine Learning
Machine learning é uma área dentro da inteligência artificial. Seus algoritmos tem como princípio fazer com que a máquina aprenda a partir de um grande número de dados e assim possa tomar uma decisão sem que haja interferência humana. Assim, ao invés de se projetar um rotina para uma tarefa completa a máquina é levada a aprender como executar essa tarefa. Para isso são utilizadas árvores de aprendizado,que tem o modo de ser percorrida de acordo com os dados de entrada, programação lógica indutiva, que utiliza de afirmações dos dados de entrada para chegar em conclusões, redes Bayesianas , entre outros.
.Deep Learning
Já o Deep Learning é uma área dentro do machine learning. Ele surgiu como um novo jeito de se implementar machine learning e só conseguiu ser desenvolvido graças a evolução dos processamentos de dados das máquina. Esse método utiliza redes neurais artificiais. Também chamadas de RNA, elas são técnicas computacionais que utilizam a matemática para se comportar como se fossem uma estrutura neural de um ser humano.
O Deep Learning é organizado em camadas formadas por neurônios. Para exemplificar temos a imagem acima que mostra várias camadas que vão fazendo uma análise e passando para a próxima camada. Cada neurônio possui um peso inicial que vai mudando ao longo das análises. O funcionamento do Deep Learning se dá pela análise da informação por um neurônio que atribui seu peso a essa informação e passa para o próximo neurônio até o final. De acordo com a resposta final e a resposta esperada os pesos são modificados.
Um exemplo de utilização dessas redes neurais é a indicação de filmes ou músicas nos aplicativos. E a presença do Deep Learning vai além disso. Ele está no facebook ao se identificar fotos, nos carros autônomos, no reconhecimento de voz. Isso mostra a evolução que esse método trouxe e o motivo de ser tão usado e estudado.