Inteligência Artificial - IA
Prof. Dr. Carlos Estombelo montesco
Contato: estombelo@ufs.br
Fundamentos da Computação:
Introdução
 Será que no futuro, talvez não muito
distante, as máquinas irão dominar o
mundo?
 Será possível construir um cérebro
eletrônico que realize todas as tarefas
intelectuais humanas?
Introdução
 Preocupações influenciadas
 Mídia
 Rápida disseminação da informática
 Até que ponto estão apenas
alimentando apenas fantasias da
ficção científica?
Introdução
 A tecnologia realmente tem fascinado
... a ponto de muitos adorarem o
trabalho com tarefas complicadas de
computação ...
 e paradoxalmente deixarem de lado a
Matemática, Estatística, Álgebra e
outros Fundamentos, ...
 Sem se aperceberem da estreita união
que há entre estas áreas com IA.
Introdução
 Uso indiscriminado de jogos
eletrônicos não contribui.
 Por que não aproximar o
conhecimento científico do cotidiano?
 Projetar e Desenvolver com suas
próprias mãos!
 Descobrir e ter o prazer de conhecer o
mundo pelos olhos da razão.!
Introdução
 IA
 Sistematiza e automatiza
 Tarefas intelectuais
 O que é relevante em qualquer esfera de atividade
intelectual humana.
 MAS o que é IA? ...
 Definições de IA de acordo com 8 livros...
O que é Inteligência Artificial?
 Definição desse termo é motivo de
discussão
 Vamos por partes:
 Definição de Artificial ?
 Definição de Inteligência ? ... Pode se
tornar bem mais complicado ...
O que é Inteligência Artificial?
 Uma definição Esclarecedora para
“Inteligência Artificial”:
 “IA é o estudo de como fazer os
computadores realizarem tarefas as
quais, até o momento, os homens
fazem melhor” (Rich, 1994)”
O que é Inteligência Artificial?
 Uma (OUTRA) definição
Esclarecedora para “Inteligência
Artificial”:
 “todo problema para o qual nenhuma
solução algorítmica é conhecida é um
problema de IA (Laurière, 1990)”
Outras definições segundo
Russell e Norvig (2010)
 Definição de IA (2 dimensões)
Processos de
pensamento e raciocínio
Processos de
Comportamento
(agindo, atuam)
Medem sucesso
em termos
de desempenho
humano
Medem sucesso
em termos
de racionalidade “faz tudo
certo”
Introdução
 Agindo de forma humana: abordagem
do teste de Turing
 Alan Turin (1950)
 Projetado : para fornecer uma definição
operacional satisfatória de inteligência
 “Teste baseado na impossibilidade de
distinguir entre entidades inegavelmente
inteligentes – os seres humanos”
A
Introdução
 Agindo de forma humana: abordagem
do teste de Turing
A
O computador passará no teste se
um interrogador humano, depois de
propor algumas perguntas por
escrito, não conseguir descobrir se
as respostas escritas vêm de uma
pessoa ou não.
Introdução
 Agindo de forma humana: abordagem
do teste de Turing
 O que precisa?
1. Processamento da linguagem natural (PLN)
2. Representação de conhecimento
3. Raciocínio automatizado (novas conclusões)
4. Aprendizado de máquina
 (para se adaptar a novas circunstancias e para
detectar a extrapolar padrões)
A
Teste de Turing evita ... Interação física (ela é desnecessária para a inteligência)
Introdução
 Agindo de forma humana: abordagem
do teste de Turing
 Teste de Turing Total
5. Visão de computador (para testar
habilidades de percepção)
6. Robótica(para passar objetos físicos pela
“tela”)
A
Essas 6 disciplinas compõem a maior parte de IA
Outras definições segundo
Russell e Norvig (2010)
 Definição de IA (2 dimensões)
