• Nenhum resultado encontrado

1. CONCEITOS BÁSICOS - Computacao Natural Breve

N/A
N/A
Protected

Academic year: 2019

Share "1. CONCEITOS BÁSICOS - Computacao Natural Breve"

Copied!
7
0
0

Texto

(1)

Computação Natural:

Uma Breve Visão Geral

Leandro N. de Castro, Ricardo J. G. B. Campello, Eduardo R. Hruschka, Marta C. Rosatelli

{lnunes,campello,erh,rosatelli@unisantos.edu.br}

P r o g r a m a d e M e s t r a d o e m I n f o r m á t i c a

U n i v e r s i d a d e C a t ó l i c a d e S a n t o s ( U n i S a n t o s )

R . D r . C a r v a l h o d e M e n d o n ç a , 1 4 4

1 1 0 7 0 - 9 0 6 , S a n t o s / S P

Abstract

A computação natural envolve todos os siste-mas computacionais desenvolvidos com inspi-ração ou utilização de algum mecanismo na-tural de processamento de informação e inclui as seguintes sub-áreas: 1) computação inspi-rada na natureza; 2) estudos sobre a natureza através da computação; e 3) computação com mecanismos naturais. Este artigo apresenta uma descrição da linha de pesquisa denomi-nada de computação natural. Cada sub-área da computação natural é explicada brevemente e seus principais componentes e aplicações são listados.

1. CONCEITOS BÁSICOS

A terminologia computação natural

vem sendo empregada na literatura para descrever todos os sistemas computa-cionais desenvolvidos com inspiração ou utilização de algum mecanismo natu-ral ou biológico de processamento de informação (Ballard, 1999; Gramß et al., 2001; Flake, 2000; Paton et al., 2003; de Castro & Von Zuben, 2004). Fundamentalmente, a computação natu-ral é constituída por novas abordagens computacionais caracterizadas por uma maior proximidade com a natureza.

Dentre os vários objetivos da com-putação natural, destacam-se:

• Desenvolver ferramentas matemáti-cas e computacionais para a solução de problemas complexos em diversas áreas do conhecimento;

• Projetar dispositivos (computacio-nais) que simulam, emulam, mode-lam e descrevem sistemas e fenôme-nos naturais;

• Sintetizar novas formas de vida, de-nominadas de vida artificial; e

(2)

conserva-ção, entropia, e zero absoluto; na mecâ-nica (leis de Newton); no eletromagne-tismo (leis de Maxwell); entre outras. A computação natural também está forte-mente ligada à natureza sob diversas perspectivas e com abordagens distin-tas. Por exemplo, o funcionamento do cérebro humano inspirou o desenvolvi-mento das redes neurais artificiais (Haykin, 1999) e o funcionamento do sistema imunológico dos vertebrados inspirou os sistemas imunológicos arti-ficiais (de Castro & Timmis, 2002).

Portanto, a computação natural po-de ser vista como uma versão computa-cional dos processos de análise (extra-ção de idéias, mecanismos, fenômenos e modelos teóricos) e síntese da natureza para o desenvolvimento de sistemas “artificiais”, ou ainda como a utilização de meios e mecanismos naturais para realizar computação. É importante sali-entar que a palavra “artificial” no con-texto de computação natural significa apenas que os sistemas e dispositivos resultantes são desenvolvidos por seres humanos ao invés de serem produtos diretos da evolução das espécies.

A área de computação natural pode ser divida em três grandes sub-áreas (de Castro & Von Zuben, 2004):

1. Computação inspirada na natureza: inclui todas as estratégias desenvol-vidas a partir de ou inspiradas em algum mecanismo biológico ou na-tural. Como exemplos têm-se as re-des neurais artificiais (Haykin, 1999), a computação evolutiva

(Bäck et al., 2000a,b), a inteligência coletiva (Bonabeau et al., 1999; Kennedy et al., 2001), e os sistemas imunológicos artificiais (Dasgupta, 1999; de Castro & Timmis, 2002). É importante destacar que os próprios aspectos cognitivos e do raciocínio humano representam mecanismos naturais de fundamental importân-cia. Logo, a inteligência artificial simbólica (Russell & Norvig, 2003) e os sistemas nebulosos (fuzzy) (Pe-drycz & Gomide, 1998),

