Aula 1 Introdução à Inteligência Artificial (IA) Professora: Viviane Dal Molin de Souza Disciplina: Inteligência Artificial IA • O que Inteligência...(?) • ...Artificial? O que é IA? Objetivo: desenvolver sistemas para realizar tarefas que, no momento: – são melhor realizadas por seres humanos que por máquinas, ou – não possuem solução algorítmica viável pela computação convencional (problemas de caixeiro viajante, ...) Teste de Turing http://www.turing.org.uk/turing/ Teste de Turing •O Teste de Turing é um teste proposto para se determinar se um programa é ou não inteligente, ou seja, O programa é inteligente se a pessoa que participa no teste não for capaz de dizer se foi o programa ou o ser humano que respondeu às suas perguntas. •Existem alguns programas inteligentes que "conversam em português", criados com o objetivo de passar no Teste de Turing, conversando com os usuários como se fossem pessoas de verdade como a Sete Zoom e Ed Outromundo. •http://pt.wikipedia.org/wiki/Teste_de_Turing •http://bot.insite.com.br/sete/ •http://www.conpet.gov.br/ed/# Sistemas Inteligentes Um sistema inteligente deve ser capaz de adaptar-se a novas situações, raciocinar, entender relações entre fatos, descobrir significados, reconhecer a verdade e aprender com base em sua experiência. Características de sistemas ditos “inteligentes”? Comportamento inteligente de artefatos em ambiente complexo: – percepção – raciocínio – aprendizado – comunicação – ação e planejamento Histórico 1943 - 1956 : A gestação •1943 : Primeiro trabalho - Modelo artificial de neurônios (Warren McCulloch e Walter Pitts) •1950-1953: Programas de xadrez para computador (Claude Elwood Shannon, 1950; Alan Mathison Turing, 1953) •1952: Primeira rede neural (Marvin Minsky e Dean Edmonds) •1956 : Conferência Dartmouth (10 participantes) Termo IA criado em 1956 pelo pesquisador americano John McCarthy Histórico 1943 - 1956 : A gestação •Verão de 1956 : Conferência de Dartmouth (10 participantes) •Se define ramo do conhecimento com nome de “Inteligência Artificial” (John McCarthy) •Marvin Minsky prefere simplesmente dizer que “inteligência artificial é a ciência de fazer com que máquinas façam coisas que requerem inteligência, se feitas pelos homens” http://web.media.mit.edu/~minsky/ Histórico 1952 - 1969 : Período de muito entusiasmo e grandes expectativas (muitos avanços com sucesso) •General Problem Solver (GPS) – 1957 Allen Newell (1927-1992) e Herbert Simon, (1916-2001) •Como o GPS foi destinado a ser um solucionador geral de problemas, ele pode ser aplicado somente para problemas "bemdefinidos", como provar teoremas em lógica ou geometria, quebra-cabeças de palavras e jogos de xadrez. Histórico 1952 - 1969 : Período de muito entusiasmo e grandes expectativas (muitos avanços com sucesso) •Arthur Samuel (1901-1990) desenvolveu um programa capaz de jogar damas ao nível de um jogador de torneio. O programa jogava melhor do que o seu autor. •1958 : John McCarthy no Lab Memo n.1 do MIT define a linguagem de programação Lisp. •1958 : McCarty publicou um artigo intitulado “Programs with common sense”. Histórico 1966 - 1974 : Uma dose de realidade •DENDRAL - Análise de compostos orgânicos para determinar a sua estrutura molecular. •MYCIN – Sistema especialista capaz de diagnosticar infecções no sangue (dispunha de mais de 450 regras). Este sistema tinha um desempenho tão bom quanto de alguns médicos especialistas e melhor do que de médicos ainda com pouca experiência. •1972 : Linguagem Prolog (programação em lógica) - Edinburgh/Marseilles. •LUNAR (interface para geólogos interrogarem sobre as mostras de rochas trazidas pela Appolo na missão lunar - o primeiro usado por pessoas que não os projetistas do sistema). Histórico 198X : Continua a evolução ... •1980: Projeto japonês: a quinta geração de computadores (IA, Prolog, PLN) repercussões no financiamento global para a área de IA. Histórico 90 - 20xx: IA moderna •1991 : Sistemas de IA utilizados com sucesso na guerra do Golfo. •1993 : Sistema capaz de conduzir um carro numa auto-estrada a cerca de 90 Km/h. O sistema usa câmaras de vídeo, radar e laser. •1993 : Um sistema detecta colisões na rua, chamando automaticamente para emergência. •1996 – 1997: Deep Blue vence Kasparov. •2000 : Começam a surgir brinquedos inteligentes. •2001 : Computador se comunica ao nível de uma criança com 15 meses. Deep Blue X Kasparov O Primeiro grande inteligência artificial • algoritmos de busca • computadores de alta velocidade • hardware específico para xadrez momento da Tendências atuais •passagem de sistemas experimentais para aplicações reais de larga escala •representação de conhecimento •reconhecimento da fala •robótica •visão •internet Aplicações •Pesquisa operacional: busca e otimização, heurísticas em geral •Jogos: xadrez, damas, etc. •Processamento de linguagem natural: tradução automática, verificadores ortográficos e sintáticos, interfaces para BDs, reconhecimento da fala, etc. Aplicações •Sistemas tutores: modelagem do aluno, escolha de estratégias pedagógicas, etc. •Percepção: visão, tato, audição, olfato, paladar... •Robótica (software e hardware): manipulação, navegação, etc. Aplicações •Sistemas especialistas: atividades que exigem conhecimento especializado e não formalizado •Tarefas: diagnóstico, previsão, monitoramento, análise, planejamento, projeto, etc. •Áreas: medicina, finanças, engenharia, química, indústria, arquitetura, arte, computação,... •Computação: bancos de dados dedutivos, interfaces adaptativas, mineração de dados (data mining), programação automática, etc. Dificuldades Representação: •Como traduzir uma tarefa em informação estruturada e processos de informação •Generalidade x eficiência •Explosão combinatória (espaço de solução): reproduzir as jogadas possíveis do Xadrez Dificuldades Xadrez •Impossível reduzir o problema a um formalismo matemático •Uma busca exaustiva do melhor movimento é impraticável •Solução baseada em heurísticas Dificuldades Como reconhecer uma maçã no supermercado? – Contexto: maçãs serão encontradas junto com outras frutas (conceito) – Segmentação: como saber onde começa e acaba uma fruta? É preciso reconhecer cores, textura, tamanho – Representação e similaridade: como diferenciar maçãs de peras, mangas? Há vários modelos visuais para representar formas de diferentes frutas, comparáveis entre si. Fundamentos Matemática Sociologia Filosofia Lingüística IA Neuro-Fisiologia Psicologia Computação Genética Paradigmas •Simbólico (IA clássica ou GOFAI): metáfora lingüística ex. sistemas especialistas, agentes,... •Conexionista: metáfora cerebral ex. redes neurais artificiais •Evolucionista: metáfora da natureza ex. algoritmos genéticos, vida artificial •Estatístico/Probabilístico ex. Redes Bayesianas, sistemas nebulosos Onde aplicar IA? Produção de jogos e histórias interativas •Como modelar o ambiente físico e o comportamento/personalidade dos personagens? •Como permitir uma boa interação com usuário? Controle de Robôs Como obter navegação segura e eficiente, estabilidade, manipulação fina e versátil? E no caso de ambientes dinâmicos e imprevisíveis? Automação de sistemas complexos •Como modelar os componentes do sistema e dar-lhes autonomia? •Como assegurar uma boa comunicação e coordenação entre estes componentes? Busca de informação na Web •Como localizar a informação relevante? Recomendação de produtos •Como fazer recomendações personalizadas de produtos? •Como modelar os perfis dos compradores? Previsão •Como prever o valor do dólar (ou o clima) amanhã? •Que dados são relevantes? Há comportamentos recorrentes? Detecção de Intrusão e Filtragem de Spam •Como saber se uma mensagem é lixo ou de fato interessa? •Como saber se um dado comportamento de usuário é suspeito e com lidar com isto? Sistemas de Controle •Como brecar o carro sem as rodas deslizarem em função da velocidade, atrito, etc.? •Como focar a câmera em função de luminosidade, distância, etc.? •Como ajustar a temperatura em da quantidade de roupa, fluxo de água, etc.? Interface •Como dar ao usuário a ajudar de que ele precisa? •Como interagir (e quem sabe navegar na web) com celular sem ter de digitar (handsfree)? O que estes problemas têm em comum? •Grande complexidade (número, variedade e natureza das tarefas) •Não há “solução algorítmica”, mas existe conhecimento •Modelagem do comportamento de um ser inteligente (conhecimento, aprendizagem, iniciativa, etc.) Resumindo IA Área da computação que, há décadas, lida com esses problemas. Objetivo: •Construir (e aprender a construir) programas que, segundo critérios definidos, exibem um comportamento inteligente na realização de uma dada tarefa. Decomposta em várias sub-áreas •representação do conhecimento, percepção, aprendizagem, •processamento de linguagem natural, planejamento,... Interagindo com outras áreas •Computação, sociologia, estatística, economia, psicologia, lingüística, lógica, educação, ... Referências Bibliográficas •Machado, V. P. Inteligência artificial: uma abordagem centrada em agentes, INFOCEFET 2005, CEFET-PI. •Vieira, R.; Osório, F. Inteligência artificial e sistemas inteligentes, UNISINOS, http://www.inf.unisinos.br/~renata •Ramalho, G. Introdução à sistemas inteligentes, Cin, UFPE. •Shubeita, F. Programação evolutiva e lógica fuzzy, CMP 135, UFRGS, 2003. •Sucupira, I. R. Métodos heurísticos genéricos: metaheurísticas e hiper-heurísticas, IME-SP. •Coelho, Leandro. Notas de Aula.