Inteligência Artificial e suas Aplicações

Documentos relacionados
INTELIGÊNCIA COMPUTACIONAL

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 2 Introdução a I.A.

IAC - Inteligência Artificial Aplicada a Controle

INTELIGÊNCIA ARTIFICIAL

Inteligência Artificial

Figura: Capa do Livro Russell, S., Norvig, P. Artificial Intelligence A Modern Approach, Prentice-Hall.

Inteligência Computacional

Inteligência Artificial. Conceitos Gerais

lnteligência Artificial

Inteligência Artificial

Fabrício Jailson Barth BandTec

Inteligência Artificial. Josiane M. Pinheiro Ferreira Maio/2009

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

Inteligência Artificial

Inteligência Artificial

Técnicas de Inteligência Artificial

Inteligência Artificial. Aula 1 Prof. Nayat Sánchez Pi

Redes Neurais e Sistemas Fuzzy

INF 1771 Inteligência Artificial

Técnicas de Inteligência Artificial. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 1)

Inteligência Artificial

CURRÍCULO DO CURSO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO (noturno) [Campus Araranguá] 20171

Fundamentos de Inteligência Artificial [5COP099]

A Matemática como Serviço a Ciência da Computação. Prof. Dr. Carlos Eduardo de Barros Paes Coordenador do Curso de Ciência da Computação

Inteligência Artificial

Introdução. Aula 1 Inteligência Artificial HDL

Redes Neurais (Inteligência Artificial)

Inteligência Artificial. Aula 2

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Inteligência Artificial - IA

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Representação do Conhecimento

Introdução a Inteligência Artificial

Introdução à Inteligência Artificial. CAPÍTULO 1 - Russell

Inteligência Artificial. Sistemas Baseados em Conhecimento. Representação de Conhecimento (continuação)

Agentes Inteligentes. CAPÍTULO 2 - Russell

Algoritmos Genéticos Fundamentos e Aplicações. Prof. Juan Moisés Mauricio Villanueva

Inteligência Articial: Introdução

Inteligência Artificial. Outras abordagens à conceituação de IA

Inteligência Artificial Introdução

lnteligência Artificial Introdução a Lógica Nebulosa (Fuzzy)

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Inteligência Artificial. Prof. Ilaim Costa Jr.

Introdução aos Sistemas Especialistas. Professor Celso A A Kaestner, Dr. Eng.

Pontifícia Universidade Católica de São Paulo Programa de TIDD

Introdução à Inteligência Artificial

Minicurso: Inteligência Artificial Aplicada a Sistemas Elétricos

INF 1771 Inteligência Artificial

Inteligência Artificial. O que é Inteligência Artificial?

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Inteligência Artificial

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

CRÉDITOS DO CURSO. Carga Horária Créditos IN1030 Seminários 30 2

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Inteligência Artificial Prof. Cláudio Luís Vieira Oliveira

Inteligência Artificial

MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período

Fundamentos de Inteligência Artificial [5COP099]

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Técnicas de Inteligência Artificial

Mecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas

Introdução a Sistemas Inteligentes

6. QUADRIMESTRE IDEAL 7. NÍVEL Graduação 8. Nº. MÁXIMO DE ALUNOS POR TURMA TEORIA: 60 LABORATÓRIO: 30

Inteligência Artificial: Introdução

Inteligência Artificial

Inteligência Artificial. Sistemas Inteligentes. Síntese baseada no cap.2 Sistemas Inteligentes da Solange Rezende

Técnicas de Inteligência Artificial

Sistemas especialistas Fuzzy

Inteligência Computacional

TÓPICOS EM INTELIGÊNCIA ARTIFICIAL Redes Neurais Artificiais

Aprendizagem de Máquina

Sistemas Inteligentes

LÓGICA FUZZY. Adão de Melo Neto

INTELIGÊNCIA ARTIFICIAL

INF 1771 Inteligência Artificial

Protótipo de um Simulador de um Aspirador de Pó, Utilizando Algoritmo de Busca e Agentes Inteligentes, em Ambientes com Barreiras

IA: Inteligência Artificial

Inteligência Artificial

Inteligência Artificial - IA. Agentes Inteligentes Cont.