essencial-mente relacionados a estes temas, também podem inserir-se no escopo da computação natural.

2. Estudos sobre a natureza através da computação: envolve a utilização de mecanismos computacionais para a síntese de comportamentos naturais, padrões e processos biológicos. As linhas de atuação predominantes são os estudos sobre vida e organismos artificiais (Adami, 1998; Langton, 1989; 1991; Levy, 1992), e a geo-metria fractal (Mandelbrot, 1982; Peitgen et al., 1992).

3. Computação com mecanismos natu-rais: trata-se de um novo paradigma de computação onde mecanismos naturais, como, por exemplo, as ca-deias de DNA e os bits quânticos, são utilizados como estruturas de dados para o desenvolvimento de “computadores naturais”. Os produ-tos desta sub-área podem ser visprodu-tos como candidatos a substituir ou complementar os computadores digi-tais disponíveis atualmente. Seus principais representantes são a com-putação molecular (Păun et al., 1998; Gramß et al., 2001) e a com-putação quântica (Hirvensalo, 2000; Nielsen & Chuang, 2000).

(3)

2. COMPUTAÇÃO INSPIRADA NA

NATUREZA

O primeiro ramo da computação natural é também o mais antigo e bem consoli-dado. Com a descoberta de vários prin-cípios e teorias sobre a natureza e o de-senvolvimento de diversos modelos, pesquisadores de áreas como engenharia e computação perceberam que era pos-sível usar estes princípios, teorias e modelos para a implementação de sis-temas computacionais com grande po-tencial de resolver problemas. A com-putação inspirada na natureza compreende, principalmente: 1) redes neurais artificiais; 2) algoritmos evolu-tivos; 3) inteligência coletiva (swarm intelligence); 4) sistemas imunológicos artificiais; e 5) outros (modelos basea-dos em crescimento e desenvolvimento celular, modelos culturais, etc.).

Um trabalho pioneiro da computa-ção inspirada na biologia foi apresenta-do por McCulloch & Pitts (1943), in-troduzindo o primeiro modelo matemá-tico (lógico) de um neurônio. Este mo-delo, também conhecido como neurônio artificial, deu origem a uma linha de pesquisa denominada de redes neurais artificiais (Fausett, 1994; Bishop, 1996; Haykin, 1999; Kohonen, 2000).

Outra abordagem de computação motivada pela biologia surgiu em mea-dos da década de 1960 com os trabalhos de I. Rechenberg (1973), H. P. Schwe-fel (1965), L. Fogel (Fogel et al., 1966), e J. Holland (1975). Estes traba-lhos deram origem à linha de pesquisa conhecida atualmente como computação evolutiva, composta pelos algoritmos evolutivos (Goldberg, 1989; Bäck et al., 2000a,b; Fogel, 1995; Bahnzaf et al., 1998; Michalewicz, 1996; Mitchell, 1998; Beyer, 2001; Koza, 1992), que usam idéias da biologia evolutiva para desenvolver algoritmos a serem empre-gados em tarefas de busca e otimização.

A inteligência coletiva (swarm in-telligence) possui duas principais fren-tes de pesquisa: algoritmos baseados no

comportamento coletivo de insetos so-ciais (Bonabeau et al., 1999), e algo-ritmos baseados em comportamentos sócio-cognitivos humanos (Kennedy et al., 2002). No primeiro caso, o compor-tamento coletivo de formigas e outros insetos levou ao desenvolvimento de algoritmos para a solução de problemas de otimização combinatória, agrupa-mento de dados (clustering), robótica coletiva, e outros. Algoritmos baseados em sócio-cognição são eficazes para a realização de buscas em espaços contí-nuos.

Os sistemas imunológicos artifici-ais possuem suas idéias extraídas do sistema imunológico dos vertebrados e seus modelos teóricos (Dasgupta, 1999; de Castro & Timmis, 2002; Timmis et al., 2003). É uma nova linha de pesqui-sa que surgiu em meados da década de 1980. Suas aplicações vão desde a bio-logia (p. ex. bioinformática) até a robó-tica (p. ex. navegação autônoma).