Sistemas que pensam como seres humanos Sistemas que pensam racionalmente
Sistemas que atuam como seres humanos Sistemas que atuam racionalmente
B C
A D
“O novo e interessante esforço para fazer os
computadores pensarem ... Máquinas mentes,
no sentido total e literal” (Haugeland, 1985)
“[Automatização de] atividades que associamos
ao pensamento humano, atividades como a
tomada de decisões, a resolução de problemas,
o aprendizado ...” (Bellman, 1978)
“O estudo das faculdades mentais pelo uso de
modelos computacionais” (Charniak e
McDermott, 1985)
“O estudo das computações que tornam
possível perceber, raciocinar e agir.” (Winston,
1992)
“A arte de criar máquinas que executam funções
que exigem inteligência quando executadas por
pessoas.” (Kurzweil, 1990)
“A Inteligencia Computacional é o estudo do
projeto de agentes inteligentes” (Poole et al.,
1998)
... Agentes racionais ...
 Nossa abordagem será:
 Princípios gerais de agentes racionais e
nos componentes para construí-los.
 O conceito de racionalidade pode ser
aplicado a uma ampla variedade de
agentes que operam em qualquer
ambiente.
Agentes e Ambientes
 Aqui um agente
 Pode perceber seu ambiente (sensores)
 Pode agir sobre esse ambiente
(atuadores)
Agente
 Idéia simples
Agente
 Idéia simples
 Um agente humano
 Um agente robótico
 Um agente de software, etc.
Aplicações da IA
 As aplicações da IA vão desde jogos
até prova de teoremas.
Aplicações da IA
TAREFAS “CORRIQUEIRAS”
Percepção
•Visão
•Fala
Linguagem natural
•Entendimento
•Geração
•tradução
Raciocínio de senso somum Controle de robôs
TAREFAS FORMAIS
Jogos
•Xadrez
•Etc.
Matemática
•Geometria
•Lógica
•Cálculo integral
TAREFAS ESPECIALISTAS
Engenharia
•Projeto
•Descoberta de falhas
•Planejamento de manufatura
Análise científica
Diagnóstico médico
Análise financeira (Rosa, 2011)
Aplicações da IA
(Rosa, 2011)
 Fazer o computador se lembrar de
fatos complicados inter-relacionados e
obter conclusões a partir deles
 INFERÊNCIA LÓGICA !
 Fazer o computador planejar
sequências de ações para alcançar
metas
 PLANEJAMENTO !
Aplicações da IA
(Rosa, 2011)
 Fazer o computador oferecer ajuda
baseada em regras complicadas para
várias situações
 SISTEMAS ESPECIALISTAS OU
SISTEMAS DE DEDUÇÃO BASEADOS
EM REGRAS
Aplicações da IA
(Rosa, 2011)
 Fazer o computador olhar através de
câmeras e ver o que estiver lá
 VISÃO ARTIFICIAL
 Fazer o computador se mover entre
objetos do mundo real
 ROBÓTICA
Como fazer tudo isso ?
(Rosa, 2011)
 É Mágica?
Como fazer tudo isso ?
(Rosa, 2011)
 IA trabalha com várias ferramentas
 Desde lógica de predicados (lógica
clássica) ...
 ... até simulações das redes neurais, as
redes de células nervosas do cérebro.
Agente de resolução de
problemas Abstração:
remover
detalhes
irrelevantes
Agente de resolução de
problemas
 Exemplos
 Quebra-cabeça de 8 peças
 Estados: diferentes configurações com o espaço vazio
 9!/2 = 181.440 estados acessíveis
 Estado inicial: qualquer estado
 Função sucessor: estados válidos resultados das ações o espaço
desloca para Esquerda, Direita, Acima ou Abaixo
 Teste Objetivo: seqüência ordenada iniciando pelo espaço vazio
 Custo de caminho: cada passo custa 1
Abstração
Agente de resolução de
problemas
 Exemplos
 Oito rainhas
 Estados: qualquer disposição de 0 a 8 rainhas no tabuleiro
 Estado inicial: nenhuma rainha no tabuleiro
 Função sucessor: colocar uma rainha em qualquer quadrado vazio
 Teste Objetivo: as 8 rainhas no tabuleiro e nenhuma é atacada
 Custo de caminho: sem interesse porque o estado final é o mais
importante
Abstração
Estratégias de busca
 Busca em profundidade
Estratégias de busca
 Busca em profundidade
Algoritmos Genéticos
 Estados sucessores são gerados pela
combinação de dois estados pais.
 Inicia com uma população (k estados)
 Cada indivíduo (ou estados) é representado
como uma cadeia sobre um alfabeto finito.
 .
33
Algoritmos Genéticos
 .
34
Observação
 Em muitos problemas de IA você vai
observar que sempre se BUSCA por
uma solução ótima ...
 Ou pelo menos o mais próximo