Inteligência Artificial Agentes Inteligentes

INF 1771 Inteligência Artificial

Inteligência Artificial

Transcrição:

Inteligência Artificial e suas Aplicações Marilza Antunes de Lemos marilza@facens.br O que é Inteligência Artificial? IA é a ciência e engenharia de construir máquinas inteligentes, especialmente programas inteligentes para computadores [John McCarthy, 1956] IA é o estudo de como fazer os computadores realizarem coisas que, no momento, as pessoas fazem melhor [Elaine Rich and Kevin Knight, 1993] IA é o estudo e simulação de atividades que normalmente assumimos que requerem inteligência [Bellman] IA é o estudo das faculdades mentais através da utilização de modelos computacionais [Charniak and MacDermott] 1

Desafio da IA Desafio da IA Construir um dispositivo parecido como nós mesmos Os que são contra John Searle máquina biológica Hubert Dreyfus IA é impossível Joseph Weizenbaum idéia obscena, anti-humana e imoral Outros se não deu certo até agora... Como é a pesquisa em IA Foco: Construir entidades inteligentes observar como humanos resolvem tarefas complexas estudar a fisiologia e psicologia humanas estudar problemas complexos do mundo Pesquisadores da IA são livres para usar métodos que não são observados em pessoas 2

Inteligência Artificial Ciência IA Desenvolvimento de conceitos e teorias para compreender o comportamento inteligente Engenharia Desenvolvimento de conceitos e teorias para a implementação de máquinas inteligentes Conclusão Máquina inteligente é aquela que possui comportamento inteligente Teste de Turing Alan Turing, Computing Machinery and Intelligence [Turing, 1963] 3

Ramos de pesquisa da IA paradigma de raciocínio Simbólico: metáfora lingüística ex. sistemas de produção, agentes,... Conexionista: metáfora cerebral ex. redes neurais Evolucionista: metáfora da natureza ex. algoritmos genéticos Estatístico / Probabilístico / Incerto ex. Redes Bayesianas, Sistemas Difusos (fuzzy) IA simbólica Computação tradicional Sistema IA simbólica Programador Algoritmo Mecanismo de raciocínio genérico Fatos Conclusões Base de Conhecimento 4

Exemplo: Mundo dos Blocos A B C D E Perguntas: Quem está sobre quem?... Respostas: A está sobre B e C, B está sobre C e D está sobre E. Quem está sobre B?... Quem está sobre a mesa?... Quem está livre?... C está livre?... A está sobre B. C e E. A e D. Não. Como escrever um programa em IA que aceite perguntas e as responda corretamente? Um programa em Prolog A B C D E sobre(a,b). sobre(b,c). sobre(d,e). mesa(c). mesa(e). livre(a). livre(d). acima(x,y):- sobre(x,y). acima(x,z):- acima(x,y), acima(y,z). 5

Interface em Prolog Perguntas:?- acima(x,y).?- livre(b).?- mesa(g). Respostas: X = a No G = c ; Y = b ; G = e ; X = b Y = c ; No A B C D E X = d Y = e ; X = a Y = c ; No IA simbólica: Resolução de Problema Identificar o conhecimento do domínio (modelo do problema) Representá-lo utilizando uma linguagem formal de representação Base de Conhecimento do mundo dos blocos A B C D E sobre(a,b). sobre(b,c). sobre(d,e). mesa(c). mesa(e). livre(a). livre(d). acima(x,y):- sobre(x,y). acima(x,z):- acima(x,y), acima(y,z). Implementar um mecanismo de inferência para utilizar esse conhecimento. No exemplo, utilizou-se o mecanismo de inferência da linguagem Prolog. 6

IA Simbólica Computação tradicional Sistema IA simbólico Aquisição do conhecimento Engenheiro de Conhecimento Especialista Programador Algoritmo Mecanismo de raciocínio genérico Base de conhecimento Explicação do raciocínio Explicações Computação convencional x IA Computação tradicional Sistema IA simbólico Algoritmo passo a passo x Mecanismo geral de inferência + base de conhecimento Programador Algoritmo Mecanismo de raciocínio genérico Fatos Conclusões Base de conhecimento e controle embutidos em código procedimental x Separação entre conhecimento declarativo e controle Linguagens de programação imperativas x alto-nível (declarativa, lógica, baseada em restrições) IA: Usa metáforas de sistemas naturais (neurônio, evolução, memória, sociedade,...) 7

