universidade f r g n epartamento de i m a rograma de …livros01.livrosgratis.com.br ›...

180
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS DE COMPUTAÇÃO COMPUTAÇÃO EVOLUCIONÁRIA APLICADA A PROBLEMAS DE OTIMIZAÇÃO COMBINATÓRIA ILKA MARIA SOARES CAMPOS NATAL RIO GRANDE DO NORTE FEVEREIRO - 2006

Upload: others

Post on 25-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

UUNNIIVVEERRSSIIDDAADDEE FFEEDDEERRAALL DDOO RRIIOO GGRRAANNDDEE DDOO NNOORRTTEE DDEEPPAARRTTAAMMEENNTTOO DDEE IINNFFOORRMMÁÁTTIICCAA EE MMAATTEEMMÁÁTTIICCAA AAPPLLIICCAADDAA

PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS DE COMPUTAÇÃO

CCOOMMPPUUTTAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA AAPPLLIICCAADDAA AA PPRROOBBLLEEMMAASS DDEE

OOTTIIMMIIZZAAÇÇÃÃOO CCOOMMBBIINNAATTÓÓRRIIAA

IILLKKAA MMAARRIIAA SSOOAARREESS CCAAMMPPOOSS

NNAATTAALL RRIIOO GGRRAANNDDEE DDOO NNOORRTTEE

FFEEVVEERREEIIRROO -- 22000066

Page 2: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

Livros Grátis

http://www.livrosgratis.com.br

Milhares de livros grátis para download.

Page 3: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

2

C198c Campos, Ilka Maria Soares

Computação evolucionária aplicada a Problemas De otimização combinatória/ Ilka Maria Soares

Campos. – Natal, 2006. 183p.

Orientadora: Elizabeth Ferreira Gouvêa Goldbarg Dissertação (Mestrado) – UFRN/DIMAP

1. Computação 2. Computação evolucionaria 3. Otimização combinatória 4. Algoritmos genéticos 5. Meméticos 6. Culturais 7. Transgenéticos

UFPB/Bc CDU: 004(043)

Page 4: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

3

CCoommppuuttaaççããoo EEvvoolluucciioonnáárriiaa AApplliiccaaddaa aa PPrroobblleemmaass ddee OOttiimmiizzaaççããoo CCoommbbiinnaattóórriiaa

IILLKKAA MMAARRIIAA SSOOAARREESS CCAAMMPPOOSS

DDIISSSSEERRTTAAÇÇÃÃOO DDEE MMEESSTTRRAADDOO AAPPRREESSEENNTTAADDAA AAOO

PPRROOGGRRAAMMAA DDEE PPÓÓSS--GGRRAADDUUAAÇÇÃÃOO EEMM SSIISSTTEEMMAASS DDEE

CCOOMMPPUUTTAAÇÇÃÃOO DDAA UUNNIIVVEERRSSIIDDAADDEE FFEEDDEERRAALL DDOO RRIIOO

GGRRAANNDDEE DDOO NNOORRTTEE CCOOMMOO PPAARRTTEE DDOOSS RREEQQUUIISSIITTOOSS PPAARRAA

OOBBTTEENNÇÇÃÃOO DDOO TTÍÍTTUULLOO DDEE MMEESSTTRREE EEMM SSIISSTTEEMMAASS DDEE

CCOOMMPPUUTTAAÇÇÃÃOO..

OORRIIEENNTTAADDOORR:: PPRROOFF.. DDRRAA.. EELLIIZZAABBEETTHH FFEERRRREEIIRRAA GGOOUUVVÊÊAA GGOOLLDDBBAARRGG

NNAATTAALL RRIIOO GGRRAANNDDEE DDOO NNOORRTTEE

FFEEVVEERREEIIRROO -- 22000066

Page 5: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

4

CCoommppuuttaaççããoo EEvvoolluucciioonnáárriiaa AApplliiccaaddaa aa PPrroobblleemmaass ddee OOttiimmiizzaaççããoo CCoommbbiinnaattóórriiaa

IILLKKAA MMAARRIIAA SSOOAARREESS CCAAMMPPOOSS

DISSERTAÇÃO SUBMETIDA À UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE, COMO PARTE DAS EXIGÊNCIAS DO PROGRAMA DE PÓS-

GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO, PARA A OBTENÇÃO NO TÍTULO DE MESTRE.

APROVADA POR:

________________________________________ Profa. Drª. Elizabeth Ferreira Gouvêa Goldbarg

Orientadora - UFRN

_______________________________________ Profº. Dr. Marco César Goldbarg

Examinador - UFRN

________________________________________ Profª Drª. Iloneide Carlos de Oliveira Ramos

Examinador - UFRN

________________________________________ Profª. Drª. Maria Terezinha Arns Steiner

Examinadora - UFPR

Natal – Rio Grande do Norte - Brasil 13 de Fevereiro de 2006

Page 6: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

5

““CCAADDAA UUMM DDEE NNÓÓSS CCOOMMPPÕÕEE AA SSUUAA HHIISSTTÓÓRRIIAA,, CCAADDAA SSEERR EEMM SSII CCAARRRREEGGAA OO DDOOMM DDEE SSEERR

CCAAPPAAZZ,, DDEE SSEERR FFEELLIIZZ......"" ((AALLMMIIRR SSAARRTTII))

Page 7: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

6

DDEEDDIICCAATTÓÓRRIIAA

AA BBEETTHH EE GGOOLLDDBBAARRGG PPEELLAA AABBEERRTTUURRAA DDEE

PPOORRTTAASS,, MMEESSMMOO NNÃÃOO SSEENNDDOO DDAA ÁÁRREEAA..

AA CCHHIICCOO EE MMÁÁRRCCIIAA...... SSIIMMPPLLEESSMMEENNTTEE PPOORR

TTUUDDOO..

Page 8: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

7

AAGGRRAADDEECCIIMMEENNTTOOSS

EEMM MMUUIITTAASS OOCCAASSIIÕÕEESS NNÃÃOO HHÁÁ CCOOMMOO EEXXPPRREESSSSAARR OO AAGGRRAADDEECCIIMMEENNTTOO MMEERREECCIIDDOO AA TTOODDAASS AASS

PPEESSSSOOAASS QQUUEE MMEE AAPPOOIIAARRAAMM,, AAJJUUDDAARRAAMM EE QQUUEE CCOOMM SSUUAA SSAABBEEDDOORRIIAA MMEE FFIIZZEERRAAMM CCRREERR QQUUEE

VVAALLEE AA PPEENNAA SSOONNHHAARR EE LLUUTTAARR.. RREESSTTAA--MMEE,, PPOORRTTAANNTTOO,, AAGGRRAADDEECCEERR DDEE CCOORRAAÇÇÃÃOO AA TTOODDAASS

EELLAASS..

AA DDEEUUSS PPEELLAA OOPPOORRTTUUNNIIDDAADDEE CCOONNCCEEBBIIDDAA,, OONNDDEE SSEEMMPPRREE OO BBUUSSCCOO AATTRRAAVVÉÉSS DDEESSSSAA FFÉÉ QQUUEE

TTAANNTTOO TTEENNHHOO,, CCOONNCCEEDDEENNDDOO--MMEE FFOORRÇÇAA EE PPEERRSSEEVVEERRAANNÇÇAA PPAARRAA CCOONNCCLLUUIIRR EESSTTEE TTRRAABBAALLHHOO

EEMM MMEEIIOO ÀÀSS AADDVVEERRSSIIDDAADDEESS DDAA VVIIDDAA.. MMIINNHHAA DDEETTEERRMMIINNAAÇÇÃÃOO!!

AAOOSS MMEEUUSS PPAAIISS,, PPEELLOO AAMMOORR,, CCUUMMPPLLIICCIIDDAADDEE EE CCOOMMPPRREEEENNSSÃÃOO PPEELLAA AAUUSSÊÊNNCCIIAA FFÍÍSSIICCAA.. MMIINNHHAA

PPRROOTTEEÇÇÃÃOO!!

AA MMIINNHHAA OORRIIEENNTTAADDOORRAA BBEETTHH GGOOUUVVÊÊAA,, PPEELLAA AACCOOLLHHIIDDAA NNOO PPRRIIMMEEIIRROO EENNCCOONNTTRROO,,

EENNSSIINNAAMMEENNTTOOSS,, CCOOMMPPRREEEENNSSÃÃOO,, AAPPOOIIOO,, DDEEDDIICCAAÇÇÃÃOO EE AAMMIIZZAADDEE.. NNÃÃOO PPOODDEERRIIAA TTEERR SSIIDDOO

MMEELLHHOORR.. MMIINNHHAA SSOORRTTEE!!

NNÃÃOO PPOODDEERRIIAA DDEEIIXXAARR DDEE EEVVIIDDEENNCCIIAARR,, OO PPRROOFFEESSSSOORR GGOOLLDDBBAARRGG,, CCOO--OORRIIEENNTTAADDOORR,, PPEELLAA

SSUUAA RRIICCAA EEXXPPEERRIIÊÊNNCCIIAA,, PPEELLAA CCOOMMPPRREEEENNSSÃÃOO,, PPEELLAA SSUUAA CCOONNTTRRIIBBUUIIÇÇÃÃOO,, EESSCCLLAARREECCIIMMEENNTTOOSS

EE AAPPOOIIOO.. MMIINNHHAA AADDMMIIRRAAÇÇÃÃOO!!

AA IILLOONNEEIIDDEE PPEELLOO AAPPOOIIOO EE OORRIIEENNTTAAÇÇÕÕEESS.. MMIINNHHAA CCOONNSSIIDDEERRAAÇÇÃÃOO!!

AAOO PPAABBLLOO,, UUNNIICCAAMMPP,, PPEELLAA SSUUAA DDIISSPPOONNIIBBIIDDAADDEE,, EENNVVIIAANNDDOO--MMEE CCOONNHHEECCIIMMEENNTTOOSS EE

MMAATTEERRIIAAIISS.. MMIINNHHAA DDEESSCCOOBBEERRTTAA!!

AAOOSS MMEEUUSS CCOOLLEEGGAASS DDOO LLAABBOORRAATTÓÓRRIIOO DDEE AALLGGOORRIITTMMOOSS EEXXPPEERRIIMMEENNTTAAIISS,, EEMM EESSPPEECCIIAALL

GGIIVVAANNAALLDDOO,, SSEEBBAASSTTIIÃÃOO EE RRIICCAARRDDOO MMAARRXX PPEELLAA AAJJUUDDAA,, CCOOLLEEGGUUIISSMMOO EE CCUUMMPPLLIICCIIDDAADDEE..

MMIINNHHAA PPAARRCCEERRIIAA!!

Page 9: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

8

AAOOSS MMEEUUSS AAMMIIGGOOSS DDOO MMEESSTTRRAADDOO,, JJOOSSEEAANNEE,, HHEERREEMMIITTAA,, GGEEOOVVAANNEE EE MMAACCIILLOONN,, PPEELLOOSS BBOONNSS

EENNCCOONNTTRROOSS.. MMIINNHHAA DDEESSCCOONNTTRRAAÇÇÃÃOO!!

AAOOSS FFUUNNCCIIOONNÁÁRRIIOOSS DDOO DDIIMMAAPP,, EEMM EESSPPEECCIIAALL GGRRAAÇÇAA,, VVAAMMBBEERRTTOO EE SSRR.. GGAASSPPAARR,, PPEELLAA

DDIISSPPOONNIIBBIILLIIDDAADDEE EE PPRREESSTTEEZZAA EEMM TTOODDOOSS OOSS MMOOMMEENNTTOOSS QQUUEE AALLII EESSTTIIVVEE.. MMIINNHHAA GGRRAATTIIDDÃÃOO!!

AAOO SSEENNAACC//RRNN,, NNAA PPEESSSSOOAA DDEE DD.. ZZIILLCCAA -- DDIIRREETTOORRAA,, PPEELLAA OOPPOORRTTUUNNIIDDAADDEE DDAADDAA.. MMEEUU

RREESSPPEEIITTOO!!

AAOO SSEENNAACC//PPBB,, NNAA PPEESSSSOOAA DDEE VVEERRAA AALLMMEEIIDDAA -- DDIIRREETTOORRAA,, PPEELLAA CCOOMMPPRREEEENNSSÃÃOO EE AAPPOOIIOO;; EE

AAOOSS CCOOMMPPAANNHHEEIIRROOSS//AAMMIIGGOOSS QQUUEE FFIIZZ NNEESSSSAA IINNSSTTIITTUUIIÇÇÃÃOO,, EEMM PPAARRTTIICCUULLAARR AA CCOOMMUUNNIIDDAADDEE

CCEETTEECC –– EEMM EEVVIIDDÊÊNNCCIIAA WWAALLDDEENNIICCEE,, PPEELLOOSS RREEEECCOONNTTRROOSS AAGGRRAADDÁÁVVEEIISS EE DDEESSCCOONNTTRRAAÍÍDDOOSS..

MMIINNHHAA SSAAUUDDAADDEE!!

AAOOSS MMEEUUSS CCOOLLEEGGAASS EE VVIIZZIINNHHOOSS DDOO CCHHAALLÉÉ CCAANNAAÃÃ,, PPEELLAA FFOORRÇÇAA EE AALLEEGGRRIIAA,, NNOOSS BBOONNSS

MMOOMMEENNTTOOSS QQUUEE AALLII PPAASSSSEEII.. MMIINNHHAA LLEEMMBBRRAANNÇÇAA !!

AAOOSS MMEEUUSS IIRRMMÃÃOOSS,, IIVVAALLDDIIRR,, LLÚÚCCIIAA ((CCUUNNHHAADDAA EE IIRRMMÃÃ)),, BBEEGGAA,, VVOONNAA ,, DDEETTAA EE AA MMOOCCIINNHHAA

((CCOOMMPPAANNHHEEIIRRAA DDEE MMIINNHHAA MMÃÃEE)) PPOORR TTEERREEMM MMEE DDAADDOO,, MMUUIITTAASS VVEEZZEESS,, AA TTRRAANNQQUUIILLIIDDAADDEE EEMM

EESSTTAARR LLOONNGGEE DDOOSS MMEEUUSS PPAAIISS.. MMEEUU AAPPOOIIOO!!

AAOOSS MMEEUUSS IIRRMMÃÃOOSS DDIIDDII,, IILLDDEETTEE EE NNIILLDDAA,, PPEELLAA CCRREEDDIIBBIILLIIDDAADDEE NNAASS MMIINNHHAASS LLUUTTAASS.. EEMM

EESSPPEECCIIAALL,, AA IIVVAANNIILLDDIINNHHOO QQUUEE SSEEMMPPRREE EESSTTEEVVEE PPRREESSEENNTTEE,, CCOOMM SSEEUUSS TTEELLEEFFOONNEEMMAASS DDEE

AAPPOOIIOO,, QQUUAASSEE DDIIAARRIIAAMMEENNTTEE,, NNOOSS MMOOMMEENNTTOOSS DDEE SSOOLLIIDDÃÃOO.. MMEEUU OORRGGUULLHHOO!!

AAOOSS MMEEUUSS SSOOBBRRIINNHHOOSS,, ÍÍTTAALLOO EE MMAARRIIEELLLLYY PPEELLOO AABBRRAAÇÇOO RREECCEEBBIIDDOO AA CCAADDAA RREETTOORRNNOO.. MMEEUU

CCAARRIINNHHOO!!

AA DD.. AANNAA MMEEIIRREELLEESS PPEELLOO CCUUIIDDAADDOO EE DDEEDDIICCAAÇÇÃÃOO.. MMIINNHHAA AADDMMIIRRAAÇÇÃÃOO!!

AA BBEETTHH,, AAMMIIGGAA EE IIRRMMÃÃ PPEELLOO AAMMOORR,, CCOONNFFIIAANNÇÇAA EE ZZÊÊLLOO.. MMIINNHHAA CCEERRTTEEZZAA!!

AA MMEEUU AAMMIIGGOO JJAANNDDUUHHYY,, SSEEMMPPRREE ““PPRREESSEENNTTEE”” CCOOMM EESSTTÍÍMMUULLOO EE MMOOTTIIVVAAÇÇÃÃOO.. MMEEUU DDIIVVÃÃ!!

Page 10: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

9

AA JJOOÃÃOO FFRRAANNCCIISSCCOO,, MMEEUU AAMMIIGGOO GGRRAANNDDEE EE GGRRAANNDDEE AAMMIIGGOO,, PPOORR AAQQUUEELLEE EE AAQQUUEELLEESS

RREEEENNCCOONNTTRROOSS EENNEERRGGIIZZAADDOOSS DDEE CCAARRIINNHHOO EE AAMMIIZZAADDEE VVEERRDDAADDEEIIRRAA.. MMEEUU IINNCCEENNTTIIVVOO!!

AA BBEERRNNAARRDDIINNAA FFRREEIIRREE,, GGRRAANNDDEE AAMMIIGGAA,, PPEELLAA CCOONNTTRRIIBBUUIIÇÇÃÃOO DDAADDAA AATTRRAAVVÉÉSS DDEE SSEEUUSS

CCOONNHHEECCIIMMEENNTTOOSS EE EEXXPPEERRIIÊÊNNCCIIAASS AACCAADDÊÊMMIICCAASS;; PPEELLAA CCRREEDDIIBBIILLIIDDAADDEE;; PPEELLAASS

OOPPOORRTTUUNNIIDDAADDEESS ((UUNNIIPPÊÊ)).. MMIINNHHAA LLUUZZ!!

AA CCHHIICCOO DDAANNTTAASS,, PPEELLOO CCOOLLEEGGAA QQUUEE SSOOUUBBEE SSEERR TTÃÃOO BBEEMM,, AAJJUUDDAANNDDOO--MMEE CCOOMM SSEEUUSS

CCOONNHHEECCIIMMEENNTTOOSS EE EEXXPPEERRIIÊÊNNCCIIAA DDEESSDDEE OO PPRRIIMMEEIIRROO MMOOMMEENNTTOO AATTÉÉ HHOOJJEE.. PPEELLOO

VVEERRDDAADDEEIIRROO AAMMIIGGOO,, PPOORR MMUUIITTAASS VVEEZZEESS AAPPOOIIAANNDDOO--MMEE,, AATTRROOPPEELLAANNDDOO OOSS MMOOMMEENNTTOOSS

DDIIFFÍÍCCEEIISS EEMM FFAAMMÍÍLLIIAA ((HHOOSSPPIITTAALL)) PPAARRAA AAJJUUDDAARR--MMEE NNAASS RREEVVIISSÕÕEESS EE EESSTTIIMMUULLAARR CCOOMM SSEEUU

OOMMBBRROO EE CCAARRIINNHHOO.. UUMMAA CCOONNQQUUIISSTTAA IINNDDIISSCCUUTTÍÍVVEELL NNEESSSSAA MMIINNHHAA TTRRAAJJEETTÓÓRRIIAA.. MMEEUU ““TTUUDDOO””!!

EE FFIINNAALLIIZZOO CCOOMM OO IINNCCOONNDDIICCIIOONNAALL AAPPOOIIOO,, PPAACCIIÊÊNNCCIIAA,, PPRREESSEENNÇÇAA EE CCRREENNÇÇAA DDAA AAMMIIGGAA EE

IIRRMMÃÃ,, MMÁÁRRCCIIAA,, QQUUEE SSEE FFEEZZ PPRREESSEENNTTEE MMEESSMMOO EESSTTAANNDDOO AAUUSSEENNTTEE,, EEMM TTUUDDOO OO QQUUEE FFIIZZ.. NNÃÃOO

SSAABBEERRIIAA CCOOMMOO SSEERRIIAA SSEEMM SSUUAA PPRREESSEENNÇÇAA DDUURRAANNTTEE TTOODDAA EESSSSAA TTRRAAJJEETTÓÓRRIIAA.. UUMMAA TTOORRCCIIDDAA

CCEERRTTAA EEMM MMOOMMEENNTTOOSS IINNCCEERRTTOOSS;; UUMMAA CCEERRTTEEZZAA DDÊÊ UUMM PPOORRTTOO SSEEMMPPRREE SSEEGGUURROO.. MMIINNHHAA

CCUUMMPPLLIICCIIDDAADDEE!!

Page 11: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

10

RREESSUUMMOO

Os problemas de otimização combinatória têm envolvido um grande número

de pesquisadores na busca por soluções aproximativas, desde a aceitação de

que, quando de grande porte, são considerados insolúveis na forma exata em

tempo polinomial. Inicialmente, essas soluções eram focalizadas por meio de

heurísticas. Atualmente, as metas-heurísticas são as mais utilizadas para

essa tarefa, especialmente aquelas baseadas em algoritmos evolucionários.

Diante dessa realidade, este trabalho traz uma visão geral não só da origem

evolucionária e de algumas das principais técnicas que se reúnem sob o

“guarda-chuva” desse paradigma, como também uma abordagem dos

algoritmos evolucionários bastante difundidos na literatura que são: os

Genéticos, Meméticos, bem como algoritmos mais recentes como os Culturais

e Transgenéticos. Buscando um enfoque mais amplo, fez-se necessário citar

outras abordagens como Colônia de Formigas e Nuvens de partículas,

baseados no comportamento de formigas e aves, respectivamente. O

Problema do Caxeiro Viajante foi escolhido como exemplo didático para

ilustrá-los, por ser um clássico na área. Por sim, relaciona-se um pequeno

resumo de trabalhos que fazem aplicação a cada método.

Page 12: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

11

AABBSSTTRRAACCTT

The problems of combinatory optimization have involved a great number of

researchers in search of approximate solutions, from the acceptance that they are

considered insoluble in polynomial time. In the beginning, these solutions were

focused by means of heuristics. At present, the metaheuristics are more used for this

task, specially those based on evolutionary algorithms. By facing this reality, this

work brings a general vision not only about the origin of evolutionary computer

science and some of the main techniques that are put together under the umbrella of

this paradigm, as well as an approach of the evolutionary algorithms that are found in

literature, which are: Genetic Algorithms, Memetic Algorithms, as well as more recent

algorthms such as Cultural and Transgenetic ones. On looking for a broader focus, it

was necessary to talk about other approaches such as Ant Colony and Particle

Swarm, based on the behavior of ants and birds. The Traveling Salesman Problem

was chosen as a didactic example, as it is a classic in the area. Finally, a short

summary of works, which are applied to each method, is listed.

Page 13: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

12

LLIISSTTAA DDEE FFIIGGUURRAASS

1. As girafas de pescoço mais longo alimentam-se das folhas................................34

2. Procedimento geral das abordagens darwinianas da Computação Evolucionária

(Gouvêa, 2001).........................................................................................................38

3. O Paradigma da Computação Evolucionária........................................................39

4. Representação inteira de um cromossomo para o PCV.......................................51

5. Representação Binária de um cromossomo para o PCV.....................................52

6. População com valor aptidão................................................................................58

7. Fitness dos cromossomos representados pelo método da roleta…………..…… 60

8. Esquema gráfico do cruzamento de um ponto..................................................... 65

9. Esquema gráfico do cruzamento uniforme….......................................…........ .....66

10. Esquema gráfico de ocorrência de mutação.......................................................67

11. Procedimento de busca local ..............................................................................91

12. Estrutura do Algoritmo Cultural............................................................................96

13. Direcionamento da Busca através de uma Base de Conhecimento....................98 14. Manipulação através da PGM...........................................................................112

Page 14: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

13

LLIISSTTAA DDEE QQUUAADDRROOSS

1. Meta-Heurística abordadas……………………………………………………...…….19

2. As principais definições relacionadas com os Algoritmos Genéticos....................50

3. Algoritmo Genético Clássico .................................................................................54

4. Algoritmos Multi-objetivos………………………………………………………………76

5. Aplicação dos Algoritmos Genético 1985 – 2003…………………………………....81

6. Aplicação dos Algoritmos Genéticos 2004- 2005………………………….………...82

7. Pseudo-código do Algoritmo Memético. ................................................................89

88.. AApplliiccaaççããoo PPrrááttiiccaass ddooss AAllggoorriittmmooss MMeemmééttiiccooss……………………………………………………………………..…………9922

9. Pseudo-código do Algoritmo Cultural...................................................... ...........…99

10. Aplicação deAlgoritmos Culturais………………………………………………..…104

11. Métodos de Manipulação dos Agentes da Transgenética Computacionla…….111

12. Pseudo- código do Algoritmo Transgenético………………………………………115

13. Aplicação da Transgenético Computacional………………………………………118

14. Pseudo-código do Algoritmo Colônia de Formigas……………………………….124

15. Algoritmo Colônia de Formigas……………………………………………………..126

16. Aplicação para Colônia de Formigas……………………………………………….129

17. O pseudo-código do algoritmo Nuvem de Partícula...........................................134

18. Aplicação do Algoritmo Nuvem de Partículas……………………………………..137

Page 15: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

14

SSUUMMÁÁRRIIOO

11.. IINNTTRROODDUUÇÇÃÃOO 1166 1.1 Otimização Combinatória..................................................................... 17 1.2 Computação Evolucionária................................................................... 19 1.3 O Problema do Caixeiro Viajante(PCV)…............................................ 20 1.4 Organização do Trabalho..................................................................... 22 22.. CCOOMMPPUUTTAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA 2233 2.1 Teorias da Evolução............................................................................ 24 2.1.1 Lamarck............................................................................................ 26 2.1.2 Johan Mendel................................................................................... 27 2.1.3 Thomas Malthus............................................................................... 29 2.1.4 Charles Darwin................................................................................. 31 2.1.4.1 As Girafas – um exemplo de Darwinismo...................................... 34 2.1.4.2 Constatações e Conclusões de Darwin ......................................... 35 2.2 Os Algoritmos Evolucionários.............................................................. 36 2.3 A Evolução Pós-Darwin....................................................................... 43 2.3.1 Teoria Sintética…............................................................................. 44 2.3.2 A Antropologia.................................................................................. 46 33 AALLGGOORRIITTMMOOSS GGEENNÉÉTTIICCOOSS 4477 3.1 Algumas definições.............................................................................. 48 3.2 Os Algoritmos....................................................................................... 49 3.2.1 Expressões Utilizadas....................................................................... 49 3.2.2 Tipos de Representação.................................................................... 51 3.2.2.1 Representação Binária................................................................... 52 3.2.2.2 Representação Inteira.................................................................... 52 3.3 Implementação dos AGs...................................................................... 53 3.3.1 População.......................................................................................... 55 3.3.2 Avaliação de aptidão(fitness) ..................................................... 57 3.3.3 Seleção ..................................................................................... 58 3.4. Variações de Métodos.......................................................................... 62 3.5 Operadores Genéticos........................................................................... 63 3.6 Parâmetros Genéticos........................................................................... 67 3.7 Considerações a respeito das dificuldades dos Algoritmos Genéticos..................................................................................................... 69 3.8 Teorema dos Schemas versus Blocos Construtores ........................... 70 3.9 Algoritmo Genético para Otimização MultiObjetivo.............................. 74

Page 16: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

15

3.9.1 Alguns Algoritmos Evolucionários MultiObjetivos........................ 75 3.10 Ajuste de Parâmetros.................................................................... 76 3.11 Aplicações...................................................................................... 77 3.11.1 AG aplicados a PCV................................................................... 78 3.11.2 Outras Aplicações....................................................................... 80 3.12 Hibridização.................................................................................... 82 44.. AALLGGOORRIITTMMOOSS MMEEMMÉÉTTIICCOOSS 8844 4.1 Os Memes......................................................................................... 86 4.2 Idéia geral.......................................................................................... 87 4.3 Pseudo-código.................................................................................. 88 4.4 Aplicações......................................................................................... 91 55.. AALLGGOORRIITTMMOOSS CCUULLTTUURRAAIISS 9933 5.1 Pseudo-código de um Algoritmo Cultural.......................................... 98 5.2 Modelagem do um Algoritmo Cultural............................................... 101 5.3 Operadores Culturais......................................................................... 101 5.4 Aplicações......................................................................................... 102 5.4.1 Outras Aplicações........................................................................... 103 66.. TTRRAANNSSGGEENNÉÉTTIICCAA CCOOMMPPUUTTAACCIIOONNAALL 110044 6.1 Vetores Transgenéticos..................................................................... 108 6.1.1 O Vírus............................................................................................ 111 6.1.2 Partícula Genética Móvel................................................................ 111 6.2 Regras Transgenéticas. ....................................... ............................. 113 6.3 Pseudo-código.................................................................................... 114 6.4 Aplicações.......................................................................................... 116 77.. OOUUTTRRAASS AABBOORRDDAAGGEENNSS EEVVOOLLUUCCIIOONNÁÁRRIIAASS 111188 7.1 Colônia de formigas......................................................................... 118 7.1.1 A Otimização da Colônia de Formigas.......................................... 120 7.1.2 O Algoritmo Colônia de Formigas................................................. 122 7.1.3 Aplicação-PCV.............................................................................. 123 7.1.3.1 Outas Aplicações....................................................................... 127 7.2 Nuvem de Partículas.................................................................. ..... 128 7.2.1 Simulando o Comportamento Social............................................. 129 7.2.2 Vida Artificial................................................................................. 130 7.2.3 O Algoritmo por Nuvem de Partículas.......................................... 131 7.2.4 Controle de Parâmetros............................................................... 134 7.2.5 Aplicações..................................................................................... 135

