diagrama de casos de uso - fabricio breve · seguindo as mesmas regras simples bastante utilizado...

74
Computação Natural Fabricio Breve - [email protected] 10/8/2007 1 Fabricio Breve Foto retirada de: http://www.virtualsciencefair.org

Upload: vothuan

Post on 08-Nov-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Computação Natural

Fabricio Breve - [email protected]

10/8/2007 1Fabricio Breve

Foto retirada de: http://www.virtualsciencefair.org

Computação Natural

Campo de investigação relativamente novo

que junta dois assuntos que antigamente se

acreditava serem totalmente distintos:

Natureza e Computação

Alguns problemas não podem ser resolvidos

usando as técnicas de computação

tradicionais, estimulando a busca de soluções

no melhor solucionador de problemas

conhecido: a Natureza

10/8/2007 Fabricio Breve 2

Computação Natural

Fornece:

◦ Soluções e modelos para problemas antigos,

porém ainda não resolvidos

◦ Uma nova forma de entender e interagir com

a natureza

Novos métodos de simular, emular e realizar

fenômenos naturais

10/8/2007 Fabricio Breve 3

Computação Natural

O estudo de fenômenos e padrões físicos, químicos e biológicos permite explicar e entender como a natureza funciona

◦ Exemplos:

O estudo das leis (da física) de movimento e gravidade permitiram a construção de aeronaves

O entendimento de princípios básicos da vida tornou possível controlar a natureza em vários níveis:

Criar alimentos transgênicos

Controle de doenças

10/8/2007 Fabricio Breve 4

Motivação

Por muitos séculos a observação do mundo natural permitiu derivar idéias de como a natureza funciona:

◦ Leis da física:

Eletromagnetismo (Equações de Maxwell)

Termodinâmica (conservação, entropia, zero absoluto)

Movimento (leis de Newton)

Etc...

10/8/2007 Fabricio Breve 5

Motivação

Fenômenos naturais (processos, substâncias, organismos) tem inspirado e motivado pessoas a projetar e construir novos sistemas e artefatos◦ Sonar de localização por eco

◦ Substâncias químicas usadas com fins medicinais

◦ Sistemas de imageamentoinfravermelho

◦ Aeronaves

◦ Submarinos

10/8/2007 Fabricio Breve 6

Motivação

A Computação Natural é a versão

computacional deste processo de extrair

idéias da natureza para desenvolver

sistemas artificiais (computacionais), ou

de usar mídia natural (ex.: biomoléculas)

para fazer computação.

Artificial = feito pelo homem (em vez de

feito pela natureza)

10/8/2007 Fabricio Breve 7

Computação Natural

Pode ser dividida em três grandes

ramificações:

◦ Uso da natureza para inspirar o

desenvolvimento de novas técnicas de

computação para resolver problemas

complexos

◦ Uso de computadores para recriar

fenômenos naturais e organismos

◦ Uso de materiais naturais para computar

Ex.: biomoléculas

10/8/2007 Fabricio Breve 8

Computação Natural

Conhecimentos envolvidos:

◦ Física

◦ Química

◦ Engenharia

◦ Biologia

◦ Ciência da Computação

10/8/2007 Fabricio Breve 9

Necessidade dos profissionais dessas

áreas agirem juntos ou ao menos

compartilharem idéias

Resultados da Computação Natural

Se o trabalho for bem feito não haverá muita

diferença para o usuário final:

◦ Planilhas recalculando mais rápido

◦ Corretor gramatical funcionando corretamente

◦ Muitos problemas complexos resolvidos

◦ Robôs conversando naturalmente com humanos

◦ Carros dirigindo sozinhos

◦ Novas formas de vida

◦ Computadores baseados em biomoléculas

◦ Etc.

10/8/2007 Fabricio Breve 10

Exemplos

Fenômenos e processos naturais

envolvendo meios naturais

◦ Agrupamento de corpos mortos em colônias

de formigas

◦ Bando de pássaros

◦ Manipulação de cadeias de DNA

10/8/2007 Fabricio Breve 11

Agrupamento de corpos mortos em

colônias de formigas Para limpar seus ninhos, algumas espécies

de formiga agrupam os corpos

