Raciocinando dentro Ci - PowerPoint PPT Presentation

About This Presentation
Title:

Raciocinando dentro Ci

Description:

Raciocinando dentro Ci ncia da Computacao OU Racioc nio na Ci ncia da Computacao L gica de Predicados/Primeira Ordem M todos Formais para Desenvolvimento de Sistemas – PowerPoint PPT presentation

Number of Views:73
Avg rating:3.0/5.0
Slides: 41
Provided by: Departa65
Category:

less

Transcript and Presenter's Notes

Title: Raciocinando dentro Ci


1
Raciocinando dentro Ciência da Computacao
OURaciocínio na Ciência da Computacao
  • Lógica de Predicados/Primeira Ordem
  • Métodos Formais para Desenvolvimento de Sistemas
  • Banco de Dados Dedutivo
  • Inteligência Artificial

2
Lógica
  • Já viram com Ruy
  • Raciocínio dedutivo (regras de inferência)
  • Os silogismos, que nós trabalhamos são um
    exemplo
  • Nenhum tirano é amado.
  • Dionísio é tirano.
  • Dionísio não é amado
  • Também trabalharam com procedimentos de prova,
    como a Dedução natural, resolução, por exemplo.
  • Um provador que utiliza dedução natural é o
    Alfie, disponível em
  • http//www.cs.chalmers.se/sydow/alfie/

3
Métodos Formais para o Desenvolvimento de Sistemas
  • Motivação
  • Crise de Software
  • Desenvolvimento é ad-hoc
  • Não há um padrão para o processo
  • É preciso utilizar técnicas, teorias, métodos,
    ferramentas
  • Profissionais Incapazes de Controlar
  • Custo
  • Tempo de duração do processo de construção do
    software
  • Qualidade do Produto desenvolvido
  • Manutenção toma 70-80 do esforço

4
O Problema da Especificação de Software
  • Especificação?Projeto ? Implementação ?
    Manutenção
  • Especificação informal
  • Projeto informal ou estruturado, semi-formal
  • JSD, Yourdon, OMT, BON, UML, ...
  • Implementação sem garantia de realizar o projeto
  • Verificação e validação são ignorados!

5
O que são Métodos Formais em Engenharia de
Software
  • Método de desenvolvimento de software
  • através do qual se pode definir
    precisamente um sistema e
  • desenvolver implementações garantidamente
    corretas em relação a esta definição.

6
Um Exemplo de Especificação
  • Tipo pilha-int
  • Funções
  • vazia -gt pilha-int
  • push int pilha-int -gt pilha-int
  • pop pilha-int -gt pilha-int
  • top pilha-int -gt int
  • e_vazia pilha-int -gt bool
  • Axiomas
  • pop (push (i, p)) p
  • top (push (i, p)) i
  • e_vazia (p) (p vazia)

7
Programas Abstratos... Podem derivar Programas
Reais
  • Descrições de estado
  • Exemplo de estado
  • Variáveis x, y, e z
  • Uma fórmula descreve um estado se ela é tornada
    verdadeira pelos mapeamentos do estado
  • x 2 x z lt y x 2 Ù y 17 Ù z
    3
  • Um estado satisfaz uma fórmula se aquela fórmula
    descreve ele
  • Cálculo de predicados

8
Então...
  • Primeiro, especificamos o sistema via pré e
    pós-condições
  • Depois, esta descrição matemática é transformada
    gradualmente em código ? refinamento do programa!
  • Se tivermos as propriedades da especificação
    codificadas em uma linguagem lógica, conseguimos
    prová-las.
  • Resumindo... Usando técnicas de raciocínio
    lógico, podemos
  • (1) verificar se o programa produz o que se
    espera
  • (2) verificar se o progrmaa termina
  • (3) derivar código para construir programas que
    satisfazem a uma especificação
  • (4) transformar um sistema em outro equivalente

9
Uma pausa... Banco de Dados
  • Um Banco de Dados...
  • É uma coleção de dados relacionados...
  • Mais precisamente...
  • Um BD é projetado, construído e preenchido com
    dados para um objetivo específico. Tem um público
    alvo e algumas aplicações nas quais os usuários
    estão interessados.
  • Um banco de dados pode ser
  • Manual catálogo de cartões da biblioteca
  • Computadorizado sistema de alunos da
    universidade.

10
Porque usar Banco de Dados?
Dados manipulados por vários usuários com visões
diferentes
11
E mais... Os Sistemas Gerenciadores de Bancos de
Dados
  • Um SGBD é uma coleção de programas para criação e
    manutenção de um banco de dados.
  • É um sistema de propósito geral.
  • Facilita os processos de definição, construção e
    manipulação do Banco de Dados.
  • Tem por objetivos...
  • Eliminar ou Reduzir
  • Redundância e Inconsistência de Dados
  • Dificuldade no Acesso aos Dados
  • Isolamento dos Dados
  • Anomalias de Acesso Concorrente
  • Problemas de Segurança