Page 17: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

16

88.. CCOONNCCLLUUSSÕÕEESS 113377 RREEFFEERRÊÊNNCCIIAASS 114411 AAPPEENNDDIICCEE AA –– PPRROOBBLLEEMMAA DDOO CCAAIIXXEEIIRROO VVIIAAJJAANNTTEE 115577

AAPPÊÊNNDDIICCEE BB –– BBUUSSCCAA LLOOCCAALL 116633 AANNEEXXOO II –– IINNSSTTÂÂNNCCIIAA PPAARRAA OO PPCCVV

Page 18: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

17

11 IINNTTRROODDUUÇÇÃÃOO

Os problemas de otimização combinatória têm envolvido muitos pesquisadores na

busca de soluções aproximativas de boa qualidade para a classe de problemas NP-

Completos estabelecida por Cook (1971). Há fortes evidências de que não existe

algoritmo polinomial para solucionar problemas dessa classe. Essa constatação foi

reforçada por Karp (1972), que apresentou, em seu trabalho, 24 problemas NP-

Completos, tendo sido amplamente difundida por Garey e Johnson (1979).

Uma revisão a respeito da teoria da NP-Completude, apresentada por Campello e

Maculan (1994), referencia os problemas NP-Árduos como pelo menos tão difíceis

quanto qualquer problema NP-Completo. Incluíram, ainda, definições para

problemas de otimização combinatória, enfatizando que se justifica o uso de

heurísticas – algoritmos especializados na busca de soluções aproximadas de boa

qualidade – inclusive “para a obtenção de boas soluções viáveis iniciais para

diversos algoritmos exatos”. As heurísticas podem ser vistas como algoritmos que

Page 19: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

18

exploram o espaço de soluções buscando mínimos ou máximos locais, dependendo

da função objetivo considerada (RAMOS, 2005) .

11..11 OOTTIIMMIIZZAAÇÇÃÃOO CCOOMMBBIINNAATTÓÓRRIIAA

Esse nome meio "assustador" esconde um conceito bastante simples. Suponha que

você possui um conjunto de itens e uma série de regras que podem ser usadas para

selecionar alguns elementos (itens) desse conjunto. Usando essas regras, há várias

maneiras diferentes de escolher os elementos e criar outros conjuntos menores (ou

subconjuntos). Se cada elemento estiver associado a um custo, os subconjuntos

criados, também, terão um custo que é dado, por exemplo, pela soma dos custos de

seus elementos (www.din.uem.br/~ademir). O problema de Otimização

Combinatória, em geral, se resume a encontrar, dentre todos os possíveis

subconjuntos, aquele cujo custo seja o menor ou maior possível.

Uma forma de resolver tais problemas seria simplesmente enumerar todas as

soluções possíveis e guardar aquela de menor custo. Entretanto, essa é uma idéia

ingênua, pois para a maioria dos problemas, esse método torna-se impraticável, já

que existe um elevado número de soluções possíveis. Mesmo que você utilize um

supercomputador para resolver o problema, o tempo de processamento pode ser de

várias horas, vários dias, anos ou séculos. Parece uma coisa absurda, mas estamos

rodeados de problemas práticos dessa natureza. Portanto, técnicas computacionais

mais apuradas são necessárias para resolver esses problemas.

Page 20: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

19

•• AALLGGOORRIITTMMOOSS HHEEUURRÍÍSSTTIICCOOSS

Os Métodos Heurísticos são algoritmos que não garantem encontrar sempre a

solução ótima, ou seja, a melhor solução existente para o problema. No entanto,

são capazes de retornar uma solução próxima do ótimo em um tempo adequado

para as necessidades da aplicação.

•• MMEETTAA--HHEEUURRÍÍSSTTIICCAASS

A busca por soluções de qualidade para os problemas de otimização combinatória

tem sido focalizada, ultimamente, através das chamadas metaheurísticas –

algoritmos que exploram o espaço de soluções buscando mínimos (ou máximos)

globais e são consideradas heurísticas de uso geral ou heurística das heurísticas

(VIANA, 1998).

Uma meta-heurística é definida por uma estrutura genérica que deve ser seguida,

adaptando suas partes de acordo com o problema que se pretende resolver.

Diversas propostas de meta-heurísticas surgiram nos últimos anos. Dentre as meta-

heurísticas evolucionárias existentes, destacam-se as listadas no quadro a seguir:

Page 21: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

20

QUADRO 1

Meta-Heurísticas abordadas

MMEETTAA-- HHEEUURRÍÍSSTTIICCAASS AABBOORRDDAADDAASS

Algoritmos Genéticos Holland, 1975

Simulated Annealing Kirkpatrick Et Al, 1983

Busca Tabu Glover, 1985

Algoritmos Meméticos Moscato, 1989

Algoritmos Culturais Reynolds, 1994

Colônia de Formigas Dorigo, 1992

Nuvem de Partículas Kennedy e Eberhart,1995

Transgenética Computacional Gouvêa, 2001

11..22 CCOOMMPPUUTTAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA

No campo da Ciência da Computação, encontra-se uma área que possui seu estudo

voltado para uma teoria baseada nos conceitos da evolução natural do seres vivos,

denominada Computação Evolucionária (CE).

A CE compreende todos os algoritmos inspirados em aspectos essenciais da

evolução natural e os aplica na solução de problemas em geral. Essa área, de

acordo com certas particularidades, possui subdivisões: algoritmos genéticos,

programação genética, programação evolutiva, estratégias evolutivas, entre outras.

Page 22: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

21

O interesse em técnicas de resolução dos problemas inspirados em processos

biológicos tem sido crescente nas últimas décadas. Tal fato se justifica pela grande

complexidade associada aos problemas, por exemplo, os de natureza combinatória,

o que torna proibitiva a aplicação de métodos exatos para resolução dos mesmos

(LEWIS e PAPADIMITRIOU, 1981).

Diante dessa realidade, este trabalho tem por objetivo fazer um estudo detalhado da

CE, explorando sua teoria desde os seus primórdios até os dias atuais. Serão

apresentados os Algoritmos Evolucionários (AEs) mais utilizados, provendo ao leitor

um conhecimento necessário para aplicá-los na resolução de problemas de

otimização combinatória.

Para fim didático, todos os algoritmos apresentados neste trabalho, utilizarão o

clássico Problema do Caixeiro Viajante (LAPORTE, 1992) exemplificados através do

banco de instâncias TSPLIB – Burna14 (ANEXO I), pelo fato de ser amplamente

conhecido e difundido no campo das ciências exatas em geral.

11..33 OO PPRROOBBLLEEMMAA CCLLÁÁSSSSIICCOO DDOO CCAAIIXXEEIIRROO VVIIAAJJAANNTTEE ((PPCCVV))

O Problema do Caixeiro Viajante é um dos mais proeminentes dentro de um amplo

conjunto de problemas de otimização e por isso, tem atraído pesquisadores de

diferentes campos: pesquisa operacional, matemática, física, biologia, inteligência

artificial, entre outros. Isso se deve ao fato da simplicidade da sua definição:

Page 23: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

22

encontrar uma rota de menor distância ou custo que passa por um conjunto de

cidades, sendo cada cidade visitada exatamente uma vez (LAPORTE, 1992).

O interesse da comunidade científica pelo PCV tem três razões principais. A

primeira, prende-se ao fato deste ser um representante de uma classe muito vasta

de outros problemas de Otimização Combinatória. A segunda reside na

simplicidade de sua formulação e na dificuldade de sua resolução. A terceira, Karp

(1972) provou que o PCV é um problema que pertence a categoria de NP-completo.

11..44 OORRGGAANNIIZZAAÇÇÃÃOO DDOO TTRRAABBAALLHHOO

Este trabalho está estruturado em 8 capítulos (esta introdução corresponde ao

capítulo 1) e 2 apêndices, cujos conteúdos estão descritos a seguir:

O capítulo 2 introduz uma abordagem teórica sobre a Computação Evolucionária,

desmistificando o tema através de um breve histórico, começando com os primeiros

pesquisadores da área, chegando até a sua aplicabilidade na resolução dos

problemas.

O capítulo 3 apresenta os Algoritmos Genéticos, de forma clara e objetiva, fazendo

uma relação entre os conceitos da biologia com os termos utilizados nas aplicações

computacionais, apresentando de modo geral o funcionamento de um genético

aplicado ao PCV e por fim, relacionando algumas aplicações.

Page 24: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

23

O capítulo 4 traz os algoritmos genéticos híbridos que utilizam um critério de busca

local, denominados Algoritmos Meméticos. São apresentados os conceitos

adicionais necessários ao tema exemplificados através de um memético aplicado ao

PCV. Cabe aqui destacar os ganhos obtidos com essa nova técnica, citando

aplicações.

No capítulo 5 aborda um modelo que pertence ao processo de Evolução Cultural,

chamado Algoritmo Cultural. É mostrado então, o processo de evolução cultural, sua

estrutura e seu pseudo-algoritmo.

O capítulo 6 introduz a Transgenética Computacional. Tráta-se de uma abordagem

evolucionária baseada na simbiogênese. São apresentados um rápido histórico,

seus agentes, um pseudo-algoritmo e algumas aplicações.

O capítulo 7 enfoca a Colônia de Formigas e a Nuvem de Partículas. Ambas,

apesar de não serem baseadas na Teoria Darwiniana, merecem destaques por

terem sua evolução através do comportamento.

Já o capítulo 8 traz uma conclusão referente aos capítulos abordados.

Por fim, têm-se 2 apêndices. o apêndice A que apresenta de forma elucidatória, o

problema clássico do Caixeiro Viajante e o apêndice B, as técnicas de busca local.

Page 25: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

24

22 CCOOMMPPUUTTAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA

A Computação Evolucionária abrange métodos computacionais inspirados em

Teorias da Evolução das Espécies, tendo grande aplicação em problemas de

otimização nas mais diversas áreas do conhecimento.

Segundo Yao (1996) a Computação Evolucionária trabalha com um reservatório de

informações codificadas em um formato que imita a informação genética

(cromossomos) e opera segundo uma lógica que permite que tais unidades troquem

informações entre si.

Conforme Eberhart et al (1996) a Computação Evolucionária consiste na otimização

do aprendizado de máquina e em paradigmas de classificação, baseados nos

mecanismos de evolução, tais como: Genética e Seleção Natural.

Page 26: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

25

22..11 TTEEOORRIIAASS DDEE EEVVOOLLUUÇÇÃÃOO

Quando a evolução foi proposta, pela primeira vez, para explicar certos fatos

enigmáticos da vida, ela foi obstada por muitas pessoas, porque contradisse a

doutrina religiosa em que acreditavam. A princípio, o paradigma científico da

evolução era muito menos amplo que hoje. Não havia corroboração e muitas das

suposições em que hoje está fundamentado, de modo que mesmo alguns cientistas

estavam inseguros de que a idéia pudesse persistir.

Entretanto, com o passar do tempo, o paradigma evolutivo desenvolveu-se e

consolidou-se até que, atualmente, parece ser inabalável. Na verdade, muitas

pessoas não encontram dificuldade em conciliar suas crenças com as descobertas

científicas sobre evolução.

A maior dificuldade é a doutrina da criação, que sustenta que o mundo foi criado por

uma divindade e não evoluiu como um resultado das propriedades inerentes à

matéria. O criacionismo e crenças religiosas a fins são impossíveis de formulação

em um molde científico (AYALA, 1979).

Não pode haver exame científico do criacionismo porque a hipótese não pode ser

refutada, mesmo em princípio. Uma divindade com o poder de criar a Terra e sua

vida, ou o universo inteiro, é essencialmente uma entidade onipotente, além da

capacidade de descobrir do método científico. Quaisquer resultados de atividade

divina estão claramente além da capacidade de detectar do método científico, se a

divindade desejou ocultá-los. A falta de provas demonstrativas da criação divina

Page 27: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

26

pode sempre ser interpretada como devida ao desejo do criador. Como a hipótese

do criacionismo não é refutável, fica inteiramente fora do alcance da ciência (AYALA,

1979).

Teorias evolucionárias têm sido uma fonte de inspiração para diversos

pesquisadores em lidar com problemas combinatórios. A evolução também pode

ser pensada como um método de adaptação às mudanças ambientais, porém, do

ponto de vista computacional, essa linha de raciocínio tem sido pouco explorada. Os

algoritmos baseados em metáforas de evolução são chamados de Algoritmos

Evolucionários (AEs). O desenvolvimento desses algoritmos tem por objetivo

solucionar problemas complexos modelando-os através da metáfora da evolução

biológica.

A evolução biológica é o resultado da diversidade de organismos biológicos que

interagem com o meio ambiente, retirando deste meio as suas condições de vida e,

por sua vez modificando-o. Como os organismos são diferentes, alguns encontram

condições de vida e possibilidade de reprodução maior que outros e assim seu

número tende a aumentar pelo processo chamado seleção natural.

O mecanismo de seleção pode ser considerado como uma busca constante de

maior eficiência. Isto se manifesta no aparecimento das primeiras moléculas, onde a

molécula mais complexa necessita de menor energia para existir que as de seus

constituintes e também na formação de organismos mais complexos.

Page 28: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

27

Alguns teóricos, clássicos, contribuíram de forma significativa para o campo da s

Teorias de Evolução como mostra as próximas seções.

22..11..11 LLaammaarrcckk

A primeira teoria sobre a evolução das espécies é laborada

pelo naturalista francês Jean-Baptiste de Lamarck em 1809

(ano em que nasce Charles Darwin). A capacidade dos

seres vivos de mudar e evoluir já havia sido observada e

registrada por muitos estudiosos, mas é apenas com Lamarck que surge a primeira

hipótese sistematizada.

� Adaptação ao Meio

Lamarck diz que os seres vivos evoluem "sem saltos ou cataclismos" de forma "lenta

e segura". Para se adaptar melhor ao meio, os seres vivos se modificam a cada

geração. A girafa, por exemplo, teria desenvolvido um pescoço comprido para se

alimentar das folhas de árvores muito altas. Os órgãos que são menos usados

atrofiam, de geração em geração, e desaparecem. Isto faz parte da primeira lei de

Lamarck chamada lei do uso e desuso 1. Essa lei encerra uma verdade apenas

parcial, pois o ambiente só modifica características fenotípicas dentro de certos

limites predominantes pelo genótipo (norma de reação do genótipo).

1 Para algumas características o uso e o desuso não têm nenhuma influência.

Page 29: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

28

� Caracteres adquiridos

Para Lamarck, as características que um animal adquire durante sua vida podem ser

transmitidas hereditariamente. Um animal que perde parte de sua cauda, por

exemplo, pode ter filhos com a cauda curta. No entanto, por tudo que sabemos hoje,

somente uma modificação nos genes (mutação) poderá ser transmitida às gerações

seguintes.

Entre 1870 e 1875, o biólogo alemão Weismann estabeleceu a existência de duas

linhagens de células germinativas (originam gametas) e somáticas (formam corpo),

mostrando que somente as modificações surgidas na linhagem germinativa se

transferem aos descendentes.

22..11..22 JJoohhaannnn MMeennddeell

Johann Mendel, pioneiro descobridor das leis da herança

genética, nascido em Heinzendorf, na Silésia austríaca, região

pertencente ao atual território da República Tcheca, seguiu

desde cedo à vida religiosa, ordenando-se frade em 1847 no

monastério agostiniano de Brunn (atual Brno). Já havia

realizado estudos de Filosofia e, após a ordenação, que lhe consagrou suas

atividades no ensino de Filosofia, ingressou na Universidade de Viena em 1851.

Page 30: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

29

Voltou a Brunn em 1854, dedicando-se até 1868 ao ensino de História Natural e

Matemática.

Filho de camponeses, Mendel adquiriu um grande senso na observação dos

fenômenos da natureza desde cedo. No período em que voltou a Brunn para

lecionar, dedicou-se também às suas famosas experiências no cruzamento entre

diversas variedades de plantas de ervilha, realizadas na horta do monastério onde

vivia. Foi a partir destas experiências que Mendel estabeleceu as leis que hoje

levam seu nome. Chegou a realizar centenas de cruzamentos entre plantas de

características diferentes, porém da mesma espécie, tomando notas estatísticas de

todos os resultados, tendo observado que determinadas características das plantas

resultantes de sucessivos cruzamentos predominavam em proporção constante. Do

resultado de suas observações foi originado seu trabalho publicado em 1866, sob o

título “Experimentos com Plantas Híbridas”, em que Mendel formulou suas três

teorias básicas; aí estabeleceu o que conhecemos hoje por “Leis de Mendel”.

A primeira Lei de Mendel é também conhecida por princípio da segregação dos

caracteres, em que as células sexuais, masculinas ou femininas, devem conter

apenas um fator para cada característica a ser transmitida. A segunda lei trata-se

do princípio da independência dos caracteres, ou seja, cada característica

hereditária é transmitida independentemente das demais. Na terceira lei, Mendel

formulou os conceitos da dominância, em que os seres híbridos apresentam um

caráter dominante que encobre segundo determinadas proporções o chamado

caráter recessivo, ou seja, os seres híbridos, resultados do cruzamento entre seres

portadores de caracteres dominantes e recessivos, apresentam as características de

Page 31: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

30

dominância. O trabalho de Mendel só passou a obter grande reconhecimento no

meio científico no início do século XX, tendo sido precursor dos posteriores estudos

dos cientistas Hugo de Vries, Karl Erich Correns e Erich Tschermak. Estes três

pesquisadores realizaram, independentemente, muitas das experiências baseadas

na obra de Mendel, tendo então chamado a atenção do mundo científico para as

descobertas do precursor, atribuindo a ele a descoberta das Leis da

Hereditariedade.

Atualmente sabe-se que as teorias de Mendel são apenas parcialmente válidas:

tornou-se parcial a afirmação contida na lei da dominância através dos estudos

posteriores, assim a descoberta de que um único gene pode ser responsável pela

transmissão de mais de um caráter tornou relativa à lei da independência dos

caracteres. No entanto, será sempre atribuído a Mendel o primeiro grande salto na

história da ciência quanto à formulação das teorias sobre os mecanismos que regem

a transmissão de caracteres hereditários.

22..11..33 TThhoommaass MMaalltthhuuss

O economista e demógrafo britânico Thomas Malthus ficou

conhecido, sobretudo, pela teoria segundo a qual o

crescimento da população tende sempre a superar a

produção de alimentos, o que torna necessário o controle

da natalidade.

Page 32: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

31

Thomas Robert Malthus nasceu entre 14 e 17 de fevereiro de 1766, em Rookery,

Surrey, Inglaterra. Seu pai era amigo do filósofo David Hume e seguidor ardoroso

de Jean-Jacques Rousseau. O jovem Malthus fez seus primeiros estudos na casa

paterna e, em 1784, ingressou no Jesus College, de Cambridge, onde se formou

quatro anos mais tarde. Ordenou-se sacerdote da Igreja Anglicana em 1797.

Em 1798, Malthus publicou anonimamente seu Essay on Population (Ensaio sobre a

população), no qual afirma que a população cresce em progressão geométrica,

enquanto a produção de alimentos aumenta em progressão aritmética. A solução

para evitar epidemias, guerras e outras catástrofes provocadas pelo excesso de

população, consistiria, segundo ele, na restrição dos programas assistenciais

públicos de caráter caritativo e na abstinência sexual dos membros das camadas

menos favorecidas da sociedade.

Malthus era um pessimista que considerava a pobreza como um destino ao qual o

homem não pode fugir. Sua obra foi ao mesmo tempo criticada e aplaudida.

Enquanto alguns setores da sociedade o acusavam de ser cruel, indiferente e até

mesmo imoral, economistas de renome apoiavam suas teorias. Na segunda edição

da obra, de 1803, Malthus modificou algumas teses mais radicais da primeira

edição. Com o tempo, o "malthusianismo" foi incorporado à teoria econômica,

atuando como freio de teses mais otimistas. Na segunda metade do século XX, os

problemas demográficos mundiais revitalizaram as concepções de Malthus, embora

a agricultura intensiva tenha permitido aumento de produção muito maior do que os

previstos por ele.

Page 33: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

32

A partir de 1805, Malthus tornou-se professor de história e economia política em

Haileybury. Eleito membro da Royal Society em 1819, nos anos seguintes recebeu

grande número de homenagens e honras acadêmicas. Malthus morreu em Saint

Catherine, Somerset, em 23 de dezembro de 1834.

22..11..44 CChhaarrlleess DDaarrwwiinn

Charles Darwin, um naturalista, que viveu na Inglaterra

entre 1809 e 1882, tinha um interesse pela evolução, que

nasceu de uma viagem ao redor do mundo. Nessa época

ele tinha 22 anos, e a viagem durou cinco anos. Durante

essa viagem, Darwin coletou vários exemplares de

animais, plantas e fósseis e fez observações sobre as diferenças que encontrava

entre indivíduos da mesma espécie.

Após a sua viagem, em 1837, começou a estudar mais detalhadamente os animais

domésticos. Concluiu que as raças de organismos domésticos (galinhas, pombos

etc.) foram criadas pelo homem, que escolhia os indivíduos para os cruzamentos.

De geração em geração, ao longo dos anos, eram reproduzidos os indivíduos que

possuíam uma determinada característica que fosse de interesse e, ao mesmo

tempo, outros indivíduos eram impedidos de se reproduzir. A isto chamamos de

seleção artificial. Deste modo, eram obtidas novas raças e variedades que

interessavam ao homem.

Page 34: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

33

Darwin estava convencido de que as espécies se modificavam, e a partir de então

começou a se perguntar: “Como elas mudavam na natureza?” Para elucidar esta

questão, ele passou a estudar os fósseis2.

Ao comparar os fósseis de diferentes camadas geológicas, Darwin concluiu que os

seres vivos vinham se modificando ao longo do tempo, e que algumas

características de animais extintos continuavam existindo em animais atuais. As

camadas mais recentes mostravam fósseis de organismos mais semelhantes aos

seres viventes. Por exemplo, foi encontrado na patagônia o fóssil de um mamífero

gigantesco, já extinto, muito semelhante ao tatu que vive na América do Sul.

Com base nos fósseis, podemos obter uma série de informações a respeito do

hábito de vida dos organismos do passado.

Apesar de todos os estudos realizados, Darwin ainda procurava uma comprovação

da ocorrência da modificação das espécies. Em 1838, ele conheceu a teoria de

Malthus sobre o crescimento populacional.

As populações poderiam, teoricamente, crescer muito rápido. Mas isso não era

observado na prática. Para explicar a manutenção de níveis mais ou menos

constantes no tamanho da população, ele achava que deveria existir uma “luta pela

vida”. Indivíduos diferentes que possuíssem características favoráveis seriam

2Fóssil é qualquer vestígio petrificado de um ser vivo que já habitou o nosso planeta, como uma

pegada, uma folha, um pedaço de osso.

Page 35: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

34

selecionados, isto é, ao longo do tempo, iriam desaparecer as características

desvantajosas ao meio. Desse modo, os indivíduos mais aptos sobreviveriam e

deixariam um maior número de descendentes. Com o passar do tempo, as

diferenças iriam se acentuando a ponto de se constituírem espécies novas,

diferentes dos tipos originais.

Darwin escreveu, então, um dos princípios da teoria da evolução: a seleção natural,

que dizia que as populações não poderiam crescer demais, pois o meio agiria sobre

elas selecionando apenas os indivíduos que estivessem adaptados às condições do

ambiente.

Ele também elaborou toda a sua teoria com base nos dados coletados em sua

viagem, em observações de animais domésticos e na análise de trabalhos de outros

pesquisadores. Ele conseguiu reunir várias idéias em uma mesma teoria: o

Darwinismo ou Teoria da Evolução.

A teoria descrita por esse naturalista para explicar como as espécies animais e

vegetais evoluem diz que o meio ambiente seleciona os seres mais aptos. Em geral,

só estes conseguem se reproduzir e os menos dotados são eliminados. Assim, só

as diferenças que facilitam a sobrevivência são transmitidas à geração seguinte. Ao

longo das gerações, essas características firmam-se e geram uma nova espécie.

Page 36: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

35

22..11..44..11 AAss ggiirraaffaass -- uumm eexxeemmpplloo ddee DDaarrwwiinniissmmoo

Darwin observou que nas populações atuais de girafas, todos os indivíduos

possuíam pescoços longos, como mostra a figura 2. Os ancestrais das girafas, de

acordo com os fósseis, tinham pescoço mais curto. Darwin explicava a evolução da

população de girafas dizendo que no passado havia uma pequena variação no

comprimento do pescoço entre os indivíduos das populações ancestrais.

Os indivíduos que possuíam pescoço longo conseguiam alcançar os ramos mais

altos das árvores. Assim, girafas de pescoço longo tinham maior oferta de alimento

e mais chance de sobreviver e de deixar descendentes.

Desse modo, a seleção natural privilegiava os indivíduos que possuíam pescoço

mais comprido. Após milhões de anos, as girafas de pescoço curto desapareceram

e a população de girafas ficou composta apenas por indivíduos de pescoço longo.

Na verdade elas tinham desenvolvido um pescoço comprido para se alimentar das

folhas de árvores muito altas. Os órgãos que são menos usados atrofiam, de

geração em geração, e desaparecem.

Figura 1 – As girafas de pescoço mais longo alimentam-se das folhas

Page 37: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

36

22..11..44..22 CCoonnssttaattaaççõõeess ee ccoonncclluussõõeess ddee DDaarrwwiinn

a) Constatações

� As populações têm potencial para crescer rapidamente, porém não o fazem

porque há predadores, parasitas, escassez de alimento e expansão, etc;

� Muitos indivíduos morrem sem deixar descendentes. As mortes são causadas

pelas condições ambientais. Os que sobrevivem estão mais aptos a enfrentar

tais condições e assim deixam descendentes;

� Devido à variação existente entre indivíduos da mesma espécie é possível

que alguns sobrevivam quando há mudanças das condições do meio.

b) Conclusões

� Os indivíduos que conseguem sobreviver e se reproduzir possuem

características adaptadas ao meio. Este é o princípio da seleção natural;

� A seleção natural favorece a permanência de características adaptativas e o

número de indivíduos com tais características, irá aumentar a população ao

longo do tempo.

Page 38: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

37

22..22 OOSS AALLGGOORRIITTMMOOSS EEVVOOLLUUCCIIOONNÁÁRRIIOOSS

Os Algoritmos Evolucionários (AEs) são algoritmos baseados na teoria da evolução

apresentada nas seções anteriores. Segundo Yao (1999), todos os algoritmos

evolucionários possuem duas características particulares que os distinguem dos

demais algoritmos. A primeira delas é que todos os Algoritmos são baseados em

uma população de indivíduos. A segunda característica compreende a comunicação

e a troca de informação entre os indivíduos da população, que são resultados das

etapas de seleção e recombinação/manipulação nos primeiros Algoritmos

Evolucionários.

De acordo com a definição de Yao, considerando a segunda característica, Colônia

de Formigas e Nuvem de Partículas são abordagens evolucionárias, partindo do

princípio que a troca de informações é feita, tanto pelos feromônios deixados pelas

formigas, quanto pelas partículas voadoras, respectivamente.

Nos algoritmos pioneiros o processo evolucionário é simulado por procedimentos

chamados de regras de seleção, recombinação e mutação. Cada indivíduo é

avaliado e a ele é atribuído um valor de aptidão que guia o processo de reprodução

direcionando-o ao favorecimento dos indivíduos de maior adequação.

Assim como todas as metaheurísticas, os algoritmos evolutivos são suficientemente

genéricos para serem aplicados a uma variedade de problemas ao invés de um

Page 39: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

38

problema específico (MICHALEWICZ e FOGEL, 1998). Entretanto, diversas

decisões são específicas do problema abordado.

Os dados dos algoritmos evolucionários consistem em uma população de objetos

abstratos (por exemplo, estruturas simbólicas, redes neurais, palavras de um

alfabeto, variáveis de um problema de otimização, programas de computador, etc).

Estes objetos são manipulados por operadores inspirados nas regras da seleção e

outros na evolução biológica ou operadores genéticos que agem como operadores

de busca na solução de um determinado problema. Cada indivíduo da população

tem um certo grau de aptidão, o qual depende do ambiente. Os indivíduos de maior

aptidão podem se reproduzir mais facilmente. Dessa forma, a população tem a

tendência de, após várias gerações, ter elementos com altos valores de aptidão.

A Figura 2 (GOUVÊA, 2001) resume o procedimento geral dessa abordagem.