O problema dos jarros Você tem dois jarros, um de 4 litros e um de 3 litros. Nenhum deles tem marcação de medidas. Há uma bomba que pode ser usada para encher os jarros com água. Como é que você consegue colocar exatamente 2 litros de água no jarro de 4 litros? Resolução Representação do Conhecimento Quantidades como par ordenado (J4,J3) J4 : representa o número de litros J4 J3 : representa o número de litros J3 Estado inicial: (0,0) Estado final desejado: (2,J3) Operadores permitem a mudança de um estado em outro 8

Representação do Conhecimento: Operadores como Regras de Produção Regra 1 - Se o J4 não estiver cheio, encha-o SE J4 < 4 R1 (4,J3). Regra 2 - Se o J3 não estiver cheio, encha-o SE not J3=2 e J3 < 3 R2 (J4, 3). Regra 3 - Se o J4 não estiver vazio, esvazie-o SE J4 > 0 R3 (0, J3). Regra 4 - Se o J3 não estiver vazio, esvazie-o SE J3 > 0 R4 (J4, 0). Regra 5 - Despejar a água do J3 no J4 até enchê-lo SE J4+J3 4 e J4<4 e J3>0 R5(4,J3 - (4-J4)). Regra 6 - Despejar a água do J4 no J3 até enchê-lo SE J4+J3 3 e J4>0 e J3<3 R6(J4 - (3-J3, 3)). Regra 7 - Despejar toda água do J3 no J4 SE J4+J3 4 e J3>0 R7(J4+J3, 0). Regra 8 - Despejar toda a água do J4 no J3 SE J4+J3 3 e J4>0 R8(0, J4+J3). Máquina de Inferência (ou Procedimento de busca ou algoritmo de busca) Objetivo Selecionar e aplicar os operadores a fim de descobrir um caminho a partir do estado inicial (0,0) até o estado desejado (2,n). 9

Espaço de Busca 0,0 R2 4,0 4,3 0,0 1,3 0,3 4,0 4,3 0,3 1,0 4,0 4,0 1,3 0,0 0,1 0,3 R7 4,3 0,0 3,0 R2 4,0 3,3 0,0 0,3 R5 4,3 0,3 3,0 4,2 R3 4,1 0,3 0,0 1,0 0,2 4,3 4,0 3,3 R7 4,3 0,1 4,0 2,3 0,0 0,3 0,0 2,0 Três técnicas importantes da IA Representação do Conhecimento (Base de Conhecimento) proporciona um meio de solucionar problemas complexos explorando as estruturas dos objetos envolvidos Busca (Estratégias de controle) proporciona um meio de solucionar problemas para os quais não há uma abordagem direta (um algoritmo tradicional) disponível Abstração (Heurística) proporciona um meio de separar características importantes (eficiência) das irrelevantes (sobrecarregam o processo) Computação tradicional Sistema IA simbólico Programador Algoritmo Mecanismo de raciocínio genérico Fatos Base de conhecimento Conclusões 10

Representação de Conhecimento Lógica de predicados x,y,z Americano(x) Arma(y) Nação(z) Hostil(z) Vende(x,z,y) Criminoso(x) Regras de produção SE J4 > 0 Então R3(0, J3) Lógica Difusa (Lógica fuzzy) João é muito alto Pedro é ligeiramente baixo Exceções a regra são quase impossíveis Redes Semânticas conceitos e relações Frames conceito, instâncias, seus atributos e valores Algorítmos de busca Busca cega busca em amplitude busca em profundidade Busca Heurística gerar-e-testar hill climbing simulated annealing best-first search algoritmo A* means-ends analysis 11