12
Um SGBD tem esta cara
Usuários/Programadores
Aplicações/Queries
Processamento de Queries
Acesso aos dados
BD
13
SGBD Dedutivo
  • Definição
  • Um SGBD Dedutivo é um sistema que inclui
    capacidade para definir regras que podem deduzir
    ou inferir informações adicionais dos fatos que
    estão armazenados no banco de dados.
  • Parte da fundamentação teórica destes sistemas
    é a lógica matemática e, por isso, eles também
    são referidos como banco de dados lógicos.

14
Bancos de Dados Dedutivos - Conceitos Básicos
  • Dois tipos de especificação são usados
  • Fatos - são especificados como relações, exceto
    pelo fato que o nome dos atributos não interessa
    mas sim a posição deles na tupla.
  • Regras - especificam relações virtuais
    (similares às visões relacionais) que não estão
    armazenadas no banco mas que podem ser criadas a
    partir dos fatos, aplicando o mecanismo de
    dedução baseado nas regras.

15
E mais...Conceitos Básicos
  • Um mecanismo de dedução (ou inferência) em um
    sistema pode deduzir novos fatos no banco de
    dados através da interpretação das regras.
  • O modelo usado pelos BD dedutivos é relacionado
    à Programação em Lógica (Prolog). Eles trabalham
    com a linguagem Datalog.

16
SGBD Dedutivo
  • Existem outros sistemas que incorporam esta
    capacidade de inferência, chamados sistemas de
    banco de dados especialistas ou sistemas
    baseados em conhecimento, incluindo técnicas da
    inteligência artificial. Estes sistemas diferem
    do sistemas dedutivos por
  • tratar dados sempre em memória principal
  • extrair o conhecimento dos especialistas das
    aplicações e não dos dados.

17
SGBD Dedutivo
  • A principal contribuição dos banco de dados
    dedutivos é a possibilidade de especificar regras
    recursivas e prover uma maneira de inferir novas
    informações baseada nas regras especificadas.
  • Forma geral de uma regra
  • cabeça (head) - corpo (body)

Conclusão Premissa
18
Um Exemplo de SGBD Dedutivo
  • Exemplo
  • Regras
  • superior (X,Y) - supervisiona (X,Y)
  • superior (X,Y) - supervisiona (X,Z),
    superior(Z,Y)
  • Fatos conhecidos
  • supervisiona (francisco, joão)
  • supervisiona (francisco, roberto)
  • supervisiona (francisco, jane)
  • supervisiona (maria, alice)
  • supervisiona (maria, antônio)
  • supervisiona (tiago, francisco)
  • supervisiona (tiago, maria)
  • supervisiona (X,Y) é falso para qualquer outra
    combinação

19
Um exemplo... cont
  • Exemplo (cont.)
  • Fatos derivados
  • pela regra 1
  • superior (francisco, joão)
  • superior (francisco, roberto)
  • superior (francisco, jane)
  • superior (maria, alice)
  • superior (maria, antônio)
  • superior (tiago, francisco)
  • superior (tiago, maria)

pela regra 2 superior (tiago, joão) superior
(tiago, roberto) superior (tiago, jane) superior
(tiago, alice) superior (tiago, antônio)
20
Inteligência Artificial (IA) definição
  • Surgiu na década de 50
  • 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 que não possuem uma solução algorítmica
IA
problemas solúveis por seres humanos
Se o ser humano pode, por que não a máquina?
(tese de Church-Turing)
21
Interação com outras disciplinas
Matemática
Sociologia
Filosofia
Psicologia
Lingüística
Computação
Neuro-fisiologia
Genética
22
Aplicações
  • Matemática demonstração de teoremas, resolução
    simbólica de equações, geometria, etc.
  • Pesquisa operacional otimização e busca
    heurística em geral
  • Jogos xadrez, damas, go, etc.
  • Processamento de linguagem natural tradução
    automática, verificadores ortográficos e
    sintáticos, interfaces para BDs, etc.
  • 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, monitoramento, etc.

23
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
  • engenharia de software (sobretudo na Web)
  • programação automática
  • interfaces adaptativas
  • bancos de dados dedutivos e ativos
  • mineração de dados (data mining)
  • sistemas distribuídos, etc.

24
Categorias de Raciocínio na IA
  • Dedução e Abdução fatos regras gt novos fatos
  • Dedução causa gt conseqüência
  • Inferência preserva a verdade
  • Onde há fogo, há fumaça. Aqui tem fogo, logo aqui
    tem fumaça
  • Abdução conseqüência gt causa
  • Inferência preserva a falsidade!!!
  • Onde há fumaça, há fogo.
  • Indução fatos gt regras
  • Se Sr. Antônio, assim como D. Maria, tem dor de
    cabeça e dengue, então todo mundo que tem dengue
    tem dor de cabeça.
  • Analógico casos regras de adaptação
  • Para construir este hospital, vou me basear no
    projeto daquele outro

25
Sistemas Inteligentes
  • São sistemas que raciocinam a fim de resolver um
    problema
  • Raciocínio dedutivo
  • Sistemas baseados em conhecimento
  • Raciocínio indutivo
  • Sistemas baseados em aprendizagem automática
  • Raciocínio analógico
  • Sistemas de raciocínio baseado em casos