Historicamente, as primeiras técnicas de desenvolvimento de algoritmos

evolucionários basearam-se na seleção natural de Darwin.

Os algoritmos originários dessas abordagens caracterizam-se por manter uma

população de estruturas (quadros 1, 3, 5 e 7 da Figura 2), que evolui de acordo com

regras de seleção (quadro 4 da Figura 2) e outros operadores, tais como os de

recombinação e mutação (quadros 6 e 8 da Figura 2). A estratégia prevê a

avaliação dos indivíduos em relação à sua adequação ao meio-ambiente (quadro 2

da Figura 2), de modo a que o processo de reprodução possa, de uma forma geral,

ser direcionado ao favorecimento dos indivíduos de maior adequação.

Page 40: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

39

(1) População não

avaliada

(0) Geração

População

(2) Mecanismo adequação

(4) Mecanismo de Seleção

(5) População

Selecionada Recombinação

ooo

(8) Mecanismo

Mutação

(6) Mecanismo

Recombinação

(7) População de Descendentes

Figura 2 - Procedimento geral das abordagens darwinianas da Computação Evolucionária

O funcionamento desses algoritmos envolve toda uma gama de mecanismos

inspirados na evolução biológica, à maioria deles considerando principalmente os

mecanismos de seleção natural.

A evolução biológica exige diversidade. Na natureza a diversidade deriva, no caso

dos seres que se reproduzem por mitose, de mutações, e no caso da reprodução

sexuada a cada reprodução.

No contexto biológico, pensar na evolução como um fator meramente advindo de

mecanismos de seleção, não é de fato apropriado. Há que se considerar quaisquer

fatores funcionalmente significativos que sejam responsáveis em um dado contexto

pelo diferencial de sobrevivência dos genes, sistemas de interação gênica,

genomas, grupos, populações e espécies (GOLDBARG e GOUVÊA, 2001). As

conseqüências funcionais dos genes ou grupos de genes são as principais

Page 41: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

40

responsáveis pela determinação do destino dos indivíduos. Se por um lado a

simples modelagem da Seleção Natural pode ser uma tarefa bastante difícil de

realiza, por outro ela não é suficiente para modelar a evolução biológica (BEHE,

1996).

Inicialmente, a Computação Evolucionária foi classificada através do paradigma

clássico e posteriormente, outros modelos surgiram, conforme mostra a Figura 4. Os

algoritmos genéticos como os outros, serão abordados individualmente por

capítulos.

Figura 4 – O paradigma da Computação Evolucionária

CCOOMMPPUUTTAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA

PPAARRAADDIIGGMMAA

CCLLÁÁSSSSIICCOO

PPRROOGGRRAAMMAAÇÇÃÃOO

EEVVOOLLUUCCIIOONNÁÁRRIIAA

EESSTTRRAATTÉÉGGIIAASS

EEVVOOLLUUCCIIOONNÁÁRRIIAASS

Programação Genética

AALLGGOORRIITTMMOOSS

GGEENNÉÉTTIICCOOSS

OOUUTTRROOSS

MMOODDEELLOOSS

AALLGGOORRIITTMMOO

MMEEMMÉÉTTIICCOO

AALLGGOORRIITTMMOO

CCUULLTTUURRAALL

Algoritmo Transgenético

AALLGGOORRIITTMMOO DDEE FFOORRMMIIGGAASS

AALLGGOORRIITTMMOO NNUUVVEEMM DDEE

PPAARRTTÍÍCCUULLAASS

Page 42: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

41

aa)) PPRROOGGRRAAMMAAÇÇÃÃOO EEVVOOLLUUCCIIOONNÁÁRRIIAA

A Programação Evolucionária foi desenvolvida por Lawrence J. Fogel em 1960,

onde utiliza-se de uma população de soluções candidatas para evoluir uma resposta

de um determinado problema. Enfatiza a relação comportamental entre os pais e

seus descendentes diretos, ao invés de simular os operadores genéticos, como

ocorre na natureza, ou seja, seu objetivo está em desenvolver modelos

comportamentais.

Através do livro “Artificial Intelligence Through Simulated Evolution”, de Fogel

(1999), é que a Programação Evolucionária se popularizou, sendo que a primeira

conferência sobre o tema foi realizada em 1992, em La Jolla, Califórnia (FOGEL,

1992).

Para maiores detalhes sobre a Programação Evolucionária, ver Fogel (2000) ou

Eberhart et al (1996).

bb)) EESSTTRRAATTÉÉGGIIAASS EEVVOOLLUUCCIIOONNÁÁRRIIAASS

As Estratégias de Evolução (EE) s.ao um outro algoritmo evolucionário, proposto por

Ingo Rechenberg, no inicio da década de 70, com o objetivo de definir um conjunto

de procedimentos para otimização de funções. Posteriormente foram bastante

desenvolvidos por Back et al (1997). Caracterizam-se por trabalhar com cadeias de

números reais e por incluírem parâmetros, denominados parâmetros estratégicos,

que controlam o próprio andamento do algoritmo.

Page 43: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

42

As Estratégias Evolucionárias diferem da Programação Evolucionária com relação

às operações de seleção e recombinação, porque a Programação Evolucionária

utiliza o método estocástico3 e competitivo, onde após a geração de cada elemento,

este é submetido à competição com um certo número de oponentes, podendo

morrer caso o oponente seja mais forte; em Estratégias Evolucionárias, a seleção é

determinística, sendo a morte determinada diretamente pela avaliação da aptidão

dos indivíduos da população.

Já no processo de recombinação a Programação Evolucionária inspira-se na

evolução ao nível populacional. Os indivíduos com quem um novo elemento deve

competir podem ser considerados como uma espécie. Os grupos de indivíduos são

fixos, com exceção dos novos, que nasceram e conseguiram sobreviver. Indivíduos

de espécies diferentes não se cruzam; em Estratégias Evolucionárias a inspiração é

ao nível do indivíduo, não se leva em consideração a informação do fenótipo dos

indivíduos.

Para maiores detalhes sobre as Estratégias Evolucionárias, ver Fogel (2000) ou

EBERHART et al (1996).

cc)) PPRROOGGRRAAMMAAÇÇÃÃOO GGEENNÉÉTTIICCAA

A Programação Genética é um paradigma que se caracteriza por evoluir programas

computacionais hierárquicos, normalmente representados por estruturas de árvores,

de tamanhos, formato e complexidade variáveis.

3 Um processo estocástico é um processo onde a ocorrência de eventos se dá através de leis probabilísticas, ou seja, as características do processo são descritas por variáveis aleatórias.

Page 44: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

43

O objetivo da Programação Genética é evoluir um determinado programa, através

da busca de programas em potencial, que forneça saídas desejáveis de acordo com

as entradas.

No programa genético padrão, todos os valores e funções assumem o mesmo tipo,

embora as funções possam variar na quantidade de argumentos. Esse princípio

permite que qualquer sub-árvore seja considerada estruturalmente igual a qualquer

outra sub-árvore, assegurando que os operadores, como o cruzamento de sub-

árvore, produzam descendentes válidos.

Juntas, as quatro áreas, Estratégias Evolucionárias, Programação Evolucionária,

Programação Genética e Algoritmos Genéticos ( próximo capítulo) formam a base

clássica da Computação Evolucionária. Assim como os Genéticos, as novas

abordagens serão tratadas separadamente nos próximos capítulos.

22..33 AA EEVVOOLLUUÇÇÃÃOO PPÓÓSS--DDAARRWWIINN

Teoria da Sintética

Uma modificação revolucionária de atitude em relação ao Darwinismo pode ser

marcada pela publicação, em 1937, do livro "Genetics and the origin of species" de

Theodosius Dobzhansky (1992). Dobzhansky combinou os trabalhos de

Tshetverikoff, Wright, Fisher e Haldane a uma riqueza de evidências experimentais

para mostrar que a seleção natural é, na maioria dos casos, o único agente eficaz

das modificações evolutivas, exatamente como foi proposto por Darwin. Para todos

os efeitos, Dobzhansky mostrou que o Darwinismo e as descobertas da genética

Page 45: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

44

eram compatíveis. Novas espécies usualmente originam-se pelo acúmulo de genes

diferentes em populações da mesma espécie parental, isoladas reprodutivamente.

Essa populações tornam-se tão diferentes que não podem retrocruzar com a

população parental e podem, portanto, ser reconhecidas como espécies distintas.

Depois do livro de Dobzhansky, vários autores importantes, entre eles George

Simpson, Ernst Mayr e Ledyard Stebbins, confirmaram que esse modelo revitalizado

do Darwinismo explica uma ampla gama de fatos morfológicos, paleontológicos,

biogeográficos e ecológicos sobre plantas e animais semelhantes. O paradigma

Darwiniano tornou-se impregnado com as descobertas da genética e outros ramos

da biologia, emergindo com um conteúdo de informações e capacidade explicativa

amplamente desenvolvidas. Esse novo paradigma é geralmente chamado de Teoria

Sintética da Evolução, porque resultou de uma síntese das descobertas de várias

disciplinas científicas.

A Teoria Sintética da evolução consiste em uma releitura da teoria da evolução das

espécies proposta por Darwin, a partir de dados experimentais provenientes

particularmente da biologia molecular e da genética. Ela recebeu esse nome por se

tratar de um esforço teórico que fazia uma síntese da Teórica Clássica (darwiniana)

com a Teoria Genética proposta por geneticistas e matemáticos no primeiro terço do

nosso século (HULL, 1975). Entretanto, ao fazer isso, estes cientistas na verdade

abandonam a Teoria da Seleção Natural, e com ela, a importância do modo de vida

no transcurso da evolução das espécies. Por outro lado, eles fixam a estrutura e o

Page 46: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

45

determinismo estrutural dos seres vivos em um de seus componentes, o genoma,

afirmando que até mesmo a conduta de um ser vivo é determinada geneticamente.

A Teoria Sintética da Evolução considera que o processo evolutivo resulta de vários

mecanismos interativos:

� Mecanismos que dão origem à variabilidade genética: mutação de genes,

variações no número e estrutura cromossômica e recombinação genética. Sem

variabilidade genética a evolução não poderia ter lugar.

� Mecanismos que guiam as populações de organismos através "canais

adaptativos": (1) a seleção natural e (2) o isolamento reprodutor. Ambos os

mecanismos foram reconhecidos por Darwin;

� Migrações, hibridização e acaso são mecanismos subsidiários dos anteriores.

Quer a migração de indivíduos de uma população para outra, quer a hibridização

entre sub-populações, aumentam o potencial de variabilidade genética

disponível. Os efeitos do acaso só são reconhecíveis em populações pequenas

ou em catástrofes (extinções massivas), em cujos casos pode alterar a direção

da seleção natural.

Nesta perspectiva surgem novas noções como:

Page 47: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

46

Lei de HARDY-WEINBERG:

Em condições de estabilidade ambiental, existe um equilíbrio na composição

genética global de uma população (Seleção estabilizadora 4).

A evolução só ocorre quando este equilíbrio é perturbado por um mecanismo de

seleção (natural ou induzido) resultando numa reprodução não aleatória de

genótipos (Seleção direcional). Deste modo a evolução processa-se por

modificações (mutações) genéticas sucessivas, através daquilo que passou a ficar

conhecido como Gradualismo filogenético.

Seleção direcional ("Directional selection"). Representa o fluxo da teoria darwinista

da seleção natural. É a seleção que resulta da variação regular e gradual de uma

população (gradualismo filogenético) como resposta direta a uma variação

progressiva do ambiente, numa dada direção.

Certos autores têm mesmo levantado a questão de formas tidas como de transição,

com características morfológicas de dois ou mais grupos, deverem ser entendidas

como elos arcaicos ou organismos evoluídos que readquiriram características

ancestrais, a fim de melhor se adaptarem a condições ambientais particulares.

Novas propostas de mecanismos evolutivos como a antropologia foram

desenvolvidos e passaram a influenciar outras abordagens algorítmicas baseadas

4Este caso ocorre quando uma população está em equilíbrio com o seu biotipo. Se o ambiente é relativamente estável durante um longo intervalo de tempo a seleção atua no sentido de eliminar aqueles indivíduos que diferem significativamente dos genótipos bem adaptados.

Page 48: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

47

na troca de informação como os meméticos, culturais, formigas, etc, que serão

tratados nos capítulos seguintes,.

22..33..22 AA AANNTTRROOPPOOLLOOGGIIAA

A Antropologia sistematiza-se como ciência após Darwin por ter trazido à luz a teoria

evolucionista. A Antropologia Física tem, a partir daí, grande impulso e surgem os

primeiros teóricos da nova ciência: Tylor, Morgan, Bachofen, Maine, Bastian.

A Antropologia é, por excelência, a ciência do homem e da cultura. Apresenta dupla

dimensão: teórica e prática. A Antropologia teórica se dedica à investigação pura e

busca todo conhecimento possível que leve à melhor compreensão da humanidade.

De posse desses conhecimentos, tornam-se capazes de desenvolver atividades

práticas, aplicando suas experiências junto aos grupos simples, ágrafos, quase

sempre sujeitos a influência externas que possam provocar mudanças.

Page 49: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

48

33 AALLGGOORRIITTMMOOSS GGEENNÉÉTTIICCOOSS

O desenvolvimento de simulações computacionais de sistemas genéticos teve início,

no século XX, especificamente, nos anos 50 e 60 através de muitos biólogos, mas

foi John Holland quem começou a desenvolver as primeiras pesquisas no tema. Em

1975, Holland publicou o artigo intitulado “Adaptation in Natural and Artificial

Systems”, ponto inicial dos Algoritmos Genéticos. Já David E. Goldberg, aluno de

Holland, nos anos 80 obteve seu primeiro sucesso em aplicação industrial com

Algoritmos Genéticos. Desde então, são utilizados para solucionar problemas de

otimização e aprendizado de máquinas. A idéia de Holland foi tentar imitar algumas

etapas do processo de evolução natural das espécies, incorporando-as a um

algoritmo computacional. O objetivo não era projetar algoritmos para resolver

problemas específicos, mas desenvolver métodos para representar os mecanismos

de adaptação natural nos sistemas de computador (MITCHELL, 1996). O ponto de

referência foi gerar, a partir de uma população de cromossomos, outras novas

populações com propriedades genéticas superiores às de seus antecedentes, onde

os cromossomos são as possíveis soluções de um problema.

Page 50: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

49

33..11 AALLGGUUMMAASS DDEEFFIINNIIÇÇÕÕEESS

Durante as últimas décadas a utilização dos AGs para resolver problemas da área

de otimização cresceu consideravelmente. São inúmeras as definições encontradas

na literatura para os AGs. A seguir apresentaremos algumas:

Os Algoritmos Genéticos são algoritmos de busca baseados nos

mecanismos de seleção natural e genética.

Goldberg (1989)

Apresentam os Algoritmos Genéticos como uma área da

Computação Evolucionária, que modela processos biológicos

para otimizar funções de custo complexas.

Haupt et al. (1998)

Os Algoritmos Genéticos de Holland são um método que se

movimenta de uma população de cromossomos para outra,

usando algum tipo de “Seleção Natural” juntamente com os

operadores genéticos inspirados na natureza, que são:

cruzamento, mutação e inversão.

Mitchell (1999)

Page 51: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

50

33..22 OOSS AALLGGOORRIITTMMOOSS

Ao representar o processo evolutivo partindo do modelo de cromossomos, Holland

foi capaz de encontrar um caminho de grande e imediata aplicação prática na

determinação de máximos e mínimos de funções matemáticas, facilitando a

aceitação dos algoritmos genéticos no meio acadêmico (GOLDBARG; LUNA, 2000).

Segundo Goldberg (1989), os algoritmos genéticos se diferenciavam das demais

técnicas heurísticas da época por quatro motivos:

� Trabalham em um espaço de soluções codificadas e não diretamente no

espaço de busca;

� Trabalham com um conjunto de pontos (população) e não a partir de pontos

isolados;

� Não necessitam de derivadas ou outro conhecimento auxiliar, pois utilizam

informações de custo ou recompensa (função objetivo);

� Usam regras de transição probabilísticas.

33..22..11 EEXXPPRREESSSSÕÕEESS UUTTIILLIIZZAADDAASS

Para um melhor entendimento do assunto é necessário que se compreenda o uso

de expressões tradicionalmente utilizadas no ramo das ciências biológicas. A

utilização desta terminologia é justificável, visto que, considerando a representação

binária, os Algoritmos Genéticos combinam séries de “uns” e “zeros” da mesma

forma que os cromossomos nos organismos vivos se combinam e recombinam,

Page 52: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

51

conduzindo sucessivamente a melhores soluções. A relação entre os termos

utilizados na biologia e o significado desses termos na computação evolucionária é

apresentada no Quadro 2.

QUADRO 2

As principais definições relacionadas com os Algoritmos Genéticos

Termo

Definição

Cromossomo (genótipo) Cadeia de informações que representa uma solução

possível para o problema.

Gene Representação de cada parâmetro de acordo com o

alfabeto utilizado (binário, inteiro ou real).

População Conjunto de pontos (indivíduos) no espaço de busca.

Geração

Iteração completa do algoritmo genético que gera uma

nova população. É representado pelo número da

iteração que executa.

Aptidão Resultado da função de avaliação.

Alelo Genes que ocupam o mesmo locus.

Lócus Posição que o gene ocupa no cromossomo.

Deve ser observado que cada cromossomo, chamado de indivíduo no Algoritmo

Genético, corresponde a um ponto no espaço de soluções, ou seja, a solução, do

problema de otimização. O processo de solução dotado nos Algoritmos Genéticos

consiste em gerar, através de regras específicas, um número de indivíduos

Page 53: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

52

(população) de forma a promover uma varredura tão extensa quanto necessária do

espaço de soluções.

Por exemplo, para o PCV, um cromossomo pode ser um vetor representando um

tour pelas n cidades como mostra a Figura 5. Sobre estes cromossomos artificiais,

são aplicados os operadores genéticos de mutação e cruzamento (YAO, 1996).

Nesta relação entre cromossomos e soluções, tem-se que os alelos correspondem à

informação (valor) contida numa certa posição deste vetor; os índices do vetor

representam o locus de um cromossomo; e a variável associada a um determinado

locus corresponde a um gene.

3 2 1 13 7 6 4 10 8 14 5 11 9 12

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Figura 4 - Representação inteira de um cromossomo para o PCV

33..22..22 TTIIPPOOSS DDEE RREEPPRREESSEENNTTAAÇÇÃÃOO

Existem tipos de representação possíveis para os cromossomos: binária e inteira. A

essa representação se dá o nome de alfabeto AG. De acordo com a classe de

problema que se deseje resolver pode-se usar qualquer um dos tipos.

Alelo

Locus

Cromossomo

Page 54: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

53

3.2.2.1 Representação Binária

Quando foi inicialmente proposto, o algoritmo genético contemplavam apenas a

representação binária. Os cromossomos não eram mais que uma cadeia de bits(0’ s

e 1’ s). Cabe a função de fitness interpretar esta cadeia de símbolos numa realidade

com significado para o problema, e quantificá-la numa pontuação

(http://laseeb.isr.ist.utl.pt/portas_abertas/ags/Apend_dncc.html - acesso em 20 de

janeiro de 2006).

Apesar dos algoritmos genéticos trabalharem com parêmetros binários, a função de

aptidão necessita de valores contínuos.

Para efeito ilustrativo, a figura 5 , anteriormente mostrada, será representada de

modo binário como mostra a seguir a figura 5.

0011 0010 0001 1101 0111 0110 0100 1010 1000 1110 0101 1011 1001 1100

FIGURA 5 – Representação binária de um cromossomo para o PCV

3.2.2.2 Representação Inteira Embora a representação binária tenha se mostrado eficiente para vários problemas,

observou-se que à medida que foram crescendo as aplicações de AGs, esta passou

a não se mais adequada. Dessa forma, surgiram alternativas, como por exemplo, a

representação pó um vetor de números inteiros no caso do caixeiro viajante, onde

Page 55: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

54

cada inteiro representa uma cidade e o vetor representa a rota a seer tomada. Desta

forma, será esta representação utilizada nas demais seções e capítulos deste

trabalho.

33..33 IIMMPPLLEEMMEENNTTAAÇÇÃÃOO DDOOSS AAGGSS

Alguns dos requisitos essenciais para a implementação de um AG são apresentados

a seguir:

� Representações das possíveis soluções do problema no formato de um

código genético;

� População inicial que contenha diversidade suficiente para permitir ao

algoritmo combinar características e produzir novas soluções;

� Existência de um método para medir a qualidade de uma solução potencial;

� Um procedimento de combinação de soluções para gerar novos indivíduos na

população;

� Um critério de escolha das soluções que permanecerão na população ou que

serão retirados desta;

� Um procedimento para introduzir periodicamente alterações em algumas

soluções da população. Desse modo mantém-se a diversidade da população

e a possibilidade de se produzir soluções inovadoras para serem avaliadas

pelo critério de seleção dos aptos.

Page 56: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

55

AA EEssttrruuttuurraa ggeerraall ddee uumm AAllggoorriittmmoo GGeennééttiiccoo éé aapprreesseennttaaddaa nnoo QQuuaaddrroo 22.. TTooddooss ooss

pprroocceeddiimmeennttooss ddeessccrriittooss sseerrããoo eexxeemmpplliiffiiccaaddooss uuttiilliizzaannddoo aa iinnssttâânncciiaa bbuurrmmaa1144..ttsspp

((AAnneexxoo II))..

QQUUAADDRROO 33

AALLGGOORRIITTMMOO GGEENNÉÉTTIICCOO CCLLÁÁSSSSIICCOO

Algoritmo Genético

Inicialize a população de cromossomos (geração i = 1)

Avalie indivíduos na população (função objetivo e sobrevivência)

Repita (evolução)

Selecione indivíduos para reprodução

Aplique operadores de recombinação e/ou mutação

Avalie indivíduos gerados na população

Selecione indivíduos para sobreviver (geração i = i + 1)

Até critério de parada satisfeito

Fim

� Inicialmente escolhe-se uma população inicial, formada por indivíduos criados

por algum procedimento definido pelo projetista do algoritmo e geralmente

dependente da natureza do problema.

� Avalia-se toda a população de indivíduos segundo algum critério, determinado

por uma função que avalia a qualidade do indivíduo (função de aptidão ou

“fitness”);

Page 57: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

56

� Em seguida através do operador de seleção, escolhem-se os indivíduos como

base para a criação de um novo conjunto de possíveis soluções, chamado de

nova “geração”;

� Esta nova geração é obtida aplicando-se sobre os indivíduos selecionados,

operações que misturem características através dos operadores genéticos:

cruzamento e mutação.

O ciclo evolucionário é executado até que um critério de parada seja satisfeito. Esse

critério, de forma semelhante à criação da população, é definido pelo projetista do

algoritmo, ou seja, quando ocorre convergência. Os mais utilizados são: número pré

- determinado de passos ou iterações (repetições), melhoria estagnada e tempo de

execução, que ocorre quando todos os indivíduos tendem a possuir o mesmo

comportamento.

Nos itens a seguir são comentados em maiores detalhes cada componente de um

Algoritmo Genético.

3.3.1 População

A população de um algoritmo genético é o conjunto de representantes do espaço de

busca de indivíduos que estão sendo cogitados como solução e que serão usados

para criar o novo conjunto de indivíduos para análise. O tamanho da população

pode afetar o desempenho global e a eficiência dos algoritmos genéticos. Em geral,

quanto menor a população, maior é a chance de perder a diversidade necessária

Page 58: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

57

para convergir a uma boa solução. Entretanto, dependendo do número de

indivíduos da população, o algoritmo poderá perder grande parte de sua eficiência

pela demora em avaliar a função de aptidão de todo o conjunto a cada iteração,

além de ser necessário trabalhar com maiores recursos computacionais.

� Geração da População Inicial

A população inicial de indivíduos ou cromossomos é na maioria das vezes realizada

de forma aleatória, embora onde existam ocasiões onde é mais apropriada uma

seleção heurística da mesma, introduzindo logo de início, um ou mais indivíduos

“interessantes”, como por exemplo, soluções aproximadas conhecidas contendo

algum tipo de informação prévia. Diversos trabalhos realizados comprovam que a

inicialização, em geral, não é crítica, desde que a população inicial contenha

cromossomos superficialmente variados (GOLDBERG, 1989).

� Indivíduos

O ponto de partida para a utilização de um algoritmo genético como ferramenta para

solução de problemas é a representação destes problemas de maneira que os

algoritmos genéticos possam trabalhar adequadamente sobre eles. Uma das formas

utilizada é representar cada indivíduo como sendo a concatenação de uma

seqüência de atributos como mostrado na figura 3. Os tipos de representação serão

apresentados nas seções seguintes.

Page 59: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

58

A codificação usando o próprio alfabeto do atributo que se quer representar (letras,

códigos, números reais, etc.) para apresentar um individuo também é muito utilizada.

Diversas formas são possíveis, normalmente a forma mais apropriada está

fortemente ligada ao tipo de problema.

33..33..22 AAVVAALLIIAAÇÇÃÃOO DDAA AAPPTTIIDDÃÃOO

Uma das tarefas mais difíceis na modelagem dos algoritmos genéticos é o

desenvolvimento apropriado da função de aptidão, que é responsável pela avaliação

da qualidade de cada indivíduo da população (KNOSALA e WAL, 2001). A

adequação pode ser definida como à propensão de um indivíduo sobreviver e se

reproduzir em um ambiente (BACK e FOGEL 2000).

É essencial que esta função seja muito representativa e diferencie na proporção

correta as más soluções das boas. Se houver pouca precisão na avaliação, uma

ótima solução pode ser posta de lado durante a execução do algoritmo, além de

gastar mais tempo explorando soluções pouco promissoras.

Um método muito utilizado para calcular a adequação é atribuir o valor de função

objetivo. Por exemplo, a figura 6, representa uma população avaliada.

Page 60: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

59

3 2 1 13 7 6 4 10 8 14 5 11 9 12

2 11 13 5 14 6 3 6 12 10 1 9 4 7

. . .

4 12 11 9 10 5 2 8 9 1 4 3 6 14

Figura 6 – População com o valor aptidão

Considerando que o PCV é um problema de minimização, quanto menor o valor da

função objetivo melhor a adequação do indivíduo. Para refletir tal situação, pode-se

considerar, por exemplo, a adequação como sendo o inverso do valor da função

objetivo. Nesse caso os indivíduos com maiores valores de adequação seriam os

mais aptos a sobreviverem.

3.3.3 Seleção

De uma forma geral, os algoritmos genéticos baseiam-se no princípio da

“sobrevivência dos melhores indivíduos”, onde os cromossomos com melhor aptidão

ou adequabilidade são mais prováveis de serem copiados para um novo conjunto,

denominados população temporária, de onde serão aleatoriamente escolhidos para

reprodução. Em contrapartida, os indivíduos com baixa aptidão serão descartados

da população conforme a pressão de seleção do esquema utilizado.

Aptidão

140

160

130

Page 61: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

60

Inúmeros esquemas de seleção já foram propostos e implementados na prática dos

Algoritmos Genéticos, alguns não sendo biologicamente plausíveis (BLICKLE,

1995).

Dada uma população, em que a cada indivíduo foi atribuído um valor de aptidão,

existem vários métodos pra selecionar os indivíduos sobre os quais serão aplicados

os operadores genéticos. Os mais conhecidos métodos de seleção são o da Roleta

e o do Torneio.

� Roleta

Este é o mais comum dos métodos de seleção utilizados, e é também chamado de

“Seleção Proporcional a aptidão”, onde a probabilidade de que um certo indivíduo

seja selecionado é igual à sua aptidão (GOLDBERG, 1989), dividida pela média da

aptidão de toda a população. Segundo afirma Mitchell (1999), isto é equivalente ao

que os biólogos chamam de “Viabilidade de Seleção”.

O método da roleta consiste em dar uma porção de uma “roleta virtual” proporcional

à aptidão, à cada indivíduo da população. Cada indivíduo possui uma chance de ser

escolhido relativa ao seu valor de aptidão. Desta forma, um indivíduo “melhor” tem

maior chance de ser escolhido para sofrer a aplicação dos operadores genéticos.

A Figura 7 exemplifica o procedimento da Roleta para os três cromossomos do PCV

ilustrados na figura 6. Depois de avaliados cada cromossomo possui um valor de

aptidão e terá, de acordo com esse valor, um porção na roleta.

Page 62: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

61

Figura 7 – Fitness dos Cromossomos representados pelo método da roleta

Nesse caso a fatia atribuída a cada indivíduo na roleta será dada por:

Uma vez que todos os indivíduos estão devidamente representados na roleta,

sorteia-se um número de forma aleatória entre 0 e 1. Depois do sorteio, será

selecionado o indivíduo que possuir na sua fatia numérica o número sorteado.

Neste método, um dos problemas encontrado pode ser o tempo de processamento,