Engenharia do Conhecimento: Etapas de Construção dos Sistemas Baseados em Conhecimento (SBC) Aquisição de conhecimento linguagem natural Nível do Conhecimento Modelagem e formalização do conhecimento linguagem de representação de conhecimento Nível de Implementação Implementação Refinamento linguagens de programação Ferramentas para implementação de SBCs Metodologias KADS/CommonKADS (Universidade de Amsterdam) Protégé (Universidade de Stanford) MIKE (Universidade Karlsruhe) Shells Expert Sintta, OPS, KAS,... Ambientes para Desenvolvimento regras + objetos (CLIPS, JESS, NeOpus, JEOPS,...) Linguagens de programação de alto nível Prolog, Lisp, C++, Java 12

Tipos de Problemas dos SBC [UFPE] Áreas de Aplicação dos SBC [UFPE] 13

Visão Unificada da IA: agentes [Russel and Norvig] A caracterização e racionalidade de um agente é dada por: P - Percept Sequence A - Actions that can be performed G - Goals E - Environment Exemplos de Agentes segundo PAGE Tipo de agente Diagnóstico médico Percepção Sintomas, manifestações Ações Perguntas, testes, tratamentos Gols Paciente saudável, tratamento barato AmbientE Paciente e hospital Softbot Páginas da Web Navegar pelas páginas Web, Reconheci/o de Padrão Coleta de informações sobre uma pessoa / tema Internet Tutor Inteligente Ações do estudante Análise de exercícios, conselhos e correções Maximizar a pontuação em testes Conjunto de estudantes, tema pedagógico Análise de imagem de satélite Pixels de intensidade e de cor variável Imprime uma categorização de cena Categorização correta Imagens de satélites em órbita 14

Estrutura de Agentes Agente Robótico possui sensores e atuadores reais Agente de software (softbot) possui sensores e atuadores simulados / artificiais Agente está inserido num ambiente onde ele pode detectar e produzir mudanças Outras Ramos da IA Entendimento de Linguagem Natural Problema complexo análise morfológica análise sintática análise semântica integração de discurso análise pragmática Aplicações interfaces homem-maquina reconhecimento de voz tradução automática de línguas 15

Outros Ramos da IA Visão Computacional Aplicações navegação móvel por robô tarefas complexas de manufatura análise de imagens de satélites processamento de imagens médicas Desafios imagem 2-D, o mundo 3-D -> perda de informação uma imagem -> vários objetos unidade (pixel) inclui cor do objeto, fonte de luz, ângulo e distância da câmera, poluição do ar. IA Biológica Fundamento Imitar os mecanismos de aprendizagem humana IA Conexionista: Redes Neurais Artificiais simulação do cérebro humano início da pesquisa 1943 interrupção 1970 retomada anos 80 RNA são técnicas computacionais que apresentam um modelo matemático inspirado na estrutura neural humana e que adquirem conhecimento através da experiência. 16

Neurônio Modelo Computacional de uma rede de neurônios Camadas intermediárias Camada de entrada Camada de saída 17

Modelo matemático Sinais de entrada: u1, u2,..., u n (valores booleanos 0 ou 1) Pesos: w1, w2,..., w n Limitador: t Nível de atividade a da rede é dado por: a = u1w1 + u2w2 +... + u n w n A saída y é dada por: y = f(a) 1 se a t 0 se a < t u 1 u 2. u n w 2 w 1 w n y = f(a) t Dependendo da aplicação, a rede neural possui alguma regra de treinamento, onde os pesos de suas conexões são ajustados de acordo com o interesse da aplicação. Um exemplo Dadas uma série de entradas booleanas u, determinar os pesos w1, w2 e o limitante t para que a rede abaixo aprenda a função lógica AND. u 1 w 1 u 2 w 2 y = f(a) t Vamos supor w1=w2=1 e calcularmos o nível de ativação a da rede segundo a fórmula: a = u1w1 + u2w2 u1 u2 AND w 1=w 2=1 a 0 0 0 1 0 0 1 0 1 1 1 0 0 1 1 1 1 1 1 2 Comparando a saída AND com a, podemos concluir por um valor limitante t=2. Assim a função de saída será: y = f(a) 1 se a 2 0 se a < 2 18