Mecanismo básico:

◦ Atração entre os itens mortos mediada pelas

formigas

◦ Pequenos agrupamentos de itens aumentam

ao atrair mais trabalhadores para depositar

mais itens.

10/8/2007 Fabricio Breve 12

Agrupamento de corpos mortos em

colônias de formigas

(a) Distribuição inicial

(b) Corpos agrupados

10/8/2007 Fabricio Breve 13

Agrupamento de corpos mortos em

colônias de formigas Regra de apanhar

◦ Se uma formiga encontra um corpo, ela o pega e passeia pela arena até encontrar outro corpo A probabilidade da formiga pegar um corpo é

inversamente proporcional ao número de itens naquela porção da arena, quanto mais corpos por perto, menor a probabilidade

Regra de soltar◦ Enquanto passeia, a formiga carregada

eventualmente encontra mais corpos no caminho Quanto mais corpos são encontrados em uma

determinada região, maior a probabilidade da formiga soltar o corpo que está carregando, e vice-versa.

10/8/2007 Fabricio Breve 14

Agrupamento de corpos mortos em

colônias de formigas Questões:

1. Que tipo de problema poderia ser resolvido

inspirado por este modelo simples de um

fenômeno natural?

2. Como você usaria essas idéias para

desenvolver uma ferramenta computacional

10/8/2007 Fabricio Breve 15

Bando de Pássaros

Quando vemos um bando de pássaros no céu, é natural assumirmos que eles seguem um líder (aquele na frente do bando)

Porém, hoje acredita-se (e há boas evidências disso) que os pássaros no bando não seguem nenhum líder

10/8/2007 Fabricio Breve 16

Bando de Pássaros

Não existe regra global que possa ser definida para simular um bando de pássaros◦ Porém, é possível gerar um script para cada

pássaro simulado parar criar um comportamento de grupo mais realístico

Outra estratégia é derivar regras de comportamento genéricas para os pássaros individuais◦ Permite uma simulação realista

◦ O resultado é que muitos pássaros estarão seguindo as mesmas regras simples

◦ Bastante utilizado em filmes

10/8/2007 Fabricio Breve 17

Bando de Pássaros

Questões:

1. Descreva algumas dessas regras de

comportamento que, quando aplicadas para

cada pássaro no grupo, resultam em um

comportamento que não está especificado

pelas regras individuais (a interação entre

cada elemento usando tais regras resulta

num comportamento global que

freqüentemente não pode ser predito

olhando apenas as regras)

10/8/2007 Fabricio Breve 18

Bando de Pássaros

2. Você pode estender essas regras para

rebanhos/manadas de animais terrestres? E

para cardumes de peixes?

3. Há diferença qualitativa significante entre

esses vários tipos de comportamento de

grupo?

10/8/2007 Fabricio Breve 19

Manipulação de cadeias de DNA

Moléculas de DNA contém a informação

genética de todos os seres viventes na Terra.

Sabemos que esta informação genética, junto

com influências do ambiente, determinam o

fenótipo (características físicas) do indivíduo.

10/8/2007 Fabricio Breve 20

Manipulação de cadeias de DNA

Moléculas de DNA são compostas de

quatro bases, que acoplam-se a outras de

maneira complementar:

◦ A acopla com T

◦ C acopla com G

10/8/2007 Fabricio Breve 21

Manipulação de cadeias de DNA

Técnicas genéticas podem ser usadas para manipular o DNA artificialmente, alterando a informação codificada nessas moléculas. Elas podem ser:◦ Denatured (separar em cadeias simples)

◦ Annealed (cadeias simples podem ser “coladas” para formar uma cadeia de DNA)

◦ Shortened (reduzir em tamanho)

◦ Cut (separar em duas)

◦ Multiplied (copiada)

◦ Modified (ex.: novas seqüências inseridas)

◦ Etc.

10/8/2007 Fabricio Breve 22

Manipulação de cadeias de DNA

Questões:

1. A informação que codifica um organismo está

contida nas moléculas de DNA e estas podem

ser manipuladas, então a vida pode ser vista

como processamento de informações. Baseado

no seu conhecimento de como computadores

comuns (PCs) funcionam, proponha um novo