já que o método exige duas passagens por todos os indivíduos da população.

30%

33%

37%cromossomo 1

cromossomo 2

cromossomo 3

Valor de aptidão do indivíduo

Valor de aptidão - médio da população ) 1 – (

Page 63: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

62

� Torneio

Segundo Von Zuben (2002), a seleção por torneio é um dos mais refinados

processos de seleção, por permitir ajustar a pressão seletiva.

A seleção é feita em função do número de vitórias de cada indivíduo em q

competições contra oponentes aleatórios da população. A vitória é atribuída àquele

que apresentar maior aptidão, comparado ao método determinístico.

Para propósitos práticos, q ≥ 10 conduz a uma forte pressão seletiva, enquanto que

valores de q entre 3 e 5 levam a uma fraca pressão seletiva. Para q=1, tem-se

essencialmente uma busca aleatória e para q=x, onde x ∈ ℜ, temos simplesmente a

seleção por ordem de aptidão, sem nenhuma aleatoriedade.

De acordo com Blickle et al. (1995), este método de seleção funciona da seguinte

maneira:

Uma certa quantidade de indivíduos t é selecionada aleatoriamente da população e,

posteriormente, o melhor indivíduo deste grupo é copiado para uma população

intermediária. Este procedimento é repetido até que o critério de parada seja

satisfeito.

Normalmente, o torneio ocorre entre dois indivíduos de cada vez, mas uma

generalização deste caso é possível através da inserção de uma variável para

especificar a quantidade t de indivíduos participantes do torneio, que é usualmente

Page 64: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

63

chamada de Tamanho do Torneio. O torneio entre dois indivíduos é comumente

chamado de Torneio Binário.

Dentre suas vantagens citam-se:

1. Não acarreta convergência prematura;

2. Combate à estagnação;

3. Nenhum esforço computacional extra é necessário, tal como ordenamentos;

4. Aptidão explícita é desnecessária;

5. Inspiração biológica do processo.

3.3 Variações de Métodos

Conforme J. Neyman, toda a vez que se emprega matemática com a finalidade de

estudar algum fenômeno deve-se começar por construir um método matemático.

Este método pode ser: determinístico ou, então, probabilístico.

� Método determinístico

Neste método, as condições sob as quais o experimento é executado, determinam o

resultado do experimento. Tome-se, por exemplo, a lei de Ohm, V=I.R. Se R e I

forem conhecidos, então V estará precisamente determinado.

Page 65: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

64

� Método não determinístico ou probabilístico

É um método em que de antemão não é possível explicar ou definir um resultado

particular. Este modelo é especificado através de uma distribuição de probabilidade.

É utilizado quando se tem um grande número de variáveis influenciando o resultado

e estas variáveis não podem se controladas. Toma-se, por exemplo, um lançamento

de um dado onde se tenta prever o número da face que irá sair; a retirada de uma

carta de baralho, etc.

O modelo estocástico é caracterizado como um modelo probabilístico que depende

ou varia com o tempo (www.pucrs.br/famat/viali - acessado em 18 de janeiro de

2006).

33..55 OOPPEERRAADDOORREESS GGEENNÉÉTTIICCOOSS

O princípio básico dos operadores genéticos é transformar a população através de

sucessivas gerações, estendendo a busca até chegar a um resultado satisfatório.

Os operadores genéticos são necessários para que a população se diversifique e

mantenha características de adaptação adquiridas pelas gerações anteriores. Os

operadores de cruzamento e de mutação têm um papel fundamental em um

algoritmo genético.

Page 66: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

65

Um algoritmo genético padrão evolui, em suas sucessivas gerações, mediante o uso

de 2 operadores básicos: cruzamento e mutação (SHAPIRO, 1999).

� Cruzamento (Crossover)

O operador de cruzamento ou operador de recombinação permite a obtenção de

indivíduos filhos mediante a combinação dos cromossomos dos pais.

Uma das principais características dos algoritmos genéticos que os distinguem das

demais técnicas de busca, Tabu, AS, GRASP, Local é o operador de cruzamento

(MITCHELL, 1996). Cruzamento é a troca de segmentos entre "pares" de

cromossomos selecionados, com a finalidade de originar novos indivíduos que

poderão ser incluídos na próxima geração. A idéia central do cruzamento é a

propagação das características dos indivíduos mais aptos da população. O operador

cruzamento é utilizado após o de seleção.

Na reprodução baseada em um ponto de cruzamento (single-point crossover), o

ponto de quebra do cromossomo é escolhido de forma aleatória sobre a longitude da

cadeia que o representa e a partir desse ponto se realiza a troca de material

cromossômico entre os dois indivíduos. Na Figura 8 temos um esquema da

representação desse tipo de cruzamento, utilizando duas soluções do PCV. Foi

escolhido o ponto de cruzamento 13.

Page 67: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

66

3 2 1 13 7 6 4 10 8 14 5 11 9 12

3 2 1 13 7 6 4 10 8 14 5 11 9 14

4 12 11 9 10 5 2 8 9 1 4 3 6 14

Figura 8 – Esquema gráfico do cruzamento de um ponto

O cromossomo gerado na figura 8 possui uma inviabilidade gerada pela repetição do

ponto 14. Cabe ao projetista tratar a inviabilidade ou descartar o cromossomo

gerado. Mecanismos de tratamento de inviabilidade podem ser encontrados em

Goldbarg e Luna (2000).

Na reprodução baseada em dois pontos de cruzamento (two-point crossover),

procede-se de maneira similar ao cruzamento de um ponto, mas a troca de

segmentos é realizada a partir de dois pontos.

Na reprodução baseada em cruzamento uniforme (uniform crossover), cada gene do

descendente é criado através da cópia de um gene dos pais, escolhido de acordo

com uma máscara de cruzamento gerada aleatoriamente. Onde houver 1 na

máscara de cruzamento, o gene correspondente será copiado do primeiro pai e

ponto de cruzamento

Page 68: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

67

onde houver 0 será copiado do segundo. O processo é repetido com os pais

trocados para produzir o segundo descendente. Uma nova máscara de cruzamento

é criada para cada par de pais. A Figura 9 demonstra graficamente o processo,

onde há a repetição dos alelos 3 e 8.

3 2 11 13 7 6 12 10 8 14 5 1 9 4

3 12 11 13 7 6 12 8 8 1 5 3 9 4

4 12 11 9 10 6 2 8 9 1 4 3 5 14

Figura 9 – Esquema gráfico do cruzamento uniforme

� Mutação

A mutação é vista como o operador responsável pela introdução e manutenção da

diversidade genética na população. Ela trabalha alterando arbitrariamente, logo

após o cruzamento, um ou mais componentes de uma estrutura escolhida entre a

descendência, fornecendo dessa forma meios para a introdução de novos elementos

na população. O operador de mutação é aplicado aos indivíduos com uma

probabilidade dada por uma taxa de mutação. A Figura 10 ilustra o processo de

mutação em um indivíduo (HOLLAND, 1975).

Page 69: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

68

3 2 13 5 14 6 3 6 12 10 11 1 9 4

3 2 13 5 14 6 3 6 12 10 11 1 9 4

Figura 10 – Esquema gráfico de ocorrência de mutação

33..55 PPAARRÂÂMMEETTRROOSS GGEENNÉÉTTIICCOOSS

É importante analisar de que maneira alguns parâmetros influenciam o

comportamento dos algoritmos genéticos para que se possa estabelecê-los

conforme as necessidades do problema e dos recursos disponíveis. A seguir, são

listados alguns parâmetros genéticos utilizados freqüentemente:

� Tamanho da População

O tamanho da população determina o número de cromossomos. Com uma

população pequena, o desempenho pode cair, pois deste modo a população fornece

uma pequena cobertura do espaço de busca do problema. Uma grande população

geralmente fornece uma cobertura representativa do domínio do problema, além de

prevenir convergências prematuras (tendência da população a evoluir para uma

solução não ótima devido a existência de um indivíduo com aptidão muito superior

às demais aptidões). No entanto, para se trabalhar com grandes populações, são

cromossomo original

cromossomo mutado

Page 70: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

69

necessários maiores recursos computacionais ou que o algoritmo trabalhe por um

período de tempo muito maior.

� Taxa de Cruzamento

Uma taxa de cruzamento precisa ser especificada para definir com que

probabilidade os cromossomos serão cruzados.

Quanto maior for esta taxa, mais rapidamente novas estruturas serão introduzidas

na população. Mas se esta for muito alta, a maior parte da população será

substituída, e pode ocorrer perda de estruturas de alta aptidão. Com um valor baixo,

o algoritmo pode tornar-se muito lento.

� Taxa de Mutação

A taxa de mutação determina a probabilidade em que uma mutação ocorrerá. Uma

baixa taxa de mutação previne que uma dada posição fique estagnada em um valor.

Com uma taxa muito alta a busca se torna essencialmente aleatória além de

aumentar muito a possibilidade de que uma boa solução seja destruída. A melhor

taxa de mutação é dependente da aplicação, mas, para a maioria dos casos está

entre 0,001 e 0,1(BÄCK, 1996).

Page 71: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

70

33..77 CCOONNSSIIDDEERRAAÇÇÕÕEESS AA RREESSPPEEIITTOO DDAASS DDIIFFIICCUULLDDAADDEESS DDOOSS AALLGGOORRIITTMMOOSS

GGEENNÉÉTTIICCOOSS

Os algoritmos genéticos clássicos são uma abordagem eficiente de solução para

vários problemas combinatórios, especialmente pela capacidade de diversificação,

contudo encontram dificuldades em várias circunstâncias. Os fatores que afetam a

habilidade dos Algoritmos Genéticos para resolver problemas formaram uma área

teórica bastante investigada pela comunidade científica. Uma dessas abordagens

direciona o estudo para as funções de decepção propostas por Goldberg (JONES e

FORREST, 1996). Entretanto, Grefenstette (1993) apresenta um estudo em que

mostra que tais funções não são nem necessárias nem suficientes para justificar os

insucessos dos Algoritmos Genéticos. Uma terceira abordagem direciona essa

dificuldade para o tipo de representação utilizada.

Já Radcliffe e Surry (1995) apresentam um estudo quanto à previsão da

performance dos algoritmos genéticos em função da representação. Para isso,

desenvolveram famílias de operadores que fossem independentes da representação

e, assim, permitissem a formulação dos chamados algoritmos evolucionários formais

independentes de representação. Miller e Goldberg (1995) apresentam um estudo

sobre o efeito dos ruídos nos esquemas de seleção. Os ruídos em um AG são os

fatores que fazem com que não haja uma avaliação acurada da adequação dos

indivíduos.

Jones e Forrest (1996) introduzem uma abordagem de investigação que utiliza uma

medida de dificuldade da busca em função da correlação da distância de

Page 72: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

71

adequação. A distância de adequação é a diferença de adequação em relação ao

ótimo.

Uma outra abordagem desenvolvida por alguns pesquisadores é a investigação

sobre o porquê e como os Algoritmos Genéticos têm sucesso em diversas

aplicações. Esses estudos direcionam sua investigação para a Hipótese dos Blocos

de Montagem (GOLDBERG, 1989) e baseiam-se na Teoria dos Esquemas

(HOLLAND, 1975).

33..88 TTEEOORREEMMAA DDOOSS EESSQQUUEEMMAASS VVEERRSSUUSS BBLLOOCCOOSS CCOONNSSTTRRUUTTOORREESS

Um “Esquema” é um modelo de similaridades que descreve um subconjunto de

listas de caracteres com os mesmos conteúdos em determinadas posições

(GOLDBERG, 1989).

A teoria tradicional dos Algoritmos Genéticos assume que, num nível de descrição

genérica, os algoritmos genéticos funcionam por meio da descoberta, ênfase e

recombinação de bons building blocks (combinações de valores dos genes que

conferem uma maior aptidão aos cromossomos nos quais estão presentes) de

soluções numa forma altamente paralelizada. A idéia é que boas soluções tendem a

ser compostas por bons blocos de montagens construtores.

Já os esquemas definidos por Holland (1975) vieram para formalizar a noção

informal dos blocos construtores. Na verdade, um esquema é um conjunto de

Page 73: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

72

cadeias de bits que podem ser descritos por um modelo formado de “zeros”, “uns” e

“asteriscos”, sendo que os “asteriscos” representam valores quaisquer. Por exemplo,

o esquema H=1****1 representa o conjunto de todos os bit strings que se encaixam

nessa forma (por exemplo 100111 e 110011) são exemplos de H. Diz-se que o

esquema H tem 2 bits definidos (não-asteriscos) ou, equivalentemente, é de ordem

2. Seu comprimento (a distância entre os bits definidos mais externos) é 5.

É importante observar que o símbolo “*” é somente um meta-símbolo que representa

outros símbolos, e que jamais será processado explicitamente pelo Algoritmo

Genético, servindo apenas como notação para a demonstração de todas as

similaridades possíveis de listas de caracteres de um tamanho e alfabeto

particulares. (GOLDBERG, 1989).

Baseado nesses conceitos, Holland desenvolve o Teorema dos Esquemas (schema

Theorem), que descreve o crescimento de um schema de uma geração para a

seguinte. O teorema é freqüentemente interpretado como: cromossomos com

schemas curtos e de baixa ordem, cujas aptidões ficam acima da média receberão

um número exponencialmente crescente de ocorrências ao longo do tempo (o

tamanho desses schemas também cresce). E, analogicamente, cromossomos com

schemas cujas aptidões ficam abaixo da média tenderão a ocorrer menos

freqüentemente.

Essa característica do Algoritmo Genético tem sido descrita por ele como

paralelismo intrínseco, no sentido de que o algoritmo está manipulando um grande

número de schemas em paralelo.

Page 74: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

73

A análise de Holland sugere que a seleção direciona crescentemente a busca em

subconjuntos do espaço cuja aptidão estimada se situa acima da média. O

mecanismo de crossover junta blocos de montagens construtores de alta aptidão em

um mesmo cromossomo e cria, assim, cromossomos com aptidões cada vez

melhores. Por outro lado, a mutação garante que a diversidade genética não seja

perdida irremediavelmente.

Holland formula a adaptação como uma tensão entre “exploração” (a busca por

adaptações novas e úteis) e “explotação” (a utilização e propagação dessas

adaptações).

A tensão surge quando qualquer movimento no sentido da exploração – teste de

schemas previamente desconhecidos ou de schemas cujas instâncias anteriores

apresentaram baixa aptidão – prejudica a explotação de schemas já testados e

úteis. Em qualquer sistema (por exemplo, uma população de organismos) que tenha

de enfrentar ambientes com algum grau de imprevisibilidade, um balanço ótimo

entre exploração e explotação deve ser encontrado. O sistema deve continuar

experimentando novas possibilidades (mais ainda, deveria estar robustamente

adaptado perante situações novas), mas deve também incorporar e usar

continuamente as experiências passadas como guia para o comportamento futuro.

Page 75: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

74

� Blocos Construtores

De acordo com Goldberg (1989) a performance dos Algoritmos Genéticos é

compreendida a partir do Teorema dos Esquemas, conforme apresentado na seção

anterior. Esquemas curtos, de pequena ordem e com alto valor de aptidão são

gerados, recombinados e novamente gerados com o intuito de formar indivíduos

com um alto valor de aptidão.

De certa forma, através destes esquemas em particular, foi possível reduzir a

complexidade anteriormente existente, e ao invés de construir indivíduos de alta

performance através da tentativa de todas as combinações imagináveis, estes são

construídos a partir das melhores soluções parciais de gerações anteriores.

Devido ao importante papel realizado pelos esquemas curtos, de pequena ordem e

alta adaptabilidade no procedimento executado pelos Algoritmos Genéticos, é que

estes passaram a se chamar “Blocos Construtores”. Sendo assim, Borges (2002) os

define:

Os Blocos Construtores são esquemas com alto valor de

fitness e de pequeno comprimento definidor que se propagam

de geração para geração, produzindo um número

exponencialmente crescente de representantes entre os

cromossomos de melhor aptidão observada.

Page 76: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

75

Certamente, uma grande experiência foi adquirida durante anos de estudos, que

suportam tal alegação em uma variedade de classes de problemas. Tal experiência

teve início na década de 1960, através dos trabalhos pioneiros de Bagley (1967) e

Rosenberg (1967) e continuou através das muitas aplicações que foram

desenvolvidas e dedicadas aos Algoritmos Genéticos.

Bethke (1981) usando as Funções de Walsh (GOLDBERG, 1989) e uma hábil

transformação dos esquemas, criou um método analítico para determinar os valores

médios de aptidão dos esquemas através dos coeficientes de Walsh. Este método

possibilita identificar quando, dada uma função e codificações particulares, os blocos

construtores combinados formarão blocos ótimos ou próximos de ótimo.

33..99 AALLGGOORRIITTMMOO GGEENNÉÉTTIICCOO PPAARRAA OOTTIIMMIIZZAAÇÇÃÃOO MMUULLTTIIOOBBJJEETTIIVVOO

Muitos problemas do mundo real apresentam uma coleção de objetivos a serem

otimizados que são na maioria das vezes conflitantes entre si, ou seja, a melhoria de

algum(ns) objetivo(s) causa(m) conseqüentemente a deterioração de outro(s).

Diferentemente das situações em que há problemas com objetivo único, em que a

solução ótima é obtida através da simples maximização (ou minimização) de uma

função objetivo de variáveis de decisão sujeitas a restrições, a análise multiobjetivo

seleciona a solução de melhor compromisso ou, numa abordagem mais detalhada e

segura, a solução mais robusta (considerando-se a incerteza e a subjetividade

inerentes ao processo decisório), em um cenário em que há múltiplos objetivos.

Page 77: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

76

A primeira implementação de um MOEA (Multiobjetive Evaluated Algorithm –

Algoritmo Evolucionário Multiobjetivo) foi proposta por Schaffer (1985). O modelo

sugerido foi denominado VEGA (Vector Evaluated Genetic Algorithm).

Goldberg (1989) criou um procedimento para ordenação de soluções baseado no

conceito de dominância. Este método fornece um valor de aptidão para uma

solução i proporcional ao número de soluções que i domina.

3.9.1 Alguns Algoritmos Evolucionários Multi-Objetivos

Nos últimos anos muitos pesquisadores têm modificado as idéias iniciais propostas

por Goldberg (1989) em seu livro para tratamento de problemas multi-objetivos, bem

como aplicado as implementações desenvolvidas em problemas mais complexos do

mundo real. Assim, atualmente, existem inúmeras implementações e, por este

motivo, a enumeração de todas é uma tarefa impossível, logo, serão enumeradas e

posteriormente apresentadas às características fundamentais apenas das principais

correntes e/ou implementações no campo dos algoritmos evolucionários multi-

objetivos (ZITZLER,THIELE, 1998), como mostra o quadro 4 abaixo:

Page 78: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

77

QUADRO 4

Algoritmos Multi-objeitvos

ALGORITMOS MULTI-OBJETIVOS AUTORES

VEGA Schaffer (1984)

Agregação dos objetivos por pesos variáveis

Hajela e Lin (1992)

MOGA Fonseca e Fleming (1993)

Npga Horn e Nafpliotis

Nsga Srinivas e Déb (1994)

A diferença fundamental dos MOEA em relação aos Algoritmos Evolutivos

tradicionais é o operador de seleção, dado que a comparação entre duas soluções

deve realizar-se conforme o conceito de dominância de Pareto.

33..1100 AAJJUUSSTTEE DDEE PPAARRÂÂMMEETTRROOSS

A técnica de adaptação consiste em não tomar valores fixos para os parâmetros de

configuração dos algoritmos genéticos. Ou seja, pode-se escolher funções mais

elaboradas que façam estes parâmetros variarem ao longo do processo evolutivo

e/ou de acordo com critérios pré-definidos.

As principais finalidades da adaptação são:

� Melhorar a eficiência dos algoritmos;

� Tornar os algoritmos mais robustos às aplicações a serem tratadas.

Page 79: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

78

A adaptação usualmente é feita de maneira estática, isto é, são escolhidos

parâmetros, funções e/ou operadores no início do algoritmo e levados até o fim da

execução. Todavia, recentemente uma maior atenção vem sendo dada à adaptação

dinâmica, que permite que dentro do processo evolutivo o próprio algoritmo

selecione os parâmetros de configuração e/ou os operadores genéticos a serem

utilizados, conforme seus desempenhos.

33.. 1111 AAPPLLIICCAAÇÇÕÕEESS

As aplicações dos algoritmos genéticos são inúmeras, todas relacionadas de uma

forma ou de outra a uma otimização que se procura obter uma solução global. .

Os Algoritmos Genéticos possuem uma larga aplicação em muitas áreas científicas,

entre as quais podem ser destacadas:

� Síntese de circuitos analógicos: para uma certa entrada e uma saída

desejada, por exemplo, tensão, o Algoritmo Genético gera a topologia, o tipo

e o valor dos componentes do circuito;

� Síntese de protocolos: determinação de quais funções do protocolo devem

ser implementadas em hardware e quais devem ser implementadas em

software para que um certo desempenho seja alcançado;

Page 80: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

79

� Programação Genética: gera a listagem de um programa, numa determinada

linguagem especificada, para que um determinado conjunto de dados de

entrada forneça uma saída desejada;

� Gerenciamento de redes: supervisão do tráfego nos links e das filas nos

"buffers" de roteadores para descobrir rotas ótimas e para reconfigurar as

rotas existentes no caso de falha de algum link;

� Otimização evolutiva multicritério: otimização de funções com múltiplos

objetivos que sejam conflitantes;

� Problemas de otimização complexos: problemas com muitas variáveis e

espaços de soluções de dimensões elevadas;

� Ciências biológicas: modela processos biológicos para o entendimento do

comportamento de estruturas genéticas.

33..1111..11 AAGGSS AAPPLLIICCAADDOOSS AAOO PPCCVV

Potvin (1996) faz uma relação entre os componentes do AG e o problema. Ele

descreve as representações Ordinal, de Caminho e de Adjacência e vários

operadores de crossover e de mutação, cada um desenvolvido para preservar uma

certa característica das soluções, como posição absoluta dos pontos em uma rota,

posição relativa entre os pontos, etc. Potvin conclui que a representação e os

Page 81: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

80

operadores que lidam com a adjacência entre os pontos da rota são os mais

adequados para o PCV e destaca a importância do uso de mutação e o potencial de

paralelização do processo.

Neto (2000) faz uma revisão bibliográfica sobre AG e descreve possibilidades de

representação (binária, adjacência, ordinal e por caminho) e operadores de

crossover, mostrando uma tabela de comparação com resultados encontrados na

literatura. Um sistema informático foi desenvolvido para testar o desempenho de

vários operadores e parâmetros, mostrando os resultados obtidos. Neto chega à

conclusão que a representação por caminho apresenta melhores resultados para

grandes populações e várias gerações, e ressalta a importância da escolha da

representação e dos operadores e da utilização de modelos híbridos com outras

técnicas.

Chatterjee et al (1996) também mostram componentes do AG e aspectos do PCV e

propõem um mecanismo de reprodução assexuada que simplifica muito a

codificação do AG. O mecanismo corta o cromossomo em 2, 3 ou 4 pontos e

rearranja as sub-cadeias. Refinamentos feitos no mecanismo e a introdução de um

esquema de semeadura da população inicial diminuiram o tempo computacional

pela metade, segundo os autores. Os autores concluem que o mecanismo de

reprodução assexuada é uma boa solução para ser utilizada no PCV e os

refinamentos feitos (população semeada e variação no número de cortes)

melhoraram ainda mais os resultados obtidos.

Page 82: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

81

Schmitt e Amini (1998) se propõem a desenvolver um experimento estatístico e um

sistema dinamicamente configurável para testar vários parâmetros e componentes

de AG com o objetivo de resolver conflitos de projeto e configuração. Os autores

mostram os resultados a que chegaram e fazem várias observações interessantes

quanto à qualidade das soluções e ao tempo computacional de acordo com as

configurações adotadas. Algumas conclusões foram a dificuldade de estabelecer um

padrão para o projeto de AG e o potencial de hibridização com outras heurísticas e

de paralelização.

Poon e Carter (1995) comparam vários operadores tradicionais de crossover para

representações descritas (como por permutação, lista de adjacência, matriz, dentre

outras), dois novos operadores e uma nova formulação mais rápida de um operador

previamente publicado. Os dois novos operadores são os TBX (Tie-Breaking

Crossover) 1 e 2, utilizados na representação de Lista de Posição. O Crossover de

União da representação de Permutação é modificado para um operador mais rápido.

Os resultados de testes com os operadores são mostrados junto com detalhes de

implementação. Poon e Carter concluem que é importante usar informações

adicionais que se tenham a respeito do problema para diminuir o espaço de busca

e/ou incorporá-las ao crossover.

33..1111..22 OOUUTTRRAASS AAPPLLIICCAAÇÇÕÕEESS

Ressaltando a importância prática dessa abordagem para a solução de problemas

nas mais diversas áreas, transcreve-se na tabela 2 parte do resumo de aplicações

constantes de Goldbarg e Luna (2005) e outras mais recentes.

Page 83: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

82

QUADRO 5

Aplicações dos Algoritmos Genéticos 1985 – 2003

Ano Autores Abordando 1990 Karr e Goldberg Aplicados à separação de minério 1991 Davidor Aplicados à robótica 1991 Caldwell e Johnston Aplicados na identificação de rostos humanos 1991 Gibsone Byrne Aplicados à composição musical 1996 Arslan et al. Otimização de circuitos VSLI 1996 Notredame e Higgins Solução do alinhamento genético 1996 Jakobs Solução de acomodação de polígonos 1996 Anderson e Gerbert Projeto de asas de aviões 1997 Zhou e Gen Solução de árvore geradora k-restrita 1997 Ingleston e Smith Auxílio ao combate aéreo 1998 Kim et al. Equilíbrio de linhas de montagem 1998 Pierrot e Hinterding Solução de programação inteira mista 1998 Nayebzadeh et al. Determinação de arritmia fetal 1999 Azadivar e Tompkins Simulação de processo de otimização 2000 Dellaert et al. Otimização de lotes de produção 2001 Preston e Kozan Distribuição de containers em portos 2001 Vico et al. Planejamento de cirurgia 2002 Gantovnik et al Otimização de laminados 2002 Ray e Mahajan Configuração ótima de sensores 2002 Lambert Desmontagem de equipamento eletrônico 2002 Sato et al. Projeto de arquitetura 2002 Carter e Ragsdale Planejamento de jornais 2002 Aytug e Saydam Otimização de problema de localização 2003 Hageman et al. Tabu na otimização de pintura 2003 Zhou et al . Planejamento de alocação bicritério 2003 Hassini e Vickson Otimização de alocação carrocel 2003 Valdés et al. Otimização térmica de turbinas de gás 2003 Topcuoglua et al. Localização de roteadores de redes 2003 Park et al. Solução do planejamento de tarefas 2003 Ho e Ji Otimização de chips eletrônicos

Fonte: adaptada de Goldbarg e Luna, 2005

Page 84: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

83

QUANDRO 6

Aplicações dos algarismos Genéticos 2004 - 2005

Ano Autores Abordando 2004 Lim et al. Otimização da mistura para concreto 2004 Liew Otimização de problemas geométricos 2004 Chung e Jung Otimização de acessórios de segurança 2004 Kasprzyk e Jaskua Híbridos (Simplex) para análise química 2004 Mohamed Jenkins Configuração de membranas 2004 Roychowdhury Diagnóstico de doenças 2004 Fühner e Jung Otimização do crescimento cristalino 2004 Kulkarni et al. Otimização micro-estrutural de ligas 2004 Ozturk et al. Estimação da “exergy” de residências 2004 Cordoba et al. Otimização de sistemas contra fogo 2004 Aydin e Yildirim Controle de um sistema laser 2004 Ge e Chen Controle de espaçonaves 2004 Shin et al. Re-configuração de redes de energia 2004 Shokooh-Saremi et al. Otimização de polarizadores 2005 Cartel MTSP 2005 Arthur et al O problema Multiple TSP 2005 Lawrence et al Genéticos para PCV

Fonte: adaptada de Goldbarg e Luna, 2005

33..1122 HHIIBBRRIIDDIIZZAAÇÇÃÃOO

Uma alternativa para melhorar o funcionamento dos Algoritmos Genéticos é a

hibridização (YANG e ELDRED, 1998). É possível acoplar-se aos Algoritmos

Genéticos, por exemplo, qualquer outro método matemático para efetuar uma busca

local mais agressiva. Esta alternativa híbrida resultante apresenta a capacidade

evolucionária de uma grande exploração global da região viável aliada a uma boa

eficiência nas buscas locais.

A técnica de hibridização resulta na integração de uma boa maneira convencional de

resolver um problema aos conceitos usuais de Algoritmos Genéticos. A hibridização

Page 85: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

84

agrega a representação usual de dados no domínio original, bem como as técnicas

de otimização já existentes. Isto permite a incorporação de heurísticas otimizadoras

ao conjunto de operadores genéticos (recombinação e mutação) que passam,

portanto, a ser dependentes do domínio. Nesse sentido, o algoritmo genético passa

a ser muito mais uma filosofia de otimização do que um método pronto para

utilização.

No capítulo seguinte, Moscato (1989) descreve um novo algoritmo chamado

memético, definindo limites e diferenças com o genético através do uso da busca

local.

Page 86: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

85

44 AALLGGOORRIITTMMOOSS MMEEMMÉÉTTIICCOOSS

No campo da computação evolucionária, o refinamento do conhecimento pode ser

incorporado como uma etapa de apoio ao processo evolutivo. O trabalho de Moscato

(1989) categorizou e descreveu uma nova classe de algoritmos evolutivos

denominados de Algoritmos Meméticos (AMs).

Segundo Moscato (1989), AM, é uma definição mais apropriada para algoritmo

genético híbrido, pois o termo híbrido tira o algoritmo genético de suas raízes da

biologia. Primeiro por causa de sua representação que na maioria dos casos envolve

inteiros, reais e também binários. E segundo, pelo uso de heurísticas que exploram

o espaço de busca através dos comportamentos dos indivíduos.

Em alguns trabalhos, AMs são definidos como algoritmos evolucionários que fazem

uso de busca local para aperfeiçoar os cromossomos (RADCLIFFE e SURRY,

1994). De fato, o objetivo dessa classe de algoritmos é combinar as habilidades dos

operadores evolucionários em determinar boas regiões de busca (diversificação)

Page 87: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

86

com as da busca local que se mostra eficiente na determinação de soluções locais

(intensificação) (MERZ e FREISLEBEN, 1999). Na verdade, esses algoritmos

podem incorporar, via de regra, um conceito de adaptação altamente especializada

para um certo cenário, que une os requisitos da adaptação ontogênica (indivíduo no

rumo da otimização de seu potencial genético) e das possibilidades computacionais.

Trata-se de uma adaptação “artificial” promovida no genótipo por um processo

planejado e diferente do processo reprodutivo clássico.

O sucesso dos AMs deve-se à junção das habilidades dos AGs com as habilidades

da busca local, combinando a adaptação evolucionária da população com os

conhecimentos adquiridos pelo indivíduo durante sua existência.

Pode-se diferenciar os AGs dos AMs dizendo que o primeiro tenta imitar o processo

da evolução biológica e o segundo tenta imitar a evolução cultural. Enquanto que

nos AMs ocorre uma evolução cultural, onde a informação é transmitida pela

comunicação entre os indivíduos, nos AGs a evolução se dá por mecanismos de

recombinação, cruzamento e mutação (GARCIA e t al., 2001).

Como os procedimentos de refinamentos dos indivíduos são usados depois da

aplicação dos operadores genéticos, isso implica dizer que os AMs são extensões

dos AGs que aplicam a busca local separadamente, para refinar a busca nos espaço

de soluções. Também são utilizados os conceitos de cooperação e competição

onde o primeiro denota os processos e troca de informações entre os indivíduos e o

segundo denota os processos de seleção em que indivíduos competem entre si

(MOSCATO, 1989).

Page 88: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

87

44..11 OOSS MMEEMMEESS

O termo “Algoritmo Memético” deve-se ao uso do conceito de memes como uma

unidade de informação que se propaga como a troca de idéias entre pessoas.

Segundo Dawkins (1976) um meme é definido como sendo uma informação que é

transmitida como uma característica cultural. Desta forma, ele pode ser entendido

como idéia ou experiência propagada como uma cultura.

Um meme, como uma unidade de transmissão de cultura, é replicado por imitação

(MOSCATO e NORMAN, 1992), mas antes de ser transmitido, este é adaptado à

pessoa que o transmite (como essa pessoa pensa, entende e processa o meme),

enquanto que os genes (no caso dos AGs) são transmitidos na íntegra. Eles

também comparam este pensamento com um refinamento local. Desta forma, o uso

na busca local permite que indivíduos evoluam de forma autônoma para ótimos

locais sem sofrer mutações e/ou cruzamentos. A evolução destes indivíduos dar-se-

á pelo acréscimo de memes.

No caso dos AMs, os memes referem-se a estratégias (refinamento local,

perturbação ou métodos construtivos) para melhoria dos indivíduos (KRASNOGOR e

SMITH, 2001).

Fazendo uma analogia à transmissão genética, a transmissão cultural corresponde

ao fluxo de informação num processo evolucionário e os genes correspondem às

partes de um cromossomo que servem como uma unidade viável de seleção natural.

Page 89: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

88

44..22 IIDDÉÉIIAA GGEERRAALL

O suporte da proposta memética computacional é a criação de um fluxo de

informações para guiar o processo de busca evolucionária. A metáfora também

pode ser interpretada como uma tentativa de concretizar no contexto genético a

proposta Lamarckiana, que por isso se apóia na Memética. O chamado aprendizado

Lamarckiano (WHITLEY, 1994) força o genótipo a refletir os resultados de alguma

forma de melhoria. A lógica dessa aprendizagem é forçar a herança de

características adquiridas ou aprendidas que se mostrem adequadas ao meio

ambiente. O indivíduo assim aperfeiçoado se integra na população normal

competindo por oportunidade de recombinação. Segundo alguns autores o

aprendizado Lamarckiano inibe a diversidade da população, porque ao mudar as

informações genéticas dos cromossomos, promove-se uma perda nos esquemas

herdados, alterando a informação contida na população ( HOUCK et. al. 1996 e

1997).

No caso dos algoritmos denominados meméticos, isso não ocorre quando o

aperfeiçoamento do cromossomo é baseado apenas em um procedimento de busca

local fortemente associado à informação genética já existente no cromossomo. A

busca local parte das informações codificadas no genótipo (informações endógenas)

e claramente se direciona a uma varredura de âmbito restrito em um certo cenário,

especialmente em se falando de problemas combinatórios. As regras de busca

local, eventualmente, podem ser até semelhantes às que são utilizadas para compor

a população inicial de algumas propostas de algoritmos genéticos, variando apenas

na sua intensidade de aplicação (MOSCATO, 1989).

Page 90: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

89

O verdadeiro elemento memético surge dentro da possibilidade do uso de

informações decorrentes de uma análise ambiental e de outros memes (idéias

associadas ao problema) importadas do meio ambiente do problema ou de seu

método de solução. Um exemplo disso é a chamada Fitness Distance Analysis –

FDA – (KAUFFMAN, 1993) que desenvolve a análise marcando as adequações

associadas aos N indivíduos de uma população em comparação a sua distância da

solução ótima (assumindo-se que exista uma medida adequada para avaliar a

distância entre soluções). Mais recentemente alguns trabalhos têm sugerido o uso

de informações decorrentes de interações cooperativas e competitivas entre os

indivíduos da população. Um exemplo dessa tendência pode ser encontrado no

trabalho de Moscato e Norman (1992), onde é proposto um modelo em que os

indivíduos da população alternam períodos de desenvolvimento livre e períodos de

interação.

4.3 PSEUDO-CÓDIGO

Segundo Moscato (2001) a estrutura básica de um AM é muito parecida com a dos

AG´s. A seguir veremos um modelo básico dos AM´s.

Page 91: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

90

QUADRO 7

Pseudo-código do Algoritmo Memético

Início

Gerar População Inicial

Otimizar População (realizar busca local)

Avaliar População

Enquanto (ao atender as condições de parada) Fazer

Início

Seleciona os pais

Aplicar operadores de recombinação e mutação

Otimizar População (realizar busca local)

Avaliar População

Fim

Fim

Existem várias etapas que são bastante semelhantes entre AM´s e AG´s, tais como:

• População inicial: um conjunto de agentes representando as soluções atuais

dentro do espaço de soluções do problema;

• Geração: a população num dado instante do tempo;

• Função de avaliação: mede a qualidade da solução representada por cada

agente;

• Recombinação: troca de memes entre dois agentes;

• Mutação: mudança aleatória no valor dos memes para garantir a diversidade

de soluções. É Intensificada nas crises de diversidade quando ocorre uma

estagnação da população.

Page 92: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

91

Supostamente os algoritmos meméticos são de implementação mais complexa do

que os algoritmos genéticos clássicos, uma vez que trabalham com um algoritmo

genético clássico em seu substrato, acrescentando ao código computacional

procedimentos normalmente de busca local.

Observe-se, contudo, que o desenho de algoritmos eficientes não pode ser

considerada uma tarefa fácil, em nenhuma hipótese. O caso é que os algoritmos

meméticos mostram um melhor potencial para equilibrar os esforços de

intensificação versos os de diversificação despendidos pela busca estocástica do

algoritmo genético de substrato. Experimentos computacionais de inúmeros

pesquisadores comprovam a vantagem de se embutir no processo clássico de

evolução uma busca local bem projetada (GOLDBARG e LUNA, 2005).

A figura 11 ilustra um procedimento de busca. É realizado um procedimento de

troca, posição a posição, até que uma melhoria seja encontrada ou 30% do

cromossomo seja examinado sem sucesso. Trata-se de um procedimento 2-trocas.

A cada troca realizada o cromossomo é novamente avaliado.

3 2 13 5 14 6 3 6 12 10 11 1 9 4

2 3 13 5 14 6 3 6 12 10 11 1 9 4

Figura 11 – Procedimento de busca local

cromossomo original

cromossomo após a primeira

troca

Page 93: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

92

4.4 APLICAÇÕES

Os algoritmos meméticos têm sido amplamente estudados e aplicados em vários

problemas de otimização encontrados na literatura, tais como: designação

quadrática (MERZ; FREISLEBEN, 1997), seqüenciamento em máquinas paralelas

(CHENG; GEN, 1997), caixeiro viajante (MOSCATO; NORMAN, 1992),

seqüenciamento em máquinas (MENDES et al. 2001) entre outros.

AAMM PPAARRAA OO PPCCVV

Diversos MAs têm sido propostos para resolver o PCV. Baseado na análise de

resultados computacionais que utilizam esta técnica, pode-se dizer que um “bom”

AM deve conter algumas características: i) operadores de recombinação e mutação

