Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile...

21
10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers 1 , P. Larrañaga 2 , I. Inza 2 eta S. Dizdarevic 2 1 Dept. of Applied Mathematics, University of Twente, Enschede, Herbehereak 2 Konputazio Zientziak eta Adimen Artifiziala Saila (EHU) Laburpena Lan honetan Algoritmo Genetiko izenez ezagutzen den optimizazio konbinatorioko teknika heuristi- koa aurkezten da. Teknika honen oinarria, Darwinek plazaratutako ingurunera ongien moldatutako populazioko kide onenak aukera- tzean eta biziraupeneko legeetan dago. Saltzaile ibiltariaren hain- bat hurbilpen egiten dira esanda- ko metodologiaz, Gipuzkoako hainbat herritan egindako zen- bait saiakuntza aurkeztuz. Abstract In this work, one heuristic method for combinatory optimization, known as Genetic Algorithm, is presented. Above mentioned method is based on the principles of selection and survival of the fittest individuals enunciated by Darwin. Different aproximations to TSP (Traveling Salesman Problem) are studied, using mentioned methodology, and showing the results of many experiments made with towns in Gipuzkoa.

Transcript of Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile...

Page 1: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

10 22-2

Algoritmo Genetikoak saltzaileibiltariaren probleman.

Gipuzkoako bira egokiarenatzetik

C.M.H. Kuijpers1, P. Larrañaga2, I. Inza2 eta S. Dizdarevic2

1Dept. of Applied Mathematics, University of Twente, Enschede, Herbehereak2Konputazio Zientziak eta Adimen Artifiziala Saila (EHU)

Laburpena

Lan honetan Algoritmo Genetikoizenez ezagutzen den optimizaziokonbinatorioko teknika heuristi-koa aurkezten da. Teknika honenoinarria, Darwinek plazaratutakoingurunera ongien moldatutakopopulazioko kide onenak aukera-tzean eta biziraupeneko legeetandago. Saltzaile ibiltariaren hain-bat hurbilpen egiten dira esanda-ko metodologiaz, Gipuzkoakohainbat herritan egindako zen-bait saiakuntza aurkeztuz.

Abstract

In this work, one heuristic methodfor combinatory optimization,known as Genetic Algorithm, ispresented. Above mentionedmethod is based on the principlesof selection and survival of thefittest individuals enunciated byDarwin. Different aproximations toTSP (Traveling Salesman Problem)are studied, using mentionedmethodology, and showing theresults of many experimentsmade with towns in Gipuzkoa.

Page 2: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

11

SARRERA

Algoritmo Genetikoak bilaketa- etaoptimizazio-problemak ebazteko erabil dai-tezkeen metodo moldagarriak dira. Izakibizien prozesu genetikoetan oinarrituakdaude. Belaunaldiak aurrera joan ahala,populazioek naturan eboluzionatzen duteindartsuenen hautespen naturalaren etabiziraupeneko legeen arabera. Prozesuhonen antzera, Algoritmo Genetikoak gaidira mundu errealeko hainbat problemarierantzuna emateko. Horregatik, erantzunhauek ondo kodetuz gero, problemarensoluzio optimoetara bilakatzea errazagosuertatuko da.

Azalduko dugun saltzaile ibiltariaren pro-bleman, TSP (Traveling Salesman Problem)ere deitzen dena, –hiri-multzo bat emanik–kostu minimoko bira (kostua kilometro--kopuruaren araberakoa da) lortzen saia-tzen gara, hiri bakoitza behin bakarrik bisi-tatuz eta hasierako puntura itzuliz.

Urtetan zehar saltzaile ibiltariaren proble-mak ikertzaile askoren burua bete izan duhainbat arrazoirengatik. Lehenik, TSP azal-tzen oso problema erraza da, baina ebaztenoso zaila. Bigarrenik, TSP plangintza--problema ugariri aplika dakioke. Azkenik,nolabaiteko test problema bilakatu izan da,hau da, optimizazio-konbinatoriako metodougari TSP problemari aplikatzen zaizkio,beren ahalmenen ideia izatearren.

Ondorengo lanak, TSP problemaren ingu-ruan erabili izan diren gurutzaketa- etamutazio-eragileen berrikusketa burutzendu. Bestetik, Gipuzkoako lurraldeari egoki-tutako aplikazio bat aurkezten da.

Hurrengo atalen edukia ondorengoa da.Bigarren atalean Algoritmo Genetikoensarrera azaltzen da. Hirugarren atalean, sal-tzaile ibiltariaren probleman, AlgoritmoGenetikoen bidez ebazteko, erabilitako

gurutzaketa- eta mutazio-eragileak agertzendira. Laugarren atalean, gurutzaketa- etamutazio-eragile ezberdinen konbinazioaksor ditzaketen saiakuntzen emaitzak ager-tzen dira, ibilbidean oinarritutako adierazpi-dearen arabera, 5.000 biztanle baino gehia-goko Gipuzkoako herrietan.

Saiakuntza hauek Donostiako U.P.V.--E.H.U.ko Kalkulu Zentroko SUN SPARC1000 makinan burutu dira. Bosgarren ata-lak, egindako saiakuntzen arabera ateradaitezkeen ondorioak agertzen ditu.

ALGORITMO GENETIKOAK

Sarrera

Algoritmo Genetikoak (AGak) bilaketa- etaoptimizazio-problemak ebazteko erabil dai-tezkeen metodo moldagarriak dira. Izakibizien prozesu genetikoetan oinarriturikdaude. Belaunaldiak aurrera joan ahala,populazioek naturan eboluzionatu egitendute, Darwinek (4) zioen bezala indartsue-nen hautespen naturalaren eta biziraupene-ko legeen arabera. Prozesu honen antzera,Algoritmo Genetikoak gai dira mundu errea-leko hainbat problemari erantzuna emateko.Horregatik, erantzun hauek ondo kodetuzgero, problemaren soluzio optimoetara bila-katzea errazago suertatuko da.

Algoritmo Genetikoen oinarrizko legeakHollandek (15) ezarri zituen, eta hainbattestutan zehazki deskribatuak ere aurkiditzakegu –Goldberg (13), Davis (6), Micha-lewicz (18), Reeves (22)–.

Naturan, populazio bateko kideek elkarre-kin lehia egiten dute janaria, ura edota gor-delekua lortzeko asmotan. Sarritan espeziebereko kideak ere lehiatzen dira bikotekidea lortzearren. Denbora gehien bizirikirauten dutenek eta bikote kidea erakartze-

22-2

Page 3: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

ko erraztasun handiena duten kideek proba-bilitate handiagoa dute ume-kopuru handiaizateko. Alderantziz, eginkizun hauetarakokaskarrenak diren kideek ume-kopuru txi-kiagoa izango dute. Honek inguruneraongien moldatuta dauden kideen geneakhurrengo belaunaldietako kide askotarazabalduko direla esan nahi du. Arbasoezberdinen ezaugarri onuragarriak konbina-tuz “superizakiak” sor daitezke batzuetan,hauen ingurunearekiko moldamena berearbasoena baino askoz hobea izango dela-rik. Horrela, espezieek eboluzionatu egitendute, ingurunerako gero eta ezaugarri hobe-ak lortuz.

Algoritmo Genetikoek naturaren jokaera-ren analogia zuzena egiten dute. Indibiduo-en populazio batekin lan egiten dute, nonhauetako bakoitzak problema zehatz batenebazpide posiblea adierazten duen. Popula-zioko kide bakoitzari balio edo puntuaziobat ematen zaio, adierazten duen ebazpide-aren borondatearen arabera. Naturan hain-bat baliabiderengatik (janari, ur edo gorde-lekuagatik) lehiatzeko kide horrek dituenezaugarriekin zuzeneko harremana dago.Kide baten problema batenganako molda-mena gero eta handiagoa bada, handiagoaizango da berau gurutzatzeko aukeratuaizateko probabilitatea, bere material geneti-koa era berean aukeratua izan den bestekide batekin gurutzatuko delarik. Gurutza-keta honetatik, kide berriak sortuko dira,eta beren gurasoen hainbat ezaugarri izan-go dute. Kidearen moldamena gero eta kas-karragoa bada, txikiagoa izango da gurutza-ketarako aukeratua izateko duen probabili-tatea, eta aukera gutxi izango du bere mate-rial genetikoa belaunaldietan zehar zabal-tzeko.

Horrela soluzio posibleen populazio berriasortzen da, aurrekoa ordezkatu egiten due-larik, eta honekin erkatuz, ezaugarri “onen”