Treinamento das RNAs O Aprendizado Backpropagation Passo-1 A rede aprende um conjunto pré-definido de pares de exemplos de entrada/saída em ciclos de propagação/adaptação. um padrão de entrada (um exemplo) é aplicado como um estímulo aos elementos da primeira camada da rede Passo-2 Passo-3 o estímulo é propagado para cada uma das outras camadas até que a saída seja gerada. o padrão de saída é então comparado com a saída desejada e um sinal de erro é calculado para cada elemento de saída. Passo-4 baseado no sinal de erro, os pesos (w) das conexões são então atualizados de modo a fazer a rede convergir para um estado que permita a codificação de todos os padrões do conjunto de treinamento. Aplicações de RNA Reconhecimento óptico de caracteres (OCR) Prognósticos de mercado financeiro Identificação de fraude de cartão de crédito Diagnóstico médico Robótica (visão) Análise de imagens Reconhecimento de padrões em linha de montagem Reconhecimento de voz 19

IA: Lógica Fuzzy Uma abordagem para raciocínio Capaz de tratar com informação vaga Extensão da lógica clássica Baseada na teoria dos conjuntos fuzzy (Zadeh, 1965) Lógica clássica x Lógica fuzzy Raciocínio exato Raciocínio inexato valores verdade: verdadeiro (1) falso (0) predicados exatos: par, maior que,... modificador: negação quantificadores: existenciais universais valores verdade: verdade, muito verdade falso, pouco falso predicados nebulosos: alto, baixo... modificador: muito, mais, menos quantificadores: pouco vários frequentemente 20

Modelos Simbólicos Modelos Clássicos Se pressão = 10 atm, então volume = 2,5 cm 3 Modelos Imprecisos Se pressão 5 atm, então volume 6 cm 3 Modelos Incertos Se pressão 5 atm, então Probabilidade(vol=6 cm 3) = 0.9 Modelos Vagos (modelos fuzzy) Se pressão é alta, então volume é baixo Áreas de aplicação de lógica fuzzy Problemas reais cuja modelagem matemática é impraticável; Informações disponíveis apenas na forma qualitativa ou em termos lingüísticos. Controle de processos Diagnóstico Tomadas de decisões 21

Mais sobre Fuzzy Pesquisador especialista em Lógica Fuzzy Ph.D Marco Túlio Carvalho de Andrade Depto. Eng. Computação e Sistemas Digitais (PCS) Escola Politécnica Universidade de São Paulo http://www.pcs.usp.br/~mtulio/ Curso sobre Fuzzy http://www.pcs.usp.br/~mtulio/transp Exemplo de aplicação http://www.pcs.usp.br/%7emtulio/transp/5711exemplotrabalho.pdf Inteligência Artificial Referências AIMA - Artificial Intelligence: A Modern Approach Stuart Russem and Peter Norvig Prentice Hall, 1995 John McCarthy Computer Science Department Stanford University, CA http://www-formal.stanford.edu/jmc/ A.M.Turing, Computing Machinery and Intelligence em http://www.abelard.org/turpap/turpap.htm Pesquisador A.M.Turing Pagina dedicada em http://www.turing.org.uk/turing/ http://www.uol.com.br/negociosexame/revista/revista0002_35.html Geber Ramalho, EITA! DEEP BLUE GANHOU, E AGORA?! Jornal do Comércio, 26/05/1997) em http://www.cin.ufpe.br/~glr/publications/deepblue.htm 22

Referências Redes Neurais Links importantes http://www.din.uem.br/ia/intelige/neurais/links.html Livros Kovács, Zsolt Laszlo Redes Neurais Artificiais: fundamentos e aplicações Collegium Cognitio, 1997. Arbib, Michael A. (Ed) The Handbook of Brain Theory and Neural Networks. MIT Press, 1995. Robótica http://www.robocup.org/ Tutores Inteligentes http://www.lsi.usp.br/~mlemos/its-referencias.htm Referências Sistemas Baseados em Conhecimento http://www-ksl.stanford.edu/yearindex.html Inteligência na WEB http://www.cs.washington.edu/research/projects/webware1/www/soft bots/softbots.html http://www.cs.umd.edu/projects/plus/shoe/ http://ontobroker.semanticweb.org/ Agentes http://foner.www.media.mit.edu/people/foner/julia/julia.html 23