modelo de computador baseado em cadeias de

DNA e sugira um número de técnicas de

manipulação que pode ser usado para

computar com moléculas.

10/8/2007 Fabricio Breve 23

Manipulação de cadeias de DNA

Questões

2. Quais seriam as vantagens e desvantagens

do seu computador baseado em DNA

comparado com os computadores

tradicionais?

10/8/2007 Fabricio Breve 24

Filosofia da Computação Natural

Pesquisadores normalmente assumem

que sistemas e processos naturais são

governados por um conjunto finito de

regras

◦ Não é fácil encontrar tais regras, mas um

enorme progresso tem sido feito

10/8/2007 Fabricio Breve 25

Filosofia da Computação Natural

A maioria das abordagens computacionais

são baseadas em versões bastante

simplificadas dos mecanismos e processos

do fenômeno natural

◦ Necessário para que um grande número de

entidades seja tratável

◦ É vantajoso utilizar apenas o conjunto de

características necessárias para tornar

possível reproduzir os aspectos do sistema

que são desejáveis

10/8/2007 Fabricio Breve 26

Computação Inspirada pela

Natureza A natureza sempre teve bastante sucesso

em resolver problemas complexos

◦ Organismos vivos precisam sobreviver

Procurar comida

Se proteger de predadores e condições climáticas

Acasalar

Organizar suas casas

◦ Tarefas que requerem estratégias complexas, muitas vezes difíceis de modelar ou entender

10/8/2007 Fabricio Breve 27

Você sabia que a maneira com que as formigas buscam comida inspirou

algoritmos para resolver problemas de roteamento em redes de comunicação?

Computação Inspirada pela

Natureza Objetivos (menos freqüente)

◦ Modelar fenômenos naturais e simulá-los no

computador

Derivar modelos teóricos fiéis os suficiente aos

mecanismos naturais para reproduzir

quantitativamente ou qualitativamente algumas de

suas funções.

Fornecer melhor entendimento do fenômeno

natural sendo modelado

Usado na biologia, etnologia, ecologia, farmacologia,

nutrição, saúde, medicina

10/8/2007 Fabricio Breve 28

Computação Inspirada pela

Natureza Objetivos (mais freqüente)

◦ Estudo de fenômenos naturais, processos e

mesmo modelos teóricos para o

desenvolvimento de sistemas computacionais

e algoritmos capazes de resolver sistemas

complexos.

Fornecer técnicas (alternativas) para solucionar

problemas que não podem ser (satisfatoriamente)

resolvidos por técnicas tradicionais.

=> Técnicas de Computação Bioinspirada

10/8/2007 Fabricio Breve 29

Computação Inspirada pela

Natureza Quando o foco é a solução de problemas

não precisamos nos preocupar com a

fidelidade ao fenômeno sendo modelado.

◦ Modelos bastante abstratos (chamados

metáforas) podem imitar determinados

mecanismos da biologia

10/8/2007 Fabricio Breve 30

Computação Inspirada pela

Natureza Normalmente o fenômeno natural dá origem a

uma ferramenta computacional que depois será

melhorada algoritmicamente ou

matematicamente

Os modelos finais normalmente tem pouca

semelhança com o fenômeno natural que os

originou ou motivou

Exemplo: Redes Neurais Artificiais

10/8/2007 Fabricio Breve 31

Computação Inspirada pela

Natureza – Histórico (Marcos) 1943: McCulloch e Pitts introduzem o

primeiro modelo matemático de um neurônio que deu origem ao estudo de Rede Neurais Artificiais

Anos 60: diversos trabalhos deram origem ao campo de computação evolutiva, que utilizam idéias da biologia evolutiva para desenvolver algoritmos evolutivos para busca e otimização◦ Maioria deles são baseados na teoria Neo-

Darwiniana (variação genética, seleção natural, indivíduos mais aptos)

10/8/2007 Fabricio Breve 32

Computação Inspirada pela

Natureza – Histórico (Marcos) Final dos anos 80: sistemas robóticos

nos quais uma coleção de agentes simples

interagem em um ambiente baseado em

regras locais

◦ Deu origem ao termo inteligência de enxames,

que hoje é usado para designar qualquer