proportzioa altuagoa du. Horrela, belaunal-diak igaro ahala, ezaugarri “on” hauek erezabaldu egiten dira unean uneko populazio-an. Argi dago, ingurunera ongien moldatutadauden kideen gurutzaketa gertatuz gero,gure soluzioen bilaketa-esparruaren etorki-zun handieneko alderdiak ikertzen direla.Horregatik, Algoritmo Genetikoa ondo disei-natuta baldin badago, populazioa problema-ren soluzio egokirantz hurbilduko da.

Algorimo Genetikoen teknika nahiko gor-dina dela antzeman daiteke, hau da, malgu-tasun eskasekoa; eta horregatik oso eremudesberdinetako problemetan saia gaitezkearrakastaren bila; beste teknika batzuekarazoak dituzten alorretan, hain zuzen.Algoritmo Genetikoak problemaren soluzioegokia aurkitzen duela ziurtatzea ezinezkoaden arren, enpirikoki badakigu maila onar-garriko soluzioak topatzen direla, bestekonbinaziotako optimizazio-algoritmoeksoluzioak topatzeko behar duten denborare-kin konparatuz. Hala ere, problema zehatzbatentzat teknika berezirik balego, horiseguraski Algoritmo Genetikoaren teknikabaino hobea izango litzateke, bai azkartasu-naren eta bai zuzentasunaren aldetik. Algo-ritmo Genetikoak gehienbat teknika bere-ziak ez dituzten problemetan aplikatzendira. Beste aukera bat, teknika berezi horiekAlgoritmo Genetikoekin hibridatzea litzate-ke.

Algoritmo Genetiko Sinplea

Algoritmo Genetiko Sinplea, Kanonikoa eredeitzen dena, 1. irudian aurkezten da.Ondoren ikusiko denez, problemaren kodifi-kazio edo errepresentazioa behar da; egoki-tzen zaiona. Bestetik funtzio bat behar daproblemari atxikitzeko, honek soluzio kode-tu posible bakoitzari zenbaki erreal bat atxi-kiko diolarik. Algoritmoaren exekuzioan

12 22-2

Page 4: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

13

zehar, gurasoak berriz sortzeko aukeratubehar dira, gero guraso aukeratu hauekgurutzatuta umeak sortuz hauetako bakoi-tzarengan mutazio-eragile batek lan egingoduelarik. Horren ondorioz, hurrengo popula-zioa osatuko duten kideak sortuko dira.

Kideak (problemako soluzio posibleak)parametro-multzo batez (geneak izenez eza-gutuko ditugunez) adieraz daitezkeelasuposatzen da, eta hauek bilduz balio-se-gida bat (askotan kromosoma izenez ezagu-tzen dena) osatuko dute. Kideak errepresen-tatzeko alfabetoak nahitaez (0,1) izan beharez duen arren, Algoritmo Genetikoen ingu-ruan dabiltzan teoria gehienek alfabeto horidarabilte.

Biologi arloan, kromosoma zehatz batekadierazten dituen parametro-multzoari feno-tipo deritzo. Fenotipoak izaki bat sortzekobeharrezkoa den informazioa du, izaki horrigenotipo deituko diogularik. Algoritmo Ge-

netikoen arloan hitz berberak erabiltzendira. Horrela, kide baten moldatze-mailaproblemarekiko genotipoaren azterketandatza. Honetan fenotipoak eragin zuzenadu, hau da, moldatze-funtzioa erabiliz kro-mosomatik konputa daiteke.

Moldatze-funtzioa problema bakar etabakoitzarentzat zehazki diseinatu behar da.Kromosoma zehatz bat emanik, moldatze--funtzioak zenbaki erreal bat atxikitzen dio,zenbaki honek kidearen problemarekikomoldatze-maila adierazten duela suposatzendelarik.

Birsorketa-fasean zehar populaziokokideak aukeratzen dira gurutzatzeko etaseme-alabak sortzeko, non hauek, mutatuondoren, hurrengo belaunaldia osatukoduten. Gurasoak zoriz hautatzen dira, ingu-runera ongien moldatuta dauden kideakhautatzea faboratuz kide bakoitzari hauta-tua izateko probabilitate bat atxikitzen bai-

22-2

BEGIN /* Algoritmo Genetiko Sinplea */Hasierako populazioa sortu.Kide bakoitzaren moldatze-funtzioa konputatu.WHILE NOT Bukatuta DOBEGIN /* Belaunaldi berria sortu */

FOR Populazioaren tamaina /2 DOBEGIN /* Ugalketa-zikloa */

Aukeratu aurreko belaunaldiko bi kide,gurutzatzeko (hautatua izateko probabilitate proportzionalakidearen moldatze-funtzioarekiko).Gurutzatu probabilitate zehatz baten araberabi kideek bi ume lortuz.Mutatu bi umeak probabilitate zehatz baten arabera.Konputatu bi ume mutatuen moldatze-funtzioa.Sartu mutatutako bi umeak belaunaldi berrian.

ENDIF populazioak hurbildu duen THEN

Bukatuta : = TRUEEND

END

1. irudia. Algoritmo Genetiko Sinplearen sasikodea.

Page 5: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

tiogu, hau bere moldatze-funtzioarekikoproportzionala delarik. Prozedura hau“zeharkako erruletan” deiturikoan oinarri-tuta dagoela esaten da. Eskema honen ara-bera, ingurunera ondo moldatutako kideakhainbat aldiz aukeratuko dira belaunaldiko.Gaizki moldatutakoak ordea, gutxi batzue-tan.

Gurasoak aukeratu eta gero, bere kromo-somak konbinatu egiten dira, normaleangurutzaketa- eta mutazio-eragileak erabiliz.Eragile hauen ezaugarri nagusiak hurrenezhurren aipatzen ditugu.

Gurutzaketa-eragileak, aukeratutako biguraso hartuz bere kromosomen segidamozten du zoriz aukeratutako posizio bate-an, bi hasierako eta bi bukaerako azpisegi-da sortuz. Gero azpisegidak trukatu egitendira, bi kromosoma berri oso sortuz (ikusi2. irudia). Bi semeek, guraso bakoitzarengeneak jasotzen dituzte. Eragile honek erepuntu batean oinarritutako gurutzaketa--eragile izena jasotzen du.

Normalean gurutzaketa-eragilea ez zaioaplikatzen birsorketarako aukeratu denkide-bikote orori, aleatorioki baizik (norma-lean 0.5 eta 1.0 tarteko probabilitateaz).Gurutzaketa-eragilea aplikatzen ez denkasuetan, semeak lortzen dira gurasoenkopia bat eginez.

Mutazio-eragilea aplikatzen zaio semebakoitzari indibidualki, honen funtsa kro-

mosomaren gen bakoitzaren eraldaketandatzalarik (normalean probabilitate baxua-rekin). 3. irudiak kromosomaren bosgarrengenearen mutazioa erakusten du.

Berez gurutzaketa-eragilea mutaziozkoabaino garrantzitsuagoa dela pentsa badaitekeere (bilaketa-eremuaren ikerketa azkarraesan nahi baitu), ohartzekoa da ere mutazio--eragileak ziurtatzen digula bilaketa--eremuko puntu orok ikertua izateko proba-bilitate nulua ez duela, eta horrek sekulakogarrantzia du Algoritmo Genetikoen konber-gentzia ziurtatzeko, hemen azalduko ez ditu-gun beste maila teoriko batzuetan.

Praktika-arloan oso erabilgarria da DeJongek (7) bere doktoradutza-tesian plaza-ratutako konbergentziaren definizioa. Algo-ritmo Genetikoa ondo inplementatuta ego-nez gero, populazioak belaunaldietan zehareboluzionatuko du, hala nola populaziokokideen ingurunearekiko batezbesteko mol-daketa eta kide hoberenaren moldaketa op-

14 22-2

2. irudia. Puntu batean oinarritutako gurutzaketa-eragilea.

3. irudia. Mutazio-eragilea.

1 0 1 0 0 0 1 1 1 0

Gurutzaketa-puntua

Gurasoak

Seme-alabak 1 0 1 0 0 1 0 0 1 0

0 0 1 1 0 1 0 0 1 0

Gurutzaketa-puntua

0 0 1 1 0 0 1 1 1 0

gen mutatua

Semea 1 0 1 0 0 1 0 0 1 0

Mutatutako semea 1 0 1 0 1 1 0 0 1 0

Page 6: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

1522-2