Outras técnicas emergentes de computação inspirada na natureza são os algoritmos culturais, o algoritmo de

simulated annealing, os sistemas basea-dos em crescimento e desenvolvimento, os modelos baseados em células e teci-dos e vários outros (Aarts & Korst, 1989; Paton, 1994; Paton et al., 2003; Kumar & Bentley, 2003; Kochenberger & Glover, 2003).

3. ESTUDOS SOBRE A NATUREZA

ATRAVÉS DA COMPUTAÇÃO

(4)

qualificados como “naturais”. Ou seja, organismos artificiais que não possuem nenhuma similaridade com organismos conhecidos na Terra podem ser criados. A idéia é usar a computação para simu-lar e emusimu-lar fenômenos naturais de ma-neira não-determinística. O estudo da natureza através da computação possui duas frentes principais de pesquisa: 1)

vida artificial (ALife); e 2) geometria computacional (fractal) da natureza.

Como colocado por C. Langton em seu capítulo pioneiro sobre Vida Artifi-cial: “Vida Artificial é o estudo de sis-temas feitos pelo homem, mas que exi-bem comportamentos característicos de sistemas naturais vivos. A Vida Artifi-cial complementa as ciências biológicas tradicionais preocupadas com a análise

de organismos vivos através da síntese

em computadores ou outros meios arti-ficiais de comportamentos similares àqueles observados em seres vivos. A-través da extensão dos fundamentos empíricos sobre os quais a biologia está baseada para além da vida baseada em carbono que evoluiu na Terra, a Vida Artificial pode contribuir para a biolo-gia teórica localizando a vida-como-nós-a-conhecemos dentro de um contex-to maior da vida-como-ela-poderia-ser.” (Langton, 1988; p. 1). Em resumo, a Vida Artificial pode ser definida co-mo a abordagem sintética ou virtual pa-ra o estudo de padrões (formas), com-portamentos, sistemas e organismos que se assemelham à vida (Adami, 1998; Levy, 1992).

A visualização computacional de modelos (matemáticos) de estruturas e processos naturais resulta em imagens, animações e sistemas interativos úteis como ferramentas computacionais para a pesquisa, ciência e educação em en-genharia, computação, biociências e vá-rios outros domínios. O cerne da geo-metria computacional da natureza está na visualização de fenômenos naturais. Há várias técnicas que podem ser usa-das com este propósito, a dizer, autô-matos celulares (Ilachinski, 2001; Wol-fram, 1994), sistemas de partículas

(Re-eves, 1983), sistemas de Lindenmayer ou sistemas-L (Lindenmayer, 1968), sistemas de funções iterativas (Hutchin-son, 1981; Barnsley & Demko, 1985; Barnsley, 1988), movimento Browniano (Fournier et al., 1982; Voss, 1985), etc.

As aplicações desta sub-área da computação natural incluem a arquite-tura computacional de paisagens natu-rais, o projeto de novas variedades de plantas, a predição de produtividade em lavouras, o estudo de processos de cres-cimento e desenvolvimento celular, e a modelagem e síntese (e correspondente análise) de uma grande quantidade de padrões e fenômenos naturais (Mandel-brot, 1983; Flake, 2000; Peitgen et al., 1992; de Castro & Von Zuben, 2004).

4. COMPUTAÇÃO COM

MECANIS-MOS NATURAIS

Em 1965 G. Moore observou que existe um crescimento exponencial na quanti-dade de transistores que são colocados em um circuito integrado. De acordo com a “Lei de Moore”, o número de transistores em um chip dobra a cada par de anos ou ano e meio. Se esta esca-la permanecer válida, ao final desta dé-cada computadores baseados em tecno-logia de silício terão atingido seus limi-tes em termos de poder de processamen-to. Uma questão que surge, então, é qual outro tipo de material, diferente do silício, pode fornecer uma alternativa para o projeto e implementação de um dispositivo computacional?