apropriados e robustos; ii) um eficiente e rápido operador de busca local; iii) uma

população estruturada hierarquicamente; iv) estruturas de dados e mecanismos de

codificação apropriados. O primeiro é obviamente inerente a qualquer algoritmo

genético, enquanto o segundo é crucial para os AMs, devido a 85% - 95% do tempo

de CPU ser gasto, geralmente, com o procedimento de busca local. Muitos

experimentos na literatura têm mostrado que a adoção de estruturas nas quais os

agentes se relacionam conforme uma estrutura hierárquica, provaram ser mais

eficazes quando comparados às implementações não estruturadas (MOSCATO;

NORMAN, 1992)

O algoritmo memético proposto por Freisleben e Merz (1996), denomidado GLS

(Genetic Local Search- Busca Local Genetica) introduz um novo operador de

Page 94: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

93

recombinação, chamado de DPX (Distance Preserving Crossover). Neste algoritmo é

usada uma variação da heurística de Lin-Kernighan como operador de busca local,

testando instâncias do caso simétrico, e o operador de busca local fast-3-Opt,

testando instâncias do caso assimétrico,. Em outro artigos, estes resultados foram

melhorados, adotando uma serie de mecanismos de implementação mais

sofisticados que melhoraram a performance do método ( MERZ; FREISLEBEN,

1997).

O quadro 8 apresenta uma relação ressaltando outras aplicações dessa abordagem

(GOLDBARG; LUNA 2005). Acrescida de outras mais recentes.

QUADRO 8 Aplicações Praticas dos Algoritmos Meméticos

Ano Autores Abordando 1990 Ulder et al. Solução do PCV 1992 Moscato e Norman Solução do PCV 1997 Cotta e Troya Problema da mochila 1997 Dengiz et al. Confiabilidade em redes 1998 Charon e Hudry Na solução de implicações lógicas 1998 Morris et al. Modelagem molecular 1999 Burke e Smith Problema de plano de manutenção 1999 Tesfaldet e

Hermosilla Solução do PCV

2000 Knowles e Corne Otimização multi-objetivo 2001 Burke et al Planejamento do trabalho de enfermagem 2002 Lim e Yuan Solução do quadrático de alocação 2002 Kersting et al. Solução do problema de conectividade 2002 Velenzuela e Smith Aplicação ao setor de distribuição de energia 2003 Quintero e Pierre Designação de células em redes móveis 2003 Ljubic e Raidl Algoritmo em grafos 2004 Lima et al. Roteamento de veículos com frota

heterogenia 2004 Krasnogor e

Gustafson, Experimentação de “self-generation”

2004 Berreta e Rodrigues Otimização de lotes de produção Fonte: adaptada de Goldbarg e Luna, 2005

Page 95: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

94

55 AALLGGOORRIITTMMOOSS CCUULLTTUURRAAIISS

Do mesmo modo que os Algoritmos Meméticos, os Algoritmos Culturais (ACs),

Reynolds (1994), foram desenvolvidos como um complemento à metáfora usada nos

algoritmos genéticos, que haviam se concentrado nos conceitos genéticos e seleção

natural (COELLO e BECERRA, 2002).

Os ACs são baseados na noção de que em sociedade avançadas o

desenvolvimento do indivíduo pode ser realizado tanto por seleção natural como

regras de seleção cultural (GOLDBARG e LUNA, 2005).

Muitos pesquisadores têm sugerido que a “cultura” pode ser codificada e transmitida

entre as populações de indivíduos. De fato, esses algoritmos estão baseados nas

teorias de alguns sociólogos e arqueólogos, que tratam de modelar a evolução

cultural (COELLO e BECERRA, 2002).

Page 96: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

95

Cultura, no sentido dos algoritmos culturais, é vista como o conjunto de informações

acumuladas pela experiência da sociedade de indivíduos. Os algoritmos culturais

propõem utilizar o domínio do conhecimento contido na “cultura” para guiar sua

busca estocástica (GOLDBARG e LUNA, 2005).

Com essa idéia, desenvolveu-se um módulo computacional, no qual, a evolução da

cultura é vista como um processo de herança dupla que opera com dois níveis: o

nível micro-evolutivo, que consiste no material genético herdado por pais e seus

descendentes e o nível macro-evolutivo, que é o conhecimento adquirido pelos

indivíduos através de gerações, e que, uma vez codificado e armazenado, serve

para guiar o comportamento dos indivíduos que pertencem a uma população

(RENFREW e DURHAM, 1994).

�� NNÍÍVVEELL MMIICCRROO--EEVVOOLLUUTTIIVVOO

Os indivíduos podem ser descritos por características (traços) e comportamentos

que podem ser ou não aceitos “socialmente”, para um espaço de população. As

características podem ser modificadas e transmitidas de geração para geração

inspirando operadores baseados em modelos sociológicos, por exemplo,

cruzamento e mutação.

� Macro-evolutivo

As experiências dos indivíduos são coletadas, analisadas e especializadas para um

espaço de crença. O espaço de crença pode ser visto como um banco de

Page 97: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

96

características que refletem as experiências dos indivíduos envolvidos. Em

conseqüência disso, as informações de um espaço de crença poderão servir para

guiar as ações das futuras populações e seus indivíduos (CHUNG e REYNOLDS,

1996).

A cultura pode ser vista como um conjunto de fenômenos ideológicos comparados

com uma população, por meio dos quais um indivíduo pode interpretar suas

experiências e decidir seu comportamento. Em outros modelos observa-se muito

claramente a parte do sistema que é comparada pela população: o conhecimento,

adquirido por membros da sociedade, mas codificado de tal forma que todos podem

ter acesso. De maneira igual se distingue a parte do sistema que é individual: a

interpretação desse conhecimento codificado em forma de um conjunto de símbolos,

e os comportamentos que traz como conseqüência esta assimilação; também a

parte individual inclui as experiências vividas e a forma que esta pode contribuir com

algo de conhecimento.

O fenômeno de herança em dobro nos algoritmos culturais é uma tentativa capitada

por Reynolds (1994). O objetivo é incrementar as taxas de aprendizagem a

convergência, e dessa maneira, que o sistema responda melhor a um grande

número de problemas (FRANKLIN e BERGERMAN, 2000).

Os algoritmos culturais operam em 2 espaços, como mostra a figura 12. Primeiro, o

espaço da população, como em todos os métodos de computação evolutiva, onde

se tem um conjunto de indivíduos. Cada indivíduo tem um conjunto de

características independentes dos outros e com essas possibilidades determina sua

Page 98: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

97

“fitness”. Através do tempo, tais indivíduos podem ser substituídos por alguns de

seus descendentes, obtidos a partir de um conjunto de operadores aplicados na

população.

Figura 12 - Estrutura do Algoritmo Cultural

O segundo espaço é das crenças, onde se armazenam os conhecimentos que são

adquiridos pelos indivíduos em gerações anteriores. A informação contida neste

espaço deve ser acessada por qualquer indivíduo, que pode utilizá-la para modificar

seu comportamento.

O Espaço de crença representa a influência que está sendo adquirida pela

população durante o processo de evolução.

Espaço de Crença Herança

Herda

Espaço da População

Aceita Influência Protocolo de Comunicação

Protocolo de Comunicação

Desenvolve Avalia

Page 99: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

98

Para unir os espaços se estabelece um protocolo de comunicação que dita regras

do tipo de informação que deve ser trocada entre os espaços. O protocolo de

comunicação é usado para determinar a interação entre a população e o espaço de

crença. O protocolo determina o conjunto de indivíduos aceitos e aptos para

atualizar o espaço de crença. Da mesma maneira, o protocolo determina como o

espaço de crença dará impacto e adaptação aos indivíduos da população.

A figura 13 esclarece que a função do processo cultural é criar um viés “positivo” na

busca desenvolvida pelo processo clássico. Uma “crença” é uma informação de

natureza não genética sobre como desenvolver uma boa evolução genética.

Basicamente existe um algoritmo genético sendo guiado por um nível de decisão

denominado “cultural”.

Modificação

de

Reprodução

Função de

Desempenho

Conhecimento

da busca

Guiamento

Viés

Mecanismo de Busca

Base de Conhecimento

Figura 13: Direcionamento da Busca através de uma Base de Conhecimento

O exemplo de uma crença para o Caixeiro Viajante pode ser a exclusão de certas

cadeias. O conhecimento que essa cadeia é indesejável cria o viés de não aceitar

sua formação por ocasião da reprodução ou mutação. O conhecimento cultural

Page 100: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

99

também pode ser um elemento de avaliação dos mecanismos de busca. Se houver

mais de um operador de cruzamento disponível, a base de conhecimento poderá ser

capaz de avaliar seus desempenhos relativos e sugerir quando empregá-los.

O Algoritmo Cultural pode ser visto como um sistema de herança dupla, no qual

visualiza uma evolução com o decorrer da geração tanto na população, quanto no

espaço de crença (CHUNG e REYNOLDS, 1996).

55..11 PPSSEEUUDDOO--CCÓÓDDIIGGOO DDEE UUMM AALLGGOORRIITTMMOO CCUULLTTUURRAALL

O pseudo-algoritmo básico para a metaheurística do Algoritmo Cultural é descrito no

quadro a seguir.

Page 101: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

100

QUADRO 9

Pseudo-código do Algoritmo Cultural

Início

g = 0

Inicializar População (Pg)

Inicializar Espaço de Crença (Bg)

Enquanto (o algoritmo não converge) faça

Avaliar (Pg)

Desenvolver a população (Pg)

Comunicar (Pg, Bg)

Ajustar crença (Bg)

Comunicar (Bg, Pg)

g=g+1

Selecionar nova população (Pg)

Fim-enquanto

Fim

Primeiramente, inicia-se com uma população e em seguida o espaço de crença.

Enquanto o algoritmo não converge, é através da função avaliar, que os indivíduos

são seqüenciados de acordo com sua aptidão. A informação da avaliação é uma

medida para verificar o desempenho e experiência de cada indivíduo de acordo com

a função objetivo. Em seguida, a função comunicar determina quais indivíduos da

população atual podem ser aceitos para influenciar o espaço de crença. Assim, as

experiências desses indivíduos selecionados são unidas e ajustadas com a de

outros indivíduos, a fim de formar a crença do grupo, com a função ajustar. Esse

grupo de crença será utilizado futuramente para guiar mudanças nas próximas

populações.

Page 102: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

101

Na maioria dos passos de um algoritmo cultural corresponde com os dos algoritmos

tradicionais da computação evolutiva, e observa-se que as diferenças estão nos

passos que incluem o espaço de crença. Por exemplo, nos primeiros passos se

encontra a iniciação dos espaços de crença.

No ciclo principal, está a atualização dos espaços de crenças. É nesse momento

onde o espaço de crença incorpora as experiências individuais de um grupo selecto

de indivíduos. Tal grupo se obteve dentre toda a população com a função de

aceitação.

Por outro lado, os operadores de variação dos indivíduos (como a recombinação ou

mutação) são modificados pela função de influência.

A função de influência exerce certa pressão, para que os filhos resultantes da

variação se aproximem dos comportamentos desejáveis, e se distancie dos

indesejáveis, de acordo com as informações armazenadas do espaço de crença.

O processo de Evolução Cultural pode ser visto como um mecanismo para amplificar

a construção de um indivíduo ou grupo de características em consenso. Em outras

palavras, a Evolução Cultural controla comportamentos que podem ser aceitáveis

dentro de uma população (REYNOLDS, 1996).

Page 103: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

102

55..22 MMOODDEELLAAGGEEMM DDOO AALLGGOORRIITTMMOO CCUULLTTUURRAALL

�� RREEPPRREESSEENNTTAAÇÇÃÃOO DDAA PPOOPPUULLAAÇÇÃÃOO

A população do algoritmo cultural é modelada do mesmo modo que no algoritmo

genético, programação genética e outras.

�� EESSPPAAÇÇOO DDEE CCRREENNÇÇAA

Espaço de crença é composto por padrões que representam as características dos

melhores indivíduos da população.

55..33 OOPPEERRAADDOORREESS CCUULLTTUURRAAIISS

Alguns operadores culturais desenvolvidos na literatura são: generalização,

especialização, fusão e fissão, descritos a seguir.

Generalização

Caso existam genes na vizinhança de algum intervalo que compõe o Espaço de

Crença, expande-se este intervalo de modo que passe a acomodar estes genes.

Page 104: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

103

Especialização

Caso os genes pertencentes a algum intervalo que compõe o Espaço de Crença

estejam concentrados em algum ponto deste intervalo, contrai-se este intervalo.

Fusão

Este é um caso particular de generalização onde existem genes na vizinhança de

dois intervalos bastante próximos e por isso ambos os intervalos acabam se

fundindo.

Fissão

Este é um caso particular de especialização na qual os genes pertencentes a

determinado intervalo estão concentrados em mais de um ponto no interior deste

intervalo.

55..44 AAPPLLIICCAAÇÇÕÕEESS

Rychtyckj et al (1999) propuseram o algoritmo cultural para melhorar a eficiência da

inclusão do algoritmo nas redes semânticas. A inclusão do processo que determina

se um nó da rede é um filho de outro nó. Desta maneira, ele é utilizado como parte

da classificação do nó dentro do algoritmo baseado na aplicação da rede semântica.

Page 105: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

104

No método proposto, uma variedade de mecanismos de seleção, operadores,

métodos de comunicação, e busca local são aplicados para cada solução gerada

através dos operadores genéticos e parâmetros como explanados na seqüência. A

estrutura do algoritmo cultural combina o método fraco de busca com o esquema de

representação do conhecimento para coleta, e, o conhecimento do raciocínio com a

experiência individual.

Coello e Becerra (2003) propõem um algoritmo cultural que usa o domínio do

conhecimento para melhorar o desempenho de uma técnica de programação

evolucionária adotada para otimização de restrições. Essa abordagem extrai o

domínio do conhecimento durante o processo do evolucionário e constrói mapas

para guiar às possíveis regiões de busca mais eficiente.

55..44..11 OOUUTTRRAASS AAPPLLIICCAAÇÇÕÕEESS O quadro 10 resume algumas aplicações dessa abordagem, conforme relata no seu

livro Goldbarg e Luna (2005).

QUADRO 10

Aplicações de Algoritmos Cultuais

Ano Autores Abordando

1994a Reynolds Trabalho pioneiro 1994b Reynolds Trabalho pioneiro 1995 Reynolds et al. Aplicação à manipulação de restrições 2002 Coello e Becerra Aplicação à otimização com restrições 2002 Xidong e Reynolds Aplicação à mineração de dados 2004 Coello e Becerra Técnica de mapeamento do espaço das

crenças Fonte: adaptada de Goldbarg e Luna, 2005

Page 106: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

105

66 TTRRAANNSSGGEENNÉÉTTIICCAA CCOOMMPPUUTTAACCIIOONNAALL

A Transgenética Computacional (TC) replica o paradigma da simbiogênese, em que

criaturas de diferentes espécies trocam informações, eventualmente até material

genético, de modo a facilitar a adaptação ao meio ambiente (GOLDBARG e LUNA,

2005). De acordo com essa teoria, novas células, novos corpos, novos organismos

e novas espécies surgem por meio de simbiose, onde organismos independentes se

unem para formar compostos enfatizando os efeitos positivos da interação ao invés

da competição.

Os algoritmos transgenéticos foram introduzidos por Gouvêa (2001) e Goldbarg e

Goldbarg (2002).

A simbiogênese enfatiza mais os efeitos positivos resultantes das inter-relações

entre indivíduos do que a sobrevivência e reprodução do mais apto. Pesquisas

recentes indicam que os micro-organismos são as maiores forças evolucionárias que

Page 107: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

106

atuam sobre a seleção das espécies através de processos simbióticos (MARGULIS,

1998).

A teoria de Margulis foi rejeitada inicialmente e principalmente pelos darwinistas

mais radicais por “falta de comprovação cientifica”. Contudo, atualmente a teoria da

simbiogêsene é aceita como uma boa explicação para, pelo menos, duas

importantes situações onde a evolução darwiniana clássica falha:

1. A formação da célula eucariótica animal ( por fusão com uma bactéria

procariótica aeróbica – gerando as organelas).

2. A formação da célula eucariótica vegetal ( por fusão com uma bactéria

procariótica fotossíntese- gerando os cloroplastos).

Existem vários processos de interação que podem redundar em alterações

permanentes do código genético. Um conjunto de tais processos está reunido sob o

nome de “transferência horizontal”. Os mecanismos de transferência horizontal

comportam os plasmídios, a transformação e transdução.

Os plasmídios são partículas genéticas móveis – anéis de DNA - que podem ser

intercambiadas entre certas células.

A transformação é um processo que permite transferir DNA “puro” de uma bactéria

para outra. As bactérias podem lançar DNA no contexto extracelular através de um

processo denominado lise.

Page 108: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

107

A transdução é um processo que permite o transporte e transferência de genes com

o auxilio de um vírus.

Os algoritmos transgenéticos definem um processo evolucionário desdobrado em

três níveis, nos quais as informações são armazenadas e gerenciadas:

� Nível 1: a população de cromossomos que representa a memória corrente do

processo de busca; o conjunto de configurações em exame. A população de

cromossomos tem estrutura similar à dos algoritmos genéticos. No entanto,

sua forma de evolução é diferenciada baseando-se na troca de informações

entre as populações citadas e não na troca de informações dentro da

população de cromossomos, peculiar dos algoritmos genéticos ( RAMOS,

2005).

� Nível 2: é constituído pelos vetores transgenéticos, indivíduos de natureza

diferentes dos cromossomos e que são utilizados para promover a

intensificação e diversificação da busca. Em geral, quando um vetor

transgenético manipula um cromossomo, a estrutura do cromossomo é

modificada. Dessa forma, uma nova solução no espaço de busca é

investigado;

� Nível 3: é formado pelas regras que administram o processo de interação

entre as populações de vetores e de cromossomos.

Page 109: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

108

No processo transgenético, todavia, não se permite troca de informações

diretamente entre os cromossomos. A abordagem não se propõe somente a agregar

informações não genéticas ao reservatório genético, ou a realimentar o processo

evolucionário com informações emergentes da população. Não existe o processo

clássico de recombinação (GOLDBARG; LUNA, 2005). Para explorar o espaço de

busca, os algoritmos transgenéticos obtêm informações que são inseridas em um

cromossomo através dos vetores transgenéticos. Esta informação pode ser obtida a

priori ou a posterori. Uma informação “a priori” pode ter origem em diversas fontes,

tais como conhecimento teórico e heurístico do problema. Uma informação “a

posteriori” surge a partir do processo de busca.

São incorporadas ao algoritmo informações obtidas a priori com três finalidades

adicionais:

� Gerar e realimentar a evolução, na medida em que as regras de

administração do processo podem ser alteradas pelo resultado da busca.

� Avaliar o fluxo de informação dentro de cada nível e na transição entre os