timo globalerantz joango direlarik. Konber-gentziaren kontzeptua erlazionatuta dagouniformitateranzko progresioarekin: genbatek konbergitu duela esaten da gutxienezpopulazioko kideen % 95ak gen horrentzatbalio berbera duenean. Populazioak konber-gitu egin duela esaten da, gen guztiek kon-bergitu dutenean.

4. irudiak erakusten digu nola aldatzenden moldaketa onena eta batezbestekoaAlgoritmo Genetiko Sinple tipikoan. Belau-naldien kopurua handiagotzen den heinean,litekena da batezbesteko moldaketa kidehoberenaren moldaketara hurbiltzea.

Adibidea

Algorimo Genetiko Sinple baten osagai des-berdinak ikusteko, pentsa dezagun ondo-

rengo problema —Goldbergetik (13) molda-tua—, f(x)=x2 funtzioaren maximoa topatunahian (1,2,...,32) zenbaki osoen eremuan.Argi dago, problema hau burutzeko bilake-tazko beste teknika batzuk badaudela, solu-zioen esparrua hain kardinalitate txikikoadenean. Adibide soila besterik ez da, orainarte azaldutako algoritmoa ilustratu nahian.1. irudiko sasikodean, ikus daiteke lehenen-go urratsa populazioaren hasierako tamainazehaztea dela, eta jarraian populazio horizoriz lortzea kide bakoitzaren moldatze--funtzioa konputatuz.

Populazioko kideak kodetzeko alfabetoa(0,1) dela suposatuz, 5 luzerako segidakbeharko ditugu bilaketa-eremuko 32 pun-tuak errepresentatzeko.

1. taulan, hasierako populazioa osatzenduten 4 kideak errepresentatu ditugu, pro-blemarekiko azaltzen duten moldatze--funtzioaren balioarekin batera, eta baitakide bakoitzak gurutzaketarako aukeratuaizateko probabilitatea ere (zeharkako errule-ta erabiliz).

1. irudiko sasikodea berriro aztertuz,hurrengo pausoa populazioko kideen bibikote aukeratzea dela ikus daiteke. Horiburutzeko nahikoa da (0,1) tarteko probabi-litate uniformearen banaketako 4 zenbakierreal lortzea, 1. taulako azken zutabeare-

4. irudia. Algoritmo Genetiko Sinple batean batezbes-teko moldatzea eta onena

Moldaketa

Batezbestekoa

Onena

Belaunaldiak

0 40 60 80 10020

Hasierako x genotipoaren f(x) balioa f(x)/Σf(x) Hautatzekopopulazioa balioa (moldatze-funtzioa) (hautatzeko probabilitate

(fenotipoak) probabilitatea) metatuta

1 01101 13 169 0.14 0.142 11000 24 576 0.49 0.633 01000 8 64 0.06 0.694 10011 19 361 0.31 1.00

Batura 1170Batezbestekoa 293Onena 576

1. taula. Algoritmo Genetiko Sinplearen hasierako populazioaren eskuz egindako simulazioa.

Page 7: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

kin konparatuz. Horrela adibidez, pentsadezagun 4 zenbaki horiek honakoak suerta-tu direla: 0.58, 0.84, 0.11 eta 0.43. Hemen-dik gurutzaketarako aukeratu diren kideakhonakoak direla ondoriozta daiteke: 2 kidea4 kidearekin eta 1 kidea 2 kidearekin.

Algoritmo Genetiko Sinplearekin jarraitze-ko, beharrezkoa zaigu gurutzaketa--probabilitatea zehaztea, pg. Pentsa dezagunpg = 0.8 zehaztu dugula. Horrela, lehen egindugunaren antzera, banaketa uniformetikdatozen bi zenbakiez baliatuz zehaztukodugu agertutako bi parekaketak burutzendiren ala ez. Onar dezagun adibidez, bana-keta uniformetik ateratako bi zenbakiak 0.8baino txikiagoak baldin badira, bi gurutza-ketak burutuko ditugula. Horretarako zorizzenbaki bat aukeratuko dugu 1 eta l–1 arte-an (l kide bat adierazteko beharrezkoa densegidaren luzera izanik). Goi-mugatzat l–1beharrean l ezarriko bagenu, arriskua lego-ke gurasoak semeen berdinak izateko.

Pentsa dezagun, 2. taulan agertzen deneran, gurutzaketa-puntuak 2 eta 3 gertatudirela. Horrela, 2. taulako hirugarren zuta-beko 4 semeak lortuko genituzke. 1. irudikosasikodearekin jarraituz mutazioa burutukogenuke, pm probabilitatez (zerotik hurbildago) ditugun 4 kideen segidetako bitetan.

Kasu honetan mutatua izan den bit bakarrahirugarren kidearen lehenengo genea izandela suposatuko dugu. Azkeneko bi zutabe-etan agertzen dira kideen balioak eta bakoi-tzaren moldatze-funtzioaren balioak. Ikusdaitekeenez, bai kiderik onena bai batezbes-teko moldaketa zeharo hobetu dira belau-nalditik belaunaldira.

ERAGILE GENETIKOAK SALTZAILEIBILTARIAREN PROBLEMAN

Sarrera

Saltzaile ibiltariaren probleman, TSP (Tra-veling Salesman Problem) ere deitzen da,—hiri-multzo bat emanik— kostu minimokobira lortzen saiatzen gara, hiri bakoitzabehin bakarrik bisitatuz eta hasierako pun-tura itzuliz.

Hau honela zehaztuko genuke: zenbakioso bat emanik, n ≥ 3, eta matrize bat ema-nik, C = (cij) ∈ M(n,n), cij osagai ez--negatiboekin, 1-etik n-rako zenbaki osoenπ permutazioa lortzen saiatzen gara Σi

n =ciπ(i) espresioa minimizatuko duena.

Urteetan zehar saltzaile ibiltariaren pro-blemak ikertzaile askoren burua bete izan

16 22-2

Aukeratutako Gurutzaketa- Semeak Seme mutatuen x genotipo- f (x)kideen -puntua populazio berria -balioa moldatze-

parekatzea -funtzioa

11000 2 11011 11011 27 72910011 2 10000 10000 16 25601101 3 01100 11100 28 78411000 3 11001 11001 25 625

Batura 2394Batezbestekoa 598Onena 784

2. taula. Populazioa 1 denboran, honen jatorria 1. taulan agertutako kideei gurutzaketa- eta mutazio-eragileakezartzean dagoelarik, azken hauek 0 denborako populazioa osatzen dutelarik.

Page 8: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

1722-2

du hainbat arrazoirengatik. Lehenik, TSP,aipatzen oso problema erraza da, bainaebazten oso zaila. Bigarrenik, TSP plani-fikazio-problema ugariri aplika dakioke.Azkenik, nolabaiteko test-problema bilakatuda, hau da, optimizazio konbinatoriakometodo ugari TSP problemari aplikatzenzaizkio beren ahalmenen ideia izateko.

TSP problemarentzat garatu diren heuris-tikoak ugari dira. Hauetako gehienak Law-ler eta kol. (17) aipamenean agertzen dira.Bradyk (3) burutu zuen TSP problemarakolehen hurbilketa Algoritmo Genetikoetatikhasiz. Bere saiakuntzei jarraipena eman zie-ten Grefenstette eta kol. (24), Goldberg etaLingle (14), Oliver eta kol. (21) eta besteaskok. Aplikatu izan dira bilakaerako bestehainbat algoritmo ere: Fogel (9), Banzhaf(2) eta Ambati eta kol. (1). TSParentzat adi-bide diren problemak topa daitezke, batzue-tan ebazpide eta guzti, ftp inguruneko libu-rutegi batean, ondokoa tekleatuz:

ftp sfi.santafe.eduName (sfi.santafe.edu: foobar): anonymousPassword: <e-mail address>ftp> cd pub/EC/etc/data/TSPftp>type binaryftp>get tsplib-1.2.tar.gz

Reineltek konpilatu zuen liburutegia. Honiburuzko informazio gehiago lortzeko ikusiReinelt (23).

Jarraian, gure saiakuntzetan erabilikodugun adierazpidearekin zerikusia dutengurutzaketa eta mutazio-eragileak soilikazalduko ditugu.

Ibilbidean oinarritutako adierazpidea

Ibilbidean oinarritutako adierazpidea birabat agertzeko erarik naturalena da. Hone-tan, bira bat n hirien zerrenda gisa adieraz-