possível.
IA uma abordagem de
Aprendizado de Máquina
 Exemplo:
 Em um supermercado ... Como descobrir
qual cliente deve receber material de
propaganda ?
 Se você tem o cadastro dos clientes você
pode realizar um processo de indução de
uma hipótese (ou aproximação de função)
 a partir da experiência passada
 Isto pode ser chamado de Aprendizado de
Máquina (Faceli, 2011)
IA uma abordagem de
Aprendizado de Máquina
 Definição de Aprendizado de Máquina
 “Capacidade de melhorar o desempenho
na realização de alguma tarefa por meio
da experiência” (Mitchell, 1997)
IA uma abordagem de
Aprendizado de Máquina
 Aplicações de Aprendizado de Máquina (Faceli,
2011)
 Reconhecimento de palavras faladas
 Predição de taxas de cura de pacientes com
diferentes doenças
 Detecção de uso fraudulento de cartões de crédito
 Condução de automóveis de forma autônoma em
rodovias
 Ferramentas que jogam xadrez semelhante aos
campeões
 Diagnóstico de câncer por meio da análise de dados
de expressão gênica.
IA uma abordagem de
Aprendizado de Máquina
 Devemos considerar
 ...
 Modelos Descritivos
 Mineração de Padrões Freqüentes
 Análise de agrupamentos
Redes Neurais
 O termo “Redes Neurais”
• Redes Neurais Artificiais
 Ênfase nas aplicações: inteligência artificial, engenharia,
processamento de dados e imagens, medicina, finanças, etc;
 Objetivo: Resolver problemas de reconhecimento e classificação
de padrões, controle adaptativo e previsão de series temporais;
 Principais ferramentas: modelos de unidades inspiradas nos
neurônios biológicos com alto grau de interconexão e
processamento paralelo, tendo os pesos das conexões
modificados por algoritmos de aprendizado supervisionado ou
não supervisionado (backpropagation, aprendizado hebbiano
etc), implementados via pacotes comerciais ou outros
programas ; técnicas estatísticas de processamento e
tratamento de dados.
Elementos de Neurobiologia Necessários para a
construção de um Modelo de Neurônio de uma
Rede Neural Artificial
Esquema de uma Célula
Piramidal. Um Neurônio
Típico
As Redes Neurais Artificiais
 Uma classe importante de redes neurais é a das que têm arquitetura “em
camadas”. Elas podem ser do tipo feedforward ou do tipo recorrente.
Espaço de Soluções
• Uma função como E, que tem que ser
minimizada (ou maximizada) para a obtenção
de uma solução ótima, costuma ser chamada
de função “custo”.
• .
Não esquecer
 IA não é Mágica
 IA trabalha com as seguintes
Ferramentas (ou Fundamentos)
 Matemática
 Lógica
 Álgebra Matricial
 Estatística ...
Bibliografia
Bibliografia
 RUSSELL, Stuart J; NORVIG, P. Artificial intelligence: a
modern approach. New Jersey, Estados Unidos: Prentice
Hall, 1995. 932 p. (Prentice Hall series in artificial intelligence)
ISBN 0131038052 Número de Chamada (UFS): 004.8 R959a
 LUGER, George F. Artificial intelligence: structures and
strategies for complex problem solving. 6th ed. Harlow:
Addison Wesley Longman, 2009. 754 p. ISBN
9780321545893 Número de Chamada (UFS) : 004.8 L951a
6th ed.
 KATTI FACELI;ANA CAROLINA LORENA;JOAO
GAMA;ANDRE C. P. L. F. DE CARVALHO. INTELIGÊNCIA
ARTIFICIAL - UMA ABORDAGEM DE APRENDIZADO DE
MÁQUINA – 2011 -
 Rosa, J. L. G. . Fundamentos da Inteligência Artificial. 1.
ed. Rio de Janeiro: LTC, 2011. v. 1. 228 p
Vídeo
 Pessoal aqui um link muito interessante, é
comentado nesse vídeo sobre Batman !
 Vocês tem como selecionar a legenda em
português.
 http://www.ted.com/talks/dennis_hong_my_seven_species_of_robot.html
Inteligência Artificial - IA
Prof. Dr. Carlos Estombelo montesco
Contato: estombelo@ufs.br
Fundamentos da Computação:

Fundamentos da Inteligencia Artificial :: Prof Dr. Carlos Estombelo

  • 2.
    Inteligência Artificial -IA Prof. Dr. Carlos Estombelo montesco Contato: estombelo@ufs.br Fundamentos da Computação:
  • 3.
    Introdução  Será queno futuro, talvez não muito distante, as máquinas irão dominar o mundo?  Será possível construir um cérebro eletrônico que realize todas as tarefas intelectuais humanas?
  • 4.
    Introdução  Preocupações influenciadas Mídia  Rápida disseminação da informática  Até que ponto estão apenas alimentando apenas fantasias da ficção científica?
  • 5.
    Introdução  A tecnologiarealmente tem fascinado ... a ponto de muitos adorarem o trabalho com tarefas complicadas de computação ...  e paradoxalmente deixarem de lado a Matemática, Estatística, Álgebra e outros Fundamentos, ...  Sem se aperceberem da estreita união que há entre estas áreas com IA.
  • 6.
    Introdução  Uso indiscriminadode jogos eletrônicos não contribui.  Por que não aproximar o conhecimento científico do cotidiano?  Projetar e Desenvolver com suas próprias mãos!  Descobrir e ter o prazer de conhecer o mundo pelos olhos da razão.!
  • 7.
    Introdução  IA  Sistematizae automatiza  Tarefas intelectuais  O que é relevante em qualquer esfera de atividade intelectual humana.  MAS o que é IA? ...  Definições de IA de acordo com 8 livros...
  • 8.
    O que éInteligência Artificial?  Definição desse termo é motivo de discussão  Vamos por partes:  Definição de Artificial ?  Definição de Inteligência ? ... Pode se tornar bem mais complicado ...
  • 9.
    O que éInteligência Artificial?  Uma definição Esclarecedora para “Inteligência Artificial”:  “IA é o estudo de como fazer os computadores realizarem tarefas as quais, até o momento, os homens fazem melhor” (Rich, 1994)”
  • 10.
    O que éInteligência Artificial?  Uma (OUTRA) definição Esclarecedora para “Inteligência Artificial”:  “todo problema para o qual nenhuma solução algorítmica é conhecida é um problema de IA (Laurière, 1990)”
  • 11.
    Outras definições segundo Russelle Norvig (2010)  Definição de IA (2 dimensões) Processos de pensamento e raciocínio Processos de Comportamento (agindo, atuam) Medem sucesso em termos de desempenho humano Medem sucesso em termos de racionalidade “faz tudo certo”
  • 12.
    Introdução  Agindo deforma humana: abordagem do teste de Turing  Alan Turin (1950)  Projetado : para fornecer uma definição operacional satisfatória de inteligência  “Teste baseado na impossibilidade de distinguir entre entidades inegavelmente inteligentes – os seres humanos” A
  • 13.
    Introdução  Agindo deforma humana: abordagem do teste de Turing A O computador passará no teste se um interrogador humano, depois de propor algumas perguntas por escrito, não conseguir descobrir se as respostas escritas vêm de uma pessoa ou não.
  • 14.
    Introdução  Agindo deforma humana: abordagem do teste de Turing  O que precisa? 1. Processamento da linguagem natural (PLN) 2. Representação de conhecimento 3. Raciocínio automatizado (novas conclusões) 4. Aprendizado de máquina  (para se adaptar a novas circunstancias e para detectar a extrapolar padrões) A Teste de Turing evita ... Interação física (ela é desnecessária para a inteligência)
  • 15.
    Introdução  Agindo deforma humana: abordagem do teste de Turing  Teste de Turing Total 5. Visão de computador (para testar habilidades de percepção) 6. Robótica(para passar objetos físicos pela “tela”) A Essas 6 disciplinas compõem a maior parte de IA
  • 16.
    Outras definições segundo Russelle Norvig (2010)  Definição de IA (2 dimensões) Sistemas que pensam como seres humanos Sistemas que pensam racionalmente Sistemas que atuam como seres humanos Sistemas que atuam racionalmente B C A D “O novo e interessante esforço para fazer os computadores pensarem ... Máquinas mentes, no sentido total e literal” (Haugeland, 1985) “[Automatização de] atividades que associamos ao pensamento humano, atividades como a tomada de decisões, a resolução de problemas, o aprendizado ...” (Bellman, 1978) “O estudo das faculdades mentais pelo uso de modelos computacionais” (Charniak e McDermott, 1985) “O estudo das computações que tornam possível perceber, raciocinar e agir.” (Winston, 1992) “A arte de criar máquinas que executam funções que exigem inteligência quando executadas por pessoas.” (Kurzweil, 1990) “A Inteligencia Computacional é o estudo do projeto de agentes inteligentes” (Poole et al., 1998)
  • 17.
    ... Agentes racionais...  Nossa abordagem será:  Princípios gerais de agentes racionais e nos componentes para construí-los.  O conceito de racionalidade pode ser aplicado a uma ampla variedade de agentes que operam em qualquer ambiente.
  • 18.
    Agentes e Ambientes Aqui um agente  Pode perceber seu ambiente (sensores)  Pode agir sobre esse ambiente (atuadores)
  • 19.
  • 20.
    Agente  Idéia simples Um agente humano  Um agente robótico  Um agente de software, etc.
  • 21.
    Aplicações da IA As aplicações da IA vão desde jogos até prova de teoremas.
  • 22.
    Aplicações da IA TAREFAS“CORRIQUEIRAS” Percepção •Visão •Fala Linguagem natural •Entendimento •Geração •tradução Raciocínio de senso somum Controle de robôs TAREFAS FORMAIS Jogos •Xadrez •Etc. Matemática •Geometria •Lógica •Cálculo integral TAREFAS ESPECIALISTAS Engenharia •Projeto •Descoberta de falhas •Planejamento de manufatura Análise científica Diagnóstico médico Análise financeira (Rosa, 2011)
  • 23.
    Aplicações da IA (Rosa,2011)  Fazer o computador se lembrar de fatos complicados inter-relacionados e obter conclusões a partir deles  INFERÊNCIA LÓGICA !  Fazer o computador planejar sequências de ações para alcançar metas  PLANEJAMENTO !
  • 24.
    Aplicações da IA (Rosa,2011)  Fazer o computador oferecer ajuda baseada em regras complicadas para várias situações  SISTEMAS ESPECIALISTAS OU SISTEMAS DE DEDUÇÃO BASEADOS EM REGRAS
  • 25.
    Aplicações da IA (Rosa,2011)  Fazer o computador olhar através de câmeras e ver o que estiver lá  VISÃO ARTIFICIAL  Fazer o computador se mover entre objetos do mundo real  ROBÓTICA
  • 26.
    Como fazer tudoisso ? (Rosa, 2011)  É Mágica?
  • 27.
    Como fazer tudoisso ? (Rosa, 2011)  IA trabalha com várias ferramentas  Desde lógica de predicados (lógica clássica) ...  ... até simulações das redes neurais, as redes de células nervosas do cérebro.
  • 28.
    Agente de resoluçãode problemas Abstração: remover detalhes irrelevantes
  • 29.
    Agente de resoluçãode problemas  Exemplos  Quebra-cabeça de 8 peças  Estados: diferentes configurações com o espaço vazio  9!/2 = 181.440 estados acessíveis  Estado inicial: qualquer estado  Função sucessor: estados válidos resultados das ações o espaço desloca para Esquerda, Direita, Acima ou Abaixo  Teste Objetivo: seqüência ordenada iniciando pelo espaço vazio  Custo de caminho: cada passo custa 1 Abstração
  • 30.
    Agente de resoluçãode problemas  Exemplos  Oito rainhas  Estados: qualquer disposição de 0 a 8 rainhas no tabuleiro  Estado inicial: nenhuma rainha no tabuleiro  Função sucessor: colocar uma rainha em qualquer quadrado vazio  Teste Objetivo: as 8 rainhas no tabuleiro e nenhuma é atacada  Custo de caminho: sem interesse porque o estado final é o mais importante Abstração
  • 31.
    Estratégias de busca Busca em profundidade
  • 32.
    Estratégias de busca Busca em profundidade
  • 33.
    Algoritmos Genéticos  Estadossucessores são gerados pela combinação de dois estados pais.  Inicia com uma população (k estados)  Cada indivíduo (ou estados) é representado como uma cadeia sobre um alfabeto finito.  . 33
  • 34.
  • 35.
    Observação  Em muitosproblemas de IA você vai observar que sempre se BUSCA por uma solução ótima ...  Ou pelo menos o mais próximo possível.
  • 36.
    IA uma abordagemde Aprendizado de Máquina  Exemplo:  Em um supermercado ... Como descobrir qual cliente deve receber material de propaganda ?  Se você tem o cadastro dos clientes você pode realizar um processo de indução de uma hipótese (ou aproximação de função)  a partir da experiência passada  Isto pode ser chamado de Aprendizado de Máquina (Faceli, 2011)
  • 37.
    IA uma abordagemde Aprendizado de Máquina  Definição de Aprendizado de Máquina  “Capacidade de melhorar o desempenho na realização de alguma tarefa por meio da experiência” (Mitchell, 1997)
  • 38.
    IA uma abordagemde Aprendizado de Máquina  Aplicações de Aprendizado de Máquina (Faceli, 2011)  Reconhecimento de palavras faladas  Predição de taxas de cura de pacientes com diferentes doenças  Detecção de uso fraudulento de cartões de crédito  Condução de automóveis de forma autônoma em rodovias  Ferramentas que jogam xadrez semelhante aos campeões  Diagnóstico de câncer por meio da análise de dados de expressão gênica.
  • 39.
    IA uma abordagemde Aprendizado de Máquina  Devemos considerar  ...  Modelos Descritivos  Mineração de Padrões Freqüentes  Análise de agrupamentos
  • 40.
    Redes Neurais  Otermo “Redes Neurais” • Redes Neurais Artificiais  Ênfase nas aplicações: inteligência artificial, engenharia, processamento de dados e imagens, medicina, finanças, etc;  Objetivo: Resolver problemas de reconhecimento e classificação de padrões, controle adaptativo e previsão de series temporais;  Principais ferramentas: modelos de unidades inspiradas nos neurônios biológicos com alto grau de interconexão e processamento paralelo, tendo os pesos das conexões modificados por algoritmos de aprendizado supervisionado ou não supervisionado (backpropagation, aprendizado hebbiano etc), implementados via pacotes comerciais ou outros programas ; técnicas estatísticas de processamento e tratamento de dados.
  • 41.
    Elementos de NeurobiologiaNecessários para a construção de um Modelo de Neurônio de uma Rede Neural Artificial Esquema de uma Célula Piramidal. Um Neurônio Típico
  • 42.
    As Redes NeuraisArtificiais  Uma classe importante de redes neurais é a das que têm arquitetura “em camadas”. Elas podem ser do tipo feedforward ou do tipo recorrente.
  • 43.
    Espaço de Soluções •Uma função como E, que tem que ser minimizada (ou maximizada) para a obtenção de uma solução ótima, costuma ser chamada de função “custo”. • .
  • 45.
    Não esquecer  IAnão é Mágica  IA trabalha com as seguintes Ferramentas (ou Fundamentos)  Matemática  Lógica  Álgebra Matricial  Estatística ...
  • 46.
  • 47.
    Bibliografia  RUSSELL, StuartJ; NORVIG, P. Artificial intelligence: a modern approach. New Jersey, Estados Unidos: Prentice Hall, 1995. 932 p. (Prentice Hall series in artificial intelligence) ISBN 0131038052 Número de Chamada (UFS): 004.8 R959a  LUGER, George F. Artificial intelligence: structures and strategies for complex problem solving. 6th ed. Harlow: Addison Wesley Longman, 2009. 754 p. ISBN 9780321545893 Número de Chamada (UFS) : 004.8 L951a 6th ed.  KATTI FACELI;ANA CAROLINA LORENA;JOAO GAMA;ANDRE C. P. L. F. DE CARVALHO. INTELIGÊNCIA ARTIFICIAL - UMA ABORDAGEM DE APRENDIZADO DE MÁQUINA – 2011 -  Rosa, J. L. G. . Fundamentos da Inteligência Artificial. 1. ed. Rio de Janeiro: LTC, 2011. v. 1. 228 p
  • 48.
    Vídeo  Pessoal aquium link muito interessante, é comentado nesse vídeo sobre Batman !  Vocês tem como selecionar a legenda em português.  http://www.ted.com/talks/dennis_hong_my_seven_species_of_robot.html
  • 50.
    Inteligência Artificial -IA Prof. Dr. Carlos Estombelo montesco Contato: estombelo@ufs.br Fundamentos da Computação: