Gostaria de saber se alguém tem alguma experiência em utilizar a inteligência artificial no Java - NETBEANS. Estou trabalhando em um projeto onde gostaria de saber se é possível utilizar as técnicas e a forma de programar do Prolog associado ao Java, ou seja, é possível desenvolver uma “classe” na IDE Prolog e essa “classe” ser reconhecida e trabalhada pelo NETBEANS?
Gostaria de saber se alguém tem alguma experiência em utilizar a inteligência artificial no Java - NETBEANS. Estou trabalhando em um projeto onde gostaria de saber se é possível utilizar as técnicas e a forma de programar do Prolog associado ao Java, ou seja, é possível desenvolver uma “classe” na IDE Prolog e essa “classe” ser reconhecida e trabalhada pelo NETBEANS?
Obrigado a todos![/quote]
Existem sim várias linguagens de script que rodam dentro da JVM (Jython, Scala, etc). Mas não sei se Prolog tem algum tipo de adaptação para isso…
O que você pode tentar é rodar seu código prolog de forma autônoma, como se fosse executar um .exe e pegar a resposta. Não sei como é o ambiente do prolog e como é feito para rodá-lo (compilado? interpretado?), mas quase com certeza você encontrará uma forma de comunicação entre as duas linguagens… só tem que ver se vale a pena
Primeira coisa: usar IA não tem nada a ver com a linguagem escolhida. Lógico que costumam Prolog ou Lisp, mas se pode fazer em Java também. No meu curso de IA a gente usou um misto de MIN MAX com poda alfa beta e algoritmo genético pra fazer um jogador de Otélo. Tinha até um framework que apresentava toda a interface e alguns jogadores.
Vide o código do Caça a Bandeira (A*, Steering Behaviors, scripting) escrito em Java, do bot jogador de Bejeweled (busca MiniMax), escrito em C++ ou do SofiaIA (Steering Behaviors, Grafos, Arvores de decisão, Máquinas de estados, estruturas para tomada de decisão, classes matemáticas e geradoras de números aleatórios, algoritmos genéticos, etc.) escrito em Java e em C++.
A ideia de utilizar o java e prolog veio de já ter facilidade na linguagem java ao longo dos períodos da faculdade, porém a dificuldade está justamente em fazer com que o java reconheça o prolog. O meu projeto consiste em uma busca de solução lógica, ou seja, encontrar a melhor opção para um determinado problema. Para isso eu pensei em utilizar o java com a parte visual do meu projeto, ou seja, todas as entradas de dados e toda a interface com o usuário seria feita através do java e essa parte da busca de solução lógica deixaríamos o prolog trabalhar, onde é que to tendo dificuldade. Vi algumas coisas na internet sobre essa conexão entre as duas linguagens porém nada de concreto. Alguém teria alguma sugestão prévia para o problema em questão? Eu preciso de um programa que me retorne essa busca de solução lógica, receba a entrada de dados e me retorne a solução. Pensei em usar árvores, mais acho que não ficaria muito legal.
Penso em utilizar o prolog para que ele realize uma busca de solução lógica pra min, como o prolog utiliza a programação declarativa, um pouco diferente das demais, eu preciso que ele me diz que um caminho é melhor que o outro caminho, em meio a diferentes disponibilidades quero que ele me fale qual a melhor solução para o problema, como vou trabalhar com muita informação presico de uma busca.
Acho que vc não entendeu a profundidade da coisa. IA nada mais é do que um conjunto de algoritmos com certas características. Dado um algoritmo, vc pode implementá-lo na linguagem que lhe der na telha. Lógica que uma linguagem pode ser mostrar mais fácil para certos tipos de algoritmos, mas isso não quer dizer que eles não possam ser implementados em outra. Mas enfim, o exercício é seu e vc faz como bem entender.
Boa sorte.
Não sei exatamente o que você precisa fazer relacionado a IA, mas se for algo relacionado à Redes Neurais, posso dizer que tive uma experiência bastante proveitosa utilizando o JOONE para realizar previsões baseadas em acontecimentos históricos.
Lógico que não dispensa conhecimentos em RN, mas acredito que a curva de aprendizado no caso do Joone é menor porque você desenvolve em java mesmo, utilizando conceitos OO…
Outro framework muito bom é o Neuroph, tambem opensource e o Encog criado por Jeff Heaton , um estudioso na area, autor de diversos livros e anteriormente usuario do Joone! +P
Na area do interpretador Prolog, o Prolog-Cafe faz muito bem a função de interprete, desta forma pode se usar scripts Prolog dentro de aplicações Java! Alguns outros frameworks e libs em http://www.is-research.de/info/vmlanguages/tag/prolog/[/color] [/size][/b]
[color=orange][size=15][b]JADE (Java Agent Development Framework) é umframework totalmente implementado em linguagem Java. Ela simplifica a implementação de sistemas multi-agente através de um middleware que está em conformidade com as especificações FIPA e através de um conjunto de ferramentas gráficas que suporta depuração e fases de implantação. A plataforma de agentes pode ser distribuída através de máquinas (que ainda não precisam compartilhar o mesmo SO) e da configuração pode ser controlada através de uma interface gráfica remota.
Sistemas MultiAgente sao um ramo da IA Distribuida, simulando entidades computacionais de comportamento independente, agindo no ambiente!
Questões como Recomendadores baseados em perfis, Buscas Textuais, Extração de Informações, Reconhecimento de Padroes em Imagens e Predição de Serie Temporais sao assuntos muito em moda na reta para a Web 3.0.
Empresas como Google, IBM, Apache alem de centros de pesquisa, bolsa de investimentos são grandes usuarios destas tecnicas, que são adequadas para o processamento intelligente da grande quantidade de informação manipulada.
O estudo e implementação destas tecnicas, é um diferencial do programador/desenvolvedor/cientista na proxima decada, palavras de John McCarthy um dos pais da IA
Olá!!! Alguém poderia me ajudar na utilização da plataforma jade a partir do netbeans, pois os materiais que encontro estão na sua grande maioria utilizando versões antigas do jade, as quais não funcionam com a nova versão.