ten da. Horrela, i hiria zerrendako jgarrenelementua bada, i hiria izango da bisitatukodugun jgarren hiria. Adibidez, 3 –2 – 4 – 1 –7 – 5 – 8 – 6 bira honela adieraziko da:

(3 2 4 1 7 5 8 6).

Eragile klasikoek adierazpide honekinfuntzionatzen ez dutenez, ondoren azaldukodiren gurutzaketa- eta mutazio-eragileakdefinitu dira.

Gurutzaketa-eragileak

Egokitzapen partzialean oinarritutakogurutzaketa-eragilea (PMX)

PMX eragilea Goldberg eta Linglek (14) pla-zaratu zuten. Honekin, guraso baten infor-mazio-segidaren zati bat beste gurasoarentamaina berdineko beste segida batekinparekatzen da, gainerako informazioa tru-katu egiten dutelarik.

Adibidez, ondorengo gurasoak kontside-ratuz:

(12345678) eta (37516824),

PMX gurutzaketa-eragileak, birak ondoren-go eran sortzen ditu. Lehenik, probabilitateuniformez bi banaketa-puntu aukeratzenditu gurasoen biretan zehar. Lehen ebaki--puntua birako hirugarren eta laugarren ele-mentuen artean, eta bigarrena seigarren etazazpigarren elementuen artean aukeratzendela pentsatuz:

(123/456/78) eta(375/168/24).

Egokitzapen biunibokoa dagoela onartzenda bi ebaki-puntuen artean dauden azpise-

Page 9: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

giden artean. Gure adibidean, esandakoegokitzapena ondorengoa da: 4 ↔ 1, 5 ↔ 6eta 6 ↔ 8. Jarraian, lehenengo gurasoarenazpisegida bigarrengo semean kopiatzen da.Era berean, bigarren gurasoarena lehenengosemean:

semea 1: (xxx/168/xx) etasemea 2: (xxx/456/xx).

Hurrengo pausoan, igarren semea (i=1,2)betetzen da igarren gurasoaren elementuakkopiatuz. Hiri bat jadanik semean legokeenkasuan, ordezkatu egingo litzateke aurrekoegokitzapena kontuan hartuz. Adibidez, 1semearen lehen elementua batekoa izangoda, lehenengo gurasoaren lehen elementuabezala. Baina lehen semean batekoa egon-da, eta 1 ↔ 4 kontuan izanik, 4 hiria har-tzen da 1 semearen lehen elementu gisa. 1semearen bigarren, hirugarren eta zazpiga-rren elementuak aukera daitezke lehengurasotik. Baina 1 semearen azken elemen-tuak 8 izan beharko zuen; jadanik dagoene-ko hiria. 8 ↔ 6, eta 6 ↔ 5 egokitzapenakkontuan hartuz, bere ordez 5 aukeratzen da.Horrela

semea 1: (423/168/75).

Era berdintsuan lortzen da:

semea 2: (378/456/21).

Zikloetan oinarritutako gurutzaketa--eragilea (CX)

CX eragileak (Oliver eta kol. (21)) guraso-etatik semea sortzen du, gurasoetako bate-tik egokitzen zaion elementuarekin semea-ren posizio guztiak betetzen direlarik. Adi-bidez,

(12345678) eta(24687531),

gurasoak kontsideratuz, semearen lehenelementua aukeratuko dugu, guraso bietakolehen elementuko edozeinetatik. Horregatik,semearen lehen elementuak 1 edo 2 izanbeharko du. Pentsa dezagun 1 aukeratzendela. Oraingoz semeak ondorengo itxuraizango du:

(1* * * * * * *).

Ondoren semearen azkeneko elementuakontsideratzera jo behar dugu. Elementuhori guraso bietako batetik aukeratu behardenez, 8 edo 1 bakarrik izan daiteke. 1aurretik aukeratua izan denez, 8 aukeratukoda, semeak ondoko itxura hartuko duelarik:

(1* * * * * * 8).

Era berean semearen bigarren eta lauga-rren elementuak lehen gurasotik aukeratubehar direla ikusten dugu, horrek ondokoasortarazten digularik:

(12 * 4 * * * 8).

Ziklo hori bukatu eta gero, jarraian seme-aren hirugarren elementua kontsideratukodugu. Elementu hori bi gurasoetako edozei-netatik aukera daiteke. Pentsa dezagunaukeraketa bigarren gurasotik egin dugula.Honen ondorioz, semearen bosgarren, sei-garren eta zazpigarren elementuak bigarrengurasotik aukeratu behar dira, ziklo batosatu behar dutelako. Horrela, ondokosemea lortuko dugu:

(12647538).

18 22-2

Page 10: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

19

Ordenean oinarritutako gurutzaketa--eragilea (OX1)

OX1 eragileak, Davisek (5) plazaratuak,semeak guraso baten azpibira bat aukeratuzeta beste gurasoaren hirien ordena erlatiboamantenduz eraikitzen ditu.

Adibidez, aurrekoan agertutako gurasoenbi birak kontsideratuz:

(12345678) eta(24687531),

eta lehenengo ebaki-puntua bigarren etalaugarren elementuen artean, eta bigarren-goa bosgarren eta seigarren elementuenartean aukeratzen dela suposatuz, honakoalortzen da:

(12/345/678) eta(24/687/531).

Semeak ondoko eran eraikitzen dira: lehe-nik, ebaki-puntuen tartean dauden azpibiraksemeetan kopiatzen dira, ondokoa lortuz

