Inteligência Artificial Objetivos Estimular a capacidade de elaboração de projetos baseados em algoritmos de redes neurais. Incentivar a realização de projetos utilizando técnicas e ferramentas de algoritmos genéticos. Despertar o interesse pela pesquisa científica e pelo conhecimento de novas tecnologias. Aplicações da IA Onde Usar as Técnicas de IA? 1. Processamento simbólico intenso, isto é, a manipulação de grandezas não quantificáveis numericamente; 2. O problema não possui metodologia concisa de resolução, isto é, não existe (ou existe, mas é computacionalmente inviável) um procedimento que sempre leve a solução; 3. O problema é complexo o suficiente para justificar o investimento na solução; 4. O domínio do conhecimento necessário à solução do problema é bem delimitado; 5. O conhecimento necessário para a solução do problema se encontra disponível; 6. Uma solução sub-ótima é aceitável; e caso haja uma falha na solução não deve levar a perdas irreparáveis. Onde não usar IA? 1. Para resolver um sistema de equações lineares (infringe o item 2); 2. Desenvolver um programa de xadrez que vença qualquer adversário (infringe 3) 3. Ministrar drogas anestésicas em pacientes durante cirurgias, sem a intervenção humana (infringe 7) Áreas da IA IA é uma área fortemente interdisciplinar, exigindo de seus especialistas cera especialização em determinadas áreas, tais como: Resolução de problemas, formulação e aprimoramento de procedimentos gerais de manipulação de conhecimento para problemas não algorítmicos Representação do conhecimento e aprimoramento de formalismos, linguagens e sistemas para a codificação, análise e manipulação do conhecimento Sistemas Especialistas, simulação em computador dos mecanismos de resolução de problemas empregados por especialistas humanos num domínio bem específico Aprendizado, elaboração de técnicas que permitem melhorar o desempenho do software em tempo de execução Percepção artificial, dotar o computador de capacidade sensitiva através de visão artificial, processamento de linguagem natural escrita ou falada Áreas da IA Redes neurais, concepção de estruturas computacionais que modelam os neurônios e sinapses do córtex cerebral IA distribuída, estudo da forma de comunicação entre diferentes agentes, em geral, distribuídos por um certo n° de processadores Impactos na Utilização de IA medida em que aumenta a utilização do computador, deparamos com problemas intratáveis, aparentemente, se nos limitarmos às técnicas de resolução habituais (notadamente algorítmicas). Normalmente estes problemas são bem específicos, e por isso, não existe algoritmo de solução, exemplo: reconhecimento de padrões diagnose de falhas treinamento em controle de processos Internet (softbots) etc. – – – – Nestes casos técnicas de IA são imprescindíveis para a implementação de automatismos avançados, cuja implantação depende da disponibilidade de recursos para o projeto (SW, HW e PW) IA em Controle de Processos Várias tarefas relativas ao controle e automação de processos necessitam procedimentos corretos de solução devido aos seguintes fatores: 1. Ausência de modelos simples e precisos para a descrição de sua dinâmica ou da inter-relação para a descrição de seus componentes; 2. Complexidade do problema; 3. Ruídos externos ao processo; 4. Emulação de ações tomadas por operadores experientes; e 5. Adaptação de procedimentos empregados em situações semelhantes. Controle Inteligente É uma filosofia de controle de sistemas dinâmicos que combina técnicas tradicionais de controle de processos (identificação, controle avançado etc.) com métodos baseados no conhecimento atuando num nível mais elevado, de modo a poder monitorar a própria estratégia de controle. Auxílio Inteligente à Operação de Processos São sistemas inteligentes que monitoram os valores das variáveis de um processo e que a partir de uma base de conhecimento fornecida por um operador experiente propiciam uma melhora e padronização no tratamento das instabilidades e operações do processo. Treinamento Computador Assistido por No sentido de melhorar e agilizar a eficiência das atitudes tomadas por um operador menos experiente a partir de um treinamento específico em instabilidades do processo realizado off-line; Projeto Assistido por Computador Sistemas CAD para a engenharia de controle são ambientes de SW que agregam de forma harmoniosa uma série de ferramentas utilizadas no projeto de sistemas de controle, exemplos Matlab e Simulink Controladores Neurais, Genéticos e Fuzzy Que empregam técnicas de IA baseadas em analogias com o funcionamento de certos processos biológicos, no caso processos cerebrais e genéticos Controladores fuzzy empregam o formalismo da lógica nebulosa e definem diferentes políticas de controle para diferentes regiões do espaço de estados do processo, que são delimitadas através de conjuntos nebulosos. Dificuldades da IA 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: Visão 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 Bibliografia Russel, S. Norvig, P. Inteligencia Artificial, Prentice Hall Braga, A. P. Redes Neurais Artificiais. LTC.2000.