(5)

& Păun, 2001; Păun & Cutkosky, 2002; Sienko et al., 2003). Por outro lado, as abordagens baseadas em bits quânticos constituem o que é hoje conhecido co-mo computação quântica (Hirvensalo, 2000; Nielsen & Chuang, 2000; Pitten-ger, 2000).

No primeiro caso, biomoléculas são usadas como meio para armazenar in-formação e técnicas de engenharia mo-lecular (genética) são usadas para ma-nipular estas moléculas de forma a rea-lizar processamento de informação. Cumpre observar que esta abordagem se baseia na sofisticação e eficiência das técnicas de engenharia genética. A computação quântica, por outro lado, armazena informação em bits quânticos e manipula esta informação usando princípios da mecânica quântica.

5. COMPUTAÇÃO NATURAL:

PORQUÊ E QUANDO

A computação natural é, portanto, a terminologia empregada para se referir a três tipos de sistemas: 1) ferramentas computacionais para resolver problemas tomando-se como inspiração fenômenos e processos naturais, e/ou seus respec-tivos modelos teóricos (matemáticos); 2) modelos computacionais para a simu-lação e/ou emusimu-lação de sistemas natu-rais e processos; e 3) novos paradigmas de computação que utilizam meios, di-ferentes do silício, para armazenar e processar informação.

Embora todos os ramos da compu-tação natural sejam jovens, sob um pon-to de vista científico, muipon-tos deles já estão sendo usados em nossas vidas diá-rias. Por exemplo, atualmente existem máquinas de lavar roupa ‘inteligentes’, jogos e brinquedos virtuais/interativos, etc; a pesquisa em vida artificial e a geometria computacional da natureza vêm permitindo a criação de modelos realistas da natureza e a simulação e/ou emulação de diversas espécies de plan-tas e animais, inclusive em mídias como

cinema e televisão, e têm contribuído para a síntese e conseqüente estudo de fenômenos naturais; a computação com meios naturais, por sua vez, vem forne-cendo novas perspectivas sobre como complementar e/ou suplementar a tradi-cional tecnologia baseada em silício.

A computação natural é altamente relevante para os cientistas da computa-ção e engenheiros, pois ela fornece so-luções alternativas, algumas vezes completamente novas, para problemas até então não resolvidos ou resolvidos de forma pouco eficiente. Ela também fornece novas formas de ver, usar, compreender e interagir com a natureza. Obviamente, ainda há muito a ser feito e certamente muitas novas propostas irão aparecer nesta área de pesquisa ampla e jovem. Entretanto, existem evi-dências de que a computação natural não é apenas uma área promissora; seus vários produtos e aplicações já afetam nossas vidas, mesmo que muitos de nós não saibamos disso. É uma era que está apenas começando.

REFERÊNCIAS

1. Aarts, E. & Korst, J. (1989), Simulated Annealing and Boltzman Machines - A Stochastic Approach to Combinatorial Optimization and Neural Computing, John Wiley & Sons.

2. Adami C. (1998), An Introduction to Artificial Life, Springer-Verlag / Telos.

3. Bäck, T., Fogel, D. B. & Michalewicz, Z. (2000), Evolutionary Computation 1 Basic Algorithms and Operators, Insti-tute of Physiscs Publishing (IOP), Bris-tol and Philadelphia.

4. Bäck, T., Fogel, D. B. & Michalewicz, Z. (2000), Evolutionary Computation 2 Advanced Algorithms and Operators, Institute of Physiscs Publishing (IOP), Bristol and Philadelphia.

(6)

6. Banzhaf, W. & Reeves, C. (1998), Foundations of Genetic Algorithms, Morgan Kaufmann.

7. Barnsley, M. F. (1988), Fractals Eve-rywhere, Academic Press.

8. Barnsley, M. F. and Demko, S. (1985), “Iterated Function Systems and the Global Construction of Fractals”, Proc. of the Royal Soc. of London, A339, pp. 243-275.

9. Beyer, H.-G. (2001), Theory of Evolu-tion Strategies, Springer-Verlag.