algoritmo inspirado no comportamento

coletivo de organismos sociais (de insetos a

sociedade humana)

10/8/2007 Fabricio Breve 33

Computação Inspirada pela

Natureza – Histórico (Marcos) Metade dos anos 80: sistemas

imunológicos artificiais emprestam idéias do

sistema imunológico para desenvolver

sistemas para resolver sistemas

complexos

◦ Aplicações vão de biologia a robótica

10/8/2007 Fabricio Breve 34

Computação Inspirada pela

Natureza - Sumário

10/8/2007 Fabricio Breve 35

Computação Inspirada pela Natureza

Algoritmos

Evolutivos

Redes Neurais

Artificiais

Inteligência de

Enxames

Sistemas

Imunológicos

Artificiais

Simulação e Emulação da Natureza

em Computadores Fornece novas ferramentas para a síntese

e estudo de fenômenos naturais que

possam ser usados para testar teorias

biológicas normalmente não passíveis de

teste via técnicas experimentais e

analíticas

10/8/2007 Fabricio Breve 36

Simulação e Emulação da Natureza

em Computadores Principais abordagens:

10/8/2007 Fabricio Breve 37

Simulação e Emulação da Natureza em

Computadores

Geometria Fractal da Natureza Vida Artificial

Simulação e Emulação da Natureza

em Computadores Avanços recentes em computação gráfica

tornaram possível a visualização de

estruturas naturais e processos com

realismo sem precedentes

◦ Imagens resultantes, animações e sistemas

interativos são úteis como ferramentas

científicas, de pesquisa e educacionais em

ciência da computação, engenharia, biociências

e muitos outros domínios

10/8/2007 Fabricio Breve 38

Simulação e Emulação da Natureza

em Computadores Geometria fractal é a

geometria da natureza◦ Irregular

◦ Fragmentada

◦ Estruturas complexas

Fractais em geral se caracterizam por:◦ Infinitos detalhes

◦ Infinita extensão

◦ Auto-similaridade

◦ Dimensões fractais

◦ Ausência de lisura

◦ Ausência de derivados10/8/2007 Fabricio Breve 39

Simulação e Emulação da Natureza

em Computadores Exemplos de fractais na Natureza:

◦ Samambaia

◦ Contorno da costa litorânea

◦ Montanhas

◦ Couve-Flor

◦ Brócolis

◦ Outras plantas e árvores

◦ Pulmões

◦ Sistema circulatório

◦ Cérebro

◦ Rins

◦ Muitos outros órgãos

10/8/2007 Fabricio Breve 40

Simulação e Emulação da Natureza

em Computadores Existem diversas técnicas

para modelar padrões e estruturas fractais:

◦ Cellular automata

◦ L-Systems

◦ Lindenmayer Systems

◦ Iterated Function Systems

◦ Particle Systems

◦ Brownian Motion

◦ Etc.

10/8/2007 Fabricio Breve 41

Simulação e Emulação da Natureza

em Computadores Aplicações

◦ Projeto de paisagens auxiliado por computador

◦ Estudo de processos de desenvolvimento e crescimento

◦ Modelagem e síntese de um grande número de padrões e fenômenos naturais

10/8/2007 Fabricio Breve 42

Simulação e Emulação da Natureza

em Computadores Importância do estudo de fractais e geometria fractal:

◦ Fogo em florestas tem fronteiras fractais

◦ O espalhamento de alguns líquidos em fluídos viscosos tem padrões fractais

◦ Proteínas se dobram no espaço tridimensional em dimensões fractais

◦ Anticorpos se acoplam a antígenos através de dimensões fractais complementares de suas superfícies

◦ Fractais tem sido usados para modelar a dinâmica do vírus da AIDS

◦ Células cancerosas podem ser identificadas baseadas em suas dimensões fractais

◦ Etc.

10/8/2007 Fabricio Breve 43

Simulação e Emulação da Natureza

em Computadores Vida Artificial

◦ Campo de pesquisa que complementa que se preocupa com a análise de organismos vivos através da síntese em computadores e outras mídias artificiais de comportamentos semelhante ao de seres vivos (e criaturas semelhantes a seres vivos)

◦ Normalmente abordagens não estão preocupadas em resolver nenhum problema em particular

