You are on page 1of 10

CEFET/MG - CURSO DE PS-GRADUAO LATO SENSU EM ADMINISTRAO, ANLISE E DESENVOLVIMENTO DE SISTEMAS DE INFORMAO AADSI-5 - TURMA 1/2012

APRESENTACAO E INTEGRACAO INTELIGENCIA ARTIFICIAL

Adailton Rodrigues Lana Erlon Loureno Jarbas Ivon Ugarte Osrio Jos dos Santos

Resumo. Esse trabalho visa apresentar, alm da aplicabilidade da Inteligncia artificial nos dias atuais, um breve histrico, suas ferramentas e uma passagem breve em PROLOG, linguagem declarativa baseada na lgica de predicados muito utilizada, ainda hoje, nos estudos da AI. Palavras-chave: Inteligncia Artificial, Rede Neural, Lgica Fuzzy, Prolog

1. INTRODUO
A inteligncia artificial pode ser definida como o ramo da Cincia da Computao que se ocupa da automao do comportamento inteligente, ou seja, a cincia das maquinas inteligentes. A estes princpios, podemos incluir as estruturas de dados usadas na representao do conhecimento, algoritmos necessrios para aplicar tal conhecimento e as linguagens e tcnicas de programao usadas na sua implementao. Entretanto, essa definio padece muito do fato de que a inteligncia em si no muito bem definida ou entendida. Embora a maioria de ns esteja certa de que reconhecemos o que comportamento inteligente quando o vimos, muito improvvel que algum seja capaz de definir inteligncia de uma maneira que seja especifica o suficiente para auxiliar na avaliao de um programa de computador supostamente inteligente, e, ao mesmo tempo, capturando a vitalidade e a complexidade da mente humana. Segundo Rich & Knight (1994), Inteligncia Artificial (IA) a rea da cincia da computao orientada ao entendimento, construo e validao de sistemas inteligentes, isto , que exibam de alguma forma, caractersticas associadas ao que chamamos inteligncia. A inteligncia artificial oferece um meio e uma bancada de testes para muitas teorias sobre a inteligncia humana: tais teorias podem ser formuladas na linguagem de programas de computadores e, consequentemente, testadas e verificadas por meio da execuo destes programas em um computador real.

2. MENTE HUMANA X INTELIGNCIA DE MQUINA


Neste momento a AI saiu do campo de discusso relativamente aos agentes cognitivos e reativos, agora a discusso est em redor das potencialidades de uma mquina, ou seja, o isolacionismo e conexionismo. Um agente (a palavra agente deriva do latino agere, que significa fazer) a instncia de um objeto com um propsito ou conjunto de propsitos a ele associado, desta maneira entende-se que um objeto um agente se ele servir a um propsito para ele prprio sendo denominado agente autnomo ou quando serve a um propsito a outro agente. Para Russell & Norvig (2004), um agente simplesmente qualquer coisa que age, entretanto, espera-se que um agente computacional possua outros atributos que o diferencie de meros programas, esta diferenciao poderia ocorrer ao operar sob controle autnomo, percebendo seu ambiente, persistindo por perodo de tempo prolongado, adaptando-se a mudanas e ainda ser capaz de assumir metas de outros. A relao entre o que se diz acerca do que um agente inteligente e aquilo que o agente realmente , no simples, da a busca emprica e experimental. E para compreender um domnio de conhecimento necessrio ter uma teoria desse domnio, isto de acordo com a filosofia de Kant e Scrates. Na IA a teoria formula as relaes entre os objetos, elementos sem contexto, em funo de princpios abstratos (leis, regras e programas). Mas a IA nasceu de uma necessidade que o homem possui de combinar o trabalho manual com o intelectual. Isto j vem do desejo grego de explicar o raciocnio sobre a forma de clculos, ou seja a geometria e lgica. Embora para alguns a inteligncia artificial tenha nascido por volta de 450 antes de Cristo, quando Scrates tentou estabelecer uma norma moral. Plato tentou generalizar esta norma numa exigncia epistemolgica de que todo o conhecimento podia ser estabelecido atravs de definies explcitas que podiam ser aplicadas. A IA ento segundo a filosofia ocidental, uma forma de replicar a mente humana.