níveis. Os vários estágios de avaliação introduzem a possibilidade de que a

informação seja submetida a diversos processos de seleção bem como que a

informação incorporada a priori possa ter alguns de seus graus de liberdade

ajustados através de parâmetros;

� Conduzir a evolução da população, independentemente de um processo

reprodutivo sexual (recombinação entre indivíduos) ou de mutações,

Page 110: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

109

características indispensáveis da abordagem genética e memética, porque

emprega um mecanismo transgenético para efetuar a simbiogênese –

evolução induzida.

Os algoritmos transgenéticos podem decompor o processo de seleção em vários

níveis, tais como:

� Competição entre as regras de administração pela oportunidade de

fornecerem informações que se incorporem aos vetores de manipulação;

� Competição entre os vetores pela possibilidade de manipularem os

cromossomos;

� Competição entre as informações contidas nos cromossomos – genes ou

conjuntos de genes – com as informações transportadas pelos vetores para

preservarem sua continuidade dentro dos genótipos.

O nível associado às regras de administração do modelo transgenético corresponde

ao projeto e coordenação de um processo de inter-relações entre populações de

indivíduos de diferente natureza – co-evolução (EHRLICH; RAVEN, 1964).

66..11 VVEETTOORREESS TTRRAANNSSGGEENNÉÉTTIICCOOSS

Um vetor transgenético transporta uma ou mais cadeias de informação e dispõe de

procedimentos que definem sua atuação na população de cromossomos, ou seja, é

Page 111: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

110

constituído por cadeia(s) de informação e de um método de manipulação. O método

inclui a programação necessária para que a cadeia seja capaz de atuar sobre um

cromossomo, realizando a inserção da informação transportada. Um desses

procedimentos corresponde à operação de reorganização do código manipulado –

que, na abordagem clássica, é denominada de “operador”. O método deve conter,

além do operador, as regras de avaliação do sucesso do ataque e as referentes à

inviabilidade de manipulação (RAMOS, 2005).

O processo de transpotar e transcrever informações para a população de

cromossomos foi formalizado da forma descrita a seguir (GOUVÊA; GOLDBARG,

2003). Considere:

° P uma população de q indivíduos, P = {S1, S2, .. ., Sq}, onde cada indivíduo S¡, i =

1, ..., q, é um conjunto de valores inteiros d comprimento n representando uma

solução do problema;

° f a função adequada, f: S¡ → R*, i = 1, ..., q.

Um vetor transgen´rtico λ є C,, onde C é o conjunto de todos os vetores possíveis, é

dado por λ = (I, Φ), em que:

° I representa a cadeia de informação transportada pelo vetor transgenético; e

° Φ representa o método de manipulação com Φ = (p1, p2 ..., ps), onde pј, j = 1, ...,

s, são procedimentos que definem o processo de manipulação.

Page 112: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

111

Os vetores transgenéticos são características pelo fato de o seu método de

manipulação, dadaa informação I, alterar a configuração do cromossomo através da

manipulação Φ: S¡ → Sј’. Os procedimentos descritos no quadro 11, a seguir,

compõem o método de manipulação dos vetores de Transgenética Computacional.

Ã

QUADRO 11

Métodos de Manipulação dos Agentes da Transgenéticas Computacional

PROCEDIMENTO DENOMINAÇÃO DESCRIÇÃO

Procedimento 1

(p1)

Ataque

(A)

Define o critério de avaliação que estabelece quando um cromossomo é suscetível à manipulação do vetor.

Procedimento 2 (p2)

Operador de Transcrição

(Γ)

Seja: A: S¡ → Falso ou verdadeiro, i = 1,..., q. Se A(S¡) = “verdadeiro”, esse procedimento define como a informação I, transportada pelo vetor, será transferida para o cromossomo.

Procedimento 3

(p3)

Bloqueio da Informação Transcrita

(Ψ)

Torna o resultado da manipulação inviolável por um certo período de tempo – número de iteração, gerações de cromossomos, etc.

Procedimento 4

(p4) Desbloqueio da

Informação Transcrita

(ψ¹)

Torna o resultado da manipulção sem restrições.

Alguns exemplos de vetores transgenéticos são os Vírus e as Partículas Genéticas

Móveis ( PGMs). O vetor trangenéticos λ = (I, Φ) é dito um Vírus quando incorpora

procedimentos de 1 a 4 do quadro 11 e é chamado de PGM quando sua cadeia de

informações ( I) é traduzida no formato genético e seu método ( Φ) utiliza somente

os procedimentos 1 e 2. nas seções seguintes serão abordadas mais dos 2 vetores.

Page 113: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

112

6.1.1 O VÍRUS

Por analogia às suas funções naturais, denomina-se Vírus ao vetor da

Transgenética Computacional que transporta e transcreve diretamente informações

na representação genética adotada (normalmente cromossomo) em conformidade

com as imposições do planejamento de manipulação. Um vírus é um agente capaz

de alterar diretamente a configuração cromossômica de um indivíduo e,

conseqüentemente, sua adequação (GOLDBARG et al., 1999), mantendo a

integridade da informação transcrita ao longo de um certo intervalo de tempo. O

principal objetivo desse agente é somar sua informação a informação do genótipo do

indivíduo. O caráter de multiplicação desse agente é concretizado na medida que o

cromossomo se reproduz, uma vez que a “quebra” da cadeia transcrita pelo vírus é

proibida.

66..11..22 PPAARRTTÍÍCCUULLAA GGEENNÉÉTTIICCAA MMÓÓVVEELL

As partículas genéticas móveis são fragmentos de ADN que podem ser fagocitados

(engolidos) pelas células, acabando por se integrar ao ADN do núcleo.

Formalmente, uma PGM é um agente constituído por uma cadeia de informação (I) e

um método de manipulação (C), formando uma dupla PG = (I, C). A PGM não possui

método de descontaminação porque sua cadeia quando transcrita não é tornada

inviolável - não fixa a cadeia transcrita como geneticamente dominante. A regra de

resistência imunológica ao ataque da PGM é o da estrita melhoria da adequação.

Os operadores de transcrição são semelhantes aos operadores dos Vírus. De fato,

uma PGM, no contexto computacional, pode ser considerada como um caso

Page 114: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

113

especial de vírus esquema com duração igual a zero e critério guloso de resistência

imunológica. As PGMs podem representar um vetor extremamente eficiente e

simples para o transporte de informações. Por não fixarem a inviolabilidade de sua

transcrição, elas permitem ao processo de busca uma maior liberdade de

diversificação (GOUVÊA, 2001).

Para o PCV, a PGM, funciona como uma proposta de reorganização. A figura 14

ilustra o procedimento. O ponto inicial da manipulação é a posição do cromossomo

original que contem a mesma informação da primeira posição da PGM. A parti

desse ponto o cromossomo é reorganizado invertendo a posição dos outros genes

da PGM com os genes do cromossomo original. O resultado é o cromossomo

manipulado.

13 2 6

3 2 13 5 14 6 3 6 12 10 11 1 9 4

3 5 13 2 6 14 3 6 12 10 11 1 9 4

Figura 14 – Manipulação através da PGM

cromossomo original

cromossomo manipulado

PGM

Page 115: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

114

66..22 RREEGGRRAASS TTRRAANNSSGGEENNÉÉTTIICCAASS

As populações de cromossomos e de vetores transgenéticos evoluem trocando

informações permanentemente. Essa troca de informações é gerenciada por regras

de três tipos:

� As regras do tipo 1 são responsáveis pela construção de cadeias de

informações que poderão ser incorporadas aos cromossomos, modificando

sua estrutura e, provavelmente, sua função de adequação. O modo como

essas cadeias serão incorporadas ao cromossomo são definidas pelas regras

do tipo 2.

� As regras do tipo 2 são orientações para constituição de operadores de

manipulação genética (método de transcrição). Se um vetor não é bem-

sucedido em sua tentativa de manipulação (ataque), diz-se que o

cromossomo “resistiu“ à manipulação. O critério de resistência à manipulação

pode levar em conta a variação da função de adequação decorrente da

manipulação.

� As regras do tipo 3 definem uma área de estratégias para a ação dos vetores

transgenéticos. Essas regras podem ser referir ao número de vetores que

participarão de cada iteração no algoritmo, aos critérios que definirão quantos

cromossomos serão atacados, à seqüência de ataque dos vetores, etc.,

constituindo, em seu lado, um esquema de manipulação.

Page 116: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

115

Resumidamente, as regras dos tipos 1 e 2 referem-se à construção de cadeias de

informações e seu método de manipulação no cromossomo ( cadeia + método) –

importantes para a construção de vetores transgenéticos. As regras do tipo 3

referem-se a orientações diversas que podem estar incorporadas ao algoritmo

(RAMOS, 2005).

66..33 PPSSEEUUDDOO--CCÓÓDDIIGGOO

QUADRO 12

Pesudo-código de um Algoritmo Transgenético (GOLDBARG; GOLDBARG, 2005).

gerar população (S1,..., Sn);

carregar_regras_transgenéticas ( Tipo 1, Tipo 2, q, r);

repita

set_ λ← vetor_transgenéticos(r);

set_λ ← seleção_população (S1,..., Sn, q)

para i ← ate q faça

para k ←1 ate r faça

se ataque (S¡ λk) então

S¡ ← manipular (S¡, λk);

se critério_realimentação (S¡) então

incluir _fonte_informações (S¡);

fim_se;

fim_para_k;

fim_para_i;

até que critério_parada ser satisfeito.

Page 117: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

116

A população inicial de cromossomo é formada da mesma forma que em outros

algortimos evolucionários. O procedimento carrega_regras_transgenéticas( )

determina como a população de vetores transgenéticos é constituída, informando o

conjunto de regras de administração que serão utilizadas. O procedimento

vetor_transgenético( ) recebe como parâmetro r, o número de vetores a serem

gerados segundo as regras de administração. Cada um dos r vetores carrega uma

informação obtida de alguma regra do tipo 1 e possui um operador definido por uma

regra do tipo 2. os demais procedimentos dos vetores (p1, p3, p4, p5 e p6) já estão

definidos no algoritmo, porque são características inerentes ao vetor que for

selecionado.

Um conjunto com q cromossomo é selecionado no procedimento seleção_

população( ). Os q cromossomos são atacados por todos os vetores de set_λ. Os

vetores q e r, bem como a estratégia que será utilizada para atacar os q

cromossomo com os r vetores são determinados por regras do tipo 3. Algumas

regras do tipo 3 orientam a confecção do código do algoritmo e não são informadas

através de carrega_regras_transgenéticas( ). O procedimento ataque ( ) implementa

p1. caso o procedimento retorne valor “verdadeiro” em alguma iteração, λk completa

a manipulação de Si, o i-ésimo cromossomo de set_S. Se o cromossomo Si é

considerado como um bom exemplo de evolução, segundo algum critério

estabelecido no algoritmo, então a rotina critério_realimentação( ) retorna o valor

“verdadeiro”. Nesse caso, a rotina incluir_fonte_informação ( ) implementa a inclusão

da solução representada em Si como uma fonte de informação genética para ser

considerada pelas regras de admiinstração na formação de futuras gerações de

vetores transgenéticas.

Page 118: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

117

Um exemplo de critérios para selecionar um cromossomo para ser incluído como

fonte de informação é apesentado no quadro VII, onde f(·) representa a função de

adequação. O critério descrito no quadro VII considera um cromossomo que

representa uma solução melhor que qualquer outra encontrada ate um determinado

momento um bom exemplo de evolução. O algoritmo continua ate que um critério de

parada, previamente definido,seja atendido. O critério de parada, a exemplo de

máximo de iterações sem melhoria da melhor solução corrente, de um tempo

máximo de processamento, etc.

Os primeiros resultados da transgenética computacional foram obtidos com um

algoritmo que emprega exclusivamente partículas genéticas móveis do tipo

plasmídios como vetor de manipulação - uma estratégia de fácil implementação

computacional. Esse tipo de algoritmo, por sua simplicidade, foi denominado ProtoG.

66..44 AAPPLLIICCAAÇÇÕÕEESS O quadro 13 resume algumas aplicações dessa abordagem extraída do livro Goldbarg e Luna (2005) e outras mais recentes.

Page 119: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

118

QUADRO 13

Aplicações da Transgenéticas Computacional

Ano Autores Abordando 2001 Gouvêa Trabalho pioneiro 2001 Goldbarg et al. Aplicação ao problema de coloração de

vértices 2001 Gouvêa e Goldbarg Aplicação ao quadrático de alocação 2002 Goldbarg e Goldbarg Aplicação ao quadrático de alocação 2002 Goldbarg et al. Aplicação à explotação de petróleo 2002 Gouvêa et. al Aplicação à programação de sondas de

produção 2002 Goldbarg et al. Aplicação à localização de poços de petróleo 2002 Castro et al. Aplicação ao gás lift 2003 Goldbarg et al. Aplicação ao PCV 2003 Ramos et al. Aplicação ao PCV 2004ª Goldbarg et al. Aplicação a sistemas de co-geração 2004b Goldbarg et al. Aplicação à explotação de petróleo 2004c Goldbarg et al. Aplicação ao flow shop de permutação 2004d Goldbarg et al. Aplicação à distribuição de gás natural 2004 Leite et al. Aplicação à distribuição de vídeo 2005 Ramos et al Ajuste de Parâmetro por Regressão Logístico 2005 Ramos Aplicação Metodologia Estatísticas ao PCV

Fonte: adaptada de Goldbarg e Luna, 2005

Page 120: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

119

77 OOUUTTRRAASS AABBOORRDDAAGGEENNSS EEVVOOLLUUCCIIOONNÁÁRRIIAASS

Este capítulo traz outras abordagens evolucionárias que não utilizam a estrutura

clássica de população, indivíduos, e sim, comportamento de insetos e aves, como

mostra as seções seguintes.

77..11 CCOOLLÔÔNNIIAA DDEE FFOORRMMIIGGAASS

Os Algoritmos baseados em Colônia de Formigas foram primeiramente propostos

por Dorigo (1992) tal como os multiagentes de aproximação para problemas NP-

árduos de otimização combinatória semelhante ao problema do caixeiro viajante e o

problema de atribuição quadrátrica.

Como o próprio nome sugere, a Colônia de Formigas é inspirado pelo

comportamento de colônia de formigas reais, em particular, por seu comportamento

de aquisição de alimentos. Uma das principais idéias é a comunicação indireta entre

os indivíduos de uma colônia de agentes, chamados formigas artificiais. Esta

Page 121: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

120

comunicação é realizada através de trilhas de feromônio deixadas pelas formigas

em componentes do problema abordado, analogamente às trilhas de feromônio

depositadas por formigas reais para se comunicar. Estas trilhas artificiais são um tipo

de informação numérica distribuída, que é modificada pelas formigas a fim de

refletirem suas experiências acumuladas enquanto resolvem determinado problema.

As formigas possuem o poder peculiar de descobrir fontes de alimento num vasto

território ao redor do formigueiro, comunicar a descoberta às companheiras e

indicar-lhes o caminho a seguir. Entre outras formas de comunicação química, a

formiga marca a trilha com o feromônio que libera enquanto anda e, havendo uma

bifurcação no percurso, as companheiras tendem a seguir a trilha onde a

concentração do feromônio for maior.

O feromônio, portanto, além de possibilitar a formação de um caminho de volta para

a formiga, também tem a função de informar às outras formigas sobre quais os

melhores caminhos até o alimento. Depois de algum tempo, os caminhos mais

eficientes – ou de menor distância percorrida até o alimento – acumulam uma

quantidade maior de feromônio. Inversamente, os caminhos menos eficientes – ou

de maior distância percorrida até o alimento – apresentam uma pequena

concentração de feromônio, devido ao menor número de formigas que passaram por

ele e ao processo de evaporação natural do feromônio.

No problema de otimização que o formigueiro se defronta, cada formiga é capaz de

construir uma solução completa do problema; contudo, a melhor solução só é obtida

mediante cruzamento das diversas soluções encontradas.

Page 122: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

121

As colônias de insetos são estudadas há muito tempo, tanto no contexto biológico

como fora dele. Este estudo normalmente visa explorar aspectos da hierarquia e

auto-organização, bem como relações sociais e o papel de cada indivíduo na

colônia. Observa, porém, que esse trabalho dos naturalistas, com insetos e tantas

outras espécies da fauna, nunca foi devidamente valorizado. Não se acreditava, por

exemplo, que mamíferos carnívoros utilizassem estratégias sofisticadas de caça,

realizando ataques coordenados para enfraquecer a defesa de uma manada,

separar uma presa e colocá-la na trilha com caçadores posicionados. Essa linha de

pesquisa só foi reconhecida em 1973, com o Prêmio Nobel para o zoólogo austríaco

Konrad Lorenz, por seu estudo comparativo do comportamento humano com o

animal. Se hoje existe a computação bio-inspirada, é devido à migração do foco

também para a observação da natureza.

77..11..11 AA OOTTIIMMIIZZAAÇÇÃÃOO DDAA CCOOLLÔÔNNIIAA DDEE FFOORRMMIIGGAASS

Desde o primeiro trabalho com o AS, inúmeras extensões do algoritmo básico têm

sido propostas, entre elas estão o Ant-Q, (GAMBARDELLA, 1995), o Ant Colony

System (ACS) (GAMBARDELLA e DORIGO, 1996), o Max-Min Ant System (MMAS)

(STUETZLE, 1998). Todas estas extensões são de certa forma mais "gulosas" do

que o AS, porém diferem consideravelmente em muitos aspectos do controle da

busca no espaço de soluções.

Page 123: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

122

Segundo Dorigo e Di Caro (1999) algoritmos desse tipo têm sido inspirados pelas

experiências realizadas por Goss et al. (1989) usando uma colônia de formigas

reais. A experiência consistiu em construir dois caminhos de comprimentos

diferentes entre uma colônia de formigas e uma fonte de comida. Os caminhos

foram arranjados de modo que as formigas pudessem escolher ambos os caminhos,

tanto no sentido de ida como no de volta.

Sendo assim, observou-se que após uma fase transitória (poucos minutos após o

início do experimento) a maioria das formigas usa o caminho mais curto. Observou-

se também que a probabilidade da colônia escolher o caminho mais curto aumenta

diretamente proporcional a diferença entre os dois caminhos. O aparecimento desse

comportamento, segundo Dorigo e Di Caro (1999), pode ser explicado em termos de

autocatálise (feedback positivo) e comprimento diferencial de caminho, e ele é

possível de ser feito através de uma forma indireta de comunicação mediada por

modificações locais do meio ambiente.

Por analogia, segundo Maniezzo e Carbonaro (1999) uma formiga é definida como

um agente computacional simples, que constrói, iterativamente, uma solução para o

problema a ser resolvido. Soluções parciais do problema são vistas como estados;

cada formiga se move de um estado n para outro estado p, correspondendo a uma

solução parcial mais completa. Em cada passo j, cada formiga k armazena um

conjunto de expansões viáveis para seu estado corrente, e se move para uma

dessas expansões de acordo com uma probabilidade.

Page 124: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

123

Conforme Maniezzo e Carbonaro a probabilidade da formiga mover-se de um estado

n para um p depende da combinação de dois valores:

� A atratividade do movimento, que é computado por algumas heurísticas

indicando, a priori, o desejo de se fazer aquele movimento;

� A importância do caminho (o valor da trilha) a ser seguido, indicando quão

proficiente ele foi no passado para realizar aquele movimento particular.

Entretanto, ele representa uma indicação, a posteriori, do desejo daquele

movimento.

As trilhas são atualizadas a cada iteração, aumentando o nível daquelas que

facilitam os movimentos para partes de soluções “boas”, e diminuindo o nível das

outras trilhas.

77..11..22 OO AALLGGOORRIITTMMOO CCOOLLÔÔNNIIAA DDEE FFOORRMMIIGGAASS

A estratégia de busca natural foi adaptada para a solução de problema de busca

algorítmica como uma abordagem multi-agente. Os agentes são as formigas que, de

forma paralela, buscam uma solução para o problema proposto. O quadro 6 pode

resumir a estratégia.

Page 125: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

124

QUADRO 14

O pseudo-código para a Colônia de Formigas

Repita

Crie as formigas e posicione cada uma num estado inicial;

Repita

Para cada formiga faça

Aplique a regra de transição de estado para incrementalmente

construir uma solução;

Aplique a regra de atualização local do feromônio;

Fim para;

Até que todas as formigas tenham construído uma solução completa;

Gere a solução associada a cada uma das formigas;

Aplique a regra de atualização global do feromônio;

Guarde a melhor solução encontrada até o momento;

Até que o critério de parada seja satisfeito.

77..11..33 AAPPLLIICCAAÇÇÃÃOO -- PPCCVV

Uma aplicação simples dessa metaheurística é apresentada, de forma mais

detalhada, por Dorigo e Di Caro (1999) na resolução do PCV. Basicamente, a

principal tarefa de cada formiga artificial é encontrar o menor caminho entre um par

de nós em um grafo. Para cada arco (i,j) do grafo é associada uma variável

chamada de feromônio artificial. A quantidade de feromônio em cada arco é

proporcional à utilidade, como estimado pelas formigas, de usar aquele arco para

construir boas soluções. Dessa forma, em cada nó, ou nos arcos adjacentes, são

Page 126: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

125

armazenadas informações necessárias para que a formiga selecione o próximo nó a

visitar, construindo assim a solução.

Uma das aplicações desse tipo de metaheurística na área de alocação de motoristas

é o trabalho reportado por Forsyth e Wren (1997). É desenvolvido um sistema de

formigas artificiais em que cada formiga segue uma trilha através de uma rede. Cada

trilha representa uma programação completa de motoristas de ônibus.

Esta heurística é robusta e versátil por poder ser aplicada a diferentes problemas em

Otimização Combinatória. Além disso, é baseada em população. Isto é vantajoso

porque permite que o sistema use um mecanismo de avaliação positiva de retorno

entre agentes e os mecanismos de busca (FREITAS, 2001).

A primeira adaptação proposta na literatura foi para a solução do Problema do

Caixeiro Viajante (DORIGO e GAMBARDELLA, 1997) conforme o algoritmo do

Quadro 15.

Page 127: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

126

QUADRO 15

Algoritmo em Colônia Formiga para o PCV 1 Inicialização 2 Para t de 1 até número de iterações faça 3 Para k de 1 até m faça 4 repita até que formiga k encontrar um caminho completo