◦ Objetivo de aumentar o entendimento da natureza (life-as-it-is), e possivelmente novas formas de vida (life-as-it-could-be)

10/8/2007 Fabricio Breve 44

Simulação e Emulação da Natureza

em Computadores Vida Artificial

◦ Novas tecnologias:

Robôs sofisticados

Ferramentas de monitoramento ecológico

Sistemas educacionais

Computação gráfica

Etc.

10/8/2007 Fabricio Breve 45

Simulação e Emulação da Natureza

em Computadores Vida Artificial

◦ Se preocupa principalmente em simular e emular

comportamentos de organismos para permitir o

estudo ou simulação de fenômenos naturais

◦ Alguns trabalhos:

Estudar congestionamento de trânsito

Comportamento de sistemas biológicos

Evolução de organismos em ambientes virtuais

Simulação de comportamento coletivo

Estudo e caracterização de vírus de computador

Etc.

10/8/2007 Fabricio Breve 46

Computação com Materiais

Naturais Novos métodos

computacionais baseados

em outros materiais

naturais em vez do silício

◦ Resultam em uma

computação não-padrão que

supera alguns limites dos

computadores seqüenciais de

John von Neumann.

10/8/2007 Fabricio Breve 47

Computação com Materiais

Naturais Como toda operação matemática pode ser

quebrada em bits, e qualquer função lógica pode ser construída usando portas AND e NOT, qualquer “coisa” computável pode ser realizada por portas AND e NOT devidamente conectadas◦ Torna possível o uso de novos conceitos de

processos computacionais, baseados em materiais naturais: Reações Químicas

Moléculas de DNA

Dispositivos de Mecânica Quântica

10/8/2007 Fabricio Breve 48

Computação com Materiais

Naturais Hoje um único chip de silício

pode conter milhões de portas lógicas◦ Com a miniaturização logo

chegaremos a um estado onde as portas lógicas serão feitas de átomos

◦ Lei de Moore: o número de transistores em um único chip dobra a cada dois anos Se essa escala permanecer válida, até

o final da década chegaremos ao limite em termos de poder de processamento

10/8/2007 Fabricio Breve 49

Computação com Materiais

Naturais Questão: que outros materiais podem ser

usados para fazer computação no lugar

do silício?

◦ Após certo nível de miniaturização as leis da

física tradicional não serão mais aplicáveis,

pois os efeitos quânticos passarão a existir

Nova questão: como computar sob os efeitos

quânticos?

10/8/2007 Fabricio Breve 50

Computação com Materiais

Naturais Para responder tais questões os

pesquisadores estão tentando construir

novos computadores baseados em DNA

e RNA e Teoria Quântica

◦ Computação Molecular

◦ Computação Quântica

10/8/2007 Fabricio Breve 51

Computação com Materiais

Naturais Duas principais áreas:

10/8/2007 Fabricio Breve 52

Computação com Materiais Naturais

Computação com DNA Computação Quântica

Computação com Materiais

Naturais: Computação Molecular Baseada no uso de moléculas biológicas

(biomoléculas) para guardar informação

juntamente com técnicas de engenharia

genética (biomolecular) para manipular

estas moléculas

◦ Combinação poderosa entre Ciência da

Computação e Biologia Molecular

10/8/2007 Fabricio Breve 53

Computação com Materiais

Naturais: Computação Molecular Em 1994 L. Adleman resolveu um

problema NP-Completo usando moléculas DNA e técnicas biomoleculares

Desde então vários outras “soluções moleculares” foram propostas para problemas complexos

Foi mostrado que computadores moleculares podem fazer computação universal

10/8/2007 Fabricio Breve 54

Computação com Materiais

Naturais: Computação Molecular Vantagens

◦ Alta velocidade

◦ Uso eficiente de energia

◦ Armazenamento de informações econômico

Característica

◦ Uso maciço de computação paralela

10/8/2007 Fabricio Breve 55

Computação com Materiais

Naturais: Computação Quântica Quando a escala atômica das portas

lógicas for alcançada as regras que

prevaleceram serão as da mecânica

quântica, bastante diferente das regras

clássicas que determinam as propriedades