3. AMBIES DA INTELIGNCIA ARTIFICIAL


A ambio da IA, so os mistrios da mente, no seu funcionamento, na nossa identidade e nas motivaes que nos levam a realizar coisas. A inteligncia tem a ver com os projetos? Eventualmente, a inteligncia tem a ver com o conhecimento, a manipulao do mesmo e o seu comportamento como maquina. A inteligncia segundo alguns, constri-se, como um projeto sobre as tarefas necessrias a

representao do conhecimento e da procura do mesmo. A inteligncia tem de ser capaz de resolver problemas em ambientes estruturados usando centro cognitivos especializados em cada situao. Outros dizem que a inteligncia se constri sobre as funes, como se fosse um processo de evoluo, a partir de blocos primitivos auto contidos e com o sentido a mecanismos de mltiplos centros de percepo. Esta divergncia de ideias aparece quando penetramos num dos sub campos da IA, designado por inteligncia artificial distribuda (IAD), pois, a par de sermos obrigados a definir o que um agente ou o modelo de atuao, inteligente e autnomo. Ns somos obrigados a debruarmos sobre as interaes entre agentes em sociedade (ambiente externo) e sobre os estados mentais (crenas, desejos, intenes, expectativas, esperanas e sentimentos). Ser que algum dia uma maquina poder amar? Os estados mentais so situaes dinmicas que surgem, desaparecem e se inter-relacionam. Assim, o comportamento global de um agente deve ser compreendido como uma manifestao das interaes entre os seus componentes, os quais so depois compreendidos pela mquina.

4. FERRAMENTAS UTILIZADAS NA IA a) Sistemas de produo: Onde se busca caracterizar a heurstica e os conhecimentos de


especialistas humanos atravs da aplicao de conceitos de lgica. Esses sistemas so aqueles que utilizam de conjuntos de regras, usualmente do tipo Se (condio) ento (ao ou concluso), aliado a uma base de dados (de conhecimentos) e mecanismos de controle (que indicam a seqncia de regras a serem casadas com a base de dados e , na existncia de conflitos, providenciam a soluo). Veja o exemplo a seguir: Se {(temperatura > 300C) e (presso > 2 ATM)}Ento {vlvula_1=OFF} So intimamente ligados ao calculo de predicados, que por sua vez, uma subrea da Lgica Matemtica. O desenvolvimento da lgica se deve a grandes pioneiros como G. Frege (1848-1925), que foi o primeiro a distinguir claramente as premissas e as regras de inferncia. Entre outras contribuies importantes esto a metodologia de A. Tarski, 1941, a sintaxe de R. Carnap. 1950 e a metalgica de K. Godel, 1930. A aplicao direta da logica se manifesta nos sistemas especialistas, frequentemente baseados em regras de produo.

b) Lgica Nebulosa: Onde se busca considerar as incertezas inerentes representao humana dos
fenmenos da natureza, refletida nas expresses verbais empregadas corriqueiramente. J na dcada de 30, J. Lukasiewicz havia formalizado um sistema lgico de 3 valores {0,1/2,1}, posteriormente estendido para os racionais e reais compreendidos entre 0 e 1. Tambm nessa poca, M. Black havia introduzido o termo vagueness para expressar incertezas no campo da mecnica quntica. Em 1965, L. A. Zadeh introduziu os conjuntos nebulosos, reativando o interesse em estruturas matemticas multivariadas. Em 1973, o prprio Zadeh propunha a lgica nebulosa como um novo enfoque para analise de sistemas complexos e processos de deciso. Aplicaes especficas sobre o uso da logica nebulosa em controle surgem em trabalhos de E. H. Mamdami, 1974. A partir de meados dos anos 80, o emprego de controladores nebulosos adquiriu aceitao industrial, particularmente no Japo, comaplicaes abrangendo desde maquinas fotogrficas ate processos industriais. Em 1986, M. Tagai e W. Watanabe apresentavam um chip VLSI implementando uma mquina de inferncia nebulosa. Hoje em dia, a produo em massa desse tipo de chip tornou corriqueiro o uso da logica nebulosa ate em eletrodomsticos.

