Inteligência Artificial IF <premise (P)> THEN <decision (D)> UNLESS <censor (C)> Ex.: IF It is Sunday (S) THEN John works in the yard (Y) UNLESS The weather is bad (B) Sistemas Especialistas IF (P) THEN (D) holds frequently UNLESS ( C1 ∨ C2 ∨ ... ∨ Cn ) holds rarely GAs Fuzzy Sistemas Híbridos Raciocínio sob Incerteza RNs JDSS-LAC/INPE Inteligência Artificial O que é? Inteligência não é um processo estático Exige: •Aquisição •Triagem em um processo dinâmico •Ordenação •Interpretação JDSS-LAC/INPE 1 Definições existentes •“Inteligência é julgar bem, compreender bem, raciocinar bem.” (Binet) •“A inteligência geral ...envolve sobretudo a educação de relações e correlações.” (Spearman) •“A capacidade de conceituar e de compreender o seu significado.” (Tearman) •“Capacidade geral de pensamento” ou “eficiência mental.” (Vermon) •“Habilidade inata, geral e cognitiva.” (Burt) •“A atividade inteligente consiste na compreensão do essencial de uma situação e numa resposta reflexiva apropriada.” (Helm) JDSS-LAC/INPE •“A capacidade agregada ou global de um indivíduo agir com o propósito de pensar racionalmente e de se adaptar eficientemente ao ambiente.” (Wechsler) •“Adaptação ao ambiente físico e social.” (Piaget) Palavras chave: •Julgamento •Compreensão •Raciocínio •Educação ? •Conceituação •Pensamento •Cognição Relacionadas com as definições de Inteligência JDSS-LAC/INPE 2 Mas o que é inteligência ? •Ainda não existe um consenso => •Será que há necessidade de um conhecimento biológico profundo? Conclusão => existe muita para acontecer para podermos explicar ou mesmo entender a inteligência. => Apesar disso perseguimos a máquina inteligente ! (Inteligência Artificial) JDSS-LAC/INPE Definições: •“IA é o estudo de conceitos que permitem os computadores (ou as máquinas) serem inteligentes.” (Winston, 1987) •“Capacidade de adquirir e aplicar conhecimentos implementados pelo humano.” ( Arnold e Bowie, 1986) •“Se pudermos imaginar um dispositivo capaz de colecionar, de selcionar entre, de compreender, de distinguir e de saber, então temos IA.” (Feigenbaum e McCorduck, 1983) •“IA é ciência de fazer com que as máquinas façam coisas que requerem inteligência, se feita pelo homem.” (Marvin Minsky) •“IA é uma área de pesquisa que investiga formas de habilitar o computador a realizar tarefas nas quais, até o momento, o humano tem melhor desempenho.” (Elaine Rich) JDSS-LAC/INPE 3 Palavras Chave: Estudo de conceitos Aquisição Aplicação Colecionar Seleção Compreensão Distinção Saber Fazer coisas inteligentes! => há sobreposições com as definições de inteligência apresentadas! JDSS-LAC/INPE Podemos dizer que estamos fazendo inteligência artificial, se não sabemos definir inteligência? SIM e NÃO Pensando em desenvolver máquinas: 1. Que automatizem as tarefas dos humanos 2. Que imitem os humanos na realização das tarefas Automatizar ≠ Imitar => Considerando o comportamento da máquina como parâmetro de medição, estamos fazendo IA apenas no caso 1. Neste sentido surgiu o teste de Turing para classificar uma máquina como inteligente. JDSS-LAC/INPE 4 Teste de Turing (1950): •Um interrogador (humano) faz perguntas a duas entidades ocultas; um humano e uma máquina. •A comunicação entre o interrogador e as entidades é feita de modo indireto. •O interrogador tenta através do “diálogo“ realizado entre ele e as entidades, decidir qual dos dois é o humano. JDSS-LAC/INPE Teste de Turing (1950): •O computador é programado para se passar por humano, e o humano responde de forma a confirmar a sua condição. •Se no final do teste o interrogador não consegue distinguir quem é o humano, então conclui-se que o computador pode pensar, segundo o teste de Turing. •Acreditava-se que no ano 2000 as máquinas já passariam neste teste, mas ... ? JDSS-LAC/INPE 5 Teste de Turing JDSS-LAC/INPE Necessidades: •Processamento de Linguagem Natural (comunicação eficiente) •Representação do conhecimento (armazenamento de informações) •Raciocínio Automático (novas conclusões) •Aprendizagem de Máquina (adaptação a novas situações) JDSS-LAC/INPE 6 Mas, como avaliar fatores como: •tipo, qualidade e quantidade do conhecimento do sistema •tipos de inferência sobre o conhecimento •direcionamento da busca •meios de aquisição automática de conhecimento •expansibilidade do conhecimento JDSS-LAC/INPE As máquinas podem ter: •Sentimentos •Consciência •Vontade ? •Intenção Do ponto de vista das aplicações, é preciso ter tais características nas máquinas? JDSS-LAC/INPE 7 Os sistemas que usam IA podem ser classificados: •Sistemas que pensam como humanos. (Abordagem de modelagem cognitiva) Objetivo: •Simular o pensamento humano (modelos cognitivos), sem se preocupar em resolver problemas com precisão, mas procurando simular a forma como os seres humanos resolvem os problemas. Esta abordagem implica o estudo do pensamento humano. JDSS-LAC/INPE Os sistemas que usam IA podem ser classificados: •Sistemas que pensam racionalmente. (Abordagem das leis do pensamento) Objetivo: •Desenvolver programas que usem raciocínio lógico para resolver os problemas. JDSS-LAC/INPE 8 (Sistemas que pensam racionalmente) •Esta abordagem caracteriza-se pelo uso de lógica como ferramenta, que implica em desvantagens: •Não é fácil representar conhecimento informal de um modo formal tal como a notação lógica exige; •É difícil representar a incerteza; •Resolver problemas, mesmo que descritos com poucos fatos, pode tornar-se impraticável. JDSS-LAC/INPE Os sistemas que usam IA podem ser classificados: •Sistemas que atuam como humanos. (Abordagem de Turing) Objetivo: •Fazer com que o computador se comporte como um ser humano independentemente do tipo de raciocínio que usa. Obs.: O teste de Turing pode ser uma forma de verificar se conseguimos ou não atingir este objetivo. JDSS-LAC/INPE 9 Os sistemas que usam IA podem ser classificados: •Sistemas que agem racionalmente. (Abordagem dos agentes racionais) Objetivo: •Estudar a construção de agentes que realizem tarefas de forma racional. Neste contexto, agir racionalmente significa agir de modo a atingir determinados objetivos, levando em conta o que se crê ser verdade. JDSS-LAC/INPE (Sistemas que agem racionalmente) Existem diferenças entre agir e pensar racionalmente: •Por vezes não há uma coisa certa a fazer mas algo tem que ser feito. •Há situações em que não há tempo para pensar: podese apenas reagir. JDSS-LAC/INPE 10 Procedimentos Inteligentes •Aprendem por experiência. •Adquirem conhecimento através da experiência. •Solucionam problemas na ausência de alguma informação. •Reagem rapidamente perante uma nova situação. •Determinam o que é importante. •Raciocinam e pensam. •Entendem imagens visuais. •Processam e manipula símbolos. •São criativos e imaginativos. •Usam heurísticas. JDSS-LAC/INPE •Sistemas em IA são baseados em conhecimento •É necessário estruturar o conhecimento => deve existir métodos que permitam tal estruturação. •É necessário adquirir o conhecimento (qual ?) •É necessário se ter meios de recuperação de informação (banco de dados podem ser caracterizados como um sistema baseado em conhecimento?) •Devem existir linguagens de manipulação do conhecimento. •Deve-se tratar complexidade, incerteza e ambiguidade (como?) JDSS-LAC/INPE 11 Comparativo entre técnicas de IA e Programação Processamento simbólico Processamento numérico Soluções heurísticas (passos implícitos) Soluções algorítmicas (passos explícitos) Estrutura de controle do programa independe do domínio de conhecimento Estrutura de controle e informação integrados Fácil modificar e atualizar Mais complexo Respostas satisfatórias são aceitas Sempre a melhor resposta possível JDSS-LAC/INPE Representação do Conhecimento •IA exige a modelagem do conhecimento de alguma forma eficiente. •Conhecimento é uma entidade simbólica. •Métodos: •Lógica (diversas) •Bases de regras •Redes Semânticas •Roteiros (Scripts) •Quadros (frames) •Redes Neurais •Mecanismo de inferência: permite a manipulação do conhecimento para síntese de conhecimento novo. ( Aprendizagem ? ) JDSS-LAC/INPE 12 Mas: •Como medir o conhecimento que deve ser usado para resolver um problema? •Como adquirir o conhecimento? •Como saber se o conhecimento representado é suficiente para resolver o problema? => Não existe métodos precisos! JDSS-LAC/INPE 13