inteligencia artificial - integrado

168
Inteligência artificial INTELIGÊNCIA.indb 1 7/11/14 1:51 PM

Upload: jucemar-formigoni-candido

Post on 05-Sep-2015

29 views

Category:

Documents


5 download

DESCRIPTION

Texto sobre inteligencia artificial

TRANSCRIPT

  • Inteligncia artificial

    INTELIGENCIA.indb 1 7/11/14 1:51 PM

  • INTELIGENCIA.indb 2 7/11/14 1:51 PM

  • Inteligncia artificial

    Cristiano Roberto Franco

    INTELIGENCIA.indb 3 7/11/14 1:51 PM

  • Dados Internacionais de Catalogao na Publicao (CIP)

    Franco, Cristiano RobertoF825i Inteligncia artificial / Cristiano Roberto Franco. Londrina: Editora e Distribuidora Educacional S.A., 2014. 168 p.

    ISBN 978-85-68075-77-7

    1. Conhecimento. 2. Computao Evolutiva. I Ttulo.

    CDD 006

    2014 by Editora e Distribuidora Educacional S.A.

    Todos os direitos reservados. Nenhuma parte desta publicao poder ser reproduzida ou transmitida de qualquer modo ou por qualquer outro meio, eletrnico ou mecnico, incluindo fotocpia, gravao ou qualquer outro tipo de sistema de armazenamento e

    transmisso de informao, sem prvia autorizao, por escrito, da Editora e Distribuidora Educacional S.A.

    Diretor editorial e de contedo: Roger TrimerGerente de produo editorial: Kelly Tavares

    Supervisora de produo editorial: Silvana AfonsoCoordenador de produo editorial: Srgio Nascimento

    Editor: Casa de IdeiasEditor assistente: Marcos Guimares

    Reviso: Juliana AlexandrinoCapa: Katia Megumi Higashi, Fernanda Caroline de Queiroz Costa

    e Mariana Batista de SouzaDiagramao: Casa de Ideias

    INTELIGENCIA.indb 4 7/11/14 1:51 PM

  • Unidade 1 Introduo inteligncia artificial ..........1Seo 1 Introduo inteligncia artificial, agentes e ambientes ......3

    1.1 Histrico ..............................................................................................51.2 Agentes inteligentes e ambientes ..........................................................91.3 Ambientes ..........................................................................................12Seo 2 Representao do conhecimento e resoluo

    de problemas atravs da busca ...........................................20

    2.1 Representao do conhecimento .......................................................202.2 Resoluo de problemas atravs da busca ..........................................27

    Unidade 2 Sistemas baseados em conhecimento .....41Seo 1 Sistemas especialistas .........................................................42

    1.1 Sistemas especialistas .........................................................................421.2 Fator de confiana .............................................................................50Seo 2 Lgica difusa e redes bayesianas: tratamento de incerteza ....55

    2.1 Lgica difusa e redes bayesianas ........................................................552.2 Redes bayesianas ...............................................................................63

    Unidade 3 Aprendizado de mquina e redes neurais artificiais ...................................77

    Seo 1 Aprendizado de mquina ....................................................78

    1.1 Aprendizado de mquina ...................................................................79Seo 2 Redes neurais artificiais ......................................................96

    2.1 Redes neurais artificiais ......................................................................962.2 Classificao das redes neurais ........................................................1002.3 Projeto de redes neurais artificiais ....................................................103

    Sumrio

    INTELIGENCIA.indb 5 7/11/14 1:51 PM

  • vi I N T E L I G N C I A A R T I F I C I A L

    2.4 Treinamento ....................................................................................1052.5 Aplicaes prticas das redes neurais artificiais................................112

    Unidade 4 Computao evolutiva .........................119Seo 1 Algoritmos genticos e estratgias de evoluo ................120

    1.1 Fundamentos da evoluo ...............................................................1211.2 Computao evolutiva .....................................................................1241.3 Algoritmos genticos ........................................................................1261.4 Estratgias de evoluo ....................................................................135Seo 2 Programao evolutiva e programao gentica ...............140

    2.1 Programao evolutiva .....................................................................1402.2 Programao gentica ......................................................................144

    INTELIGENCIA.indb 6 7/11/14 1:51 PM

  • O campo da Inteligncia Artificial sempre despertou fascnio no homem. Desde os primrdios, tentamos criar uma mquina que pudesse demonstrar as mesmas caractersticas que nos definem como inteligentes. Essa fascina-o pode ser facilmente observada atravs da quantidade de livros e filmes que tratam sobre o assunto. Isaac Asimov, com seus livros e contos de fico cientfica, e filmes como Blade runner, Exterminador do futuro, Inteligncia artificial e Matrix trouxeram para os olhos do grande pblico uma viso do que a Inteligncia Artificial.

    Ao mesmo tempo em que a ideia de que o homem seja capaz de construir uma mquina inteligente nos maravilha, ela nos assombra. Isaac Asimov, em seu livro (j transformado para filme) Eu, rob, idealiza trs princpios bsicos da robtica visando exclusivamente impedir que essas mquinas inte-ligentes possam ferir seres humanos ou mesmo outras mquinas inteligentes. Em Blade runner e outros filmes citados anteriormente, em algum momento a inteligncia dessas mquinas iguala e at mesmo supera a dos homens e a partir da somos subjugados por elas. Esse momento o que chamamos de singularidade computacional.

    A realidade, pelo menos por enquanto, bem diferente. Os estudos cientficos sobre a Inteligncia Artificial hoje j sabem que existem diversos obstculos a serem superados antes de conseguirmos algo semelhante fico cientfica. A re-presentao do conhecimento, por exemplo, um dos aspectos mais complexos para a resoluo de problemas em Inteligncia Artificial e a cincia ainda busca uma maneira eficiente de representar o conhecimento de forma mais genrica em sistemas computacionais. Em resumo, a singularidade computacional ainda uma realidade relativamente distante.

    Entretanto, com o crescente nmero de computadores nos mais diversos setores da vida humana, com a utilizao de sistemas computacionais intera-

    Apresentao

    INTELIGENCIA.indb 7 7/11/14 1:51 PM

  • viii I N T E L I G N C I A A R T I F I C I A L

    tivos e com o aparecimento da Internet, estamos cada vez mais envolvidos com essa tecnologia. Impulsionadas pelos gigantes da Internet e seus praticamente ilimitados recursos, hoje as pesquisas em Inteligncia Artificial avanam mais rpido do que nunca. Ao fazer uma busca no Google sobre determinado assunto ou ao pesquisar o preo de alguma mercadoria na Amazon, voc est implicita-mente utilizando alguma tcnica de Inteligncia Artificial que serve para retornar resultados mais relevantes, ou seja, para deixar sua busca mais inteligente.

    Consideramos este um dos nossos objetivos. Fornecer a voc, acadmico, o entendimento sobre de que forma a Inteligncia Artificial pode nos se inserir e nos auxiliar em nossas atividades dirias. Com esse enfoque, ao longo deste caderno e suas quatro unidades, ilustraremos os principais conceitos e tcnicas utilizadas para a resoluo de problemas no campo da Inteligncia Artificial, bem como seus principais obstculos.

    Na primeira unidade trataremos de conceitos bsicos de Inteligncia Artifi-cial, com luz aos principais fatos cientficos e histricos que impulsionaram seu desenvolvimento. Sero abordados tambm os conceitos de agente e ambiente, essenciais para o correto entendimento dos contedos das demais unidades. Ainda nesta unidade, abordaremos um dos aspectos mais complexos dentro do campo da Inteligncia Artificial, a representao do conhecimento. Exempli-ficaremos modelos atravs dos quais o conhecimento pode ser representado, ilustrando os pontos fortes e fracos de cada um. Veremos, ainda, atravs de exemplos, que diversos problemas da Inteligncia Artificial podem ser resolvidos utilizando-se busca e tcnicas de heurstica.

    Na segunda unidade ser tratado o ramo especfico da IA simblica conhe-cido como Sistemas Baseados em Conhecimento (SBC). Detalharemos os Sis-temas Especialistas e seu funcionamento, relacionando-os ao modo como ns, humanos, resolvemos os problemas. Destacaremos ainda tcnicas para fazer o tratamento da incerteza, ideais para determinados domnios do conhecimento e situaes onde as informaes so parciais ou incompletas. Durante esta unidade ser ainda demonstrada a utilizao de ferramentas computacionais que permitem a implementao prtica dos conceitos estudados.

    Alm desse contedo, durante todo o texto diversas leituras e materiais adi-cionais so recomendados, garantindo dessa forma que todos que desejarem possam se aprofundar no assunto.

    Contamos com seu empenho e dedicao nesta jornada. Bons estudos!

    INTELIGENCIA.indb 8 7/11/14 1:51 PM

  • Unidade 1

    Seo 1: Introduo inteligncia artificial, agentes e ambientes

    Nesta seo, elucidaremos o conceito de inteligncia no contexto de sistemas computacionais de acordo com critrios de classificao utilizados por autores renomados da rea. Diferenciaremos o pensar racio-nal e o pensar inteligente, justificando o porqu de essa sutil diferena ser to relevante para a rea de Inteligncia Artificial. Mostraremos, ainda, os concei-tos de agentes e ambientes de atuao.

    Seo 2: Representao do conhecimento e resoluo de problemas atravs da busca

    J nesta seo, trataremos um aspecto extremamente relevante para a Inteligncia Artificial: a representao do conhecimento. Entenderemos a relao intrnseca entre conhecimento e inteligncia e o motivo de a escolha da tcnica certa para representar o conhe-cimento ser uma das etapas mais importantes no projeto de sistemas de Inteligncia Artificial.

    Objetivos de aprendizagem: O objetivo desta unidade apresentar aspectos histricos do campo da Inteligncia Artificial e ilustrar os principais conceitos que o envolvem.

    Introduo inteligncia artificial

    INTELIGENCIA.indb 1 7/11/14 1:51 PM

  • Ainda com vistas representao do conhecimento, demonstraremos que diversos problemas do campo da Inteligncia Artificial so resolvidos atravs de busca em um espao de solues possveis. Sero apresentadas algumas tcnicas de busca e heursticas utilizadas no sentido de otimiz-las.Embarque conosco nesta jornada para explorar a Inteligncia Artificial.

    INTELIGENCIA.indb 2 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 3

    Introduo ao estudo

    Seja bem-vindo Unidade 1 do caderno de Inteligncia Artificial. Nesta unidade, fazemos a combinao entre teoria e prtica com o objetivo de intro-duzir a voc alguns dos principais conceitos dessa fascinante rea da Cincia da Computao. A primeira questo que buscamos responder diz respeito prpria definio de inteligncia. Como dizer que determinado sistema possui ou no caractersticas inteligentes se o significado de inteligncia ainda , por si s, bastante nebuloso?

    Seo 1 Introduo inteligncia artificial, agentes e ambientes

    Desde o surgimento do termo Inteligncia Artificial, este tem gerado certa polmica na comunidade cientfica. A primeira dificuldade vem da prpria definio da inteligncia como qualidade. O que define algo como inteligente? E de que forma a inteligncia pode ser medida? O comportamento de um animal buscando alimento pode ser considerado inteligente? Um homem que joga xadrez mais inteligente que um homem que cuida da lavoura? E uma mquina que reproduza um comportamento que, quando feito pelo homem, considerado inteligente, pode ser considerada da mesma forma? Essas e outras perguntas ainda so controversas, e as respostas dependem muito da bibliografia e do ponto de vista utilizados.

    Outro aspecto controverso a rea de conhecimento em que o campo Inteligncia Artificial se enquadra. Filosofia? Matemtica? Engenharia? Biolo-gia? Cincia da Computao? Hoje em dia, a resposta mais aceita a de que o campo Inteligncia Artificial uma cincia multidisciplinar, essencialmente parte da Cincia da Computao, uma vez que o computador foi escolhido como a mquina para se implantar inteligncia. Trataremos desses temas quando abordarmos o histrico da Inteligncia Artificial.

    Na parte conceitual, ilustraremos de forma geral os sistemas de Intelign-cia Artificial utilizando o conceito amplamente aceito de agente, definido por Norvig e Russel (2004). Com vistas a esse enfoque, definiremos ainda os tipos de ambiente onde esses agentes atuam atravs de textos e exemplos prticos.

    INTELIGENCIA.indb 3 7/11/14 1:51 PM

  • 4 I N T E L I G N C I A A R T I F I C I A L

    O que hoje conhecemos como Inteligncia Artificial (IA) um ramo da cincia da computao ao mesmo tempo recente (o termo surgiu oficialmente em 1956) e antigo, cujos princpios baseiam-se em ideias filosficas cientficas e tecnolgicas herdadas de outras cincias, entre elas a lgica, que existe h 23 sculos (BITTENCOURT, 2006).

    A dificuldade em definir a IA se transforma na dificuldade em definir o sig-nificado do termo inteligncia propriamente dito. Todos somos capazes de iden-tificar se determinado comportamento ou no inteligente quando parte de um humano ou de um animal, entretanto, tal observao mais complexa quando se trata de programas de computador. O estudioso de Cincia da Computao Edsger Dijkstra cunhou uma frase polmica a respeito da IA que dizia :Perguntar se uma mquina pode pensar o mesmo que perguntar se um submarino pode nadar. Ou seja, para Dijkstra, o objetivo final o que importa e se este foi atin-gido por uma mquina pode-se considerar que esta mquina inteligente.

    Luger (2002) define IA como o ramo da cincia da computao que se ocupa da au-tomao do comportamento inteligente. Fer-nandes (2008) coloca que a parte da cincia da computao voltada para o desenvolvi-mento de sistemas de computadores inteli-gentes, isto , sistemas que exibem caracte-rsticas que esto associadas inteligncia no comportamento humano, como compreenso da linguagem, aprendizado, raciocnio, reso-luo de problemas, entre outros.

    As definies de IA, em geral variam em duas caractersticas principais: o pensamento e o raciocnio e o comportamento. A Tabela 1.1 mostra seis definies:

    Tabela 1.1 Definies de IA

    Sistemas que pensam como humanos Sistemas que pensam racionalmente

    O novo e interessante esforo para fazer os computadores pensarem... Mquinas com mentes, no sentido total e literal (HAUGE-LAND, 1985 apud NORVIG; RUSSEL, 2004).

    O estudo das faculdades mentais pelo uso de modelos computacionais (CHARNIAK e MCDERMOTT, 1985 apud NORVIG; RUSSEL, 2004).

    Edger Dijsktra foi um cientista da computao holands que criou o conhecido algoritmo de Dijkstra, tambm conhecido como algoritmo do menor caminho, muito utilizado nos roteadores da Internet e siste-mas de GPS existentes hoje em dia.

    Para saber mais

    continua

    INTELIGENCIA.indb 4 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 5

    Automatizao de atividades que associamos ao pensamento humano, atividades como a tomada de decises, a resoluo de proble-mas, o aprendizado... (BELLMAN,1978 apud NORVIG; RUSSEL, 2004).

    O estudo das computaes que tornam pos-svel perceber, raciocinar e agir (WINSTON, 1992 apud NORVIG; RUSSEL, 2004).

    Sistemas que atuam como humanos Sistemas que atuam racionalmente

    A arte de criar mquinas que executam fun-es que exigem inteligncia quando execu-tadas por pessoas (KURZWEIL, 1990 apud NORVIG; RUSSEL, 2004).

    A Inteligncia Computacional o estudo do projeto de agentes inteligentes (POOLE et al., 1998 apud NORVIG; RUSSEL, 2004).

    Fonte: Adaptada de Norvig e Russel (2004).

    Norvig e Russel (2004) ainda afirmam que existe discusso entre essas abordagens, afinal, uma abordagem centrada nos seres humanos deve ser uma cincia emprica, que envolva hipteses e confirmao experimental. J uma abordagem racionalista envolve mais engenharia e matemtica para confirmao.

    Independentemente da abordagem adotada, a IA trata uma variedade am-pla de problemas cujas caractersticas comuns so definidas por Luger (2002):

    uso do computador para executar raciocnio, reconhecimento de padres ou aprendizagem;

    problemas que no podem ser resolvidos utilizando solues algortmicas tradicionais;

    soluo de problemas utilizando informao inexata, faltante ou pobre-mente definida;

    respostas nem sempre exatas ou timas, mas suficientes em determinado contexto;

    resoluo de questes tratando significado semntico e sinttico;

    uso de grandes quantidades de conhecimento especfico de um domnio particular.

    1.1 HistricoO primeiro trabalho agora reconhecido por tratar da IA foi um modelo de

    neurnios artificiais elaborado por Warren McCulloch e Walter Pitts em 1943 que serviu como precursor da abordagem conexionista.

    Um dos artigos mais conhecidos a tratar da questo da inteligncia de mquinas computacionais foi escrito em 1950 pelo matemtico britnico

    continuao

    INTELIGENCIA.indb 5 7/11/14 1:51 PM

  • 6 I N T E L I G N C I A A R T I F I C I A L

    Alan Turing (Figura 1.1), conhecido por sua colaborao na decodificao da criptografia de mensagens do exrcito alemo na Segunda Guerra Mundial.

    Figura 1.1 Esttua de bronze de Alan Turing

    Fonte: Guy Erwood/Shutterstock (2014).

    O teste de Turing ponderava sobre a possibilidade de uma mquina inteligente emular o comportamento de um ser humano. Turing propunha colocar um interlocutor conversando com duas entidades distintas sem a possibilidade de v-las. Uma das entidades era uma pessoa e a outra uma mquina inteligente. O interlocutor deveria descobrir qual das duas entidades seria a mquina atravs de um interrogatrio (Figura 1.2). Caso o interlocutor fosse ludibriado, dir-se-ia que a mquina seria inteligente. Existem diversas objees ao teste de Turing, ou seja, argumentos para refutar a hiptese de que o teste seria suficiente para determinar a inteligncia de uma mquina. Maiores detalhes sobre as objees feitas ao teste de Turing podem ser obtidos em .

    INTELIGENCIA.indb 6 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 7

    Figura 1.2 Teste de Turing

    Fonte: Disponvel em: . Acesso em: 17 jan. 2014.

    Para conhecer mais detalhes sobre Alan Turing, essa importante figura da Cincia da Compu-tao, recomendamos o filme Enigma, que trata sobre o processo de decodificao de men-sagens criptografadas na Segunda Guerra Mundial e tem Alan Turing como personagem. Maiores detalhes sobre o filme podem ser obtidos em: .

    Para saber mais

    O termo Inteligncia Artificial foi cunhado por John McCarthy em um congresso sobre o tema realizado na universidade de Dartmouth em 1956. O aspecto mais importante desse congresso foi o networking, ou seja, todos os grandes personagens que trabalhavam na rea ficaram conhecendo seus pares e respectivos trabalhos.

    INTELIGENCIA.indb 7 7/11/14 1:51 PM

  • 8 I N T E L I G N C I A A R T I F I C I A L

    Conforme Russel e Norvig (2004), os primeiros anos da IA foram repletos de sucessos. Considerando-se as ferramentas e os computadores primitivos da poca, o fato de os computadores serem capazes de efetuar atividades consideradas inteligentes e no somente operaes aritmticas era surpreendente. Diversas atividades ditas como somente realizveis por humanos por dependerem de certo grau de inteligncia eram demonstradas uma a uma pelos pesquisadores da rea.

    Desde o incio os pesquisadores de IA eram otimistas em seus prognsticos e previam a criao de um computador to ou mais inteligente do que um humano em um perodo relativamente curto. O otimismo inicial logo cessou, na medida em que problemas mais complexos eram submetidos com fracasso aos sistemas de IA existentes. Um dos principais obstculos era que as estrutu-ras utilizadas para descrever o conhecimento nesses sistemas tinham poder de representao limitado, o que permitia somente a resoluo de problemas que coubessem nesse modelo de representao. A escassez de poder computacional da poca tambm no ajudava os pesquisadores.

    Russel e Norvig (2004) colocam que o quadro de resoluo de problemas que surgiu durante as primeiras duas dcadas de pesquisa em IA foi o de um mecanismo de busca de uso geral, que procurava reunir passos elementares de raciocnio para encontrar solues completas. Essas abordagens foram chamadas de mtodos fracos, pois embora gerais, no poderiam ter aumento de escala para instncias de problemas grandes ou difceis. Nessa poca surgi-ram os Sistemas Especialistas e os Sistemas de Raciocnio Baseados em Casos, ambos caracterizados pela existncia de um alto grau de conhecimento sobre determinado domnio. Surge ento a abordagem simblica.

    Na dcada de 1980, os Sistemas Especialistas comearam a se tornar viveis para o mercado corporativo, sendo utilizados por diversas empresas, principal-

    mente nos Estados Unidos e no Japo. Em 1986, houve um retorno ao estudo das redes neurais por parte de diversos grupos de pes-quisa que conseguiram recriar o algoritmo de aprendizagem por retropropagao descoberto em 1969 por Bryson e Ho. Essa descoberta trouxe novamente tona a abordagem cone-xionista, praticamente abandonada devido s dificuldades do final da dcada de 1960. Nessa

    Informaes adicionais sobre Tho-mas Bayes e sua teoria das probabi-lidades podem ser encontradas em: .

    Para saber mais

    INTELIGENCIA.indb 8 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 9

    dcada tambm surgiram os sistemas de inteligncia artificial probabilstica, chamados de redes bayesianas.

    Nos ltimos anos, a IA procurou se utilizar das teorias existentes como base, em vez de procurar por solues completamente novas. O surgimento da Internet, dos grandes volumes de dados e dos mecanismos de pesquisa deu um novo flego ao campo da IA. Atualmente, o conceito mais aceito de um agente inteligente, no qual as abordagens simblicas e conexionistas podem trabalhar de forma colaborativa para a resoluo de problemas atravs de um sistema computacional (um agente).

    Mas o que a IA pode fazer hoje em dia? difcil responder de forma con-cisa, porque existem atividades nas mais variadas reas. Abaixo so mostradas algumas das atividades fins para as quais a IA vem sendo usada:

    biometria reconhecimento facial, impresso digital e de voz;

    fiscalizao de trnsito reconhecimento de placas de veculos infratores;

    jogos Deep Blue, determinao do comportamento de avatares atravs de IA;

    diagnstico mdico Sistemas Especialistas diagnosticam doenas com base em regras;

    controle autnomo veculos que se dirigem sem interferncia humana;

    robtica robs que auxiliam cirurgies em microcirurgias;

    pesquisa motores de busca na Internet fazem uso de tcnicas diversas de IA para aumentarem sua eficincia e grau de acerto.

    1.2 Agentes inteligentes e ambientesO termo agente refere-se a algo que pode perceber seu ambiente por meio

    de sensores e de agir sobre esse ambiente por intermdio de atuadores (RUS-SEL; NORVIG, 2004).

    Wooldridge (1999, p. 45) define agente como: [...] um sistema de com-putador que est situado em algum ambiente e que capaz de executar aes autnomas de forma flexvel neste ambiente, a fimde satisfazer seus objetivos de projeto. A Figura 1.3 ilustra um agente inteligente e sua interao com o ambiente.

    INTELIGENCIA.indb 9 7/11/14 1:51 PM

  • 10 I N T E L I G N C I A A R T I F I C I A L

    Figura 1.3 Agente inteligente

    AGENTE AMBIENTE

    Percepo atravs de sensores

    Atuao atravs de atuadores

    Fonte: Do autor (2014).

    Um agente humano, por exemplo, tem olhos e ouvidos como sensores e in-terage com o ambiente atravs de suas mos, pernas, boca etc. Se considerarmos um agente computacional, como um sistema ou um rob, seus sensores seriam o teclado, o mouse, uma cmera ou um microfone e este agiria sobre o ambiente atravs da exibio de resultados em algum dispositivo de sada como monitor ou impressora ou atravs de motores que o movimentariam no ambiente.

    Para ilustrar essas ideias, Russel e Norvig (2004) descrevem um mundo fictcio de um aspirador de p com apenas dois locais: os quadrados A e B e apenas trs aes possveis: direita, esquerda, aspirar. O modelo pode ser visualizado na Figura 1.4 e as aes na Tabela 1.2.

    Figura 1.4 Exemplo de atuao de agente

    A B

    Fonte: Do autor (2014).

    INTELIGENCIA.indb 10 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 11

    Tabela 1.2 Sequncia de aes do agente

    Sequncia de percepes Ao

    [A, limpo] DIREITA

    [A, sujo] ASPIRAR

    [B, limpo] ESQUERDA

    [B, sujo] ASPIRAR

    Fonte: Adaptada de Russel e Norvig (2004).

    Nesse exemplo, o agente inicialmente avalia o quadrado no qual est e a condio do mesmo atravs de seus sensores (limpo ou sujo). Uma vez feita a avaliao, o agente toma a deciso e atua no ambiente atravs de seus atuado-res aspirando a sujeira ou movendo-se para a direita ou para a esquerda. Por exemplo, caso o agente entenda que o ambiente A esteja limpo, este se desloca para a direita, buscando um ambiente que esteja sujo. Caso o agente esteja em B e perceba a existncia de sujeira, a ao tomada a de aspirar a sujeira.

    No exemplo do aspirador existe um problema na ao deste em uma si-tuao especfica que resultar em aes desnecessrias. Identifique qual a situao problemtica e sugira uma maneira para corrigi-la atravs da adio ou da remoo de aes.

    Atividades de aprendizagem

    Outra classificao comum dos agentes computacionais de acordo com suas propriedades, conforme descrito na Tabela 1.3. Por exemplo, um agente classifi-cado como autnomo quando consegue tomar decises para o cumprimento de seu objetivo sem a interferncia do usurio final e confivel quando suas informaes so verdicas e suas aes em conformidade com o que foi pr-definido.

    Tabela 1.3 Propriedades dos agentes inteligentes

    Propriedade Descrio

    AutonomiaCapacidade de tomar aes para o cumprimento de determinado objetivo sem a interferncia do usurio final.

    Aprendizagem Capacidade de alterar seu comportamento com base em experincias prvias.

    Comunicabilidade Capacidade do agente de se comunicar com outros agentes.

    continua

    INTELIGENCIA.indb 11 7/11/14 1:51 PM

  • 12 I N T E L I G N C I A A R T I F I C I A L

    ConfiabilidadeCapacidade do agente em demonstrar veracidade nas informaes mostra-das e aes realizadas em nome do usurio.

    CooperatividadeCapacidade de mais de um agente agir em conjunto, buscando um obje-tivo comum.

    DegradaoCapacidade de um agente de completar a tarefa mesmo se alguma anoma-lia no sistema estiver ocorrendo.

    FlexibilidadeHabilidade dos agentes em alterar o fluxo de execuo em decorrncia de algum evento do ambiente.

    Inteligncia Capacidade de negociar com ambiguidades.

    PersistnciaCapacidade do agente de manter um estado interno conciso com o passar do tempo.

    Proatividade No somente respondem ao ambiente, mas perseguem um objetivo.

    PersonalizaoCapacidade do agente de aprender com o usurio e adaptar suas aes de acordo com ele.

    Fonte: Adaptada de Faraco (1998).

    1.3 AmbientesOs ambientes de tarefas so basicamente os problemas para os quais os

    agentes devem encontrar as solues. No exemplo do aspirador, nosso am-biente era composto por dois quadrados A e B, sendo que este poderia estar sujo ou limpo.

    A variedade de ambientes de tarefas que podem surgir em IA bastante variada, e por esse motivo procuramos classific-los por algumas propriedades especficas. Russel e Norvig (2004) definem os seguintes tipos de ambientes:

    1. Completamente observvel e parcialmente observvel se os sensores de um agente conseguem definir o estado completo do ambiente em cada instante, o ambiente da tarefa considerado completamente ob-servvel. A vantagem desse tipo de ambiente que o agente no precisa acessar informaes anteriores do ambiente ou manter algum tipo de memria auxiliar para armazenar cada estado. Um exemplo de ambiente parcialmente observvel seria um jogo de domin (Figura 1.5). Em cada jogada o jogador consegue perceber quantas e quais pedras esto na mesa e tomar sua deciso com base nisso. A memria das jogadas an-teriores no influencia o ambiente atual e consequentemente a atuao do agente no mesmo.

    continuao

    INTELIGENCIA.indb 12 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 13

    Figura 1.5 Ambiente completamente observvel

    Fonte: Clipart (2010).

    Um ambiente parcialmente observvel aquele em que os sensores definem somente o estado parcial do ambiente e a definio do estado completo depende de algum tipo de memria auxiliar. Podemos citar como exemplo um jogo de pquer (Figura 1.6). O fato de determinado jogador ter pegado cartas em um estado anterior do ambiente pode influenciar na deciso a ser tomada pelo agente, ou seja, as jogadas anteriores influenciam o es-tado atual do ambiente e consequentemente a atuao do agente sobre o mesmo. Nesse tipo de ambiente, o agente deve empregar algum tipo de memria auxiliar para armazenar os estados anteriores relevantes.

    Figura 1.6 Ambiente parcialmente observvel

    Fonte: Clipart (2010).

    INTELIGENCIA.indb 13 7/11/14 1:51 PM

  • 14 I N T E L I G N C I A A R T I F I C I A L

    2. Determinstico e estocstico se o prximo estado do ambiente pode ser determinado pelo estado atual e pela ao executada pelo agente, dizemos que o ambiente determinstico. Um exemplo seria um jogo de xadrez, no qual caso um jogador mova uma pea do local a1 de um tabuleiro para o local a2 do mesmo tabuleiro n vezes, o resultado ser sempre o mesmo (Figura 1.7). Em um ambiente estocstico, a mudana do estado atual para o prximo estado por ao do agente no pode ser prevista. Como exemplo, podemos citar um jogo de dados, no qual no possvel prever o resultado de cada jogada (Figura 1.8).

    Figura 1.7 Ambiente determinstico

    Fonte: Clipart (2010).

    Em 1997, a IBM lanou um desafio ao ento campeo mundial de xadrez Garry Kasparov. O desafio consistia em enfrentar o supercomputador inteligente DEEP BLUE, elaborado com a finalidade de jogar xadrez. Para mais detalhes sobre os jogos entre Garry Kasparov e DEEP BLUE, acesse o site: .

    Para saber mais

    INTELIGENCIA.indb 14 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 15

    Figura 1.8 Ambiente estocstico

    Fonte: Clipart (2010).

    3. Esttico e dinmico Se o ambiente se alterar durante a atuao do agente, dizemos que este dinmico. Um agente que tentasse simular o comportamento de um motorista no trnsito estaria em um ambiente dinmico, pois todos os demais elementos do ambiente se movimentam ao mesmo tempo e de forma independente. Outro exemplo seria uma mesa de pebolim, na qual cada jogador deve observar continuamente o movimento do outro para decidir o que fazer, conforme ilustrado na Figura 1.9.

    Figura 1.9 Ambiente dinmico

    Fonte: Clipart (2010).

    INTELIGENCIA.indb 15 7/11/14 1:51 PM

  • 16 I N T E L I G N C I A A R T I F I C I A L

    Em um ambiente esttico, cada elemento que o compe no sofre alte-rao durante a atuao do agente. Nesses ambientes, a manipulao mais fcil, pois o agente no precisa fazer observao contnua ou se preocupar com a passagem do tempo enquanto decide sua atuao. Como exemplo, podemos citar o jogo de sinuca, no qual um jogador joga de cada vez (Figura 1.10).

    Figura 1.10 Ambiente esttico

    Fonte: Clipart (2010).

    4. Discreto e contnuo a distino entre discreto e contnuo pode se aplicar ao estado do ambiente, ao modo como o tempo tratado e s percepes e aes do agente. Um ambiente de estados considerado discreto quando o nmero total de estados pode ser contado, como, por exemplo, um jogo de xadrez. Apesar de existirem diversas possibi-lidades, as peas em um jogo de xadrez possuem um nmero finito de posies disponveis, o que torna o ambiente discreto. Por outro lado, um agente que simulasse o comportamento de um motorista no trnsito estaria em um ambiente contnuo, pois o nmero de possibilidades para a posio desse veculo em relao velocidade, a rotao do volante e aos outros veculos praticamente infinito.

    INTELIGENCIA.indb 16 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 17

    5. Agente nico e multiagente um agente que procurasse resolver um jogo de palavras cruzadas estaria em um ambiente de agente nico, enquanto um agente que jogasse pingue-pongue (Figura 1.11) estaria em um ambiente de dois agentes. Outro aspecto a ser considerado a maneira como os agentes se comportam em relao um ao outro. No caso do jogo de pingue-pongue, cada agente tentaria derrotar o outro, o que o classifica como um ambiente multiagente competitivo.

    Figura 1.11 Ambiente multiagente competitivo

    Fonte: Clipart (2010).

    Podemos citar um time de futebol como exemplo de ambiente multiagente cooperativo (Figura 1.12). Nesse caso, considerando somente um time, to-dos os agentes esto cooperando para um resultado comum. Ao aumentar o escopo e considerar os dois times, estaramos em um ambiente multiagente competitivo.

    INTELIGENCIA.indb 17 7/11/14 1:51 PM

  • 18 I N T E L I G N C I A A R T I F I C I A L

    Figura 1.12 Ambiente multiagente cooperativo

    Fonte: AGIF/Shutterstock (2014).

    A determinao do tipo de ambiente em que um agente est nem sempre to simples. A maioria das situaes reais se enquadra em mais de uma categoria. O exemplo do motorista que foi citado anteriormente poderia ser classificado como parcialmente observvel, estocstico, dinmico, contnuo e multiagente competitivo. A Tabela 1.4 mostra alguns exemplos de ambientes e sua classificao de acordo com os critrios supracitados.

    Tabela 1.4 Exemplos de ambientes de tarefas e suas caractersticas

    Ambiente Observvel Determinstico Esttico Discreto Agentes

    Palavras cruzadas

    Xadrez com relgio

    Completamente

    Completamente

    Determinstico

    Estocstico

    Esttico

    Esttico

    Discreto

    Discreto

    nico

    Multi

    Pquer Parcialmente Determinstico Esttico Discreto Multi

    Direo de txi

    Diagnstico mdico

    Parcialmente

    Parcialmente

    Estocstico

    Estocstico

    Dinmico

    Dinmico

    Contnuo

    Contnuo

    Multi

    nico

    Anlise de imagens Completamente Determinstico Esttico Contnuo nico

    Instrutor interativo de idiomas

    Parcialmente Estocstico Dinmico Contnuo Multi/nico

    Fonte: Adaptada de Russel e Norvig (2004).

    INTELIGENCIA.indb 18 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 19

    Considerando as definies de tipo de ambiente vistas nesta seo, cite um jogo de videogame ou computador que voc conhea e classifique-o de acordo com os critrios mostrados na Tabela 4.

    Atividades de aprendizagem

    Voc saberia responder quais servios e sistemas voc utiliza em seu dia a dia que empregam tcnicas de Inteligncia Artificial para fornecer melhores resultados?

    Questes para reflexo

    INTELIGENCIA.indb 19 7/11/14 1:51 PM

  • 20 I N T E L I G N C I A A R T I F I C I A L

    Seo 2 Representao do conhecimento e resoluo de problemas atravs da busca

    Para que exista inteligncia, pressupe-se algum tipo de conhecimento. Voc ver algumas das tcnicas mais utilizadas para a representao do conheci-mento nos sistemas ditos inteligentes. Demonstraremos essas tcnicas atravs de exemplos prticos e exerccios, destacando os pontos fortes e fracos de cada uma. A aplicabilidade dessas representaes do conhecimento em tcnicas de Inteligncia Artificial ser vista com mais detalhe nas Unidades 2, 3 e 4.

    Mostraremos, ainda nesta seo, que diversos problemas da Inteligncia Artifi-cial podem ser resolvidos utilizando espaos de busca. Evidenciaremos a eficincia dessa estratgia e a semelhana que ela possui com a estratgia que ns, humanos, adotamos para a resoluo de problemas, mesmo que de forma inconsciente.

    Para encerrar a seo, abordaremos heursticas e detalharemos os algoritmos de busca em profundidade e busca em largura com vista s diferenas entre ambos.

    2.1 Representao do conhecimentoUma das principais dificuldades na resoluo de problemas atravs de

    IA a representao do conhecimento. Para Lugger (2002), a representao da informao para ser usada na soluo inteligente de problemas oferece desafios importantes e difceis que se encontram no mago da IA. Fernandes (2008) afirma que para resolver os problemas mais complexos encontrados na IA, necessria uma grande quantidade de conhecimentos representados pelo computador e certos mecanismos para manipul-los. E Coppin (2010) comple-menta, dizendo que para um computador estar apto a resolver um problema relacionado ao mundo real, ele primeiro precisa de um meio para representar aquela situao real internamente. Ao lidar com aquela representao interna, o computador torna-se capaz de solucionar problemas.

    Rich (1993) coloca cinco caractersticas que o conhecimento representado para um problema de IA deve possuir:

    1. As situaes de generalizao, nas quais elementos que compartilham propriedades importantes so agrupadas para evitar consumo excessivo de memria e atualizao;

    INTELIGENCIA.indb 20 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 21

    2. O conhecimento deve ser passvel de compreenso pela pessoa que o fornece ou que avalia o resultado;

    3. Deve ser facilmente modificado para corrigir erros e refletir mudanas do mundo e da viso do mundo que o usurio possui;

    4. Deve ser usado em inmeras situaes, mesmo que no seja totalmente preciso nem esteja completo;

    5. Sirva de ajuda para superar seu prprio volume, auxiliando a limitar as vrias possibilidades que em geral devem ser consideradas.

    O modo como um computador representa um problema, as variveis que ele usa e os operadores aplicados a essas variveis podem fazer a diferena entre um algoritmo eficiente e um algoritmo que no funciona, especialmente para problemas que utilizam a busca (COPPIN, 2010). Concluindo, uma representao eficiente do conhecimento deve ser concisa, facilmente armazenvel e recupervel, legvel pelo especialista e passvel de representao de restries, de forma a facilitar o trabalho do motor de inferncia. A seguir apresentamos algumas das principais formas atravs das quais o conhecimento representado em sistemas de IA.

    2.1.1 Redes semnticas

    Uma representao de conhecimento bastante utilizada na IA so as redes semnticas. Uma rede semntica consiste de um conjunto de nodos conectados por arestas nas quais os nodos representam objetos e as arestas representam a relao entre eles. Uma rede semntica essencialmente um grafo.

    Grafos so estruturas utilizadas para as mais diversas finalidades dentro da computao. Como exemplo, podemos citar os sistemas de GPS. Para saber mais sobre os grafos e suas propriedades, acesse o link: .

    Para saber mais

    Digamos que exista a necessidade de representar as caractersticas de um objeto guia, indicando que esta tem asas, uma ave de rapina e come carne. A rede semntica para ilustrar essa situao est na Figura 1.13.

    INTELIGENCIA.indb 21 7/11/14 1:51 PM

  • 22 I N T E L I G N C I A A R T I F I C I A L

    Figura 1.13 Exemplo de rede semntica

    Rapina

    guiatem

    comede

    Asas

    CarneAve

    Fonte: Do autor (2014).

    O quadrado com a palavra guia o que chamamos de NODO. O rela-cionamento do nodo guia com o nodo Asas representado por uma aresta com a palavra TEM, ou seja, pode-se inferir, atravs da rede semntica, que a guia tem asas. O tipo de relacionamento pode variar, como podemos ver nas arestas que indicam uma ao da guia (come) e o que ela ().

    Apesar de serem de fcil leitura e compreenso, especialmente pelo usurio

    fi nal, as redes semnticas apresentam algumas desvantagens:

    granularidade muito fina;

    dificuldade de manuteno de consistncia semntica em domnios complexos;

    falta de um mecanismo de inferncia naturalmente associado represen-tao do conhecimento.

    2.1.2 Roteiros

    Coppin (2010) define roteiro como uma estrutura de dados usada como uma representao estruturada para uma situao que pode ser desmembrada em uma sequncia de eventos. Para Luger (2002), os roteiros so bastante usados em sistemas de compreenso de linguagem natural para organizar uma base de conhecimento em termos de situaes que o sistema deve compreender. A utilizao de roteiros em IA baseia-se na ideia de que uma dada situao usualmente possui um conjunto finito de conhecimento necessrio para que se determine de que forma agir.

    Um roteiro geralmente composto por:

    condies de entrada pr-condies do mundo que devem ser verda-deiros para que o roteiro seja chamado;

    resultados fatos que devem ser verdadeiros ao final da execuo do roteiro;

    acessrios elementos que compem o ambiente a ser descrito;

    INTELIGENCIA.indb 22 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 23

    papis determinam as aes que os participantes realizam;

    episdios unidades temporais dos acontecimentos dos roteiros.

    Atravs da combinao de entidades e papis, um roteiro seria capaz de responder perguntas sobre determinadas situaes que no estejam explcitas na descrio dele. Coppin (2010) utiliza a pequena histria para exemplificar a atuao de um roteiro: Fred foi ao seu restaurante favorito. A comida no estava to boa como de costume. No caminho para casa, percebeu que havia esquecido sua carteira.

    O sistema de roteiro seria capaz de identificar que Fred o cliente e que existem uma garonete e um cozinheiro envolvidos na situao. Questes como Fred comeu no restaurante? seriam respondidas por associao.

    importante destacar que os roteiros so bastante especficos e que seu funcionamento depende muito da criao de episdios. No caso do restau-rante mostrado acima, poderamos ter episdios para as aes de entrar, fazer o pedido, pagar a conta, ir ao banheiro etc.

    O Quadro 1.1 ilustra um exemplo de roteiro para a atividade de comer em um restaurante.

    Quadro 1.1 Exemplo de roteiro

    1. Roteiro: comer-em-restaurante.

    2. Apoio: (restaurante, dinheiro, alimento, menu, mesas, cadeiras).

    3. Funes: (pessoas com fome, encontro de pessoas).

    4. Ponto-de-vista: (pessoas com fome).

    5. Tempo-de-ocorrncia: (tempo-de-operao do restaurante).

    6. Lugar-de-ocorrncia: (localizao do restaurante).

    7. Sequncia-de-eventos.

    8. Primeiro: inicie o roteiro entrada-no-restaurante.

    9. Se (h-convite-para-sentar ou reservas) ento, siga roteiro orientao -do -garom.

    10. Siga roteiro aguarde-sentado.

    11. Siga roteiro solicite-comida.

    12. Siga roteiro comer, a menos que haja uma longa espera, caso emque seguir o roteiro sai-do-restaurante-furioso.

    Fonte: Adaptado de Silveira e Rosenberg (2007).

    INTELIGENCIA.indb 23 7/11/14 1:51 PM

  • 24 I N T E L I G N C I A A R T I F I C I A L

    2.1.3 Quadros

    Os quadros (frames) foram introduzidos para permitir a expresso das es-truturas internas dos objetos, mantendo a possibilidade de representar herana de propriedades (BITTENCOURT, 2006). So especialmente prticos para a utilizao em Sistemas Especialistas. Podemos dizer que essencialmente um quadro uma estrutura que tem um nome e um conjunto de pares atributo--valor. A Figura 1.14 ilustra o mesmo exemplo da guia visto anteriormente, mas desta vez representado por quadros.

    Figura 1.14 Quadros

    Quadro: ave_um: ROOTtem: asas

    Quadro: ave_de_rapina_um: avecome: carne

    Fonte: Do autor (2014).

    O quadro direita apresenta trs propriedades: nome, _um e tem. Ele visa representar uma estrutura mais genrica para qualquer ave, informando que o quadro raiz da relao e que tem asas. A utilizao da herana neste caso se d pela propriedade asas, uma vez que todas as aves tm asas. Todas as instncias de um quadro herdam suas propriedades, valores e restries. O quadro esquerda uma especializao do quadro ave, indicando que se trata de uma ave de rapina que come carne. As propriedades de um quadro em geral tm um tipo especfico (string, booleano, inteiro, real, etc) no sentido de facilitar sua representao posterior no sistema. O relacionamento entre os quadros definido pela propriedade _um.

    Para a construo de um sistema de quadros, definem-se as propriedades que caracterizam a categoria correspondente. As propriedades normalmente definidas para os quadros so:

    nome;

    classe em que est contido;

    atributos que qualificam a categoria e todas as suas subclasses;

    tipos de dados e intervalos que os atributos podem assumir;

    relaes entre o quadro e os demais do sistema.

    A principal desvantagem da utilizao dos quadros que em geral as estruturas que comportam o processamento e as regras a serem aplicadas s propriedades no esto neles mesmos, aumentando a complexidade da soluo.

    INTELIGENCIA.indb 24 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 25

    2.1.4 Regras de produo

    As regras de produo resultam da transformao de um problema com-putacional em um grafo de estados que possui um estado inicial e um ou n estados finais, sendo estes identificveis quando atingidos.

    Luger (2002) define as regras de produo como um sistema que fornece controle guiado por um processo de soluo de problemas, consistindo de um conjunto de regras, uma memria de trabalho e um ciclo de controle.

    Arajo (2004) afirma que as regras representam conhecimentos heursticos tipicamente na forma Se (condies) e Ento (concluses). Muitos Sistemas Especialistas utilizam regras de produo aliadas a uma mquina de infern-cia para realizar sua tarefa. Como exemplo de regras de produo considere a Tabela 1.5, na qual mostrada a clssica representao de conhecimentos sobre alguns animais.

    Tabela 1.5 Exemplo de regras de produo

    1. Se (produz_leite ^tem_pelos) Ento (mamfero)

    2. Se (mamfero ^come_carne) Ento (carnvoro)

    3. Se (mamfero ^possui_presas^possui_garras) Ento (carnvoro)

    4. Se (mamfero ^possui_casco) Ento (ungulado)

    5. Se (carnvoro ^ pardo ^ pintado) Ento (ona)

    6. Se (carnvoro ^ pardo ^ listrado) Ento (tigre)

    7. Se (ungulado ^ pardo ^ pintado) Ento (girafa)

    8. Se (ungulado ^ branco ^ listrado) Ento (zebra)

    Fonte: Adaptada de Arajo (2004).

    A regra Se (produz_leite ^ tem_pelos) Ento (mamfero) pode ser entendida como uma instanciao de x [(produz_leite(x) ^ tem_pelos(x)) mamfero(x)]. A partir de fatos conhecidos sobre um dado animal A, do tipo {tem_pelos(A), produz_leite(A), come_carne(A), pardo(A), pintado(A)}, pode-se concluir que A uma (ona). Quando se busca verificar qual a concluso a ser obtida a partir dos dados, diz-se que o encadeamento progressivo (ARAJO, 2004).

    A memria de trabalho armazena o estado atual do mundo em um processo de raciocnio. Quando o elemento da condio de uma regra encontra-se com o contedo da memria de trabalho, a ao associada condio pode ser realizada (LUGER, 2002).

    INTELIGENCIA.indb 25 7/11/14 1:51 PM

  • 26 I N T E L I G N C I A A R T I F I C I A L

    Finalmente, o ciclo de controle definido como o agente que dispara as regras e modifica o contedo da memria de trabalho. Aps o disparo das re-gras de produo, o ciclo de controle se repete, usando o contedo modificado da memria de trabalho at que o contedo da memria de trabalho no se encontre em nenhuma condio de regra.

    2.1.5 Representao procedimental

    Para utilizar uma representao procedimental, preciso estender sua funcionalidade com um interpretador que siga as instrues fornecidas no conhecimento. O conhecimento procedimental passa por um conjunto de etapas sequenciais para encontrar solues para problemas, sendo usualmente representado atravs de regras encadeadas ou rvores de deciso.

    Rich (1993) destaca as principais vantagens da representao procedimental do conhecimento:

    a facilidade em representar o conhecimento de como fazer as coisas;

    a facilidade em representar o conhecimento que no se enquadra dentro de muitos esquemas declarativos simples, como, por exemplo, o racioc-nio por omisso e o raciocnio probabilstico;

    a facilidade em representar o conhecimento heurstico de como fazer eficientemente as coisas.

    No Quadro 1.2 apresentamos um exemplo de representao procedimental do conhecimento.

    Quadro 1.2 Representao procedimental do conhecimento

    (Jos (_um (pessoa)) (nascimento (dia 27) (ms maio) (ano 1979)) (altura 1.78) (idade (calcular (agora - (ano de nascimento))))

    Fonte: Do autor (2014).

    Explique detalhadamente as diferenas entre as redes semnticas e os quadros, fornecendo exemplos.

    Atividades de aprendizagem

    INTELIGENCIA.indb 26 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 27

    2.2 Resoluo de problemas atravs da buscaCoppin (2010) coloca que muitos problemas em IA podem ser representados

    como um espao de busca, e esse espao uma representao do conjunto de possveis escolhas de um dado problema e uma ou mais destas escolhas a soluo. Luger (2002) afirma que essa estratgia apoiada por uma viso de senso comum de resoluo de problemas por seres humanos, na qual geral-mente so consideradas vrias alternativas diferentes sobre o modo de resolver um problema. rvores so estruturas de dados geralmente utilizadas para essa representao.

    Na Figura 1.15 est ilustrado um exemplo de espao de busca em rvore. O estado inicial representado pela letra A e, a partir desse estado, pode-se optar pelos caminhos B ou C, que representam solues parciais do problema. Se a soluo adotada for representada por B, a partir da existem as possibilidades D, E e F. Se a soluo adotada for a representada por C, pode-se optar pelas solues G ou H. Na figura temos a letra G destacada em cinza, identificando uma resposta para o espao de busca. Nesse caso, a soluo do problema estaria em seguir o caminho A, C e finalmente G.

    Figura 1.15 Espao de busca

    A

    B

    D E F

    c

    G H

    Fonte: Do autor (2014).

    Para exemplificar melhor, consideremos como espao o jogo da velha (Fi-gura 1.16). Em qualquer configurao do tabuleiro, existe um nmero finito de movimentos que um jogador pode fazer. No foram colocadas todas as jogadas possveis por motivo de simplificao.

    INTELIGENCIA.indb 27 7/11/14 1:51 PM

  • 28 I N T E L I G N C I A A R T I F I C I A L

    As estruturas de rvores so largamente utilizadas na cincia da computao. Informaes adicionais sobre o tema podem ser encontradas em: .

    Para saber mais

    Figura 1.16 Espao de busca de um jogo da velha

    Fonte: Do autor (2014).

    Na Figura 1.16, temos destacado pela letra a o estado inicial da busca, onde nenhum jogador fez qualquer movimento ainda. Considerando que o primeiro jogador o X, existem nove possibilidades distintas de jogada para ele. A le-tra b destaca a jogada do primeiro jogador. A partir desse momento, a busca reduz o nmero de possibilidades da prxima jogada, uma vez que todas as possibilidades devem agora partir da e seguir esse caminho no grafo. Existem somente oito possibilidades de jogada para o prximo jogador, uma vez que um quadrante do tabuleiro j foi preenchido. O segundo jogador, representado pelo O, faz sua jogada, destacada pela letra c. A partir da, somente existem sete possibilidades para o prximo jogador e estas devem respeitar as jogadas anteriores. Novamente o jogador representado pelo X faz sua jogada e o n-

    INTELIGENCIA.indb 28 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 29

    mero de possibilidades reduz novamente. Essa representao nos permite tratar todos os jogos possveis do jogo da velha como caminhos atravs deste grafo. Uma estratgia de jogo vencedora far uma busca no grafo por caminhos que anteriormente conduziram ao nmero maior de vitrias e menor de derrotas. O caminho definido pela busca a soluo do problema.

    Os seres humanos usam um processo de busca semelhante para a resoluo de problemas. Por exemplo, um jogador de xadrez examina diversas possibi-lidades de jogada antes de efetivamente realizar seu movimento. Um mdico analisa vrios diagnsticos possveis antes de decidir, um programador avalia diversos algoritmos e estruturas antes de efetivamente implementar a soluo.

    A principal diferena entre o mecanismo de busca mostrado no exemplo do jogo da velha, passvel de implementao em um sistema computacional, e o utilizado pelos seres humanos que nos seres humanos a resoluo de problemas no considera todas as opes possveis. Aparentemente, resolvemos problemas atravs de regras de julgamento que guiam nossa busca pelo espao de estados, considerando apenas as opes consideradas mais promissoras. Por exemplo, se voc chegar a um mecnico dizendo que seu carro est com problema de aquecimento no motor, dificilmente o mesmo avaliar o estado de seus pneus, apesar de isso ser parte do espao de busca existente.

    Essas regras so conhecidas como heursticas (a palavra vem do grego descobrir) e constituem um dos tpicos centrais da pesquisa em IA. Uma heurstica uma estratgia para a busca seletiva de um espao de problema. Ela guia nossa busca ao longo de linhas que tm alta probabilidade de sucesso evitando esforo desnecessrio (RUSSEL; NORVIG, 2004). Fernandes (2008) define heurstica como um meio de solucionar problemas complexos, para os quais no h disponvel uma abordagem mais direta. A seguir apresentamos algumas estratgias de busca utilizadas na IA.

    2.2.1 Busca cega

    A busca cega (tambm chamada de busca exaustiva ou busca de fora bruta) considerada a mais simples abordagem de busca, pois envolve simplesmente visitar cada n do espao de busca e test-lo para verificar se um n objetivo. Se for, a busca teve sucesso e no precisa ser levada adiante (COPPIN, 2010).

    Essa estratgia de busca normalmente utilizada quando no existe co-nhecimento adicional sobre o problema. Um exemplo seria voc precisar encontrar a casa de seu amigo em determinada rua que voc no conhece. A

    INTELIGENCIA.indb 29 7/11/14 1:51 PM

  • 30 I N T E L I G N C I A A R T I F I C I A L

    nica informao disponvel que a casa dele a casa de nmero 241. Voc buscaria casa por casa (n) at encontrar a casa que seria identificada como a de seu amigo (n objetivo).

    Coppin (2010) ainda define que essa estratgia de busca deve possuir um gerador adequado que satisfaa a trs propriedades:

    1. Ele deve ser completo e gerar (buscar) todas as solues possveis, caso contrrio, uma soluo adequada poderia no ser encontrada. No exem-plo da casa de nosso amigo, isso seria o equivalente a pular algumas casas da rua sem observar o nmero da casa do amigo.

    2. No se deve buscar a mesma soluo mais de uma vez. Em geral, isso conseguido atravs da utilizao de algum tipo de memria de trabalho, na qual so armazenados os ns j gerados (visitados). No nosso exem-plo, isso seria como verificar mais de uma vez a mesma casa procurando pelo nmero 241.

    3. Ele deve restringir a busca ao espao de busca pertinente ao problema informado. No exemplo citado anteriormente, no buscaramos a casa de nosso amigo em uma rua diferente da que nos foi informada, pois isso seria fugir do espao de busca.

    2.2.2 Busca em largura

    Fernandes (2008) define a busca em largura como uma busca que utiliza o critrio First In-First Out (FIFO), em que todos os ns de certo nvel da rvore so examinados antes do nvel seguinte, sempre da esquerda para a direita. Coppin (2010) afirma que a busca em largura mais adequada a problemas nos quais a rvore pode ter caminhos muito profundos pois, nesses casos, o tempo para encontrar a soluo seria menor. A Figura 1.17 ilustra o caminho a ser percorrido em uma rvore de quatro nveis sendo varrida com a busca em largura. Nessa rvore, o n soluo (representado pela letra I) est colorido em cinza. O n A representa a raiz de nossa rvore e o nvel 0 da mesma, por esse motivo o primeiro a ser buscado. Como o algoritmo no encontrou a soluo no nvel 0, passa-se para o nvel 1 da rvore, representado pelos ns B e C. Os ns B e C so buscados nessa ordem, concluindo a busca desse nvel da rvore tambm sem sucesso. O prximo nvel da rvore o nvel 2, representado pelos ns D, E e F, que so buscados nessa sequncia. O algoritmo ainda no encontrou a soluo e passa para o nvel 3 da rvore, representado pelo ns G, H, I, J e K.

    INTELIGENCIA.indb 30 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 31

    O algoritmo busca sequencialmente os ns G e H at finalmente encontrar o n objetivo em I. Ao lado de cada n est ilustrado o nmero de passos e a sequncia do algoritmo de busca at encontrar a soluo do problema. No exemplo em questo, foi necessrio varrer nove ns para encontrar a resposta.

    Figura 1.17 Busca em largura

    A

    D

    B C

    I JG H

    E F

    K

    1

    2

    4 5 6

    7 8 9

    3

    Fonte: Do autor (2014).

    2.2.3 Busca em profundidade

    A busca em profundidade assim chamada pois segue cada caminho at a maior profundidade possvel antes de seguir para o prximo caminho. Luger (2002) afirma que na busca em profundidade, quando um estado examinado, todos os seus filhos e os descendentes deles so examinados antes de qualquer um de seus irmos, se aprofundando no espao de estados sempre que poss-vel. Na Figura 1.18 mostramos a rvore de estados do exemplo anterior sendo agora varrida por um algoritmo de busca em profundidade.

    INTELIGENCIA.indb 31 7/11/14 1:51 PM

  • 32 I N T E L I G N C I A A R T I F I C I A L

    Figura 1.18 Busca em profundidade

    A

    D

    B C

    I JG H

    E G

    K

    1

    2

    3 7 6

    4 5 9

    6

    Fonte: Do autor (2014).

    Nesse exemplo, o primeiro nodo a seguir o mesmo do exemplo anterior com a busca em largura, pois A representa a raiz da rvore. O prximo passo verificar os filhos de A recursivamente at que os mesmos no tenham mais descendentes. O primeiro filho de A B, que passa a ser verificado. Como a soluo ainda no foi encontrada em B, aplica-se a recurso e passa-se a buscar os seus descendentes. Como B somente tem um descendente, a busca passa para ele. A soluo ainda no foi encontrada em D e passa-se para ns G e H. Um detalhe a ser salientado que o algoritmo procura em D, passa para G, volta para D e da sim procura em H. Essa caracterstica do algoritmo exige que o mesmo SEMPRE mantenha algum tipo de memria de trabalho que permita armazenar os pais de determinado nodo. Por exemplo: ao buscar B, o algoritmo deve manter o registro de A. Ao buscar o n G, o algoritmo deve manter o registro de D, B e A.

    Como a soluo no foi encontrada neste ramo da rvore, o algoritmo volta e procura se B possui algum irmo. O n C irmo de B e passa ento a ser varrido recursivamente pelo algoritmo utilizando o mesmo princpio utilizado no ramo anterior da rvore. A sequncia de busca varre os ns C, E e finalmente I, encontrando o n objetivo.

    Um detalhe importante a ser destacado que o segundo algoritmo foi mais eficiente para encontrar a resposta no exemplo em questo. Utilizando a busca em largura levamos nove passos para identificar o n soluo, enquanto a busca em profundidade levou oito. Quanto mais detalhes forem conhecidos

    INTELIGENCIA.indb 32 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 33

    sobre o problema, mais fcil fica identificar qual o algoritmo mais eficiente para encontrar a soluo. Na Tabela 1.6, Coppin (2010) faz uma comparao entre as buscas em profundidade e em largura.

    Tabela 1.6 Comparao entre algoritmos de busca

    Cenrio Profundidade Largura

    Alguns caminhos so muito longos ou mesmo infinitos.

    Funcional mal Funciona bem

    Todos os caminhos tm comprimentos parecidos.

    Funciona bem Funciona bem

    Todos os caminhos tm comprimentos parecidos e todos os caminhos levam a um estado objetivo.

    Funciona bemDesperdcio de tempo e memria.

    Alto fator de ramificao.O desempenho depende de outros fatores.

    Funciona precariamente.

    Fonte: Coppin (2010).

    O link a seguir traz animaes que ilustram o funcionamento dos dois algoritmos. Acesse e perceba visualmente o comportamento das buscas:

    .

    Para saber mais

    As estruturas de rvore esto inseridas no dia a dia dos profissionais de TI, mesmo que seja de forma implcita. A maioria dos bancos de dados comer-ciais utiliza alguma estrutura de rvore em combinao com algoritmos de busca e ordenao para armazenar e buscar seus dados e ndices de forma mais eficiente.

    Se a IA e suas diferentes tcnicas apresentam tantos benefcios para os sistemas computacionais, por que existem tantos sistemas desenvolvi-dos no mercado que no aplicam esse tipo de tcnica?

    Questes para reflexo

    INTELIGENCIA.indb 33 7/11/14 1:51 PM

  • 34 I N T E L I G N C I A A R T I F I C I A L

    Considerando um problema cujo espao de busca de solues composto por uma rvore que possui um nmero muito grande de nveis e baixo grau de ramificao, assinale a alternativa CORRETA:( ) Para que a busca seja eficiente, deve ser aplicado um algoritmo de

    busca cega.( ) Neste caso especfico, uma busca em profundidade seria mais efi-

    ciente que uma busca em largura.( ) Neste caso especfico, uma busca em largura seria mais eficiente que

    uma busca em profundidade.( ) Neste caso poder-se ia optar por qualquer estratgia de busca pois o

    desempenho no busca da resposta seria idntico.

    Atividades de aprendizagem

    A dificuldade em definir a IA se transforma na dificuldade em definir o significado do termo inteligncia propriamente dito.

    Uma das divises mais aceitas da IA a que trata de sistemas que tentam pensar e agir como humanos e sistemas que tentam pensar e agir racionalmente, sendo que racionalmente, neste caso, significa CORRETO.

    O primeiro trabalho que tratou de IA foi um modelo de neurnios desenvolvido por Warren McCulloch e Walter Pitts em 1943.

    O teste de Turing um dos testes mais conhecidos para determinar se um computador ou no inteligente.

    Algumas das principais reas em que a IA vem sendo utilizada atual-mente so: biometria, fiscalizao de trnsito, jogos, diagnstico mdico, controle autnomo, robtica e na Internet.

    Fique ligado!

    INTELIGENCIA.indb 34 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 35

    O termo agente refere-se a algo que percebe o ambiente por seus sen-sores e atua sobre este, modificando seu estado atravs de atuadores.

    Os ambientes de tarefas so basicamente os problemas que os agentes devem resolver.

    Os ambientes podem ser: completamente ou parcialmente observveis, determinsticos ou estocsticos, esttico ou dinmico, discreto ou con-tnuo, agente nico ou multiagente e cooperativo ou competitivo.

    Uma das grandes dificuldades encontradas na IA a representao do conhecimento.

    Algumas das representaes mais aceitas para o conhecimento em sistemas de IA so: redes semnticas, quadros, roteiros, regras de pro-duo e representao procedimental.

    Muitos problemas em IA podem ser representados atravs de um espao de busca de possibilidades em rvores.

    Essa estratgia apoiada por uma viso de senso comum de resolu-o de problemas por seres humanos, pela qual geralmente so con-sideradas vrias alternativas diferentes sobre o modo de resolver um problema.

    Uma heurstica uma estratgia para a busca seletiva de um espao de problema.

    A busca cega a abordagem mais simples para encontrar a soluo de um problema em um espao de busca, pois envolve simplesmente pesquisar todos os ns at encontrar uma soluo para o problema.

    Na busca em largura todos os ns de certo nvel da rvore so exami-nados em sequncia para ento se passar para o prximo nvel.

    Na busca em profundidade segue cada caminho at a maior pro-fundidade possvel antes de seguir para o prximo caminho, exa-minando todos os descendentes de determinado n antes de avaliar seu irmo.

    INTELIGENCIA.indb 35 7/11/14 1:51 PM

  • 36 I N T E L I G N C I A A R T I F I C I A L

    Assim conclumos o estudo desta primeira unidade do caderno de Inteli-gncia Artificial. Aqui introduzimos alguns conceitos deste vasto campo da cincia e mostramos que, mesmo de maneira sutil, a Inteligncia Artificial faz parte de nossas vidas e torna a utilizao de alguns sistemas e sites mais fcil e eficiente.

    Verificamos que no contexto de sistemas computacionais, sempre que existe inteligncia, deve existir tambm conhecimento e que este deve ser armazenado e representado de forma condizente com a complexidade do problema que se tenta resolver. A eficincia e a acurcia da resposta que o sistema de Inteligncia Artificial fornece dependem em grande parte do tipo de representao utilizada para o conhecimento contido nele.

    Para aprofundar seus estudos, sugerimos a leitura do Captulo 1 de Nor-vig e Russel (2004), que trata do surgimento da Inteligncia Artificial como cincia e da influncia das diversas reas de conhecimento na mesma.

    Sugerimos ainda o curso de Introduo Inteligncia Artificial forne-cido gratuitamente pelo Udacity.com: . O curso ministrado em parte pelo grande autor da rea Peter Norvig e uma excelente oportunidade para rever parte dos conceitos mostrados nesta unidade, alm dos que sero abordados nas demais uni-dades deste caderno.

    Para concluir o estudo da unidade

    1. Considerando um jogo de dardos, no qual o objetivo atirar o dardo o mais prximo possvel do centro do alvo, classifique esse jogo de acordo com os seguintes critrios, justificando:

    completamente ou parcialmente observvel;

    determinstico ou estocstico;

    discreto ou contnuo.

    Atividades de aprendizagem da unidade

    INTELIGENCIA.indb 36 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 37

    2. Classifique um rob que faz parte de um time de futebol de robs de acordo com os seguintes critrios e justifique:

    a) Completamente ou parcialmente observvel.

    b) Determinstico ou estocstico.

    c) Discreto ou contnuo.

    3. Considerando um agente que simulasse o comportamento de um jogador de domin, avalie as seguintes afirmativas:

    I. Este agente est em um ambiente completamente observvel.

    II. Este agente est em um ambiente estocstico.

    III. Este agente est em um ambiente cooperativo.

    IV. Este agente est em um ambiente esttico.

    So VERDADEIRAS as afirmativas:

    ( ) I, II e III.

    ( ) I e III.

    ( ) I, II e IV.

    ( ) I e IV.

    4. Com relao utilizao de tcnicas de busca na resoluo de pro-blemas de Inteligncia Artificial, assinale a alternativa CORRETA:

    ( ) Uma heurstica uma tcnica de busca onde todos os ns da rvore de soluo so buscados sem critrio de seleo at que uma soluo seja encontrada.

    ( ) Na busca cega, inicialmente so verificados todos os descen-dentes de determinado n, para ento proceder com a busca nos outros ramos das rvores.

    ( ) Na busca em profundidade, inicialmente so buscados todos os ns de determinado nvel para s ento se passar ao nvel seguinte.

    ( ) As estratgias de IA que usam busca em uma rvore de possibi-lidades para encontrar a soluo de um problema so baseadas nos procedimentos normalmente adotados pela inteligncia humana para a resoluo de problemas.

    5. Com relao aos conceitos de Inteligncia Artificial relacionados a agente e ambiente, avalie as afirmaes a seguir:

    INTELIGENCIA.indb 37 7/11/14 1:51 PM

  • 38 I N T E L I G N C I A A R T I F I C I A L

    I. Um agente um elemento que percebe um ambiente atravs de seus sensores e atua neste ambiente com seus atuadores, aps tomar uma deciso.

    II. O ambiente basicamente o problema a ser resolvido pelo agente.

    III. Como exemplo de ambiente determinstico, discreto e competitivo podemos citar um jogo de tnis.

    IV. Um ambiente pode ser cooperativo e competitivo ao mesmo tempo, dependendo do ponto de vista;

    Agora, assinale a alternativa que somente contm afirmaes VER-DADEIRAS:

    ( ) I, II, III e IV.

    ( ) II, III e IV.

    ( ) I, II e IV.

    ( ) I e IV.

    INTELIGENCIA.indb 38 7/11/14 1:51 PM

  • I n t r o d u o i n t e l i g n c i a a r t i f i c i a l 39

    Referncias

    ARAJO, Fbio Meneghetti. Controle inteligente. Natal: UFRN, 2004. Disponvel em: . Acesso em: 3 mar. 2014.

    BITTENCOURT, Guilherme. Inteligncia artificial: ferramentas e teorias. 3. ed. Florianpolis: UFSC, 2006.

    COPPIN, Ben. Inteligncia artificial. Rio de Janeiro: LTC, 2010.

    FARACO, Rafael Avila. Uma arquitetura de agentes para negociao dentro do domnio de comrcio eletrnico. Dissertao (Mestrado) Programa de Ps Graduao em Engenharia da Produo, Universidade Federal de Santa Catarina, Florianpolis, 1998.

    FERNANDES, Anita Maria da Rocha. Inteligncia artificial: noes gerais. Florianpolis: UFSC, 2008.

    LUGER, George F. Inteligncia artificial: estruturas e estratgias para a resoluo de problemas complexos. 4. ed. Porto Alegre: Bookman, 2002.

    NORVIG, Peter; RUSSEL, Stuart. Inteligncia artificial. So Paulo: Elsevier, 2004.

    RICH, E.; KNIGHT, K. Artificial intelligence. Nova York: McGraw-Hill, 1993.

    SILVEIRA Ricardo; ROSENBERG Mauro. Representao do conhecimento. Disponvel em: . Acesso em: 3 mar. 2014.

    WOOLDRIDGE, M. Intelligent agents. In: WEISS (Ed.). Multiagent systems. Cambridge: The MIT Press, 1999.

    INTELIGENCIA.indb 39 7/11/14 1:51 PM

  • INTELIGENCIA.indb 40 7/11/14 1:51 PM

  • Unidade 2

    Seo 1: Sistemas especialistas

    Essa seo trata dos conceitos introdutrios para o entendimento sobre Sistemas Especialistas e sua forma particular de atuao.

    Seo 2: Lgica difusa e redes bayesianas: tratamento de incerteza

    Abordaremos a representao de incerteza nos Sis-temas Especialistas atravs da Lgica Difusa e das Redes Bayesianas, demonstrando seu funcionamento de forma prtica em ferramentas computacionais.A unio da teoria do caderno com as demonstraes prticas nas ferramentas computacionais aprimorar ainda mais seu entendimento sobre os SBC. Desejamos a voc um bom aprendizado.

    Objetivos de aprendizagem: Os objetivos de aprendizagem desta unidade so:

    Apresentar os principais conceitos que envolvem o campo da Inteligncia Artificial conhecido como Sistemas Baseados em Conhecimento.

    Especificar o funcionamento de Sistemas Especialistas, Lgica Difusa e Redes Bayesianas.

    Utilizar ferramentas computacionais de forma a poder visualizar a implementao destes sistemas.

    Sistemas baseados em conhecimento

    INTELIGENCIA.indb 41 7/11/14 1:51 PM

  • 42 I N T E L I G N C I A A R T I F I C I A L

    Introduo ao estudo

    Bem-vindo segunda unidade do caderno de Inteligncia Artificial. Trata-remos da subrea da Inteligncia Artificial conhecida como Sistemas Baseados em Conhecimento (SBC). Os SBC so sistemas que utilizam conhecimentos representados de forma explcita para resolver problemas, ou seja, eles so de-senvolvidos para serem utilizados em problemas que requerem uma quantidade considervel de conhecimento humano para serem resolvidos.

    Com o objetivo de melhorar o entendimento do contedo a ser estudado, ele foi dividido em duas sees.

    Seo 1 Sistemas especialistas

    Existe um ramo da IA que conhecido particularmente por classificar os sistemas como sistemas que pensam como humanos. Mas o que significa pensar como humano? Basicamente, significa tentar reproduzir em um sistema computacional o raciocnio de um ser humano ao resolver problemas. Nessa linha da IA se enquadram os sistemas que fazem uso extensivo do conheci-mento em nvel de um especialista humano, chamados de Sistemas Baseados em Conhecimento (SBC).

    Esses sistemas aplicam regras e conhecimento extrados de especialistas humanos para resolver problemas da maneira mais semelhante possvel desses especialistas. Tal estratgia mostra-se vivel em uma larga gama de problemas, como diagnstico mdico, controle de trfego e automao industrial.

    Para facilitar seu entendimento, faremos a comparao entre o raciocnio de um especialista humano e um Sistema Especialista nos mais variados tipos de problemas. Nosso objetivo preparar voc para a engenharia do conhecimento e para a prpria construo de sistemas especialistas, atravs da utilizao das ferramentas sugeridas no texto.

    1.1 Sistemas especialistasOs Sistemas Especialistas (SE) se enquadram em uma categoria especfica da

    IA chamada de SBC, caracterizada especialmente pela utilizao de raciocnio sobre suas possveis aes no mundo (Figura 2.1). Um SBC pode ser definido

    INTELIGENCIA.indb 42 7/11/14 1:51 PM

  • S i s t e m a s b a s e a d o s e m c o n h e c i m e n t o 43

    como um programa que se comporta como um ser humano em um domnio especfico do conhecimento.

    Figura 2.1 Enquadramento dos SE dentro dos SBC e IA

    Inteligncia artifi cial

    Sistemas Especialistas

    Sistemas Baseados em Conhecimento

    Fonte: Do autor (2014).

    O princpio bsico por trs dos sistemas especialistas sua habilidade em reproduzir o conhecimento de um especialista humano em determinado domnio do conhecimento. Luger (2004) afirma que os sistemas especialistas, assim como as pessoas experientes, tendem a ser especialistas, focando sobre um conjunto reduzido de problemas. Fernandes (2008) coloca que um sistema especialista deve ser construdo atravs de seu conhecimento e experincia adquiridos ao longo dos anos. J Harmon e King (1988) definem um sistema especialista como um programa inteligente de computador que usa conheci-mento e procedimentos inferenciais para resolver problemas complexos que geralmente requerem um especialista humano.

    Ao contrrio dos sistemas tradicionais, os sistemas especialistas apresentam algumas facilidades que aumentam sua flexibilidade e eficincia, como:

    possibilidade para construo de regras;

    tomada lgica de decises sob impreciso ou na ausncia de informaes.

    Em um programa tradicional, o mtodo de busca baseado unicamente no conhecimento codificado (geralmente de forma esttica) no sistema. Em caso de novos conhecimentos preciso modificar o cdigo-fonte. Os SE podem

    INTELIGENCIA.indb 43 7/11/14 1:51 PM

  • 44 I N T E L I G N C I A A R T I F I C I A L

    recuperar novos fatos e regras e us-los sem modificar a estratgia de busca (FERNANDES, 2008 apud SABBATINI, 1993).

    Luger (2004) salienta que, por sua natureza heurstica, os SE em geral:

    1. Suportam inspeo de seus processos de raciocnio, apresentando passos intermedirios e respondendo a questes sobre o processo de soluo. O SE deve ser aberto para inspeo, fornecendo informaes sobre o estado de sua soluo e explanao sobre seu processo decisrio. Esse tipo de explanao importante para que um perito humano, como um mdico ou um engenheiro, aceite as recomendaes feitas pelo computador.

    2. Permitem fcil modificao pela adio ou excluso de conhecimentos da base. Por sua natureza exploratria e pelo dinamismo existente na maioria dos domnios de conhecimento, os SE devem ser facilmente implementados, testados e modificados.

    3. Raciocinam heuristicamente, usando conhecimento para obter solues teis. importante salientar que nem todo o conhecimento til para os SE vm de livros e manuais. Em geral, o conhecimento emprico, somente disponvel atravs da experincia dos especialistas, oferece atalhos teis para a soluo de problemas.

    A Tabela 2.1 ilustra algumas das principais diferenas entre os SE e os sis-temas convencionais.

    Tabela 2.1 Diferenas entre os SE e os sistemas tradicionais

    Sistemas especialistas Sistemas convencionais

    Heursticas Algoritmos

    Conhecimento estruturado simbolicamente em uma memria de trabalho

    Bancos de dados numericamente endereados

    Processamento simblico Orientado por processamento numrico

    Processamento interativo Processamento sequencial

    Explicao do fluxo da execuo fcilExplicao do fluxo de execuo complexa, por meio da anlise do cdigo-fonte

    Fonte: Adaptada de Harmon e King (1988).

    O processo de construo de um SE chamado de engenharia de conhe-cimento, e envolve normalmente uma forma especial de interao entre o construtor do sistema, chamado de engenheiro do conhecimento, e um ou

    INTELIGENCIA.indb 44 7/11/14 1:51 PM

  • S i s t e m a s b a s e a d o s e m c o n h e c i m e n t o 45

    mais especialistas. O objetivo desse processo extrair do especialista humano os procedimentos, estratgias e regras para a soluo de problemas (FERNAN-DES, 2008 apud WATERMAN, 1986).

    O processo de aquisio do conhecimento envolve consulta a livros, manuais tcnicos, manuais de procedimentos, normas e entrevista com es-pecialistas humanos, constituindo-se na etapa mais crtica na construo dos SE. Os principais obstculos encontrados na extrao do conhecimento dos especialistas humanos so a dificuldade em se extrair todo o conhecimento e esgotar o domnio, uma vez que parte do conhecimento tcito e no ex-plcito e a dificuldade em conseguir a total cooperao do especialista, uma vez que usualmente existe o temor de ser substitudo pelo sistema.

    Um SE composto por quatro elementos principais:

    1. Base de conhecimento (regras) consiste no conhecimento que foi extrado do especialista humano no domnio, sendo armazenada ge-ralmente na forma de regras SE, ENTO. Por exemplo, um sistema de diagnstico mdico pode possuir a seguinte regra: SE febre > 38 graus ENTO diagnstico = FEBRE_ALTA.

    2. Memria de trabalho (base de fatos) consiste no caso que est sendo apresentado para o SE trazer a resposta. Essa memria de carter transitrio, pois novos fatos esto sendo acrescentados ou excludos continuamente. Com base no exemplo anterior, colaramos um valor numrico para a varivel febre e aguardaramos o diagnstico do sistema.

    3. Mecanismo de inferncia quem faz a juno dos fatos com as regras, chegando a concluses e gerando novos fatos. No exemplo anterior, digamos que febrecontenha o valor40 e que sejaento submetido ao sistema. O mecanismo de inferncia aplicaria o valor 40 (fato) regra definida, chegando ao diagnstico FEBRE_ALTA.

    4. Interface do usurio cuida da comunicao de forma mais amigvel entre o usurio e o sistema, fornecendo tambm noo sobre o processo de resoluo empregado.

    A Figura 2.2 ilustra o processo de engenharia do conhecimento e as partes componentes de um SE:

    INTELIGENCIA.indb 45 7/11/14 1:51 PM

  • 46 I N T E L I G N C I A A R T I F I C I A L

    Figura 2.2 Construo e arquitetura de um SE

    Fonte: Do autor (2014).

    Para diferenciar o raciocnio de um especialista humano, em comparao com o raciocnio de um SE, observe o exemplo abaixo:

    West criminoso ou no?

    A lei americana diz que proibido vender armas a uma nao hostil. Cuba possui alguns msseis, e todos eles foram vendidos pelo Capito West, que americano. Para resolver esse problema, um especialista humano utilizaria trs componentes:

    1. Linguagem: voc entende o que est escrito em portugus.

    2. Conhecimento: voc sabe um pouco de geopoltica e armas.

    INTELIGENCIA.indb 46 7/11/14 1:51 PM

  • S i s t e m a s b a s e a d o s e m c o n h e c i m e n t o 47

    3. Inferncia: voc capaz de raciocinar usando esse conhecimento des-crito em portugus.

    Os Quadros 2.1, 2.2 e 2.3 ilustram o procedimento para resolver o problema atravs de linguagem, conhecimento e inferncia:

    Quadro 2.1 Conhecimento prvio (base de conhecimento) linguagem

    A) Todo americano que vende uma arma a uma nao hostil criminoso.B) Todo pas em guerra com uma nao X hostil a X.C) Todo pas inimigo poltico de uma nao X hostil a X.D) Todo mssil um arma.E) Toda bomba um arma.F) Cuba uma nao.G) Estados Unidos uma nao.H) Cuba inimigo poltico dos Estados Unidos.

    Fonte: Simes (2014).

    Quadro 2.2 Fatos atuais (memria de trabalho) conhecimento

    I) West americano.J) Existem msseis em Cuba.K) Os msseis de Cuba foram vendidos por West.

    Fonte: Simes (2014).

    Quadro 2.3 Concluses parciais, novos fatos e concluso

    Inferncia

    L) Cuba possui um mssel M1M) M1 um msselN) M1 uma armaO) Cuba hostil aos USAP) M1 foi vendido a Cuba por WestR) West criminoso

    de J de J de D e M de F, G, H e C de K, L eM de A, K, N, O e P

    Fonte: Simes (2014).

    O Quadro 2.1 pode ser comparado base de conhecimento, pois l esto as regras e alguns fatos que devem ser considerados na resoluo do problema. O Quadro 2.2 traz a situao atual e anlogo memria de trabalho e, finalmente, o Quadro 2.3 seria o mecanismo de inferncia, gerando novos fatos e a concluso final, informando qual o caminho tomado para chegar a cada concluso.

    INTELIGENCIA.indb 47 7/11/14 1:51 PM

  • 48 I N T E L I G N C I A A R T I F I C I A L

    O Quadro 2.4 demonstra o funcionamento de um SE para diagnstico e tratamento de febre atravs de sua base de conhecimento e suas regras:

    Quadro 2.4 Base de conhecimento de um SE

    Regra FEBRE_LEVESe a temperatura > 36,5 graus e a temperatura < 38 graus e a idade ADULTA entoTipo de febre = FEBRE_LEVEProcedimento: TOMAR_ASPIRINA

    Regra FEBRE_ALTA Se temperatura >38 graus e idade ADULTA entoTipo de febre = FEBRE_ALTAProcedimento: CONSULTA_MEDICA

    Regra FEBRE_LEVE_CRIANASe temperatura > 36,5 graus e temperatura < 38 graus e idade CRIANA entoTipo de febre = FEBRE_LEVEProcedimento: OBSERVAO

    Fonte: Do autor (2014).

    Neste exemplo, alimentaramos a memria de trabalho do SE com os fatos, informando a temperatura da pessoa e se a mesma est na idade adulta ou criana. O mecanismo de inferncia faria a juno dos fatos com as regras e nos daria o diagnstico e o procedimento. Por exemplo, ao dizer que uma criana est com febre de 37o, o SE nos responderia, fundamentado por sua base de conhecimento, que se trata de uma febre leve e que devemos manter a criana em observao.

    Podemos concluir, ento, que os mecanismos de raciocnio adotados por especialistas humanos e pelos SE funcionam de formas semelhantes, o que jus-tifica a eficincia desses sistemas nos mais variados domnios de conhecimento.

    Os SE trabalham com dois tipos de raciocnio:

    Encadeamento regressivo (backward chaining) nesse caso, iniciamos com uma hiptese e raciocinamos para trs na rede de inferncia, bus-cando a confirmao da mesma. Normalmente utilizado quando h a necessidade de verificar se uma hiptese verdadeira, justificando o ra-ciocnio utilizado para chegar nela. Em medicina, por exemplo, algumas observaes iniciais do paciente levam o mdico a gerar alguma hiptese inicial que deve ser confirmada ou rejeitada por evidncias adicionais. Essas evidncias podem ser obtidas usando encadeamento regressivo.

    INTELIGENCIA.indb 48 7/11/14 1:51 PM

  • S i s t e m a s b a s e a d o s e m c o n h e c i m e n t o 49

    Encadeamento progressivo (forward chaining) nesse caso, iniciamos com evidncias e raciocinamos para a frente na rede de inferncia, bus-cando uma concluso. Normalmente utilizado quando existem muitas hipteses disponveis e no h razo para comear por qualquer uma delas. Em geral, o raciocnio progressivo mais natural em tarefas demo-nitoramento nas quais os dados so adquiridos de forma contnua.

    Vamos exemplificar o encadeamento progressivo e regressivo nas Figuras 2.3 e 2.4, respectivamente, utilizando a regra FEBRE_LEVE_CRIANA do Qua-dro 2.4.

    Figura 2.3 Encadeamento progressivo

    Temperatura > 36,5

    Temperatura < 38

    Idade = CRIANA FEBRE_LEVE

    Fonte: Do autor (2014).

    Na Figura 2.3, atravs do encadeamento progressivo, partiramos de evi-dncias como a temperatura e a idade da pessoa, para ento chegarmos concluso de que ela est com FEBRE_LEVE.

    Figura 2.4. Encadeamento regressivo

    Temperatura > 36,5

    Temperatura < 38

    Idade = CRIANA FEBRE_LEVE

    Fonte: Do autor (2014).

    Na Figura 2.4, atravs do encadeamento regressivo, ao ouvir que a pessoa est com febre leve, voltaramos buscando evidncias de que a hiptese da febre verdadeira, como a idade da pessoa e sua temperatura.

    INTELIGENCIA.indb 49 7/11/14 1:51 PM

  • 50 I N T E L I G N C I A A R T I F I C I A L

    Existem dois mtodos para encadeamento nos SE, sendo que cada um mais adequado a algumas situaes especficas. Diferencie concei-tualmente os dois tipos de encadeamento, exemplificando as melhores situaes para cada um deles.

    Atividades de aprendizagem

    1.2 Fator de confianaEm muitos problemas do mundo real, chega-se a uma soluo sob a presena

    de incerteza. A incerteza num domnio de aplicao pode estar presente nos dados de entrada, na soluo do problema ou em ambos. Por exemplo, no caso de diagnstico mdico, os sinais e sintomas que o mdico coleta e trabalha apresentam vrios problemas de incerteza, como: a inexatido dos relatos do paciente e a percepo da intensidade de cada sintoma, entre outros. Alm disso, o prprio raciocnio clnico no pode ser realizado com certeza, isto , podem existir dois pacientes com dois conjuntos similares de sinais e sintomas e seus diagnsticos serem diferentes (NASSAR, 2012).

    Para esse tipo de problemas uma soluo possvel a atribuio de valores que representam os fatores de confiana para as evidncias. Esses valores variam entre 0,0 e 1, sendo que, quanto mais prximo do 1, mais forte a certeza da regra ou do fato. Por exemplo, um fato que tenha fator de confiana igual a 0,4 significa que o sistema tem somente 40% de certeza da ocorrncia daquele fato.

    Podemos observar na Figura 2.5 os fatores de confiana (CF) atribudos aos fatos e s regras. Por exemplo, o fato A tem fator de confiana 0,8, enquanto o fato E tem fator de confiana 0,5. O mesmo princpio se aplica s regras, com fatores de confiana iguais a 1 na regra 1 (R1) e 0,6 na regra 2 (R2). Para definirmos o fator de con-fiana para a concluso obtida, fazemos a multiplicao entre os fatores de confiana dos fatos e das regras. No caso de R1, basta multiplicar 0,8 por 1, obtendo um fator de confiana 0,8 para a concluso B obtida.

    Outra soluo tpica para situaes do mundo real em que existe ne-cessidade de se tratar a incerteza so as Redes Bayesianas e a l-gica difusa, objetos da segunda seo dessa unidade.

    Para saber mais

    INTELIGENCIA.indb 50 7/11/14 1:51 PM

  • S i s t e m a s b a s e a d o s e m c o n h e c i m e n t o 51

    No caso de R2, como a concluso depende da combinao de diversos fatos, escolhemos o fato que possui o menor fator de confiana e multiplicamos pelo fator de confiana da regra. Nesse caso, pegamos o valor 0,5, obtido de E, e multiplicamos por 0,6, obtido de R2, resultando em 0,3 como fator de confiana na concluso B.

    Figura 2.5 Exemplo de fator de certeza (CF)

    FATOS

    A CF = 0,8C CF = 0,9D CD = 0,7E CD = 0,5

    REGRAS

    R1 = Se A ento B CF = 1R1 = Se C e D e E ento B CF = 0,6

    Para R1 0,8 X 1 => CF = 0,8

    Para R2 0,6 X 0,5 => CF = 0,3

    A

    BC

    D

    E

    R1

    R2

    Fonte: Do autor (2014).

    Caso haja mais de um fato ou de uma regra envolvidos na obteno de uma concluso, sempre utilizamos os menores fatores de confiana existentes. A utilizao dessa estratgia assegura que a concluso aparea da forma mais realista possvel e consequentemente que no se tome decises erradas com base nos SE.

    Existem diversas ferramentas que permitem a implementao de SEs no mercado. Para voc experimentar na prtica a criao e utilizao destas ferramentas, recomendamos duas:

    CLIPS disponvel livremente em: ;

    EXPERT SINTA disponvel livremente em: .

    Para saber mais

    As Figuras 2.6 e 2.7 mostram implementaes de sistemas especialistas nas ferramentas CLIPS e EXPERT SINTA, respectivamente.

    INTELIGENCIA.indb 51 7/11/14 1:51 PM

  • 52 I N T E L I G N C I A A R T I F I C I A L

    Figura 2