(* */345/* * *) eta(* */687/* * *).

Jarraian, gurasoetako baten bigarrenebaki-puntutik hasiz, gainerako hiriakkopiatzen dira beste gurasoan agertzendiren ordena mantenduz, jadanik semearenbiran kokatuak ditugun hiriak albo baterautziz. Gurasoaren segidaren bukaerara iris-tean, bere lehenengo posiziora jotzen dugu.Gure adibidean, honek ondorengo semeaksortarazten ditu:

(87/345/126) eta(45/687/123).

Ordenean oinarritutako gurutzaketa--eragilea (OX2)

Syswerdak (25), lanen sekuentziazioko pro-blemekin lotuta, OX2 eragilea proposatzendu, hau OX1 eragilearen aldakuntza kontsi-dera daitekelarik. OX2 eragileak zoriz auke-ratzen ditu gurasoetako baten posiziobatzuk, jarraian beste gurasoan aukeratuta-ko posizioen elementuen ordena ezartzenduelarik.

Adibidez, honako gurasoak kontsideratuz

(12345678) eta(24687531),

eta bigarren gurasoan bigarren, hirugarreneta seigarren posizioak aukeratzen direlasuposatuz. Posizio hauetan ditugun elemen-tuak hurrenez hurren 4, 6 eta 5 dira. Semeagurasoarekin bat etorriko da lau, bost etasei posizioetan izan ezik:

(123 * * * 78).

Jarraian semearen hutsuneak betetzenditugu bigarren gurasoan agertzen direnordena kontuan hartuz. Emaitzatzat ondo-koa lortuko dugu:

(12345678).

Lehen eta bigarren gurasoen artean berenbetebeharrak aldatuz, eta aukeratutakoposizio berberak erabiliz, bigarren semealortuko dugu:

(24387561).

22-2

Page 11: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

Posizioan oinarritutako gurutzaketa--eragilea (POS)

Syswerdak (25) ere proposatzen du,sekuentziazioko problemekin lotuta, OX1eragilearen bigarren aldakuntza: POS eragi-lea. POS eragilea ere gurasoen biretakoposizio-multzo bat zoriz aukeratzen hastenda. Baina eragileak aukeratutako elemen-tuen posizioak ezartzen ditu, beste guraso-an bat datozen posizioetan. Adibidez, ondo-rengo gurasoak kontsideratuz:

(12345678) eta(24687531),

eta bigarren, hirugarren eta seigarren posi-zioak aukeratu direla suposatuz, honekondoko semeak eraikiko lituzke:

(14623578) eta(42387651).

Arkuen konbinazioan oinarritutakogurutzaketa-eragilea (ER)

Eragile hau Whitleyk eta kol. (27) eraikizuten. Whitley eta Starkweatherrek (29),erabiltzen dute “arkuen lotura” delakoa,honek bertan hasi edo amaitzen dutenarkuak hiri bakoitzarentzat eskaintzendituelarik. Adibidez, ondoko birak kontside-ratuz:

(123456) eta(243156),

ondorioz sortutako “arkuen lotura” 3. tau-lan ikus daiteke. ER eragileak jarraiko algo-ritmoaren arabera lan egiten du:

1. Aukeratu bi gurasoetako bira batenhasierako hiria. Aukeraketa hau zoriz

egin daiteke edo 4. pausoan agertuko denirizpidearen arabera. Aukeratutako hiriari“erreferentzi hiria” deituko diogu.

2. “Erreferentzi hiriaren” agerpen guztiakkendu “arkuen loturen” taulako eskuinaldeko dagozkion tokietan.

3. “Erreferentzi hiriak” arkuen listan ager-penik badu 4. pausora goaz, bestela 5.pausora.

4. Zehaztu “erreferentzi hiriarekin” konek-tatuak dauden hirien zerrendatik zeinden bere arkuen listan agerpen gutxiendituen hiria. Hiri hori bihurtuko da “erre-ferentzi hiri”. Berdinketak zoriz erabaki.Ondoren, 2. pausora joan.

5. Bisitatzeko hiririk geratzen ez bada, algo-ritmoa geratu. Hau horrela ez bada, zorizaukeratu bisitatu ez den hiri bat eta 2.pausora joan.

Aurreko adibidearentzat, honakoa dugu:

* Beherazko lehen bira hasieratzen da gu-rasoetako baten hasierako hiriren bate-kin. Bai 1 eta bai 2 hiriek, biek 4 arkudituzte; zoriz 2 hiria aukeratzen dugu.

* 2 hiriarentzako zerrendak esaten diguhurrengo “erreferentzi hiri” bilakatzekohautagaiak 1, 3, 4 eta 6 hiriak direla. Bai3, 4 eta 6 hiriek hiru arku dituzte: hasie-rako hirurak, 2 hiriarekin duten konexioaizan ezik. 1 hiriak hiru arku ditu, eta

20 22-2

hiria hiri konektatuak

1 2, 6, 3, 5

2 1, 3, 4, 6

3 2, 4, 1

4 3, 5, 2

5 4, 6, 1

6 1, 5, 2

3. taula. Arkuen loturak (1 2 3 4 5 6) eta(2 4 3 1 5 6) birentzat.

Page 12: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

21

horregatik ez da kontuan hartzen. Pentsadezagun zoriz 3 hiria aukeratzen dela.

* 3 hiria 1 eta 4 hiriekin konektatua dago.4 hiria aukeratzen da arku gutxien di-tuena delako.

* 4 hiriak arku bat bakarrik duenez, 5hirira doana, hauxe aukeratzen da “erre-ferentzi hiri” berri gisa.

* 5 hiriak arkuak ditu 1 eta 6 hirietara, bihauek arku bat bakarrik dutelarik. Zoriz1 hiria aukeratuko dugu.

* 1 hiritik 6 hirira joan behar du.

Ondorioz, sortutako bira honakoa da,

(234516),

non hau bi gurasoen biren arkuak bakarrikerabiliz sortu den.

Botuen konbinazioan oinarritutakogurutzaketa-eragilea (VR)

Mühlenbeinek (19) proposaturiko VR eragi-lea p-sexuala den gurutzaketa-eragile gisaikus daiteke, non p 2 edo hau baino handia-goa den zenbaki naturala den. Atari-zen-baki bat definitzen hasten da, p edo haubaino txikiagoa den zenbaki naturala.Jarraian, i ∈ {1,2,...,n} bakoitzarentzat iga-rren elementuen multzoa. Multzo horretanelementuren bat aipatutako muga bainogehiagotan agertzen bada, elementu horisemearengan kopiatzen da.

Adibidez, ondoko gurasoak kontsideratuz(p=4)

(143526),(124356),(321546),(123456)

eta mugatzat 3 ezarriz gero, topatzen dugu

(12 * * * 6).

Beste posizio guztiak mutazioekin bete-tzen dira. Beraz, gure adibidearen emaitzaposibletako bat hau litzateke:

(124536).

Posizioen alternantzian oinarritutakogurutzaketa-eragilea (AP)

AP eragileak (Larrañaga eta kol. (16)),seme bat sortzen du lehen eta bigarrengurasoetatik hiriak alternatiboki aukeratuz,gurasoen ordenaren arabera, semearenbiran jadanik aurkitzen diren hiriak aldebatera utziz.

Adibidez, lehenengo gurasoa balitz

(12345678)

balitz eta bigarrena

(37516824),

AP gurutzaketa-eragileak ondoko semeaeraikitzen du:

(13275468).

Gurasoen ordena aldatuz hau lortzen da:

(31725468).

Mutazio-eragileak

Desplazamenduan oinarritutako mutazio--eragilea (DM)

DM eragilea (Michalewicz (18)) hasten dazoriz azpisegida bat aukeratzen. Azpisegidahori biratik ateratzen da eta zoriz aukeratu-tako leku batean txertatzen da.

22-2

Page 13: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

Adibidez, ondoko bira kontsideratuz:

(12345678),

eta (345) azpisegida aukeratzen dela supo-satuz, hau kendu eta gero ondokoa dugu:

(12678).

Pentsa dezagun txertatzeko aleatorioki 7hiria aukeratu dugula beratik aurrera aurre-ko azpisegida hautatua. Horrek, ondokobira sortuko luke:

(12673458).

Aldaketetan oinarritutako mutazio-eragilea(EM)

EM eragileak (Banzhaf (2)) zoriz birako bihiri aukeratzen ditu, trukatuz.

Adibidez, ondoko bira kontsideratuz:

(12345678)

eta zoriz hirugarren eta bosgarren hiriakaukeratu ditugula suposatuz. Horrela, EMeragilearen eraginak aurreko biraren gaine-an ondokoa eraikiko luke:

(12543678).

Txertaketan oinarritutako mutazio-eragilea(ISM)

ISM eragileak (Fogel (9) eta Michalewizc(18)) zoriz, biraren barneko hiri bat aukera-tzen du, jarraian hiri hori biratik atera etazoriz biran aukeratutako lekuren bateantxertatzen duelarik.

Adibidez, berriro aurreko bira kontsidera-tuz:

(12345678),

eta 4 hiria 7 hiriaren jarraian txertatzekoaukeratzen dela suposatuz, emaitzatzatondokoa genuke:

(12356748).

Txertaketa sinplean oinarritutako mutazio--eragilea (SIM)

SIM eragileak (Holland (15), Grefenstetteeta kol. (24)) segidan bi ebaki-puntu auke-ratzen ditu jarraian bi ebaki-puntu horienarteko azpisegida alderantziz iraultzeko.

Adibidez, ondoko bira kontsideratuz:

(12345678),

eta lehen ebaki-puntua bigarren eta hiruga-rren hirien artean, eta bigarren mozketa--puntua bosgarren eta seigarren hirien arte-an aukeratzen dela suposatuz, ondorioz sor-tutako bira hau litzateke:

(12543678).

Txertaketan oinarritutako mutazio-eragilea(IVM)

IVM eragileak (Fogel (10), (11)) DM eragi-learen antzekotasun handia du. Zoriz azpi-bira bat aukeratzen da biratik aterata,jarraian txertatzeko alderantzizko ordeneanaleatorioki aukeratutako posizioan.

Adibidez, ondoko bira kontsideratuz:

(12345678),

eta (345) azpibira aukeratzen dela suposa-tuz, jarraian 7 hiria eta gero txertatzeko,honakoa lortuko genuke

(12675438).

22 22-2

Page 14: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

23

Aldaketan oinarritutako mutazio-eragilea(SM)

Syswerdak (25) plazaratutako eragile honekazpibira bat zoriz aukeratzen du, jarraianazpibira horretako hirien ordena aldatzeko.

Adibidez, jarraiko bira kontsideratuz:

(12345678),

eta (4567) azpibira aukeratzen dela suposa-tuz, emaitzatzat ondokoa lortuko genuke:

(12356748).

GIPUZKOAKO HIRIETAKO BIRAEGOKIENAREN ATZETIK

Atal honetan, egindako saiakuntzen emai-tzak agertzen dira, gurutzaketa- etamutazio-eragileen arteko konbinazio ezber-dinekin (hauek aurreko kapituluan aurkez-tu ditugu), ibilbidean oinarritutako adieraz-pidearen arabera.

Aplikazio-adibidea bira optimoa bilatzean,hau da, kostu gutxienekoan (kilometrogutxienekoan) oinarrituta dago, Gipuzkoan5.000 biztanleko zentsua (boto-eskubideadutenena) baino gehiagoko 21 herrieneta-

22-2

LH ao s En a r Z

A A A D E d r O r uA r z z B B o l H a t L i e mn r k p e e n g e r e e a P n T ad a o e a r o E o r r - g r O a t o ro s i i s g s i i n i I O a t ñ s e l ra a t t a a t b b a b r r z z a a r o ai t i i i r i a a n i u i p u t i i s gn e a a n a a r r i a n a i n i a a a a

61.0

44.0 28.0

39.0 33.0 5.0

27.0 34.0 27.0 32.0

51.0 10.0 25.0 30.0 24.0

13.9 74.9 47.9 42.9 40.9 64.9

73.0 16.6 20.0 25.0 41.0 17.0 72.0

66.0 23.6 13.0 18.0 40.0 16.0 65.0 7.0

6.0 67.0 40.0 35.0 33.0 57.0 7.9 69.0 62.0

30.2 91.2 64.2 59.2 57.2 81.2 16.3 88.3 81.3 24.2

29.0 90.0 63.0 58.0 56.0 80.0 15.1 87.1 80.1 23.0 6.2

8.0 69.0 52.0 47.0 35.0 59.0 8.2 65.0 58.0 5.2 29.4 28.2

44.6 22.4 18.6 23.6 17.6 15.6 58.5 32.6 31.6 50.6 74.8 63.6 52.6

17.7 78.7 51.7 46.7 44.7 68.7 19.6 80.7 73.7 11.7 10.9 8.4 16.9 62.3

57.0 11.0 31.0 36.0 30.0 13.0 70.9 30.0 29.0 63.0 87.2 86.0 65.0 12.4 90.5

16.7 77.7 50.7 45.7 43.7 67.7 2.8 74.8 67.8 10.7 13.5 12.3 11.0 60.3 4.0 22.4

17.7 78.7 51.7 46.7 44.7 68.7 3.8 75.8 68.8 9.7 12.5 11.3 12.0 61.3 3.0 23.4 1.0

14.0 47.0 30.0 25.0 13.0 37.0 27.9 50.0 43.0 20.0 44.2 43.0 22.0 30.6 31.7 43.0 30.7 31.7

40.0 21.0 14.0 19.0 13.0 11.0 53.9 30.0 29.0 46.0 70.2 69.0 48.0 4.6 57.7 17.0 56.7 57.7 37.0

27.0 58.6 32.0 27.0 54.0 55.0 26.0 46.0 39.0 23.0 47.2 46.0 18.0 50.6 33.7 63.0 24.0 25.0 41.0 46.0

38.0 49.0 21.0 16.0 65.0 46.0 37.0 35.0 28.0 34.0 58.2 57.0 30.0 39.6 44.7 52.0 35.0 36.0 52.0 35.0

4. taula. Herrien arteko distantziak kilometrotan. Taulako ilarei goialdean agertutako herri bakoitza dagokie. Adibi-dez, lehenengo ilara (hutsa), Andoaini, eta azkeneko Zumaiari. Agertzen ez den Zarautz eta Zumaia artekodistantzia 11.0 kilometrokoa da.

Page 15: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

koan (zentsuko datu hauek 1994ko urriko23an Eusko Legebiltzarrerako hauteskunde-etan erabili ziren, EUSTATek lortuak (8)).

Erreferentzia honen arabera, baldintzahau betetzen duten 21 herriak ondokoakdira: (1)Andoain, (2)Arrasate, (3)Azkoitia,(4)Azpeitia, (5)Beasain, (6)Bergara,(7)Donostia, (8)Eibar, (9)Elgoibar, (10)Her-nani, (11)Hondarribia, (12)Irun, (13)Lasar-te-Oria, (14)Legazpi, (15)Oiartzun,(16)Oñati, (17)Pasaia, (18)Errenteria,(19)Tolosa, (20)Zumarraga, (21)Zarautz,(22)Zumaia.

4. taulak distantzien matrizea erakustendu —goi-triangeluarra, distantzien sime-triagatik—, herri-bikote ezberdinen artekodistantziekin. Distantzia hauek GipuzkoakoForu Aldundiaren Errepide eta Garraio Zer-bitzuak argitaratutako mapa batetik kalku-latu dira. Ohartzekoa da, Beasain eta Ordi-ziako herriak bat egin ditugula, hala nolaUrretxu eta Zumarraga.

Herrietako bira optimoa bilatzeko erabili-tako Algoritmo Genetikoak, GENITORenoinarriak jarraitzen ditu (ikusi Withley etakol. (27)). Minimizatzen saiatzen garenfuntzioa, birak lotzen dituen herrien distan-tzien baturarena da. Birak ibilbidean oina-rritutako adierazpide delakoaren araberaerrepresentatu izan dira. Ondoko parametro-ak kontsideratu izan dira, Algoritmo Geneti-koaren portaera baldintzatzen dutelarik:

* gurutzaketa-eragileak (AP, CX, ER, OX1,OX2, PMX, POS, VR)

* mutazio-eragileak (DM, EM, ISM, IVM,SIM, SM)

* populazio-tamainak (λ=10, λ=50, λ=100,λ=250)

* mutazio-probabilitatea (pm=0.1, pm=0.01)* hautatze-presioa (b=0.75, b=1.25,

b=1.90)

Konbergentzi irizpidea, honetan oinarrituizan da: 2.000 iterazio eta gero batezbeste-ko ebaluazioa kide hoberenenarekin batetorriko balitz, (50.000 iterazio eta gero haugertatuko ez balitz) orduan algoritmoarenexekuzioa geldiaraziko genuke.

Horrela, parametro ezberdinen balio posi-ble guztietarako (8x6x4x2x3) konbinazioditugu, hauetako bakoitzarentzat 10 bilake-ta edo entsaiu egin direlarik. Horrela, guzti-ra egindako bilaketa-kopurua 11.520 izanda. Simulaketa-kopuru handi honek, esta-tistikoki ahalmenduko gaitu hainbat ondo-rio ateratzeko. Analisi estatistiko hauekegin dira SPSS softwarez (26).

5. taulak gurutzaketa- eta mutazio--eragileen konbinaketek sortarazten dituz-ten emaitzik hoberenak jasotzen ditu.Horrela, 240 bilaketa ezberdinetatik aterata-ko emaitzik hoberena litzateke. Ikus daite-ke, gurutzaketa-eragile guztiak –AP eta VRezik– kapaz direla, mutazio-eragilea albo

24 22-2

AP CX ER OX1 OX2 PMX POS VR

DM 223.80 221.80 221.80 221.80 221.80 221.80 221.80 224.80 221.80EM 225.30 221.80 221.80 221.80 221.80 221.80 221.80 228.40 221.80ISM 221.80 221.80 221.80 221.80 221.80 221.80 221.80 225.30 221.80IVM 221.80 221.80 221.80 221.80 221.80 221.80 221.80 223.80 221.80SIM 224.80 221.80 221.80 221.80 221.80 221.80 221.80 230.10 221.80SM 226.10 221.80 221.80 221.80 221.80 221.80 221.80 229.70 221.80

221.80 221.80 221.80 221.80 221.80 221.80 221.80 223.80 221.80

5. taula. Gurutzaketa- eta mutazio-eragileak. Bira hoberenak. Kilometro-kopurua.

Page 16: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

25

batera utziz, kontsidera dezakegun biraoptimo edo egokiena topatzen:

Irun – Hondarribia – Errenteria – Pasaia –Donostia – Lasarte-Oria – Zarautz – Zu-maia – Azpeitia – Azkoitia – Elgoibar –Eibar – Bergara – Arrasate – Oñati – Le-gazpi – Zumarraga – Beasain – Tolosa –Andoain – Hernani – Oiartzun.

Bira honen kostua 221,80 km da. Beremarrazkia hurrengo orrialdetan agertzen da.Taulan ere ikus daiteke, ISM eta IVM mu-tazio-eragileek topatzen dutela, gurutzaketa-

-eragileen eraginik gabe, aipatutako biraoptimo hau (VRarentzat izan ezik).

6. taulak batezbesteko emaitzak (240bilaketen gainean), eta desbidazio estanda-rrak agertzen ditu; gurutzaketa- eta muta-zio-eragileen konbinazioen emaitzei dagoz-kienak. Aipatzekoa da CX eta ER gurutza-keta-eragileen portaera ona (lehenengoakportaera egonkorragoa); aurkakoa gerta-tzen da ordea, VR eta AP eragileekin.Mutazio-eragileei dagokienez, aipatzekoada ISM eta IVM eragileen portaera ona, SIMeta SM eragileei buruz aurkakoa esan dai-tekeelarik.

22-2

AP CX ER OX1 OX2 PMX POS VR

DM 327.77 262.24 265.02 268.46 279.50 299.44 266.81 263.88 291.6379.20 32.31 64.69 63.54 65.05 74.74 61.78 87.35 75.93

EM 334.46 272.25 264.99 278.73 290.18 327.67 281.60 388.83 304.8374.14 36.14 60.40 67.53 74.93 82.16 69.37 77.86 79.57

ISM 327.89 267.37 263.95 271.80 290.06 304.89 269.06 365.02 295.0077.11 34.42 69.68 61.81 72.05 69.96 60.71 75.09 74.27

IVM 322.07 261.87 261.84 269.08 279.16 297.10 268.55 360.95 290.0773.32 33.16 62.21 64.21 63.10 74.32 64.10 87.67 74.45

SIM 387.47 269.61 281.59 291.48 317.66 347.43 295.41 412.84 324.3178.06 35.73 83.31 84.05 90.72 91.32 84.12 65.25 91.64

SM 387.00 273.13 282.13 290.44 315.47 352.72 295.44 414.13 326.3085.52 38.94 88.60 81.94 87.07 96.56 88.20 70.60 94.94

346.27 267.74 269.92 278.33 295.33 321.54 279.47 384.27 305.3682.13 35.40 72.65 71.60 77.65 84.97 73.11 80.82 83.54

6. taula. Gurutzaketa- eta mutazio-eragileak. Batezbesteko aritmetikoa eta desbidazio estandarra. Kilometro-kopurua.

AP CX ER OX1 OX2 PMX POS VR

DM 2055 3161 2230 2164 2118 2055 2148 2134 2055EM 2068 15706 2176 2129 2154 2049 2120 2230 2049ISM 2668 2708 2414 2071 2068 2385 2134 2164 2068IVM 2783 3721 2155 2025 2575 2042 2159 2802 2025SIM 2293 3126 2141 2251 2116 2536 2118 2078 2118SM 2231 3868 2070 2312 2131 2028 2138 2302 2028

2055 2708 2070 2025 2068 2028 2118 2078 2025

7. taula. Gurutzaketa- eta mutazio-eragileak. Emaitza hoberenak. Iterazio-kopurua.

Page 17: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

7. eta 8. taulek, aztertutako bira-kopuruaaipatzen dute, lehen agertutako irizpidebatez, algoritmoa gelditzen den arte.

7. taulan, kontsideratutako gurutzaketa-eta mutazio-eragileen konbinazioentzat,aztertutako bira-kopuru minimoa agertzenda. Bira-kopuru gutxien aztertzen ditueneragilea CX dela ikus daiteke, bestegurutzaketa-eragileekin antzeko emaitzaklortzen direlarik. Antzeko zerbait gertatzenda SIM mutazio-eragilearekin, bestemutazio-eragileekin konparatuta.

8. taulan gurutzaketa- eta mutazio-eragileezberdinen batezbesteko abiadura ikusdezakegu. Gurutzaketa-eragileen artean,aipatzekoa da ERren azkartasuna, OX etaVR eragile “motelekin” erkatuz gero.Mutazio-eragileei dagokienez, lortutakoemaitzetatik ezin ditzakegu desberdintasunnabariak azpimarratu.

9. taulak batezbesteko emaitzak aipatzenditu (2880 bilaketen gainean), hala nolabira hoberenen desbidazio estandarrak, era-bili izan ditugun populazio-tamaina ezber-

dinen arabera. Ikus daitekeenez, populazio-aren tamaina handiagotu ahala, AlgoritmoGenetikoaren portaera hobetu egiten da,hobekuntza honen ondorioz Algoritmoamoteldu egiten delarik, ebaluazio gehiagoeginez, 10. taulan ikus daitekeen eran.

26 22-2

AP CX ER OX1 OX2 PMX POS VR

DM 11480 24661 6406 8714 9290 8457 8763 23649 126786957 16098 2534 5061 5427 4519 5583 16141 11423

EM 10446 24043 6331 8629 8879 8106 8284 24097 123535784 4359 2340 5085 5469 3940 5244 16292 11306

ISM 11748 24153 6796 9045 9284 8783 9024 24553 129237553 15940 2774 5164 5317 5039 5801 16472 11525

IVM 11867 24040 7132 8798 9835 8851 8708 24278 129397554 14212 2636 5089 5864 4800 5205 16036 11229

SIM 8380 23326 5843 8007 7811 7357 7713 20785 111535446 15717 2385 5029 5375 3873 5495 17168 11171

SM 8695 23721 5936 8111 7736 6864 7639 21001 112135280 15920 2468 5405 5077 3952 5130 16573 11161

10436 23991 6407 8551 8806 8070 8355 23061 122106643 15764 2563 5145 5473 4432 5431 16496 11326

8. taula. Gurutzaketa- eta mutazio-eragileak. Batezbesteko aritmetikoa eta desbidazio estandarra. Iterazio-kopurua.

batezbestekoa desbidazio estandarra

λ = 10 374.47 94.19

λ = 50 303.37 64.03

λ = 100 277.08 56.47

λ = 250 266.52 68.37

9. taula. Populazioaren tamaina. Batezbesteko aritme-tikoa eta desbidazio estandarra. Kilometro--kopurua.

batezbestekoa desbidazio estandarra

λ = 10 6554.27 3327.85

λ = 50 7897.26 5319.91

λ = 100 12006.00 9603.77

λ = 250 22382.67 15083.58

10. taula. Populazioaren tamaina. Batezbesteko aritme-tikoa eta desbidazio estandarra. Iterazio--kopurua.

Page 18: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

27

11. taulak batezbesteko emaitzak jasotzenditu (5760 bilaketen gainean), hala nolakontsideratutako mutazio-probabilitateezberdinen arabera sortutako bira hobere-nen desbidazio estandarra. Batezbestekoportaera hobea ikus daiteke mutazio-proba-bilitate altuarekin, aurrekoan gertatu bezala,honek ebaluazio-kopuru handiagoa daka-rrelarik, 12. taulan ikus daiteken eran.

13. taulak batezbesteko emaitzak jasotzenditu (3.840 bilaketen gainean), hala nolabira hoberenen desbidazio estandarra, kon-tsideratutako hautespen-presioaren arabera,

b. Esandako b parametro honek, hoberenenaukeraketaren premisa faboratzeko, lehen-tasuna ematen dio populazioko kide hobere-nei, batezbesteko kidearen aurrean. Baliohau txikiagotzearen arabera, batezbestekoemaitza hobeak lortu izan dira, hobekuntzahonek Algoritmoa moteltzea eragin duelarik(ebaluazio gehiago eginez, 14. taulan ikusdaiteken eran).

15. taulan ikus daitezke, biren kilometro--kopuruari dagokionez, lortu izan ditugun10 birarik onenak, algoritmoaren exekuzio-an parte hartu duten 5 parametroak kontsi-

22-2

gu. er mu. er. mu. pr. po. ta. ha.pr. ba. be de. es.

ER SM 0.1 250 0.75 221.90 0.31

ER SIM 0.1 250 1.25 221.90 0.31

POS IVM 0.1 250 0.75 221.90 0.31

ER SIM 0.1 250 0.75 222.00 0.42

ER EM 0.1 250 1.25 222.00 0.42

ER IVM 0.1 250 0.75 222.10 0.48

ER SIM 0.01 250 0.75 222.13 0.53

ER SIM 0.1 250 0.75 222.15 1.10

ER IVM 0.1 250 1.25 222.30 0.97

ER DM 0.01 250 0.75 222.31 1.16

15. taula. Parametro guztien konbinaziorik onenak. Kilometro-kopurua.

batezbestekoa desbidazio estandarra

pm = 0.1 281.21 64.62

pm = 0.01 329.51 92.83

11. taula. Mutazio-probabilitatea. Batezbesteko aritme-tikoa eta desbidazio estandarra. Kilometro--kopurua.

batezbestekoa desbidazio estandarra

b = 0.75 297.95 81.57

b = 1.25 305.87 84.75

b = 1.90 312.26 83.69

13. taula. Hautespen-presioa. Batezbesteko aritmetikoaeta desbidazio estandarra. Kilometro--kopurua.

batezbestekoa desbidazio estandarra

b = 0.75 14195.86 12583.25

b = 1.25 12187.29 11398.03

b = 1.90 10247.00 3427.61

14. taula. Hautespen-presioa. Batezbesteko aritmetikoaeta desbidazio estandarra. Iterazio-kopurua.

batezbestekoa desbidazio estandarra

pm = 0.1 13285.80 11699.21

pm = 0.01 11134.30 10835.73

12. taula. Mutazio-probabilitatea. Batezbesteko aritme-tikoa eta desbidazio estandarra. Iterazio--kopurua.

Page 19: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

deratuz. Hau da: gurutzaketa-eragilea,mutazio-eragilea, mutazio-probabilitatea,populazioaren tamaina eta hautespen--presioa. Ohartzekoa da, 10 bira hauetan,populazioaren tamaina 250 izan dela. Beste-tik, 10 hauetako 9 konbinaziotan, EM gu-rutzaketa-eragilea izan da partaidea. Gaine-ra, 10 hauetako 8 konbinaziotan, mutazio--probabilitatea 0.1 izan da, hala nolahautespen-presioa 0.75. Azkenik, mutazio--eragileen aldetik aniztasun handiagoadugula esan daiteke.

ONDORIOAK

Lan honetan Algoritmo Genetiko izenez eza-gutzen den paradigma azaldu dugu. Algorit-mo Genetiko hauek, Adimen Artifiziala deri-tzon arloan erabili dira azken urteotan,optimizazio-konbinatoriako problemetan.Horregatik lan honetan intuizioa zehaztasunmatematikoarekin elkartzen saiatu gara.

Adierazpen-mota ezberdinak ere ikertudira, eta saltzaile ibiltariaren problemari

atxikitutako gurutzaketa- eta mutazio--eragileak ere bai, ibilbidean oinarritutakoibilbideari garrantzi berezia emanez.

Aurrekoaren aplikazio bat bilatu nahian,Gipuzkoako 5.000 biztanleko 22 (Ordiziaeta Beasain alde batetik eta Zumarraga etaUrretxu bestetik kasu berdintzat hartuz)herrien bira optimo edo egokienaren proble-ma ebazten saiatu gara, ondorengo emaitzalortuz: Irun – Hondarribia – Errenteria –Pasaia – Donostia – Lasarte-Oria – Zarautz –Zumaia – Azpeitia – Azkoitia – Elgoibar –Eibar – Bergara – Arrasate – Oñati – Legazpi– Zumarraga – Beasain – Tolosa – Andoain –Hernani – Oiartzun.

Bira honen kostua 221,80 km da.Burututako simulazioetatik abiatuz, pro-

blema berezi honentzat ER gurutzaketa--eragilearen nagusitasuna azpimarra daite-ke, hala nola populazio handiagoen portaerahobea tamaina txikiagokoekin konparatuz.Bestetik, mutazio-probabilitatea handiago-tuz goazen heinean ere emaitza hobeak lor-tzen ditugu, hautespen-presioarekin alde-rantzizkoa gertatzen delarik.

28 22-2

BIBLIOGRAFIA

(1) AMBATI, B.K., AMBATI, J. ETA MOKHTAR, M.M. (1991) Heuristic combinatorialoptimization by simulated Darwinian evolution: A polynomial time algorithm for thetraveling salesman problem, Biological Cybernetics, 65, 31-35.

(2) BANZHAF, W. (1990) The “molecular” traveling salesman, Biological Cybernetics,64, 7-14.

(3) BRADY, R.M. (1985) Optimization strategies gleaned from biological evolution,Nature, 317, 804-806.

(4) DARWIN, C. (1859) On the Origin of Species by Means of Natural Selection, Murray,Londres.

(5) DAVIS, L. (1985) Applying adaptive algorithms to epistatic domains, Proceedings ofthe International Joint Conference on Artificial Intelligence, 162-164.

(6) DAVIS, L. (ED.) (1991) Handbook of Genetic Algorithms, Van Nostrand Reinhold,New York.

Page 20: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

2922-2

(7) DE JONG, K.A. (1975) An analysis of the behaviour of a class of genetic adaptivesystems, Doktore-tesia, Unibersity of Michingan.

(8) EUSTAT (1995), Euskal Urtekari Estatistikoa 94, Euskal Herriko AEko Administrazioa.(9) FOGEL, D.B. (1988) An evolutionary approach to the traveling salesman problem,

Biological Cybernetics, 60, 139-144.(10) FOGEL, D.B. (1990) A parallel processing approach to a multiple traveling salesman

problem using evolutionary programming, Canter, L. (ed.) Proceedings on the FourthAnnual Parallel Processing Symposium, Fullerton, CA, 318-326.

(11) FOGEL, D.B. (1993) Applying evolutionary programming to selected traveling sales-man problems, Cybernetics and Systems, 24, 27-36.

(12) GREFENSTETTE, J., GOPAL, R., ROSMAITA, B. ETA VAN GUCHT, D. (1985) Geneticalgorithms for the traveling salesman problem, Proceedings of the First InternationalConference on Genetic Algorithms and Their Applications, 160-165.

(13) GOLDBERG, D.E. (1989), Genetic Algorithms in Search, Optimization and MachineLearning, Addison-Wesley, Reading, MA.

(14) GOLDBERG, D.E. ETA LINGLE, JR.R. (1985) Alleles, loci and the traveling salesmanproblem, en Proceedings of the First International Conference on Genetic Algorithmsand Their Applications, 154-159.

(15) HOLLAND, J. (1975) Adaptation in Natural and Artificial Systems, University ofMichigan Press, Ann Arbor.

(16) LARRAÑAGA, P., KUIJPERS, C.M.H. ETA MURGA, R.H. (1994) Tackling the Trave-ling Salesman Problem with Evolutionary Algorithms: Representation and Operators.EHU-KZAA-IK- 2-94.

(17) LAWLER, E.L., LENSTRA, J.K., RINNOOY KAN, A.H.G. ETA SHMOYS, D.B. (EDS.)(1985) The Traveling Salesman Problem: A Guided Tour of Combinatorial Optimiza-tion, Wiley, Chichester.

(18) MICHALEWICZ, Z. (1992) Genetic Algorithms + Data Structures = Evolution Pro-grams, Springer-Verlag, Berlin Heidelberg.

(19) MÜHLENBEIN, H. (1989) Parallel genetic algorithms, population genetics and com-binatorial optimization, Proceedings on the Third International Conference on Gene-tic Algorithms, 416-421.

(20) MÜHLENBEIN, H., GORGES-SCHLEUTER, M. ETA KRÄMER, O. (1988) Evolutionalgorithms in combinatorial optimization, Parallel Computing, 7, 65-85.

(21) OLIVER, I.M., SMITH, D.J. ETA HOLLAND, J.R.C. (1987) A study of permutationcrossover operators on the TSP, Genetic Algorithms and Their Applications: Procee-dings of the Second International Conference, 224-230.

(22) REEVES, C. (1993) Modern Heuristic Techniques for Combinatorial Problems, Black-well Scientific Publications.

(23) REINELT, G. (1991) TSPLIB - A Traveling Salesman Library, ORSA Journal on Com-puting, 3(4), 376-384.

(24) GREFENSTETTE, J., GOPAL, R., ROSMAITA, B. ETA VAN GUCHT, D. (1985) Geneticalgorithms for the traveling salesman problem, Proceedings of the First InternationalConference on Genetic Algorithms and Their Applications, 160-165.

Page 21: Algoritmo Genetikoak saltzaile ibiltariaren probleman ......10 22-2 Algoritmo Genetikoak saltzaile ibiltariaren probleman. Gipuzkoako bira egokiaren atzetik C.M.H. Kuijpers1, P. Larrañaga2,

30 22-2

(25) SYSWERDA, G. (1991) Schedule optimization using genetic algorithms, Davis, L.(ed.) Handbook of Genetic Algorithms, Van Nostrand Reinhold, New York, 332-349.

(26) SPSS-X User’s Guide. 3rd. Edition (1988).(27) WHITLEY, D. ETA STARKWEATHER, T. (1990) Genitor II: A distributed genetic

algorithm, Journal of Experimental and Theorical Artificial Intelligence, 2, 189-214.(28) WHITLEY, D., STARKWEATHER, T. ETA FUQUAY, D. (1989) Scheduling problems

and travelling salesman: The genetic edge recombination operator, Proceedings onthe Third International Conference on Genetic Algorithms, 133-140.

(29) WHITLEY, D., STARKWEATHER, T. ETA SHANER, D. (1991) The traveling sales-man and sequence scheduling: Quality solutions using genetic edge recombination,Davis, L. (ed.) Handbook of Genetic Algorithms, Van Nostrand Reinhold, New York,350-372.