5 Selecione a próxima cidade a ser visitada segundo regra )(tpktj

6 Fim repita

7 Calcule a distância )(tLk do caminho descoberto pela formiga k

8 Se )(tLk <L* então *S ← )(tSk 9 Fim do para

10 Atualize )1( +tijτ ∀(i,j)∈E, segundo processo de dep. e evap. de feromônio

11 Fim do para 12 Retornar *S Inicialmente m formigas são distribuídas pelas cidades segundo algum critério pré-

estabelecido e todos os caminhos (i,j)∈E são inicializados com a mesma quantidade

0)1( >ijτ de feromônio.

Em seguida cada formiga k, k=1,...,m seleciona a próxima cidade a ser visitada

através da seguinte regra probabilística:

ki

Nlijij

ijijkij Nj

t

ttp

ki

∈=∑∈

seβα

βα

ητητ

][)]([

][)]([)( caso contrário 0)( =tpk

ij

)(tp kij ≡ Probabilidade da facilidade j ser escolhida pela formiga k, atualmente na

facilidade i, durante a t-ésima iteração do procedimento.

Page 128: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

127

)(tjτ ≡ A quantidade de feromônio presente no caminho (i,j)∈E na t-ésima iteração

do procedimento.

α ≡ Parâmetro que regula a influência de )(tijτ

ijijj d

1=η ≡ Visibilidade da facilidade j com relação à cidade i.

dij ≡ Distância entre a cidade i e j.

β≡ Parâmetro que regula a influência de ijjη

)(tN ki ≡ O conjunto de cidades ainda não visitadas pela formiga k situada na cidade i

durante a t-ésima iteração do procedimento.

O processo de seleção da próxima cidade a ser visitada é repetido até que todas as

formigas tenham completado um caminho interligando todas as cidades uma vez.

O processo de evaporação do feromônio ocorre da seguinte maneira:

)()()1()1( ttt ijijij ττρτ ∆+−=+

Sendo ∑=

∆=∆m

k

kijij tt

1

)()( ττ

Com )(

)(tL

Qt

k

kij =∆τ , se a formiga k percorre o caminho (i,j)∈E . Caso contrário,

0=∆ kijτ

t ≡ Iteração atual do procedimento

]1,0[∈ρ ≡ Parâmetro que regula a redução de )(tijτ

)(tijτ∆ ≡ Ganho total de feromônio no caminho (i,j)∈E , ocorrido na t-ésima iteração

do procedimento

Q ≡ Quantidade de feromônio excretada por uma formiga a cada iteração

Page 129: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

128

m ≡ número de formigas

)(tkijτ∆ ≡ Ganho total de feromônio no caminho (i,j)∈E , causada pela formiga k, na t-

ésima iteração do procedimento

)(tSk ≡ Caminho completo que interliga todas as cidades uma única vez, descoberto

pela formiga k na t-ésima iteração do procedimento.

)(tLk ≡ Distância associada ao caminho completo )(tSk descoberto pela formiga k na

t-ésima iteração do procedimento.

Os procedimentos anteriormente descritos são repetidos a cada iteração na

heurística proposta.

77..11..33..11 OOUUTTRRAASS AAPPLLIICCAAÇÇÕÕEESS

O Quadro 16 a seguir resume algumas aplicações do livro de Goldbarg e Luna (2005).

Page 130: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

129

QUADRO 16 Aplicações para Colônia de Formigas

Ano Autores Abordando 1992a Colorni et al. Fundamentos de colônia de formigas 1992b Colorni et al. Propriedades de colônia de formigas 1994 Maniezzo et al. Colônia de formigas para quadrático de

alocação 1994 Artur Colônia de formigas na solução do PCV 1996 Dorigo et al. Fundamentos de colônia de formigas 1997 Costa e Hertz Colônia de formigas na coloração de grafos 1999 Gambardella et al. Colônia de formigas p/ o quadrático de

alocação 1999 Taillard Fundamentos de colônia de formigas 2000 Dorigo et al. Conceitos em colônia de formigas 2000 Stützle e Hoos Colônia de formigas p/ caso Max-Min 2002 Cordon et al. Revisão da abordagem em colônia de

formigas 2002 Middendorf et al. Multi colônia de formigas 2003 Abd-El-Barr Colônia de formigas p/ circuitos digitais 2003 Bonabeau et al. Conceitos em nuvens de partículas 2003 Coello et al. Colônia de formigas p/ circuitos lógicos 2003 Carbonato e

Maniezzo Conceitos em colônia de formigas

77..22 NNUUVVEEMM DDEE PPAARRTTÍÍCCUULLAASS

A Otimização por Nuvem de Partículas (Particle Swarm Optimization- PSO) é uma

técnica baseada em população, desenvolvida pelo psicólogo James Kennedy e o

engenheiro eletricista Russell Eberhart (1995), com base no comportamento de

pássaros em revoadas, modelado pelo biólogo Frank Heppner (1990).

Page 131: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

130

Esse método possui muitas semelhanças com os algoritmos evolucionários, tais

como os Algoritmos Genéticos (AG). O sistema é iniciado com uma população de

soluções aleatórias e procura por soluções ótimas atualizando essa população.

Contudo, diferente do Algoritmo Genético, PSO não possui operadores de evolução,

tais como cruzamento e mutação. Na PSO, as soluções potenciais, chamadas de

partículas, “voam” sobre o espaço de soluções seguindo as partículas ótimas atuais,

ou seja, as melhores partículas.

Comparado ao Algoritmo Genético, as vantagens da PSO são: fácil de implementar

e há poucos parâmetros a serem ajustados. A PSO tem sido aplicada com sucesso

em muitas áreas: otimização de funções, treinamento em redes neurais artificiais,

controle de sistemas fuzzy, além de outras áreas.

77..22..11 SSIIMMUULLAANNDDOO OO CCOOMMPPOORRTTAAMMEENNTTOO SSOOCCIIAALL

Vários cientistas têm criado simulações computacionais de várias interpretações do

movimento de organismos em bando de pássaros, em cardume de peixes ou em

enxame de abelhas. Reynolds (1987) e Heppner (1990) apresentaram modelos de

simulações de bando de pássaros. Reynolds estava curioso por causa da estética

da coreografia do vôo dos pássaros, e Heppner estava interessado em descobrir a

base das regras que permitiam um grande número de pássaros juntarem-se

simultaneamente, sempre mudando a direção rapidamente, separando e

reagrupando, etc. Estes cientistas tinham a percepção que processos locais, tais

como os modelados por autômatos celulares, poderiam fundamentar a dinâmica de

Page 132: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

131

grupo imprevisível do comportamento social dos pássaros. Ambos os modelos se

concentravam na manipulação das distâncias inter-individuais, ou seja, a sincronia

de comportamento do bando foi pensada como uma função de esforços dos

pássaros em manter uma distância ótima entre eles e seus vizinhos.

Não parece ser um salto muito grande de lógica supor que algumas mesmas regras

fundamentam o comportamento social animal (incluindo rebanhos, cardumes e

bandos) e dos humanos. Wilson (1975) escreveu, com relação ao cardume de

peixes, “Pelo menos em teoria, membros do cardume podem tirar proveito de

descobertas e experiências anteriores dos outros membros durante a procura por

comida. Esta vantagem pode se tornar decisiva, valendo mais que as desvantagens

de competição por comida, sempre que o recurso esteja distribuído

imprevisivelmente em pedaços”. Esta declaração sugere que o compartilhamento

social de informação entre indivíduos oferece uma vantagem evolucionária: esta

hipótese foi fundamental ao desenvolvimento da otimização por nuvem de partículas

(KENNEDY, 1995).

77..22..22 VVIIDDAA AARRTTIIFFIICCIIAALL

O termo “Vida Artificial” (Artificial Life) é usado para descrever pesquisas em

sistemas feitos pelo homem que possuem algumas das propriedades essenciais da

vida real (http://www.alife.org). A Life engloba dois tópicos de pesquisa:

� Como as técnicas computacionais podem ajudar quando se estudam os

fenômenos biológicos;

Page 133: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

132

� Como as técnicas biológicas podem ajudar em problemas computacionais.

Como se pode notar, a PSO se inclui no segundo tópico. Há inúmeras técnicas

computacionais inspiradas em sistemas biológicos, por exemplo, redes neurais

artificiais é um modelo simplificado do cérebro humano; algoritmo genético é

inspirado na teoria da evolução; colônia de formigas; etc. O sistema biológico ao

qual a PSO está incluída é o sistema social, mais especificamente, o comportamento

coletivo de indivíduos interagindo com seu ambiente e entre si (swarm intelligence).

O conceito de nuvem de partículas originou-se a partir da simulação de um sistema

social simplificado. A idéia original foi simular graficamente a “coreografia” de um

bando de pássaro ou cardume de peixes. Contudo, descobriu-se que esse modelo

poderia ser usado na otimização de problemas.

77..22..33 OOTTIIMMIIZZAAÇÇÃÃOO PPOORR NNUUVVEEMM DDEE PPAARRTTÍÍCCUULLAASS ((AALLGGOORRIITTMMOO))

Suponha o seguinte cenário: um grupo de pássaros está aleatoriamente procurando

por comida em uma região qualquer, sendo que há somente um pedaço de comida

nesta região e nenhum pássaro sabe onde a comida está. Mas eles sabem o quão

distante a comida está em cada iteração. Qual será a melhor estratégia para

encontrar a comida? Uma boa escolha é seguir o pássaro que está mais próximo da

comida.

A Otimização por Nuvem de Partículas (PSO) tomou como base este cenário e

usou-o para resolver os problemas de otimização. Na PSO, cada solução potencial é

Page 134: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

133

um pássaro no espaço de soluções, o qual é chamado de partícula. Todas as

partículas possuem valores de fitness os quais são avaliados pela função-objetivo a

ser otimizada, e têm velocidades as quais direcionam o vôo das partículas. As

partículas voam sobre o espaço de soluções seguindo as partículas ótimas atuais.

Cada partícula tem as seguintes características:

� Possui uma posição e uma velocidade;

� Tem conhecimento da sua posição, e também do valor da função-objetivo

para esta posição;

� Tem conhecimento dos seus vizinhos, assim como da melhor posição e do

melhor valor da função-objetivo dentre eles;

� Guarda sua melhor posição já atingida.

PSO é iniciado com um grupo de partículas aleatórias (que são as soluções

potenciais) e então procura por soluções ótimas atualizando as partículas a cada

geração. Em cada iteração, cada partícula é atualizada seguindo dois valores. O

primeiro é a melhor solução (fitness) encontrada pela partícula ao longo da busca,

chamado de pbest. O outro valor é a melhor solução encontrada por todas as

partículas, chamado de gbest. A cada passo, o comportamento de uma determinada

partícula depende de três possíveis escolhas:

� Seguir seu próprio caminho;

� Seguir em direção à sua melhor posição já encontrada (pbest);

� Seguir em direção à melhor posição do melhor vizinho (gbest).

Page 135: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

134

QUADRO 17

O pseudo-código para a Nuvem de Partícula

Início

Para cada partícula

Inicie partícula;

Fim_Para

Faça

Para cada partícula

Calcule o valor do fitness

Se esse fitness é melhor do que o fitness de pbest então

Determine a partícula p[] como pbest

Fim_Para

Defina a partícula com o melhor fitness de todas as partículas como

gbest

Para cada partícula

Calcule a velocidade da partícula de acordo com a equação – (1)

Atualize a posição da partícula de acordo com a equação – (2)

Fim_Para

Enquanto (iterações máximas) ou (critérios de erro mínimo) não são

atendidos.

As velocidades das partículas em cada dimensão são limitadas por uma máxima

velocidade, Vmax.

Há muitas maneiras de definir uma vizinhança (Kennedy, 1999), mas duas classes

podem ser distinguidas:

Page 136: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

135

� Vizinhança “física” (ou geográfica), que leva em conta as distâncias. Na

prática, as distâncias são computadas a cada passo e tomadas as k arestas

mais próximas como vizinhas.

� Vizinhança “social”, que leva em conta os relacionamentos. Na prática, para

cada partícula, sua vizinhança é definida com uma lista de partículas.

Portanto, não é necessário calcular distâncias, sendo uma grande vantagem

para alguns casos, particularmente para espaços discretos. Pode notar

também que, se o processo converge, uma vizinhança social tende a se

tornar uma vizinhança física.

77..22..44 CCOONNTTRROOLLEE DDEE PPAARRÂÂMMEETTRROOSS

Há dois passos importantes quando se aplica PSO em problemas de otimização: a

representação da solução e a função de cálculo do fitness. Não há muitos

parâmetros a serem configurados. Abaixo segue uma lista dos parâmetros, assim

como valores típicos para eles:

� Número de partículas: o intervalo típico é 20-40. Para a maioria dos

problemas, 10 partículas são suficientes para alcançar bons resultados.

Para alguns problemas mais difíceis, pode-se tentar 100-200 partículas;

� Dimensão das partículas: determinada pelo problema a ser otimizado;

� Vmax: determine a máxima mudança que uma partícula pode tomar durante

uma interação;

Page 137: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

136

� Fatores de aprendizagem: c1 e c2 usualmente são iguais a 2. Contudo,

podem variar no intervalo [0,4];

� Condição de parada: o número máximo de iterações que o algoritmo

executa e o requisito de erro mínimo. Estas condições de parada dependem

do problema.

77..22..55 AAPPLLIICCAAÇÇÕÕEESS

A PSO pode ser aplicada aos problemas de otimização, desde que se defina como

irão funcionar os parâmetros básicos, por exemplo, a interação entre a posição e a

velocidade.

A PSO também é usada em redes neurais artificiais, em lugar do método back-

propagation, para treinar a rede com a mesma eficiência em menor tempo (KEN,

1995). Em virtude disso, algumas aplicações reais nas áreas de diagnóstico médico,

indústria, etc. usam uma rede neural guiada pelo algoritmo PSO.

A Quadro 8 relaciona aplicações a Nuvem de Partículas extraídas do livro de Goldbarg e Luna (2005) e outras mais recentes na literatura.

Page 138: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

137

QUADRO 18

Aplicações do Algoritmo Nuvem de Partículas

Ano Autores Abordando 1997 Kennedy e Eberhart Fundamentos de nuvens de partículas 1998 Angeline Nuvens de partículas com seleção 1999 Clerc Nuvens de partículas determinística e

adaptativa 1999 Dorigo e Di Caro Vários exemplos 1999 Bullnheimer et al. Estudo computacional 1999 Yoshida et al. Nuvens de partículas no controle de

voltagem 2001 Eberhart e Shi Aplicações para nuvens de partículas 2002 Ray e Liew Nuvens de partículas p/ multi-objetivo 2002a Parsopoulos e

Vrahatis Revisão da abordagem nuvens de partículas

2002b Parsopoulos e Vrahatis

Nuvens de partículas p/ multi-objetivo

2002 Ciuprina et al. Nuvens de partículas p/ eletromagnética 2002 Salman et al. Nuvens de partículas p/ alocação de tarefas 2002 Laskari et al. Nuvens de partículas p/ programação inteira 2003 Bonabeau et al. Conceitos em nuvens de partículas 2003 Ting et al. Nuvem de partículas p/ geração de energia 2004 Maniezzo et al. Texto didático 2004 Onwubolu e Clerc Nuvem de partículas p/ perfuração

automática 2004 Chang et al. Nuvem de partículas p/ bioquímica 2004 Coello et al. Nuvem de partículas p/ multi-objetivo 2005 Machado e Hetiro Nuvem de partículas para PCV 2005 Jerald et al. Sistemas de Manufaturas 2006 Goldbarg et al. Nuvem de partículas p/ PCV

Fonte: adaptada de Goldbarg e Luna, 2005

Page 139: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

138

88..CCOONNCCLLUUSSÕÕEESS

A evolução natural é certamente, o melhor e mais original dos sistemas evolutivos e

projetos criativos têm surgido na natureza por centenas de milhões de anos. Seres

vivos que, de longe, superam quaiquer projetos humanos m termos de

complexidade, performance e eficiência proliferam ao redor do mundo. Mais e mais

os biólogos descobrem informações a respeito das criaturas ao nosso redor.

Baseada nessa evolução, a teoria de seleção de Darwin (1859) representou um

marco para a biologia, e ainda é alvo de intensos debates. É, de fato, uma teoria

singularmente simples se comparada a teorias matemáticas e físicas. Em essência,

consiste simplesmente na idéia de que a pressão seletiva juntamente com

recombinação, caracterizada por hereditariedade e algum grau de variação aleatória,

têm conseqüências inimagináveis se houver tempo para elas serem cumulativas.

Mas há razões de sobra para se julgar essa simplicidade decepcionante.

Page 140: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

139

Os Algoritmos Evolucionários, segundo Coelho (2000), tratam de métodos

estocásticos e seu desempenho varia de execução para execução ( a menos que o

mesmo gerador de números aleatórios com a mesma semente seja utilizado):

▪ Apresentam dificuldades para a determinação do ótimo global, sem a utilização de

uma metodologia de otimização local;

▪ Necessitam de análise de todas as amostras do processo a cada avaliação do

fitness ( limitação relevante para aplicações de controle em tempo real).

Pode ser feita uma analogia direta entre algoritmo evolutivos com etapas de busca

local e a uma população de seres humanos vivendo em sociedade. Considere dois

indivíduos desta população que sejam igualmente aptos físicos e intelectualmente.

Se um deles tiver acesso ao conhecimento de técnicas de convivência social e outro

não, então a capacidade de convivência social de ambos será distinta, pois um

deles, além das aptidões genética, aprendeu aptidões culturais ou meméticas. Esta

é a razão pelas quais os algoritmos genéticos com etapas de busca local são

comumente denominados de algoritmos meméticos. De uma forma genérica, é

possível dizer que, se os algoritmos genéticos foram criados tentando simular a

evolução biológica, os algoritmo meméticos tentam simular a evolução cultural

(MORONI, 2003).

O Algoritmo Cultural pode ser caracterizado como uma extensão do Algoritmo

Genético, no qual, tem-se a ideia de que uma cultura praticada nos indivíduos de

uma população pode aumentar as chances de encontrar boas soluções.

Page 141: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

140

O Algoritmo Cultural, assim como o Genético, são bons para localizar, velozmente,

as regiões promissoras do espaço de busca. Porém, são muito lentos para refinar as

soluções. Assim, necessitam de um tempo maior para encontrar o ótimo global ou

soluções bem aproximadas.

Já a Transgenética Computacional é uma proposta evolucionária multiagente para o

aproveitamento do fluxo intracelular e que encontra justificativa tanto nas

dificuldades do processo Darwiniano em constituir blocos de montagem.

Sabidamente o estado da arte ainda não alcançou uma “teoria de tudo” – ou uma

teoria que possa integrar todas as disciplinas e solucionar todos os questionamentos

( de fato muitos até duvidam que tal teoria de fato existe, o que comprova o quão

afastados estamos das certezas em nossas atuais teorias). Assim, é natural que os

avanços da ciência provoquem reformulações ou re-acomodações nas teorias

existentes, quaisquer que sejam elas – até que o fundo do poço seja alcançado.

Questionar uma teoria é, no mínino, elogiá-la com a atenção dispensada. O mar das

incertezas cientificas não faz exceções entre teorias, mesmo que isso

eventualmente possa contrariar “a crença” de alguns de seus seguidores.

No que tange ao desenvolvimento de algoritmo evolucionários a mensagem é clara:

Existem outros caminhos que não a abordagem clássica dos algoritmos genéticos

para realizar uma evolução artificial eficiente.

Page 142: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

141

TRABALHOS FUTUROS

Sugeri-se como trabalhos futuros a implementação dos algoritmos descritos com

base na teoria apresentada.

Page 143: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

142

RREEFFEERRÊÊNNCCIIAA

ARTHUR E.; Et al. A new approach to solving the multiple traveling salesperson

problem using algorithms Department of Business Information Technology, Pamplin

College of Business, Blacksburg, United States, 2005.

ANGELINE, P. J. Using selection to improve particle swarm optimization, in

Proceedings of the IEEE International Conference on Evolutionary Computation, 84-

89, 1998..

ABD-EL-BARR, M., Et al.. A Modified Ant Colony Algorithm for Evolutionary Design

of Digital Circuits, in IEEE Congress on Evolutionary Compatation, 2003..

GANTOVNIK, V. B., GURDAL, Z WATSON, L. T. A genetic algorithm with memory

for optimal design of laminated sandwich composite panels, Composite Structures

58,2002..

ARSLAN, T., HORROCKS, D.H., E OZDEMIR, E. Structural Synthesis of Cell-based

VLSI Circuits using a Multi-Objective Genetic Algorithm, IEE Electronic Letters,

1996.

AZADIVAR, F., E TOMPKINS, G. Simulation optimization with qualitative variables

and structural model changes: A genetic algorithm approach, EJOR, 1999.

AYALA, F.J.; VALENTINE, J.W. Evolving. The theory and processes of organic

evolution. The Benjamin/Cummings Publ. Comp., California. Capítulo 1, pp. 1-17,

1979. (Tradução: Celso Abbade Mourão).

AYTUG, H., E SAYDAM, C. SOLVING large-scale maximum expected covering

location problems by genetic algorithms: A comparative study, EJOR 141(3), 2002.

Page 144: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

143

BACK, T.; FOGEL, D. B.; MICHALEWICZ, Z. Evolutionary computation 2: Advance

algorithms and operators. Bistol, UK: IOP, 2000.

_______. Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Programming, Genetic Algorithms. New York: Oxford University Press, 1996. BAGLEY, J. D. The Behavior of Adaptative Systems Wich Employ Genetic and Correlation Algorithms. Tese de Doutorado. University of Michigan, 1967. BARROS, NETO, J. F. Análise de Desempenho dos Operadores Genéticos Aplicados ao Problema do Caxeiro Viajante. Anais do XXIX Seminário Brasileiro de Pesquisa Operacional – SBPO, Salvador-BA, 1997. BEHE, M. Darwin’s Black Box: The Biochemical to Evolution, The Free Press, New York, 1996. BENTLEY, P.; CORNE, D. Creative Evolutionary Systems. San Francisco: Morgan Kaufmann, 2002. BERSINI, H.; RENDERS, B. Hybridizing Genetic Algorithms with Hill-Climb Methods for Global Optimization: Two Possible Ways. In 1994 IEEE International Symposium Evolutionary Computation. 312-317, Orlando, USA, 1994. BETHKE, A. D. Genetic Algorithms As Function Optimizers. Tese de Doutorado. University of Michigan, 1981. BINDER, L.. Monte Carlo Methods in Statistical Physics. New York: Springer, 1978 BLICKLE, T.; THIELE, L. A comparision of selection schemes used in genetic algorithms. TIK-Report nr 11 version 2, Computer Engineering and Communication Networks Lab. Swiss Federal Institute of Technology (ETH), Zurich, Switzerland, December, 1995. BODIN, L. D. at al. Routing and scheduling of vehicles and crews: The state of the art. Computers and Operations Research, vol.10, n.2, 1983.

Page 145: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

144

BORGES, Karla A. V. Modelagem de dados geográficos – uma extensão do modelo OMT para aplicações geográficas. Dissertação de mestrado. Belo Horizonte, MG: ESCOLA DE GOVERNO DE MINAS GERAIS, Fundação João Pinheiro, 1997. BOCK, F. Na algorithm for solving “traveling salesman” and related network optimization problems, presented at the 14th National Meeting of the Operations Research Society of America, St. Louis, Missouri, 1958. BONABEU, E.; DORIGO, M.; THERAULAZ, G, Swarm Intelligence: From Natural To Artificial Systems, Oxford University Press, 2003. BULLNEHIMER B.; HARTL R. F. E.; STRAUSS, C. A New Rank Based Version Of The Ant System: A Computational Study, Central European Journal For Operations Research And Economics 7(1), 25-38, 1999. CALDWELL, C. E JOHNSTON, V. S. Tracking A Criminal Suspect Through “Face-Space” With A Genetic Algorithm, In Proceedings Of Fourth International Conference On Genetic Algorithms, 416-421, 1991. CAMPELLO, R.; MACULAN, N Algoritmos e Heurísticas – Desenvolvimento e Avaliação de Performance. Niterói, RJ: EDUFF, 1994. CARBONATO, A.; MANIEZZO, V. The Ant Colony Optimization paradigm for combinatorial optimization in Advances in Evolutionary computing: theory and applications, Springer-Verlag, 539-557, 2003. CHATTERJEE, S .; CARRERA, C.; LYNCH, L.. A. Genetic algotithms and traveling salesman problems – European Journal of Operational Research. Vol 93, 1996. CHENG, R. W.; GEN, M. Parallel machine sheduling problems using memetic\algorithms, Computers & Industrial Engineering 33(34), pp.761-764, 1997. CHUNG, C.; REYNOLDS, R. A Testbed for Solving Optimization Problems Using Cultural Algorithms, Department of Computer Science, Wayne State University. Michigan, USA, 1996. CIUPRINA, G., IOAN, D., E MUNTEANU, I. Use Of Intelligent-Particle Swarm Optimization In Electromagnetics, Ieee Transactions On Magnetics 38(2), 1037-1040, 2002.

Page 146: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

145

CLERC, M. The Swarm And The Queen: Towards A Deterministic And Adaptive Particle Swarm Optimisation, In Proceedings Of The Ieee International Congress On Evolutionary Computation 3, 1951-1956, 1999. COELHO, L. S. Identificação e controle de processos multivariáveis via metodologias avançadas e inteligência computacional, Tese de doutorado, Pós-Graduação em Engenharia Elétrica, Universidade Federal de Santa Catarina, florianópolis, SC, 2000. COELHO, C. A. C.; BECERRA, R. L. Evolutionary Multiobjective Optimization using a Cultural Algorithm. IEEE Swarm Intelligence Symposium, SIS ’03, 2003. COELLO, C. A. C., E Becerra, R. L. A Cultural Algorithm For Constrained Optimization, Lecture Notes In Computer Science, In Proceedings Of The Second Mexican International Conference Of Artificial Intelligence: Advances In Artificial Intelligence, 98-107, 2002. COOK, S. A.. The complexity of theorem, proving procedures. In: ACM SYMPOSIUM ON THEORY OF COMPUTING, 3. New York, 1971. CUNHA, C. B. Aspectos práticos da aplicação de modelos de roteirização de veículos a problemas reais. Transportes, v.8, n.2, p. 51-74, 2000. ______. Uma contribuição para o problema de roteirização de veículos com restrições operacionais. São Paulo: EPUSP, Departamento de Engenharia de Transportes, (Tese de Doutorado), 1997. DARWIN, C. Origin of species by means of natural selection, or the preservations of favored races in the struggle for life. 6th Edition, v. I and II. Jonh Murray: London, Albemarle Street, 1859. DAWKINS, R. The Blind Watchmaker. London: Penguin Books, 1991. DAWKINS, R. The Selfish Gene, Oxford: Oxford University Press, 1976. DAVIS, L. Handbook of Genetic Algorithms. Van Nostrand Reinhold, 1991.

Page 147: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

146

DELLAERT, N., JEUNET, J., E JONARD, N. A genetic algorithm to solve the general multi-level lot-sizing problem with time-varying costs, International Journal of Production Economics 68(3), 2000. DOBZHANSKY, T. Genetics and the Origin of Species. The Columbia Classiscs in Evolutionary Series. Columbia Univ. Press, New York, 1937. DORIGO, M.; CARO, G. DI. The Ant Colony Optimization Meta-Heuristic. In D. Corne, M. Dorigo and F. Glover, editors, New Ideas in Optimization, McGraw-Hill, 1999. _______.GAMBARDELLA, L. M.. Ant Colonies for the Traveling Salesman Problem, BioSystems, Also Technical Report TR/IRIDIA/1996-3, IRIDIA, 1997. _______. Optimization, leraning ande natural algorithm ( in Italian). Unpublished doctoral dissertation, Politecnico di Milano, Dipartumento di Elettronica, Italy, 1992. EBERHART R. C.;. SHI, Y. Particle swarm optimization: Developments, applications and resources, in Proceedings of the IEEE International Conference on Evolutionary Computation 1, 2001. EBERHART, R.: Simpson, P.; DOBBINS, R. Computational Intelligence PC Tools: an indispensable resource for the latest in fuzzy logic, neural network and evolutionary computing. American Press Inc., 1996. EHRLICH, P. R.; RAVEN, P. H. Butterflis and Plants: A Study in Coevolution. Evolution. 1964. FLOOD, M. M. The Traveling-Salesman Problem. Operattions Research 4, n. 1, p. 61-75, 1956. FREISLEBEN; MERZ, P. New Genetic Local Search Operators for the Traveling Salesman Problem. 4th Conference on Parallel Problem Solving from Nature Springer. 1996. FOGEL, D. B. Evolutionary Computation: toward a new philosophy of machine intelligence. Second Edition. IEEE Press, 2000.

Page 148: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

147

_______. ATMAR, W. First Annual Conference on Evolutionary Programming. Evolutionary Programming Society. La Jolla, California, 1992. _______. Artificial Intelligence Through Simulated Evolution, Wiley, New York, 1966. FONSECA, C. M.; FLEMING, P. J. “Genetic Algorithms for Multiobjective Optimization: Formulation, Discussion and Generalization”. In: Proceedins of the Fifth International Conference on Genetic Algorithms, 1993. FORSYTH, P.; WREN, A. An Ant Systems for Bus Driver Scheduling. VII International Workshop on Computer-Aided Scheduling of Public Transport, Boston, 1997, FRANKLIN B.; BERGERMAN M. Cultural algorithms: Concepts and experiments. In Congress on Evolutionary Computation, pages 1245-1251, Piscataway, NJ. IEEE Service Center, 2000. FREITAS, A. A. A. survey of evolutionary algorithms for data mining and knowledge discovery. To appear in: Ghosh, A.; Tsutsui, S. (Eds.) Advances in evolutionary computation. Springer-Verlag, 2001. GAMBARDELLA, L. M.; DORIGO, M. Solving Symmetric and Asymmetric TSPs by Ant Colonies. Proc. Conf. Evolut. Comp. (ICEC’96) IEEE Press, 1996. _______. Macs-Vrptw: A Multiple Ant Colony System For Vehicle Routing Problems With Time Windows. In D. Corne, M. Dorigo, And F. Glover, Editors, New Ideas In Optimization. Mcgraw-Hill, 1999.. GARCIA, V. J.; FRANÇA P. M.; MOSCATO P. A.. Algoritmo Memético paralelo aplicado a Problemas de Seqüenciamento em Máquina Simples. Departamento de Engenharia Elétrica de Sistemas. Universidade Estadual de Campinas, Campinas – SP, 2001. GAREY, M.R.; JOHNSON, D. S. Computers and intractability: a guide to the theory of NP-completeness. San Francisco: Freeman, 1979. GLOVER, F. Tabu search – part I. ORSA Journal on Computing, v. 1, n .3, p. 190-210, 1989a.

Page 149: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

148

_______. Future Paths for Integer Programming and Links to Artificial Inteligence. Computers and Operations Research 13, pp. 533-549. 1986. _______. LAGUNA, M. Tabu Search. Kluwer Academic Publisher, Boston, 1997. _______. Tabu Search: fundamental and uses. Rapport Technique, Graduate School of Business, University of Colorado, Boulder, 1996. GREFENSTETTE, J. J. Deception Considered Harmfull. In: Foundations of Genetic Algorithms, Whitley, L. D. (Ed.), v. 2, San Mateo, CA: Morgan Kaufmann, 75-91, 1993. GOLDBARG, M.C.; LUNA, H. P. L. Programação Linear e Otimização Combinatória, Modelos e Algoritmos, Ed. Campus, 2ª Edição, 2005. _______. LUNA, H. P. R. Otimização Combinatória e Programação Linear. Rio de Janeiro: Editora Campus, 1999. _______. GOLDBARG, E. F. Transgenética Computacional: Uma aplicação ao Problema Quadrático de Alocação. Pesquisa Operacional, 2002. _______. GOUVÊA, E. F. Transgenética Computacional, Relatório Técnico, Programa de Engenharia de Produção da COPPE/UFRJ, 2001. _______. LUNA, H. P. C. Otimização Combinatória E Programação Linear: Modelos E Algoritmos. Rio de Janeiro: 2000. _______. FERREIRA, R. P. M. LUNA H. P. L.. Vírus Infections for Acceleration of Genetic Algorithms: Na Introductory Study, III Meta-heuristics International Congress, Angra dos Reis, Brasil, 1999. GOLDBERG, D. E. Genetic Algorithms in Search, Optimization, and Machine Learning, Addison Wesley, 1989. GOUVÊA. E. F., e GOLDBARG M. C. A transgenetic algorithm applied to the quadatic assignment problem. Journal of Heuristics. Submetido em 2003.

Page 150: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

149

_______. Transgenética Computacional: Um Estudo Algoritmo, Tese de Doutorado, Programa de Engenharia da Produção, COPPE-UFRJ, Rio de Janeiro, 2001. GOSS, S.; Et al. Self-organized shortcuts in the Argentine ant. Naturwissenschaften, 76:579-581, 1989. HAJELA, P.; LIN, C. Y. “Genetic Search Strategies in Multicriterion Optimal Design”. In: Structural Optimization, v.4, pp.99-107, 1992. HAUPT, R.I.; HAUPT, S. E. Practical Genetic Algorithms, Wiley, New York, 1998. HELSGAUN, K. An effective implementation of the Lin-Kernigham Traveling Salesman Heuristic, European Journal of Operational Research, v. 126, p. 106-130, 2000. HASSINI, E., E VICKSON, R, G. A two-carousel storage location problem, Computers & Ops., 2003. HEPPNER, F. A Stochastic nonlinear model for coordinated bird flocks. In S. Krasner, Ed., The Ubiquity of Caos. AAAS Publications, Washington, DC, 1990. HORN, J.; NAFPLIOTIS, N. Multiobjective Optimization Using the Niched Pareto Genetic Algorithm.IIIiGAL Report No. 93005, IIIinois Genetic Algorithms Laboratory, University of lllinois Urbana, Champaign, Jul. 1993. HOLLAND, J. Adaptation in Natural and Atificial Systems. Ann Arbor: University of Michigan Press, 1975. HOUCK, C. R. et al. Empirical Investigation of Benefits of Partial Lamarckianism, Technical Report _______. JOINES, J. A.; KAY, M. G. Utilizing Lamarckian Evolution and Baldwing Effects in Hybrid Genetic Algorithms, Technical Report No NCSU-IE TR 96-01, Raleigh: North Carolina State University, 1996. HULL, D. Filosofia da ciência biológica. Tradução de Eduardo Almeida. Rio de Janeiro: Zahar, 1975.

Page 151: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

150

INGLESTON, B., E SMITH, R. (1997), Na application of genetic algorithms to air combat maneuvering, in Handbook of Evolutionary Computation, IOP Publishing Ltd. 1997. JERALD, J.P.; Et al. Scheuling optimization of flexible manufacturing systems using particle swarm optimization algorithm. Published online: 16 March 2004, Int J Adv Manuf Technol, Springer-Verlag London, 2005. JONES, T.; FORREST, S Fitness Distance Correlation as a Measure of Problems Difficulty for Genetic Algorithm, Technical Report, Santa Fe Institut, CA , 1996. KARR, C.L.,E GOLDBERG, D.E. (1990), Genetic Algorithm Based Design Of An Air-Injected Hydrocyclone, Control 90, Mineral And Metallurgical Processing, 265-272. KARP, R. M. Reducibility Among Combinatorial Problems, Complexity of Computer Compulations, 1972. KAUFFMAN, A. A. The Origins of Order: Self-Organization and Selection in Evolution, Oxford University press, Nova York, 1993. KENNEDY, J. Small worlds and mega-minds: Effects of neighborhood topology on Particle Swarm performance. Congress on Evolutionary Computation, Washington, DC, IEEE, 1999. _______. Particicle Swarm Optimization. Neural Networks. Proceedings, IEEE International Conference on. Perth, WA, Australia. P. 1942-1948, Volume 4, 1995. KENNEDY, J., E EBERHART, R.C. (1997), A discrete binary version of the particle swarm algorithm, in Proceedings of the 1997 Conference on Systems, Man, and Cybernetics, 4101-4109 KIM, Y. J., KIM, Y. K., E CHO, Y. (1998), A heuristic-based genetic algorithm for workload smoothing in assembly lines, Computers & Ops. Res 25(2), 99-111 KIRKPATRICK, S.; GELLAT Jr., C. D.; VECCHI, M. P. Optimization by simulated annealing. Science, v.220, p. 671-680, 1983. KNOSALA, R; WAL, T. A production scheduling problem using genetic algorithm. Journal of Materials Processing Techonology, v.109, p. 90-95, 2001.

Page 152: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

151

KRASNOGOR, N.; SMITH, J. Competent Memetic Algorithms: Model, Taxonomy and Dressing Issues. Automatic Scheduling, Optimization and Planning Group School of Computer Science and IT. Universidade de Nottingham, 2001. LAGUNA, M. Tabu Search Tutorial, II Escuela de Verano Latino-Americana de Investigación Operativa, 1991. LAMBERT. A. J. D. Determining optimum disassembly sequences in eletronic equipment, Computers and Industrial Engineering 43(3), 553-575, 2002.. LAPORTE, G. The Vehicle-Routing Problem – An Overview of exact and approximate algorithms, European Journal of Operational Research, v. 59, p. 345-358, 1992. LASKARI, E. C., PARSOPOULOS, K. E., E VRAHATIS, M. N. Particle swarm optimization for integer programming, in Proceedings of the IEEE International Congress on Evolutionary Computation 2. 1582-1587, 2002. LAWRENCE V.; Et al. A random-key genetic algorithm for the generalized traveling salesman problem. European Journal of Operational Research Department of Industrial and Systems Engineering. Bethlehem, USA, 2005. LEWIS, H. E; PAPADIMITRIOU, C. Elements of The Theory of Computation, Prentice-Hall International, 1981. LIN, S.; KERNIGHAN, B. An Effective Heuristic Algorithm for the Traveling Salesman Problem. Operational Research, 21. 498-516, 1973. MACHADO, T. R.; HETIRO, S. L. A. hybrid particle swarm optimization model for the traveling salesman problem. Laboratório de bioinformatica/ CPGEI, CEFET-PR – 2005. MANIEZZO V, GAMBARDELLA L.. M., DE LUIGI F. Ant Colony Optimization, in New Optimization Techniques in Engineering, Springer-Verlag, 101-117, 2004. _______. CARBONARO, A. Ant Colony Optimization: Na Overview. Scienze dell’Informazione, Universidade de Bologna, Itália, 1999.

Page 153: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

152

MARGULIS, L.. Symbiotic Planet. Basic Books, Nova York, 1998. MENDES, A.; Et al.. Memetic Algorithms to minimize tardiness on a single machine with sequence-dependent setup times, Journal of Operational Research, accepted, 2001. MERZ, P.; FREISLEBEN, B. A C omparison of Memetic Algoritms, Tabu Search, and Ant Colonies for the Quadratic Assignment Problem, Congress on Evolutionary Computation, vol. 3, pp. 2063-2070, 1999. _______. A Genetic Local Search Approach to the Quadratic Assignment Problem. In Bäck, T. editor, Proceedings of the 7th International Conference on Genetic Algorithms, 465-472. Morgan Kaufmann, 1997. METROPOLIS, N.; ROSENBLUTH, A. W.; TELLER, A., H. Equation of State Calculation by Fast Computing Machines, J. of Chem. Phys., 21, pp. 1087-1091, 1953. MICHALEWICZ, Z.; FOGEL, D. B. HOW TO Solve IT: Modern Heuristics. New York: Springer, 1998. MILLER, B. L.; GOLDBERG, D. E. Genetic Algorithms, Selection Schemes, And The Varying Effects Of Noise, llIigal Report 95009, Department Of General Engineering, University Of IIIinois At Urbana-Champaing, 1995. MITCHELL, M. An Introduction to Gene tic Algorithms. MIT Press, 1999. _______. An Introduction to Genetic Algorithms. Massachusets: MIT Press, 1996. MORITZ, A. Memetic Science: I – General Introduction, The Institute for Memetic Research, Panama City, Florida, 1990. MORONI, A. M. F. Artebitrariedade: uma relfexão sobre a natureza da criatividade e sua possível realização em ambiente computacionais.-Campinas/SP, 2003. MOSCATO, P.; NORMAN, M. G. A memetic approach for the travelling salesman problem – implementation of a computational ecology for optimisation on message-

Page 154: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

153

Passing systems, Proceedings of the International Conference on Parallel Computing and Transputer Applications, Amsterdam, IOS Press, 1992. _______. On Evolution, Search, Optimization, Genetic Algorithms and Martial Arts, Caltech Concurrent Computation Program 158-79, California Institute of Technology, 1989. NAYEBZADEH, M. Et al.Real-Time Identification of Fetal Arrhythmia Using a Genetic Algorithm, in 6th European Cpngress on Intelligent Techiniques and Soft Computing, EUFIT ’98, B-27 V3, 1998. NOTREDAME, C., E HIGGINS, D. G. SAGA: sequence alignment by genetic algorithm, Nucleic Acids Research., 24(8), 1515-2154, 1996. PARK, B. J.; CHOI, H. R., KIM, H. S. A hybrid genetic algorithm for the job shop scheduling problems, Computers and Industrial Engineering, 2003. PARSOPOULOS, K. E., E VRAHATIS, M. N. Recent approaches to global optimization problems through Particle Swarm Optimization, Natural Computing 1, 235-306, 2002ª. _______. Particle Swarm Optimization method in multiobjective Problems, in Proceedings ACM Symposium on Applied Computing (SAC 2002), 603-607, 2002b POON, P. W.;CARTER, J. N. Genetic algorithm crossover operators for ordering applications – Computers & Operations Research. Vol. 22, n. 1, 1995. POTVIN, Jean–Yves–Genetic algorithms for the traveling salesman problem - Annals of Operations Research. Vol 63, 1996. PRESTON, P., E KOZAN, E. Na approach to determine storage locations of containers at seaport terminals, Computers & Ops. Res28(10), 983-995, 2001. RADCLIFFE, N. J., SURRY, D. P. Fundamental Limitations on Search Algorithms: Evolutionary Computing in Perspective, In Lecture Notes in Computer Science, 1000, 1995. _______. Formal Memetic Algorithms, Evolutionary Computing: AISB Workshop, Ed: T. Forgaty, Springer-Verlag, 1994.

Page 155: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

154

RAMOS, I. C. O. Tese doutorado – Metodologia estatística na solução do problema do caxeiro viajante e na avaliação de algoritmos: um estudo aplicado à transgenética computacional. Natal /RN, 2005. _______. Et al. Ajuste de Parâmetro por Regressão Logística. IEEE, CEC-2005. _______. Uma Técnica Estatística na Solução do Problema do Caxeiro Viajante através de um Algoritmo Evolucionário. In: XXXVII SIMPÓSIO BRASILEIRO DE PESQUISA OPERACIONAL, 2005, Gramado. Anais..., 2005. RAY, P. K., E MAHAJAN, A. (2002), A genetic algorithm-based approach to calculate the optimal configuration of ultrasonic sensors in a 3D position estimation system, Robotics and Autonomous Systems 41(4), 165-177. REINELT, G. The Traveling Salesman – Computational Solutions for TSP Applications. Berlin: Springer-Verlag, 1994. RENFREW, A.C. Dynamic Modeling in Archaelogy: What, When, and Where? In S. E. van der Leeuw, editor, Dynamical Modeling and the Study of Change in Archaelogy. Edinburgh University Press, Edinburgh, Scotland, 1994. REYNOLDS, R. G. A testbed for solving optimization problems using cultural algorithms, Evolutionary Programming V, L. J. Fogel, P. J. Angeline, and T. B¨ack, Eds. Cambridge, MA: MIT Press, 1996, pp. 225-236, 1996. _______. An Introduction to Cultural Algorithms. In A. V. Sebald and L. J. Fogel, editors, Proceedings of the Third Anuual Conference on Evolutionary Programming, pages 131-139. Wolrd Scientific, River Edge, New Jersey, 1994. REYNOLDS, C. W. Flocks, Herds and Schools: a Distributed Behavioral Model. Computer Graphics, 21(4), 24-34, 1987. ROMEO, J.S.; VICENTELLI, A. S. A Theoretical Framework for Simulated Annealing, Algorithmica, 6, pp.302-345, 1991. ROSENBERG, R. S. Simulation of Genetic Populations With Biochemical Properties. Tese de Doutorado. University of Michigan, 1967.

Page 156: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

155

SALMAN, A., AHMAD, I., E AL- MADAMI, S. (2002), Particle swarm optimization for task assignment problem, Microprocessors and Microsystems 26(8), 363-371 SATOH, T., NARA, K., MISHIMA. Algorithm for Solving Steiner Problem in Graph, in IASTED International Conference on Simulated Evolution And Learning, 2002. SCHAFFER, J. D. Multiple Objective Optimization with Vector Evaluated Genetic Algorithms. Ph.D. dissertation, Vanderbilt University, 1985. SCHIMITT, Lawrence J.; AMINI, Mohammad M. Performance characteristics of alternative genetic algorithmc approaches to the traveling salesman problem using a path representation: An empirical study – European Journal of Operational Research. Vol 108, n. 3, agosto de 1998. SHAPIRO, J. Genetic Algorithms in Machine Learning, taught at the Advanced Summer School on Machine Learning and Applications, 1999. SHOKOOH-SAREMI, M., et al. Design of multilayer polarizing beam splitters using genetic algorithm, Optics Communications, 2004. SOUZA, P. S., Asynchronous organizations for multi-algorithms problems. Pittsburgh: Carnegie Mellow University, Department of Electrical and Computer Engineering. 139p, (Tese de Doutorado). 1993. SRINIVAS, N.; DEB, K.. “Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms”. In: Evolutionary Computation, 2(3): pp. 221-248, 1994. STERNBERG, M. Using Cultural Algorithms to Support Re-Engineering of Rulu-Based Expert Systems in Dynamic Performance Environment: A Case Study in Fraud Detection, IEEE Transactions on Evolutionary Computation, Vol.1, No.4, pp.225-243, 1997. STUETZLE T.; HOODS, H. MAX-MIN Ant System and Local Search for Combinatorial Optimization Problems. In Proceedings Second International Conference on Meta-heuristics. MIC’97. Dordrecht: Kluwer Academic, 1998. TAILLARD, E. D. A Heuristic Column Generation Method for the Heterogeneous Fleet VRP, RAIRO 33, 1-34, 1999.

Page 157: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

156

TING,T-O., et al. Solving Unit Commitment Problem Using Hybrid Particle Swarm Optimization, Journal of Heuristics 9(6), 507, 2003. TOPCUOGLUA, H.; Et al. Solving the uncapacitated hub location problem using genetic Algorithms, Computers & Ops. Res, a ser publicado, 2003. VÁLDES, M., DURÁN, M. D., E ROVIRA, A.. Thermoeconomic Optimization Of Combined Cycle Gas Turbine Power Plants Using Genetic Algorithms, Applied Thermal Engineering 23(17), 2169-2182, 2003. VARANELLI, J. M. On the Accelaration of Simulated Annealing, Ph. D. Thesis, University of Virginia, USA, 1996. VIANA, G. V. R. Meta-heurísticas e programação paralela em otimização combinatória, Fortaleza: Edições UFC, 1998. VICO, F., et al. Knee surgery planning with genetic algorithms and neural networks, in 4th International Conference “Neural Nteworks and Expert Systems in Medicine and Healthcare” NNESMED 2001. VON ZUBEN, F. J. Computação Evolutiva: Uma Abordagem Pragmática. Universidade de Campinas – UNICAMP, 2002. Disponível em: http://www.dca.fee.unicamp.br/~vonzuben/cousrses/ia707.html. Acessado em: 16 ago 2004. WHITLEY, D. A Genetic Algorithm Tutorial, Technical Report, Computer Science Department, Colorado State University, 1994. YANG, R.; DOUGLAS, I. Simple Genetic Algorithm with Local Tuning: Efficient Global Optimizing Technique. Journal of Optimization Theory and Applications, vol. 98, No. 2, pp.449-465, August 1998. YAO, Xin. Evolutionary Computation: Theory and Applications. World Scientific Birmingham, UK, 1999. YOSHIDA, H., KAWATA, K., FUKUYAMA, Y., A Particle Swarm Optimization For Reactive Power And Voltage Control Considering Voltage Stability, In Proceedings Of International Conference On Intelligent System Application To Power Systems, 117-121, 1999..

Page 158: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

157

_______. An overview of evolutionary computation, Chinese Journal of Advanced Software Research, v.3, n. 1 ,p. 12-29, 1996. ZHOU, G., E GEN, M Approach to degree-constrained minimum spanning tree problem using genetic algorithm, Engineering Design & Automation 3(2), 157-165, 1997.. ZHOU, G.,MIN, H.; GEN, M. A genetic algorithm approach to the bi-criteria aloocation of customers to warehouses, Internatioanal Journal of Production Economics 86(1), 35-45, 2003. ZITZLER, E.; THIELE, L. An Evolutionary Algorithm for Multiobjective Optimization: The Strength Pareto Approach. Computer Engineering and Communication Nteworks Lab (TIK), Swiss Federal Institute of Techgnology (ETH), Zurich, 1998.

Page 159: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

158

AAPPÊÊNNDDIICCEE -- AA O Problema do Caixeiro Viajante

O Problema do Caixeiro Viajante – PCV (do inglês Traveling Salesman Problem -

TSP) é um dos problemas mais estudado em Otimização Combinatória (LAPORTE,

1992). Apesar da sua definição singela, o PCV representa, até hoje, um dos desafios

da Pesquisa Operacional. Centenas de artigos já foram publicados sobre o PCV.

A definição do problema é direcionada para um conjunto de cidades de modo que,

sempre seja possível viajar de uma cidade à qualquer outra, e que as distâncias

entre elas sejam fixas e conhecidas. O objetivo é encontrar uma seqüência de

cidades de forma que o caixeiro viajante visite cada cidade uma única vez, fazendo

o menor trajeto possível.

Baseado no jogo de Hamilton o Problema do Caixeiro Viajante possui uma

importância fundamental para a Ciência da Computação. Nesse caso deve-se definir

uma seqüência de visitas sobre um conjunto de vértices de um grafo ponderado em

arestas de modo que o custo da trajetória sobre os vértices seja a menor possível,

Page 160: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

159

onde o custo da mesma é dado pelo somatório dos pesos das arestas que

compõem a solução.

Sua origem é creditada a William Hamilton, que criou um jogo cujo objetivo era o de

traçar um roteiro através dos vértices de um dodecaedro ( vértices equivalema

cidades) que iniciasse e terminasse no mesmo vértices (cidade) sem, contudo,

repetir uma visita. O Cicllo Hamiltoniano constitui uma solução para o jogo de

Hamilton ( GOLDBAR e LUNA,1999).

Um jogo denominado “Around the World” que consistia em encontrar um ciclo que,

partindo de qualquer vértice do grafo da figura 1, passasse por todos os demais

vértices apenas uma vez e retornasse ao vértice inicial (GOLDBARG e LUNA, 2005),

ilustra o PCV.

Figura 1: O Jogo de Hamilton e uma Solução

Não só a questão do desempenho computacional tem atraído o interesse pelo PCV;

Inúmeros problemas reais são modelados como problemas do tipo caixeiro viajante

Page 161: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

160

ou suas variantes. Conseqüentemente, existe uma importante necessidade de novos

algoritmos de solução.

Entre esses problemas pode-se citar o problema de produção que corresponde ao

seqüenciamento de n tarefas em uma única máquina, de forma a minimizar o tempo

total de execução das mesmas. Em linhas de montagem de componentes

eletrônicos busca-se encontrar, por exemplo, o roteiro de mínima distância para um

equipamento cuja tarefa é soldar todos os componentes de uma placa eletrônica. O

menor percurso total do equipamento para percorrer todos os pontos da placa está

diretamente associado à produtividade da linha (SOUZA, 1993). Problemas de

cristalografia e de controle de robôs também são citados (HELSGAUN, 2000,

REINELT, 1994). Isso para não falar nos inúmeros problemas que envolvem a

roteirização de veículos.

Problemas de roteamento de veículos são, muitas vezes, definidos como problemas

de um ou mais caixeiros viajantes que incluem restrições adicionais de capacidade e

de demanda, além de outras que dependem de cada aplicação (CUNHA, 2000).

Sob a ótica de otimização, o PCV pertence à categoria conhecida como NP-difícil

(do inglês “NP-hard”), o que significa que possui ordem de complexidade

exponencial. Em outras palavras, o esforço computacional para a sua resolução

cresce exponencialmente com o tamanho do problema (dado pelo número de pontos

a serem atendidos).

Page 162: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

161

Em termos práticos, isto significa que não é possível resolver até a otimalidade

problemas reais pertencentes à classe NP-difícil5. Conseqüentemente, os métodos

de solução aplicados a instâncias reais são, em geral, heurísticos, isto é, não

asseguram a obtenção da solução ótima do ponto de vista matemático.

Os métodos de solução para o PCV podem ser classificados em exatos e

heurísticos. Os métodos exatos geralmente se baseiam em procedimentos de

enumeração implícita em árvore, conhecidos como branch-and-bound (B&B), para

os quais têm sido propostas diferentes funções limitadoras. Conforme discutidos

anteriormente os métodos exatos têm aplicação limitada para a solução do PCV de

grande parte, tendo em vista a complexidade combinatória destes problemas. Os

trabalhos de Laporte (1992), Helsgaun (2000) e Bodin (1983) apresentam maiores

detalhes sobre os métodos exatos.

Em decorrência da incapacidade dos métodos exatos, métodos heurísticos

compõem o principal foco de interesse para a resolução do PCV. Heurísticas são

procedimentos de solução que muitas vezes se apoiam em uma abordagem

intuitiva, na qual a estrutura particular do problema possa ser considerada e

explorada de forma inteligente, para a obtenção de uma solução adequada (CUNHA,

1997). Assim, na maioria dos casos as heurísticas propostas tendem a ser bastante

específicas e particulares para um determinado problema, carecendo de robustez;

isto é, não conseguem produzir boas soluções para problemas com características,

condicionantes ou restrições pouco diferentes daquelas para as quais foram

desenvolvidas.

5 Inclui problemas de otimização cujo espaço de busca para soluções pode ser infinito.

Page 163: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

162

Os procedimentos heurísticos para o PCV podem ser divididos em dois grupos:

métodos de construção de roteiros e métodos de melhorias de roteiros. Alguns

autores consideram ainda um terceiro grupo, o dos métodos compostos, em que

heurísticas de construção e de melhorias de roteiros são utilizadas de forma

conjunta (HELSGAUN, 2000).

▪ Métodos de Construção de Roteiros

Nos métodos de construção de roteiros, nós (cidades) vão sendo incluídos no roteiro

gradualmente, de modo seqüencial, segundo alguma regra de construção, sem que

a solução parcial obtida seja melhorada. Em outras palavras, um roteiro é construído

iterativamente, sem modificação posterior das seqüências parciais de cidades,

definidas ao longo do processamento do algoritmo.

Segundo Laporte (1992), a construção do roteiro pode se dar através:

� Do método do vizinho mais próximo, no qual o caixeiro inicia em uma cidade

qualquer e então segue para a cidade mais próxima; a partir desta, busca-se

a cidade mais próxima ainda não visitada e assim sucessivamente até que

todas as cidades sejam visitadas, retornando então à cidade de origem;

� De métodos de inserção, nos quais, partindo-se de um roteiro inicial com

apenas duas cidades, e considerando todas as demais cidades ainda não

incluídas no roteiro, seleciona-se para inserção, no roteiro parcial sendo

Page 164: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

163

construído, aquela que atenda um determinado critério; por exemplo, a cidade

que proporciona o menor acréscimo de distância total percorrida, ou a cidade

mais próxima do roteiro, ou a mais distante, ou ainda aquela que forma o

maior ângulo com duas cidades já inseridas no roteiro. Esse procedimento é

repetido sucessivamente, com a análise da inserção entre cada par de

cidades do roteiro parcial, até que todas as cidades sejam inseridas no

roteiro.

Page 165: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

164

AAPPÊÊNNDDIICCEE -- BB Busca Local

As heurísticas de construção são importantes não somente pela sua perspectiva,

mas também porque podem ser usadas para gerar pontos de partida usados por

outra classe de heurísticas, as de busca local. Os algoritmos de busca local são

baseados em modificações simples no circuito. Na solução do PCV, por exemplo,

dado um circuito hamiltoniano, esses algoritmos tentam fazer trocas para que seu

comprimento seja reduzido, até que não seja impossível reduzí-lo mais (um circuito

localmente ótimo).

As técnicas de busca local são importantes não somente pela sua perspectiva e

eficiência, mas também porque elas podem ser usadas para gerar pontos de partida

para diversas outras heurísticas, dentre elas, a Simulated Annealing (SA). A própria

SA pode ser considerada uma variante da heurística de busca local, pois também

usa estratégias de vizinhança, só que usa artifícios para escapar de mínimos locais.

Page 166: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

165

11.. UUMM BBRREEVVEE HHIISSTTÓÓRRIICCOO

O uso da busca em problemas de otimização combinatória tem uma longa história,

que vem desde o final da década de 50, quando o primeiro “algoritmo de troca de

arestas” para o problema do caixeiro viajante foi desenvolvido (BOCK, 1958). Nos

anos subseqüentes, a abrangência da busca local aumentou, e o conceito básico do

“algoritmo de troca de arestas” foi aplicado com sucesso a uma variedade de

problemas.

Na década passada houve um interesse ainda maior sobre o assunto, surgindo bons

trabalhos, tanto teóricos quanto práticos: foram gerados novos algoritmos, foi

introduzida a complexidade da busca local, a busca local tornou-se uma ferramenta

competitiva no manuseio de instâncias de muitos problemas complexos do mundo

real.

22.. EESSTTRRUUTTUURRAASS DDEE VVIIZZIINNHHAANNÇÇAA

As estruturas de vizinhança dependem do problema que se deseja resolver.

Encontrar funções de vizinhança eficientes consiste em um desafio nos algoritmos

de busca local. Nenhuma regra geral é definida para construir uma estrutura de

vizinhança e cada situação tem que ser considerada separadamente. Existem

inúmeras funções de vizinhança descritas na literatura, as mais simples e famosas

são as 2-Opt e 3-Opt. Existe também a Lin-Kernighan (LIIN, 1973), que tem se

mostrado ser uma das mais eficientes estruturas de vizinhança encontradas na

literatura.

Page 167: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

166

2.1 Função 2-Opt

O algoritmo 2-Opt foi proposto primeiramente por (CROCK, 1958), embora o

movimento básico já tinha sido sugerido por (FLOOD, 1956). Esse movimento apaga

duas arestas, quebrando o circuito em dois caminhos, e então reconecta esses

caminhos da outra maneira possível. O movimento é realizado somente se a outra

maneira possível reduz o comprimento do circuito. A Figura 1 mostra o movimento 2-

Opt, enquanto a Figura 2 mostra o esquema de vizinhança para um certo caminho

em uma instância do Problema do Caixeiro Viajante.

Figura 1: movimento 2-Opt.

São excluídas duas arestas e em seguida os caminhos são cruzados, reconectando o caminho, com

a finalidade de formar outro caminho

Figura 2: Esquema de vizinhança do algoritmo 2-Opt para o PCV

Page 168: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

167

2.2 Função 3-Opt

O algoritmo 3-Opt, proposto por (BOCK, 1958), funciona quase da mesma maneira

que o algoritmo 2-Opt. A primeira diferença ocorre no movimento básico, onde três

arestas são apagadas, quebrando o circuito em três caminhos. Outra diferença está

na reconexão destes caminhos, que pode ser feita de duas maneiras diferentes da

qual estavam conectados. O movimento é realizado se uma das duas maneiras

diferentes reduz o comprimento do circuito. Se as duas maneiras reduzem o circuito,

então se opta por reconectar os caminhos da maneira que implica na maior redução.

Além dos algoritmos 2-Opt e 3-Opt, tem-se o k-Opt, que é uma generalização que

permite trocas de k arestas. A Figura 3 mostra dois possíveis movimentos usando a

técnica 3-Opt.

Figura 3: Dois possíveis movimentos 3-Opt

33.. CCOONNSSIIDDEERRAAÇÇÕÕEESS FFIINNAAIISS

As heurísticas de busca local podem ser bastante úteis quando unidas a heurísticas

mais poderosas, tais como os algoritmos genéticos, simulated annealling, GRASP e

busca tabu.

Page 169: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

168

As estruturas de vizinhança são as mais variadas possíveis, restando ao

pesquisador estudar o problema e definir qual a melhor a ser usada. Sendo assim,

ainda continua um desafio desenvolver técnicas de vizinhanças ainda melhores para

um determinado problema.

Na prática, muitos algoritmos de busca local convergem rapidamente e encontram

soluções de boa qualidade. O desempenho de um algoritmo de busca local pode ser

quantificado pelo tempo de processamento e pela qualidade de solução. Boas

soluções são geralmente encontradas em tempos de processamento polinomial de

baixa ordem.

Page 170: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

169

AANNEEXXOO II

NAME: burma14 TYPE: TSP COMMENT: 14-Staedte in Burma (Zaw Win) DIMENSION: 14 EDGE_WEIGHT_TYPE: GEO EDGE_WEIGHT_FORMAT: FUNCTION DISPLAY_DATA_TYPE: COORD_DISPLAY NODE_COORD_SECTION 1 16.47 96.10 2 16.47 94.44 3 20.09 92.54 4 22.39 93.37 5 25.23 97.24 6 22.00 96.05 7 20.47 97.02 8 17.20 96.29 9 16.30 97.38 10 14.05 98.12 11 16.53 97.38 12 21.52 95.59 13 19.41 97.13 14 20.09 94.55 EOF http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/tsp/

Page 171: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

170

Page 172: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

171

Page 173: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

172

Page 174: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

173

Page 175: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

174

Page 176: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

175

Page 177: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

176

Page 178: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

177

Page 179: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

Livros Grátis( http://www.livrosgratis.com.br )

Milhares de Livros para Download: Baixar livros de AdministraçãoBaixar livros de AgronomiaBaixar livros de ArquiteturaBaixar livros de ArtesBaixar livros de AstronomiaBaixar livros de Biologia GeralBaixar livros de Ciência da ComputaçãoBaixar livros de Ciência da InformaçãoBaixar livros de Ciência PolíticaBaixar livros de Ciências da SaúdeBaixar livros de ComunicaçãoBaixar livros do Conselho Nacional de Educação - CNEBaixar livros de Defesa civilBaixar livros de DireitoBaixar livros de Direitos humanosBaixar livros de EconomiaBaixar livros de Economia DomésticaBaixar livros de EducaçãoBaixar livros de Educação - TrânsitoBaixar livros de Educação FísicaBaixar livros de Engenharia AeroespacialBaixar livros de FarmáciaBaixar livros de FilosofiaBaixar livros de FísicaBaixar livros de GeociênciasBaixar livros de GeografiaBaixar livros de HistóriaBaixar livros de Línguas

Page 180: UNIVERSIDADE F R G N EPARTAMENTO DE I M A ROGRAMA DE …livros01.livrosgratis.com.br › cp079547.pdf · 7 agradecimentos em muitas ocasiÕes nÃo hÁ como expressar o agradecimento

Baixar livros de LiteraturaBaixar livros de Literatura de CordelBaixar livros de Literatura InfantilBaixar livros de MatemáticaBaixar livros de MedicinaBaixar livros de Medicina VeterináriaBaixar livros de Meio AmbienteBaixar livros de MeteorologiaBaixar Monografias e TCCBaixar livros MultidisciplinarBaixar livros de MúsicaBaixar livros de PsicologiaBaixar livros de QuímicaBaixar livros de Saúde ColetivaBaixar livros de Serviço SocialBaixar livros de SociologiaBaixar livros de TeologiaBaixar livros de TrabalhoBaixar livros de Turismo