c) Redes Neurais Artificiais: Onde se busca mimetizar o sistema nervoso atravs de elementos
processadores simples dominados neurnios. O conceito de neurnio como constituinte estrutural primordial do crebro pode ser atribudo a S. Ramn y Cajl, 1911. No caso do ser humano, o numero de neurnios da ordem de 1010 a 1011,comparvel ao numero de estrelas na Via Lctea. Considerando-se uma mdia de 5.000 sinapses por neurnio, pode-se apreciar a verdadeira grandeza do crebro, ainda que visto como um sistema dinmico realimentado, no linear, massivamente paralelo e assncrono. Estima-se que o consumo de energia seja da ordem de 10-16 Joules por operao por segundo e a sua velocidade de operao, da ordem de 10-3 segundos (Haykin,1994).

Circuitos que buscavam simular neurnios biolgicos foram introduzidos por W. S. McCulloch e W. Pitts em 1943 e objetivavam realizar clculos lgicos. McCulloch era psiquiatra e neuroanatomista, enquanto Pitts era matemtico. O Livro The organization of Behavior de D. O. Hebb, surgiu em 1949, onde o aprendizado era caracterizado como modificaes das sinapses. Em 1950, M. L. Minsky completou a sua tese de doutoramento em redes neurais, com o ttulo Theory of Neural-Analog Reinforcement Systems and its Application to the Brain-Model Problem. Em 1950, o livro Design for a Brain: The origin of Adaptative Behavior de W. R. Ashby trazia a noo de que o comportamento animal no caracterstica inata, mas aprendida. Em 1956 A. M. Uttley demonstrou que as redes neurais com sinapses modificveis poderiam classificar padres binrios. Em 1958, F. Rosenblatt introduziu o conceito de perceptron, enquanto em 1960 B. Widrow e M. E. Hoff Jr. Utilizaram o conceito de mnimos quadrados para formular o Adaline (Adaptive linear Element). Em 1965 foi publicado o livro Learning Machines de N. J. Nilsson, com exposio sobre padres separveis por hipersuperfcies. Em 1969, M. Minsky e S. Papert publicaram o livro sobre perceptron em que demonstravam as limitaes de perceptrons de uma camada. Estefato, aliado a dificuldades de implementao no hardware ou software ento disponvel, levou muitos pesquisadores a diminurem as suas atividades nesse campo. Em 1980, S. Grossberg estudou novos princpios de reorganizao e aprendizado competitivo, originando uma classe de redes neurais baseadas em Adaptive resonance Theory (ART). Em 1982, J. J. Hopfield utilizou a ideia de funes energia e estabeleceu conexes com a fsica estatstica, levando as redes de Hopfield. Tambm em 1982, A. R. Barto, R. S. Sutton e C. W. Anderson introduziram o conceito de Reinforcement Learning. Em 1985, D. H. Ackley, G. E. Hilton e T. J. Sejnowski desenvolveram um mtodo de aprendizado utilizando caractersticas de maquinas de Boltzmann. Em 1986, o algoritmo de Back-Propagation foi desenvolvido e popularizado por D. E. Rumelhart, G. E. Hilton e R. J. Williams. Em 1988, D. S. Broomhead e D. Lowe descreveram redes empregando funes de base radial (Radial Basis Functions).

5. Aplicaes da IA
As cincias da cognio, incluindo a inteligncia artificial, nos ltimos anos progrediram, permitindo saltos em frente na apropriao de saber sobre inteligncias humana e a criao de geraes tecnolgicas, embora com objectivos e mtodos diferentes. At agora, na IA identificam-se certos mtodos de adequao de padres, tcnicas de procura, o formalismo da representao da informao por regras, e varias tcnicas de aprendizagem. Segue abaixo algumas aplicabilidades da IA nos dias atuais:

Jogos
Em 1951, Alam Turing programou sua maquina, desenvolvida em 1946, para jogar xadrez. Essa maquina, chamada de automatic computin gengine, havia sido inicialmente programada para decodificao de mensagens. Com esse sistema, Turing jogou contra Alick Glennie, tendo abandonado aps a perda da rainha. Em 1949 Cleude Shannon descreveu formas de programar computadores para jogar xadrez, j incorporando discusses sobre o balanceamento entre fora bruta (busca exaustiva) e a heurstica. Em 1956, aps melhorias no MANIAC I, programado por Ulam e Stein, em uma verso simplificada de xadrez, com um tabuleiro 6x6, sem bispos, sem roque e com pees limitados a avanar apenas uma casa, foi o primeiro a derrotar um humano. Aps isso, vieram mais estudos, melhorias e os diversos campeonatos de xadrez por computador: - 1970 - Primeiro campeonato realizado nos Estados Unidos vencido pelo CHESS 3.0 de David Slate, Larry Atkin e Keith Gorlen. - 1974 - Primeiro campeonato mundial realizado em Estocolmo que teve como vencedor o programa KAISSA (Deusa do Xadrez).J no segundo campeonato, realizado em Toronto, teve como vencedor o CHESS 4.6. - 1978 - O mestre Internacional David Levy ofereceu 1250 libras para o programa que pudesse venc-lo. Trs programas o enfrentaram: CHESS 4.5, KAISSA,MAC HACK VI e CHESS 4.7. Foi a primeira vez que um programa (CHESS 4.7) derrotou um mestre de xadrez. O caso mais conhecido e recente foi do DEEP THOUGHT que fora derrotado por Garry Kasparov em 1989, um dos maiores jogadores de xadrez de todos os tempos. - 1996 - Kasparov aceitou novo desafio: enfrentar o super computador DEEP BLUE da IBM.

Saldo final! Kasparov venceu uma partida, empatou outras duas e perdeu trs(portando Kasparov levou o torneio em virtude da quantidade de pontos). - 1997 - Aps melhorias no DEEP BLUE, Kasparov fora derrotado com duas vitorias do DEEP e trs empates.

Prova automtica de teoremas


rea que est intimamente ligada ao desenvolvimento da Teoria de Lgica, uma vez que os Teoremas so, enfim, sentenas lgicas.

Sistemas Especialistas
Sistemas especialistas so concebidos para atuarem como consultores altamente qualificados em uma determinada rea de conhecimento. Devem, portanto, fornecer diagnsticos, condutas, sugestes ou outras informaes uteis, obtidas a partir de dados fornecidos localmente e de conhecimentos armazenados previamente. Um sistema especialista pode ser utilizado e auxiliar mdicos, operadores de mquinas ou clientes de uma loja. Pode tambm ser empregado em sistemas de ensino assistido por computador. Enfim, sistemas especialistas permitem que conhecimentos possam ser disseminados e utilizados por um grande numero de pessoas, sem a necessidade da presena do especialista. Permite, ainda, que conhecimentos de vrios especialistas possam ser amalgamados em uma s base de dados. Segue alguns exemplos. 1) MYCIN (Stanford University) considerado o primeiro sistema especialista a alcanar, de fato, um padro de desempenho compatvel com o ser humano. Ele atua no campo da Medicina, em casos de bacteremia e meningite, identificando os agentes infecciosos e sugerindo conduta teraputica. 2) DENTRAL (J, Lederberg) Sistema especialista na rea de anlise qumica e permite analisar a estrutura molecular de substancias a partir de dados de espectroscopia. Ele consiste em um programa em LISP que gera, utilizando heursticas sobre histograma de intensidade versus nmeros de massa, as estruturas candidatas para a substancia que esta sendo analisada. Posteriormente, o programa simula a sada do espectrmetro de massa para as estruturas candidatas e produz como sada aquela que se casar melhor com os dados empricos. 3) MACSYMA (C. Engleman, W. Martin e J. Moses MIT) Sistema, tambm codificado em LISP que permite processar simbolicamente problemas matemticos grandes e complexos (Ainda recebe desenvolvimento contnuo). 4) HEARSAY I e II (Carnegie-Mellon University). parte de um sistema de reconhecimento de linguagem natural falada. Programado em SAIL, ele recebe como entrada sinais digitalizados de voz, e gera como sada hipteses do que teria sido falado. Utiliza conceitos como o de Quadro Negro e, posteriormente, algumas ideias foram utilizadas para o HEARSAY III. 5) INTERNIST ou CADUCEUS (Pittsburg University). Programa em INTERLISP, um especialista no domnio da Medicina interna. Recebe dados constantes da anamnese e do exame fsico e fornece uma hiptese diagnostica. 6) PROSPECTOR (StanfordUniversity).Tambm programado em LISP, um especialista em investigao de possveis depsitos de minrios. Utiliza uma base de dados de conhecimentos empregando redes semnticas. As inferncias so organizadas por regras de produo. 7) PUFF (Stanford University). Permite interpretao de medidas e testes respiratrios, fornecendo indicativos sobre funes pulmonares. A segunda verso do PUFF foi escrita em BASIC para o microcomputador PDP-11.