das portas lógicas convencionais

◦ Será necessário tecnologia quântica para

suplementar ou complementar a tecnologia

atual

10/8/2007 Fabricio Breve 56

Computação com Materiais

Naturais: Computação Quântica Computação Quântica é o estudo de

tarefas de processamento de informação

que pode ser obtido usando sistemas de

mecânica quântica

◦ Informação é armazenada no nível micro

físico onde mecanismos quânticos prevalecem

10/8/2007 Fabricio Breve 57

Computação com Materiais

Naturais: Computação Quântica Em tais casos, um bit pode representar zero e um

simultaneamente, e a medida e manipulação desses bits é modelada como uma matriz de operações.

Em 1982 R. Feynman introduziu um computador capaz de simular física quântica

Em 1984 D. Deutsch demonstrou a capacidade de computação universal dos computadores quânticos

Em 1994 P. Shor introduziu o primeiro algoritmo quântico capaz de fazer fatoração de forma eficiente, algo que só pode ser feito com um computador quântico

10/8/2007 Fabricio Breve 58

Computação com Materiais

Naturais: Computação Quântica Pode fornecer um tipo inteiramente novo

de computação com algoritmos

qualitativamente novos baseados em

mecânica quântica

Portanto oferece muito mais que apenas

adicionar a capacidade de processar mais

bits que os computadores baseados em

silício

10/8/2007 Fabricio Breve 59

Quando usar abordagens de

Computação Natural Problema 1: uma companhia precisa

encontrar a menor rota a partir de sua

fábrica, passando por todas as cidades

onde entrega seus produtos e retornando

a fábrica. Cada cidade deve ser visitada

apenas uma vez

◦ Traveling Salesman Problem (TSP)

10/8/2007 Fabricio Breve 60

Quando usar abordagens de

Computação Natural

10/8/2007 Fabricio Breve 61

Quando usar abordagens de

Computação Natural TSP:

◦ Muitas aplicações práticas: de entrega de

comida em restaurantes fast-food a projeto

de placas de circuito.

◦ Simples de definir, mas difícil de resolver,

principalmente quando o número de cidades

envolvidas é grande

10/8/2007 Fabricio Breve 62

Quando usar abordagens de

Computação Natural

Fábrica Cidades Rotas Possíveis

1 3 6

1 4 24

1 5 120

1 10 3628800

1 20 2432902008176640000

10/8/2007 Fabricio Breve 63

Quando usar abordagens de

Computação Natural A maneira mais direta de resolver o

problema é testar todas as rotas (força-bruta)

Se você tiver um computador capaz de analisar 100 rotas por segundo

◦ Menos de 1 segundo para resolver um problema com 3 cidades

◦ Pouco mais de 1 segundo com 5 cidades

◦ Com as 27 cidades do problema proposto o mesmo PC levaria 3,5 x 1019 anos

10/8/2007 Fabricio Breve 64

Quando usar abordagens de

Computação Natural Problema 2: uma empresa que produz

filmes de animação quer desenhar um

bando de zebras fugindo de alguns leões

famintos. Sua tarefa é propor meios de

simular realisticamente e efetivamente o

comportamento coletivo das zebras.

10/8/2007 Fabricio Breve 65

Quando usar abordagens de

Computação Natural Provavelmente a primeira proposta que vem

a mente é escrever um script para cada zebra

◦ Vantagem

É mais fácil que escrever um script para controlar o bando todo

◦ Desvantagens

Trabalhoso quando o número de zebras é grande

O número de scripts cresce junto com o número de zebras

A complexidade cresce exponencialmente, quanto mais zebras mais difícil é coordená-las para evitar colisões, etc.

Difícil de modificar ao utilizar cenários mais complexos

Estático, o resultando coletivo será sempre o mesmo cada vez que o script rodar.

10/8/2007 Fabricio Breve 66

Quando usar abordagens de

Computação Natural Solução

◦ Encontrar um conjunto de regras simples que

serão responsáveis por guiar o

comportamento individual das zebras pelo

campo, de maneira similar ao que já

discutimos sobre bandos de pássaros.

10/8/2007 Fabricio Breve 67

Quando usar abordagens de

Computação Natural Além das zebras você deve também criar