10. Bishop, C. M. (1996), Neural Networks for Pattern Recognition, Oxford Uni-versity Press.

11. Bonabeau E., Dorigo, M. & Theraulaz, T. (1999), Swarm Intelligence: From Natural to Artificial Systems, New York: Oxford University Press.

12. Calude, C. S. & Păun, G. (2001), Com-puting with Cells and Atoms: An Intro-duction to Quantum, DNA, and Mem-brane Computing, Taylor & Francis.

13. Dasgupta, D. (1999), Artificial Immune Systems and Their Applications, Springer-Verlag.

14. Dasgupta, D. & Michalewicz, Z. (1997), Evolutionary Algorithms in Engineering Applications, Springer-Verlag.

15. de Castro, L. N.; Von Zuben, F. J., (2004), “From Biologically Inspired Computing to Natural Computing”, In L. N. de Castro e F. J. Von Zuben (eds.), Recent Developments in Bio-logically Inspired Computing, Chapter I, Idea Group Incorporation, pp. 1-8.

16. de Castro, L. N. & Timmis, J. I. (2002), Artificial Immune Systems: A New Computational Intelligence Ap-proach, Springer-Verlag.

17. Fausett, L. (1994), Fundamentals of Neural Networks: Architectures, Algo-rithms, and Applications, Prentice Hall.

18. Flake, G. W. (2000), The Computa-tional Beauty of Nature, MIT Press.

19. Fogel, L. J., Owens, A. J. & Walsh, M. J. (1966), Artificial Intelligence Through Simulated Evolution, Wiley, New York.

20. Fogel, D. B. (1998), Evolutionary Computation: Toward a New Philoso-phy of Machine Intelligence, IEEE Press.

21. Fournier, A, Fussell, D. & Carpenter, L. (1982), “Computer Rendering of Stochastic Models”, Comm. of the ACM, 25, pp. 371-384.

22. Goldberg, D. E. (1989), Genetic Algo-rithms in Search, Optimization, and Machine Learning, Addison-Wesley Pub Co.

23. Gramß, T., Bornholdt, S., Groß, M., Mitchell, M. & Pellizzari, T. (2001), Non-Standard Computation, Wiley-VCH.

24. Haykin, S. (1999), Neural Networks: A Comprehensive Foundation, Prentice Hall.

25. Hirvensalo, M. (2000), Quantum Com-puting, Springer-Verlag.

26. Holland, J. H. (1975), Adaptation in Natural and Artificial Systems, MIT Press.

27. Hutchinson, J. (1981), “Fractals and Self-Similarity”, Indiana Jorunal of Mathematics, 30, pp. 713-747.

28. Ilachinski, A. (2001), Cellular Auto-mata: A Discrete Universe, World Sci-entific.

29. Kennedy, J.; Eberhart, R. & Shi. Y. (2001), Swarm Intelligence, Morgan Kaufmann Publishers.

30. Kochenberger, G. A. & Glover, F. (2003), Handbook of Metaheuristics, Kluwer Academic Publishers.

31. Kohonen, T. (2000), Self-Organizing Maps, Springer-Verlag.

32. Koza, J. R. (1992), Genetic Program-ming: On the Programming of Com-puters by Means of Natural Selection, MIT Press.

33. Kumar, S. & Bentley, P. J. (2003), On Growth, Form and Computers, Aca-demic Press.

34. Langton, C. (1988), “Artificial Life”, in C. Langton (ed.), Artificial Life, Ad-dison-Wesley, pp. 1-47.

(7)

36. Lindenmayer, A. (1968), “Mathemati-cal Models for Cellular Interaction in Development, Parts I and II”, Journal of Theoretical Biology, 18, pp. 280-315.

37. Mandelbrot, B. (1983), The Fractal Geometry of Nature, W. H. Freemand and Company.

38. McCulloch W. & Pitts W. (1943), “A Logical Calculus of the Ideas Immanent in Nervous Activity”, Bulletin of Mathematical Biophysics, 5, pp. 115-133.

39. Michalewicz, Z. (1996), Genetic Algo-rithms + Data Structures = Evolution Programs, Springer-Verlag, 3r d Ed.