Compreenso de linguagem natural


As linguagens so conjuntos de sequencias de smbolos, organizadas de acordo com regras definidas de inicio. A linguagem formal utilizada para programao de computadores ou para construo de formulas no estudo da logica. A informal utilizada corriqueiramente por humanos.

Segue abaixo alguns exemplos de gramaticas (sequencia de caracteres):


<sentena> ::= <sujeito><verbo><objeto> <sujeito>::=<artigo><substantivo> <verbo>::= COMPROU <objeto> ::= <artigo><substantivo> <artigo> ::= O <artigo>:: UM <substantivo>::= PROFESSOR <substantivo>::= LIVRO A sequencia a seguir uma seqncia vlida gerada por elas. O PROFESSOR COMPROU UM LIVRO. Entidades como <sujeito> ou <artigo> so chamadas de smbolos no terminais e LIVRO ou COMPROU so chamadas de smbolos terminais. As regras da gramatica so chamadas de produes. A entidade <sentena> , intuitivamente, um no terminal mais nobre, uma vez que as demais so partes dela. No caso, <sentena> recebe o nome especial de smbolo inicial. Nessas condies, uma classe de gramatica muito importante pode ser definida: gramatica livre de contexto. aquela especificada por: 1) Um conjunto finito de no terminais; 2) Por um conjunto finito de terminais que disjunto do conjunto de no terminais; 3) Um conjunto finito de produes na forma <A> ::= onde <A> um terminal e a uma sequencia de terminais e no terminais e ; 4) O smbolo inicial um no terminal. Por outro lado as linguagens naturais exibem dificuldades de natureza sinttica, semntica e pragmtica, como observadas porChomsky,1969 e Saussure, 1988. Apresentar evidencia para essa dificuldade tarefa relativamente fcil. Segue alguns exemplos: 1) Quanto dinheiro voc tem no bolso? No tenho nada. (Dupla negao) 2) Voc tem uma moeda? Sim. (Embora tenha 10). 3) Estou nadando em dinheiro. (Ser que o dinheiro liquido?) Usando tcnicas diversas, foram desenvolvidos programas de computador que aparentam compreende alguma linguagem natural como ELIZA (Weizanbaum,1966), PARRY (Colby,1975), (modelo de personalidade paranoide, STUDENT (Bobrow,1968) (problemas com palavras).H busca de solues de problemas com compreenso de linguagens nos estudos de Schenk e Abelson,1977.

Percepo
Viso, audio e tato so as formas mais estudadas de percepo para efeito de incorporao com maquinas. Embora a audio e o tato sejam muito importantes, por exemplo em robtica para comando vocal e preenso com realimentao ttil, selecionou-se a viso como tema de ilustrao para o campo da percepo. Viso segundo D. Marr, 1982, o processo que permite extrair das imagens do mundo externo, uma descrio que seja til e no poluda com informaes irrelevantes. A Viso dita ativa quando o sistema possui controle sobre o processo de aquisio da imagem (por exemplo, atravs do ZOOM,PAM, CONTROLE DE ATENCAO e OUTROS). Processamento de imagens o processo de melhorar as caractersticas das imagens para serem vistas por humanos, sem a preocupao com o que as imagens representam (ex:.aberraes, rudo, correo de brilho). Reconhecimento de Padres o processo de obter, a partir da imagem, a informao de quais objetos esto nela representados (como reconhecimento de caracteres e de impresses digitais). Computao Grfica a gerao ou modificao de imagens atravs do uso de computadores. o oposto da Viso, no sentido em que a preocupao aqui a gerao de imagens sintticas a partir das descries de cena. A viso artificial pressupe a existncia de um dispositivo que permita adquirir imagens. Assim, embora a cmera eletrnica tivesse sido inventada h algum tempo, a necessidade de recursos computacionais limitou o desenvolvimento da viso artificial , at que em 1963, L. G. Roberts construiu um sistema de viso 3D que compreendia cenas com poliedros. Em 1971, D. A. Huffman desenvolveu uma teoria para desenhos com linhas, posteriormente aperfeioado por D. L. Waltz, 1972. O estudo de estruturas 3D a partir do fluxo tico recebeu a devida ateno em 1980, atravs de Longuet-Higgins e Prazdni, embora j em 1931, Miles tivesse introduzido este tipo de problema.

Robtica
Apalavra Rob foi introduzida no contexto de maquinas se assemelhando ao ser humano na peca teatral satrica R. U. R.(Rossums Universal Robots) de Karel Capek, em 1921. Em 1959,Unimation j lanava o primeiro rob industrial. Em 1962, H. A. Ernst repostava o desenvolvimento de uma mo mecnica com sensores tteis. A robtica uma cincia interdisciplinar que congrega diversas disciplinas, como mecnica, fsica de sensores, cincia dos materiais, teoria de controle, eletrnica de potencia e muitas outras, incluindo, particularmente a IA. A IA importante na robtica para possibilitar atividades como planejamento de tarefas e interao com o meio ambiente. Como exemplo, robs moveis necessitam de capacidades como deteco de obstculos, gerao de trajetrias, analise de cenas e navegao autnoma, entre outras.

6. PROLOG (PROGRAMAO EM LGICA) Viso geral da programao em lgica


As linguagens usadas para programao lgica so chamadas de declarativas porque os programas nelas inscritos consistem em declaraes em vez de atribuies e em instrues de fluxo de controle. Essas declaraes so, de fato, instrues ou proposies, em logica simblica. O conceito bsico das linguagens declarativas consistem de uma maneira bsica de determinar o significado de cada instruo, e no, depende de como esta poderia ser usada para resolver um problema. A semntica declarativa muito mais simples do que as imperativas. Por exemplo, o significado de uma proposio dada em uma linguagem de programao logica pode ser determinado concisamente a partir da prpria instruo. Em uma linguagem imperativa, a semntica de uma instruo de atribuio simples exige o exame de declaraes locais, o conhecimento das regras de escopo da linguagem, e possivelmente at mesmo o exame de programas em outros arquivos apenas para determinar os tipos de variveis na instruo de atribuio.

As origens do PROLOG
O projeto fundamental do PROLOG tem suas origens na University de Aix-Marseille com Alan Colmerauer e Phillippe Roussel, que estavam interessados no processamento da linguagem natural, com assistncia de Robert Kowalski da University of Edinburg , demonstrao automatizada de teoremas. Em 1981, o governo japons estava lanando um grande projeto de pesquisa chamado Fifts Generation Computing Systems(FGCS) que tinha como principal objetivo desenvolver maquinas inteligentes e, aproveitando poucos esforos e pouca ateno de Edimburgo e Marselha, escolheu o PROLOG como base para projeto. Com esse anuncio, suscitou, nos pesquisadores e nos governos dos EUA e diversos pases europeus, um repentino e forte interesse na inteligncia artificial e na programao em lgica.

Elementos bsicos do PROLOG


H um grande nmero de dialetos do PROLOG que so agrupados em diversas categorias: Os que desenvolveram a partir do grupo de Marselha, os que vieram do grupo de Edimburgo e uma coleo de dialetos desenvolvidos para microcomputadores, como, por exemplo, a micro Prolog, descrita por Clark e Mc Cabe (1984). Como o PROLOG um programa em lgica, quer dizer que um conjunto de especificaes em lgica formal. PROLOG usa o clculo de predicados. No clculo proposicional, cada smbolo (P,Q,etc.) denota uma proporo de certa complexidade. No h como acessar os componentes de uma assero individual. O calculo de predicados proporciona esta complexidade. Como exemplo, considere que, em vez de o smbolo proporcional P denotar a sentena inteira choveu na quinta feira, pudssemos criar um predicado tempo que descreve a relao entre uma data e o tempo: tempo (terca-feira,chuva).Atravs de regras de inferncia, podemos manipular expresses do calculo de predicados, acessando seus componentes individuais e inferindo novas sentenas. O calculo de predicados permite, tambm, que as expresses contenham variveis. Variveis nos permitem criar asseres gerais sobre classes de entidades. Por exemplo: Poderamos afirmar que, para todos os valores de X, onde X um dia da semana, a declaraotempo (X,chuva) verdadeira; isto , chove todos os dias. Como no clculo proposicional, primeiro definimos a sintaxe dalinguagem e, ento, discutimos sua semntica. Sendo assim, um interpretador executa o programa fazendo sistematicamente inferncias a partir de especificaes logicas. A ideia de usar o poder representacional do calculo de predicados de primeira ordem para expressar especificaes para resolver problemas uma das contribuies centrais que PROLOG deu para a Ciencia da Computao, em geral, e para a inteligncia artificial, em particular., A implementao do PROLOG tem suas razes na pesquisa em prova de teoremas por J. A. Robinson (1965), especialmente a criao de algoritmos para refutao por resoluo. Robinson concebeu um procedimento chamado resoluo, que o mtodo bsico para a computao com PROLOG. Sendo assim, PROLOG suporta um estilo de programao declarativo insto, permite construir programas em termos de declaraes de alto nvel de restries de um problema. ao invs de um estilo de programao procedimental escrever programas com uma sequencia de instrues para realizar um algoritmo.Esse mtodo de programao permite dizer ao computador o que verdadeiro e o que deve ser feito, ao invs de como faze-lo. Isso permite que o programador foque na soluo de problemas como conjuntos de especificaes para um domnio, em vez de se concentrar nos detalhes de escrita das instrues algortmicas de baixo nvel para o que fazer a seguir. O primeiro programa PROLOG foi escrito na cidade de Marselha, Frana, no inicio dos anos 70 como parte de um projeto em compreenso de linguagem natural (Kowalski,1979). O principal desenvolvimento da linguagem PROLOG foi realizado em 1975 a 1979 no departamento de IA da Universidade de Edinburgh onde produziram o primeiro interpretador PROLOG suficientemente robusto para distribuio entre a comunidade geral de computao. As vantagens da linguagem tem sido demonstradas atravs de projetos de pesquisa concebidos para avaliar e estender o poder expressivo da programao em lgica.

Sintaxe para programao por clculos de predicados Representao por fatos e regras
Embora haja inmeros dialetos em PROLOG, a sintaxe usada em todo este texto a do C PROLOG, de Warren e Pereira.

PORTUGUES

CALCULO PREDICADOS

DE PROLOG

E OU SOMENTE SE NO

^ V

, ; :NO

Os nomes dos predicados e as variveis de ligao so expressas como uma sequencia de caracteres alfanumricos comeando com uma letra. Variveis so representadas como uma cadeia de caracteres alfanumricos comeando com (no mnimo) uma letra maiscula. Assim: gosta(X,renata).ou melhorGosta(Todos,renata). Poderia representar o fato que todos gostam de Renata. Ou, gosta(joana,Y),gosta(renata,Y). poderia representar o conjunto de coisas (ou pessoas) de que tanto Joana como Renata gostam. De maneira similar, suponhamos que ser deseja representar em PROLOG os seguintes relacionamentos: George gosta de Kate e George gosta de Susie.. Isso poderia ser declarado como: gosta(george,kate),gosta(george,susie).

Da mesma forma, George gosta de Kate ou George gosta de Susie: gosta(george,kate);gosta(george,susie).


Finalmente, George gosta de Susie se George no gosta de Kate: gosta(george,susie):-gosta(george,kate). Os nomes de predicados (GOSTA), o numero ou a ordem de parmetros e mesmo se um dado predicado sempre tem o mesmo numero de parmetros so determinados pelos requisitos de projeto (a semntica implcita) do problema. No h limitaes de expressividade na linguagem, afora a sintaxe das frmulas bem formadas. Um programa PROLOG um conjunto de especificaes em clculo de predicados de primeira ordem descrevendo os objetos e ralaes num domnio de problema. O conjunto de especificaes considerado a base de dados para aquele problema. O interpretador PROLOG responde a questes sobre este conjunto de especificaes. Consultas base de dados so padres na mesma sintaxe logica dos registros da base de dados. O interpretador PROLOG usa busca guiada por padres para determinar se essas consultas resultam logicamente do contedo da base de dados. O interpretador processa consultas, realizando uma busca em profundidade sobre a base de dados e na ordem da esquerda para a direita, para descobrir se a consulta uma consequncia lgica da base de dados de especificaes. Prolog , fundamentalmente, uma linguagem interpretada. Algumas verses de PROLOG rodam apenas no modo interpretativo, enquanto que outras permitem a compilao de parte do conjunto de especificaes, ou mesmo todo conjunto, para acelerar a execuo. PROLOG uma linguagem interativa; o usurio entra com questes em resposta ao comando de pronto do PROLOG:?-. Suponha que desejamos descrever um mundo consistindo do que George, Kate e Susie gostam

ou no. A base de dados poderia conter o seguinte conjunto de predicados: gosta(george,kate) . gosta(george,susie) . gosta(george,vinho) . gosta(susie,vinho) . gosta(kate,gim) .

Este conjunto de interpretaes bvia, ou mapeamento, para o mundo de Jorge e suas amigas. Este mundo um modelo para a base de dado s. Podem-se colocar, ento, questes para o interpretador: ?- gosta(george,kate).Sim ?- gosta(kate,susie).Sim ?- gosta(george,X).X = Kate ;X = Susie ;X = vinho ;No ?- gosta(george,cerveja).No

7. CONCLUSO
Tendo em conta a afirmao atrs referida, por uma voz importante no campo da IA, o futuro desta ser o mundo, vamos ver e at j vemos as aplicaes da IA por todo lado. Se repararmos sempre noticia um novo rob, que consegue subir escadas ou falar como uma criana de 5 anos. No futuro talvez j veremos robs com sentimentos como no filme inteligente artificial, ou um como o famoso boneco C3PO, da guerra das estrelas. Segundo uma variante do pensamento de Descartes, eu penso logo existo, podemos dizer eu processo, portanto sou. Quer isto dizer que por mais que se trabalhe em maquinas que pensam, que usam o raciocnio, a aprendizagem, o pensamento e outras funes usualmente ligadas a nossa inteligncia (humana). A pergunta se a inteligncia mecnica ser igual a nossa mente? Alguns dizem que jamais a nossa mente poder ser copiada, outros dizem que no. Estes partem do princpio de que algo que se diz consciente algo que se lembra de algo acerca do estado da sua mente uns instantes atrs. So estas perguntas e possveis respostas que tornam o problema da IA, um campo que se divide no da filosofia e da fsica. O primeiro, na qual so consideradas questes relativas inteligncia propriamente dita, e se mquinas so capazes de processar inteligncia real, ou somente simular a sua presena. O outro, no qual se questiona de que maneira a tecnologia pode ser empregada na produo de mquinas que se comportem de forma inteligente.

8. REFERNCIAS BIBLIOGRFICAS
CLOCKSIM, W.F.. Programming in PROLOG. 3 ed. Editora Library Network, 1987, 281p.: GANASCIA, J.G.. Inteligncia Artificial. 3. ed. SP: Ed. tica, 1997, 119p.: LUGER, G.F.. Inteligncia Artificial. 4 ed. RS: Ed. Bookman, 2004, 774p.: NASCIMENTO, J.R.; CAIRO L.. Inteligncia Artificial para Controle e Automao. 2 ed. SP: Ed. Edgard Blucher LTDA, 1999, 228p.: RICH, E.; KNIGHT, K.. Inteligncia Artificial. 2. ed., SP:.Makron Books, 1994, 722p.: ROBERT W.S.. Conceitos de linguagens de programao. 4 ed. RS: Ed. Bookman, 2003, 624p.: RUSSEL, S.; NORVIG, P.. Inteligncia Artificial. 2. ed., RJ: Campos, 2004, 1021p.: THE UNIVERSITY OF EDINBURGH. www.inf.ed.ac.uk, acesso em 24/04/2012.

You might also like