o ambiente nos quais os animais serão colocados.

Solução (abordagem mais simples):

◦ Desenhar ou fotografar cenários reais e usá-los como fundo para animação (como é feito nos cartoons)

◦ Problema:

Tem que ser feito frame a frame

A memória necessária para armazenar todas essas imagens é bastante grade

10/8/2007 Fabricio Breve 68

Quando usar abordagens de

Computação Natural Solução eficiente

◦ Utilizar técnicas de geometria fractal para

reproduzir cenários naturais

Diversos algoritmos disponíveis (já citados)

Pequena quantidade de memória

Estas técnicas empregam um pequeno número de

regras ou equações para gerar padrões ou simular

fenômenos on line, reduzindo a necessidade de

grandes dispositivos de armazenamento.

10/8/2007 Fabricio Breve 69

Quando usar abordagens de

Computação Natural Problema 3: na tecnologia de computadores atual,

bits constituem a unidade básica de informação. Eles estão fisicamente armazenados em circuitos ou chips feitos com a tecnologia de silício. A necessidade de aumentar a capacidade de memória e processamento dos computadores levou a miniaturização dos componentes eletrônicos. No ano 200 aproximadamente 109 átomos eram necessários para representar um único bit. É estimado que no ano 2020 um único átomo será usado para representar um bit. A questão: se iremos inevitavelmente atingir os limites da miniaturização da tecnologia atual, que outros tipos de materiais (além do silício) podem ser usados para computar?

10/8/2007 Fabricio Breve 70

Quando usar abordagens de

Computação Natural Sumarizando, devemos usar computação natural

quando:◦ O problema a ser resolvido é complexo Grande número de variáveis

Muitas potenciais soluções

Não-linear

Etc.

◦ Não é possível garantir que uma solução potencial é a melhor, mas é possível encontrar uma medida que permita a comparação entre as possíveis soluções

◦ O problema a ser resolvido não pode ser modelado (corretamente), tais como tarefas de reconhecimento de padrões e classificação. Apesar de não poder ser encontrado um modelo podem haver

amostras que podem ser usadas para “ensinar” um sistema em como resolver o problema, e o sistema “aprende” a partir dos exemplos

10/8/2007 Fabricio Breve 71

Quando usar abordagens de

Computação Natural◦ Uma única solução não é boa o suficiente, ou seja,

diversidade é importante A maioria das técnicas permitem encontrar apenas uma única

solução para um dado problema

Isto acontece porque a maioria delas é determinística (sempre usa a mesma seqüência de passos para encontrar a solução)

Computação natural é, na sua maioria, composta de métodos probabilísticos

◦ Processos ou sistemas químicos, físicos e biológicos tem de ser emulados ou simulados com realismo A Geometria Euclidiana é muito boa e eficiente para criar

formas feitas pelo homem, mas tem dificuldade em reproduzir padrões naturais.

Isto ocorre porque a natureza é fractal, e apenas a geometria fractal tem ferramentas apropriadas para modelar a natureza.

10/8/2007 Fabricio Breve 72

Quando usar abordagens de

Computação Natural◦ Fenômenos e comportamentos de seres vivos

tem de ser sintetizados em mídia artificial (computadores, robôs)

A essência do fenômeno natural é extraída e sintetizada de uma maneira normalmente bem mais simples no sistema artificial.

◦ Os limites da tecnologia atual são alcançados ou novos materiais tem de ser encontrados.

A natureza é abundante com armazenamento de informação e sistemas de processamento. Os aspectos científicos e de engenharia de como utilizar estes materiais são o principal desafio da computação com materiais naturais.

10/8/2007 Fabricio Breve 73

Referências Bibliográficas

CASTRO, Leandro Nunes. Fundamentals of Natural Computing: Basic Concepts, Algorithms, And Applications. CRC Press, 2006.

CARVALHO, André Ponce de Leon F. de. Notas de Aula, 2007.

HAYKIN, Simon. Redes Neurais: Princípio e Prática. Bookman, 2001.

KOVACS, Zsolt L. Redes Neurais Artificiais: Fundamentos e Aplicações. Livraria da Física, 2006.

10/8/2007 Fabricio Breve 74