40. Mitchell, M. (1998), An Introduction to Genetic Algorithms, The MIT Press.

41. Moore, G. E. (1965), “Cramming More Components into Integrated Circuits”, Electronics, 38(8).

42. Nielsen, M. A. & Chuang, I. L. (2000), Quantum Computation and Quantum Information, Cambridge University Press.

43. Paton, R. (Ed.) (1994), Computing with Biological Metaphors, Chapman & Hall.

44. Paton, R., Bolouri, H. & Holcombe, M. (2003), Computing in Cells and Tis-sues: Perspectives and Tools of Thought, Springer-Verlag.

45. Păun, G. & Cutkosky, S. D. (2002), Membrane Computing, Springer-Verlag.

46. Păun, G., Rozenberg, G. & Saloma, A. (1998), DNA Computing, Springer-Verlag.

47. Peitgen, H.-O, Jürgens, H. and Saupe, D. (1992), Chaos and Fractals: New Frontiers of Science, Springer-Verlag.

48. Pittenger, A. O. (2000), An Introduc-tion to Quantum Computing Algo-rithms, Birkhäuser.

49. Rechenberg, I. (1973), Evolutionss-trategie: Optimierung Technischer Sys-teme Nach Prinzipien der Biologischen Evolution, Frommann-Holzboog, Stutt-gart.

50. Reeves, W. T. (1983), “Particle Sys-tems – A Technique for Modeling a Class of Fuzzy Objects”, ACM Trans-actions on Graphics, 2(2), pp. 91-108.

51. Schwefel, H. –P. (1965), Kybernetische Evolutionals Strategie der Experimen-tellen Forschung in der Stromung-stechnik, Diploma Thesis, Technical University of Berlin.

52. Sienko, T., Adamatzky, A. & Rambidi, N. (2003), Molecular Computing, MIT Press.

53. Timmis, J., Bentley, P. J. & Hart, E. (Eds.) (2003), Artificial Immune Sys-tems, Proc. of the International Confer-ence on Artificial Immune Systems (ICARIS 2003), Springer-Verlag.

54. Voss, R. F. (1985), “Random Fractals Forgeries”, In R. A. Earnshaw (ed.), Fundamental Algorithms for Computer Graphics, Springer-Verlag: Berlin, pp. 805-835.

55. Wolfram, S. (1994), Cellular Automata and Complexity, Perseus Books.

56. Yokomori, T. (2002), “Natural Compu-tation – New Computing Paradigm Learned from Life Phenomena”, IPSJ Magazine, vol. 41, pp. 08-11.

Referências

Documentos relacionados

Código Descrição Atributo Saldo Anterior D/C Débito Crédito Saldo Final D/C. Este demonstrativo apresenta os dados consolidados da(s)

Guerra et al., 2016 relataram um caso de um paciente homem diabético de 70 anos de idade com doença renal crônica passou a fazer uso de colecalciferol e calcitriol

Se eu morresse amanhã, viria ao menos Fechar meus olhos minha triste irmã; Minha mãe de saudades morreria. Se eu

A atribuição de incentivos financeiros à equipa multiprofissional depende da concretização dos critérios para atribuição das unidades contratualizadas (UC) referentes às

Sal 15% DE (VALOR FOB + DIREITOS + IMPOSTO SOBRE CONSUMOS ESPECÍFICOS + IMPOSTO SOBRE OS COMBUSTÍVEIS + 10% DO VALOR FOB) Nota: Quando os bens importados têm a sua origem

A multiplicação de um vetor por outro vetor resultando em um terceiro vetor é denominada produto vetorial.. O seu sentido pode ser determinado pela Regra da Mão

Mas ele é ( verbo ser, no Presente do Indicativo ) apenas um gato e não tinha tido ( verbo ter, no Pretérito Mais-Que-Perfeito Simples do Indicativo ) tempo de aprender (

Organiza, em duas colunas, os nomes seguintes, conforme sejam concretos ou abstratos:.. Saudade, hospital, semana, montanha, fama, paixão, escola, desporto, orgulho, felicidade,