26
Sistemas Inteligentes Dedutivos
  • Utilizam conhecimento e raciocínio para resolver
    problemas difíceis
  • Principais componentes
  • Base de Conhecimento (arquivo)
  • Mecanismo de Inferência (procedimento que
    implementa raciocínio)
  • Base de Conhecimento
  • contém sentenças em uma Linguagem de
    Representação de Conhecimento
  • representa conhecimento de forma tratável pelo
    computado
  • Mecanismo (máquina) de Inferência
  • responsável por raciocinar (inferir), a partir do
    conhecimento da base, novos fatos ou hipóteses
    intermediárias

27
Esclarecendo...
  • Dados
  • cadeias numéricas ou alfanuméricas que não
    possuem significado associado
  • podem ser fatos ou figuras a processar
  • Informação
  • dados organizados
  • significam alguma coisa para quem os recebe
  • Conhecimento
  • representa objetos (entidades) de algum domínio,
    com suas propriedades e relações
  • Meta-conhecimento
  • conhecimento sobre o conhecimento disponível
  • ex. regras sobre como manipular as regras sobre
    conhecimento que estão em uma base

28
Categorias de Conhecimento
  • Procedimental
  • fatos e seqüências de instruções para manipular
    esses fatos
  • ex. como desmontar uma bicicleta
  • Declarativo
  • representação descritiva dos fatos,
    relacionamentos e regras
  • as partes de uma bicicleta e seus relacionamentos
  • o pai do pai é o avô
  • Episódico
  • fatos vividos, casos, exemplos...
  • ex. D. Maria tem dor de cabeça e dengue

29
Linguagens de Representação do Conhecimento
  • Uma Linguagem de Representação do Conhecimento é
    definida por
  • 1) uma sintaxe, que descreve as configurações que
    podem constituir sentenças daquela linguagem
  • 2) uma semântica, que liga cada sentença aos
    fatos no mundo que ela representa
  • cada sentença faz uma afirmação a respeito do
    mundo
  • o agente acredita nas sentenças que correspondem
    a sua configuração interna.
  • E geralmente ...
  • tem um mecanismo de inferência associado
    raciocínio

30
Representação Raciocínio
  • Raciocínio é um processo de construção de novas
    sentenças a partir de sentenças existentes.
  • Raciocínio plausível (sound)
  • garante que as novas sentenças representam fatos
    que se seguem dos fatos representados pelas
    sentenças existentes na BC.
  • implementa a relação de implicação entre
    sentenças

31
Problema
  • West é criminoso ou não?
  • A lei americana diz que é proibido vender armas
    a uma nação hostil. Cuba possui alguns mísseis, e
    todos eles foram vendidos pelo Capitão West, que
    é americano
  • Como resolver automaticamente este problema de
    classificação?
  • Para construir um Sistema Dedutivo, é preciso
  • Identificar o conhecimento do domínio (modelo do
    problema)
  • Representá-lo utilizando uma linguagem de
    representação do conhecimento
  • Implementar um mecanismo de inferência para
    utilizar esse conhecimento

32
Solucionando o problema em linguagem natural
A) Todo americano que vende uma arma a uma nação
hostil é criminoso B) Todo país em guerra com uma
nação X é hostil a X C) Todo país inimigo
político de uma nação X é hostil a X D) Todo
míssil é um arma E) Toda bomba é um arma F) Cuba
é uma nação G) USA é uma nação H) Cuba é inimigo
político dos USA I) Irã é inimigo político dos USA
conhecimento prévio
33
Solucionando o problema em LPO
34
Sistemas Inteligentes Indutivos
  • Diversas abordagens
  • ID3
  • RN

35
Sistemas Inteligentes Analógicos
  • RBC

36
Agentes Inteligentes arquitetura básica
Tell - adiciona novas sentenças à BC Ask -
consulta a BC
37
Os Sistemas Multi-Agentes
  • Duas Cabeças Pensam Melhor que Uma
  • Por que SMA?
  • Às vezes a computação centralizada não é
    possível.
  • A informação é distribuída, residindo em sistemas
    complexos.
  • Algumas Características
  • Precisam se comunicar protocolos de interação.
  • Ambientes abertos com design descentralizado
  • Agentes são autônomos e distribuídos, podendo ser
    bonzinhos ou mais egoístas.

38
Aplicações de SMA
  • Marcação de Reuniões Automática
  • Gerenciamento de Redes
  • Gerenciamento de Informação em Ambientes como a
    Internet.
  • Entretenimento
  • Otimização de Processos de Produção
  • Simulação de Fenômenos Sociais.
  • Análise de Negócios

39
Questões do Design de SMA
  • Cada Agente é Limitado precisam interagir.
  • Não há (muitas vezes) o controle central.
  • Autonomia.
  • Coordenação
  • Agentes com atitudes de Cooperação/ Competição
  • Teoria dos Jogos
  • Dependência entre Eles.
  • Problema da Comunicação

40
Uma Aplicação de SMARobocup
Write a Comment
User Comments (0)
About PowerShow.com