210 likes | 397 Views
Jozef Kratica, Matematički Institut SANU Zorica Stanimirović, Du šan Tošić, Vladimir Filipović Matematički fakultet, Beograd. DVA GENETSKA ALGORITMA ZA REŠAVANJE PROBLEMA P-HAB MEDIJANE SA JEDNOSTRUKOM ALOKACIJOM.
E N D
Jozef Kratica, Matematički Institut SANUZorica Stanimirović, Dušan Tošić,Vladimir FilipovićMatematički fakultet, Beograd DVA GENETSKA ALGORITMA ZA REŠAVANJE PROBLEMA P-HAB MEDIJANE SA JEDNOSTRUKOM ALOKACIJOM TWO GENETIC ALGORITHMS FOR SOLVING THE UNCAPACITATED SINGLE ALLOCATION P-HUB MEDIAN PROBLEM
Genetski algoritmi – osnova1/2 • Zasnovani na ideji Darvinove teorije o postanku vrsta i prirodnoj evoluciji • Iako su prvi radovi nastali još 60-tih godina, kao idejni tvorac se zvanično uzima John Holland sa knjigom "Adaptation in natural and artificial systems"1975. • Robusne i adaptivne metode koje se mogu koristiti i za rešavanje problemaoptimizacije • Osnovna konstrukcija je populacija jedinki (najčešće između 10 i 200) • Svaka jedinka predstavlja moguće rešenje u pretraživačkom prostoru za dati probem • Svaka jedinka je predstavljena genetskim kodom nad određenom konačnom azbukom • Kodiranje može biti binarno, celobrojno ili realno • Svakoj jedinki se dodeljuje funkcija prilagođenosti (fitness function) koja ocenjuje kvalitet date jedinke
Genetski algoritmi – osnova2/2 • Primenom genetskih operatora selekcije, ukrštanja i mutacijese tokom generacija dobijaju sve bolje jedinke • Mehanizam selekcije favorizuje natprosečno prilagođene jedinke i njihove natprosečno prilagođene delove (gene) • Slabije prilagođene jedinke i geni imaju smanjene šanse za reprodukciju pa postepeno izumiru • Operator ukrštanja vrši rekombinaciju gena jedinki i time doprinosi raznovrsnosti genetskog materijala • Višestrukom primenom selekcije i ukrštanja moguće je gubljenje genetskog materijala(neki regioni pretraživačkog prostorapostaju nedostupni) • Mutacija vrši slučajnu promenu određenog gena, sa datom malom verovatnoćom pmut, čime je moguće vraćanje izgubljenog genetskog materijala u populaciju • Time se sprečava pojava preuranjene konvergencije GA u lokalnom ekstremu • Početna populacija se generiše na slučajan načinili nekom heuristikom
Shematski prikaz GA Učitavanje_Ulaznih_Podataka(); Inicijalizacija_Populacije(); while (! Kriterijum_Završetka_GA() ) { for (i=0; i< Npop; i++) pi = Vrednosna_Funkcija(); Funkcija_Prilagođenosti(); Selekcija(); Ukrštanje(); Mutacija(); } Štampanje_Rezultata();
Hab lokacijski problemi1/2 • Hab se može prevesti i kao centar za kolekciju i/ili distribuciju • Ovi problemi su doživeli pravu ekspanziju, najviše zahvaljujući svojoj širokoj primeni u praksi • Srećemo ih u svim segmentima života: izboru lokacija za izgradnju škola, bolnica, skladišta, industrijskih postrojenja, pošta, autobuskih stanica, aerodroma, tržnih centara, itd. • Zadovoljenje potreba korisnika uz minimalne troškove • Neki od čvorova se proglašavaju za habove • Direktna komunikacija između čvorova nije moguća već samo preko jednog ili više habova • Jedinična komunikacija hab-hab (α - transfer) je jeftinija u odnosu na komunikaciju čvor-hab (χ - kolekcija) i hab-čvor (δ - distribucija)
Hab lokacijski problemi2/2 • Uglavnom su svi NP-teški, osim vrlo retkih specijalnih slučajeva • Obično su znatno teži za rešavanje u odnosu na odgovarajuće ne-hab diskretne lokacijske probleme • Ne postoji opšti matematički model koji dobro opisuje sve hab lokacijske probleme • Svaki model ima specifičnu strukturu (funkciju cilja, promenljive, ograničenja) • Zbog toga se čak i problemi sa vrlo sličnim imenom drastično razlikuju po osobinama • Egzaktne metode u razumnom vremenu izvršavanja ne mogu rešiti instance većih dimenzija (koji se sreću u praksi) • Lokalno pretraživanje obično daje lošije rezultate, pa nema puno ni heurističkih načina rešavanja, i to su često ranije bili baš genetski algoritmi
USApHMP • U n mesta je potrebno rasporediti tačno p pošta (habova) • Za svaki par mesta (i,j) je dato njihovo rastojanje Cij i broj (količina) pošiljki Wij • Sve pošiljke iz određenog mesta uvek idu (bilo da se šalju ili primaju) preko iste pošte • Svaka pošiljka mora ići preko bar jedne ili više pošta • Ne postoji ograničenje u broju (količini) pošiljki koji se transportuju preko neke pošte • Potrebno je da ukupni troškovi transporta svih pošiljki budu minimalni
USApHMP – matematički model uz uslove n je broj čvorova, p je fiksiran broj habova Wij količina robe između čvorova (i,j) Cij rastojanje između čvorova (i,j) χ, α, δ jedinični troškovi kolekcije (čvor-hab), transfera (hab-hab) i distribucije (hab-čvor) (α < χ,α < δ) Hkk = 1 akko je cvor k izabran za hab Hik = 1 akko je cvoru i dodeljen hab k
USApHMP - primer • Neka je n=4, p=2, Wij=1, χ=1, α=0.25, δ=1 • Habovi A i B • Čvoru C je pridružen hab A, čvoru D je pridružen hab B • Troškovi transporta su: A-A=0, A-B=12*0.25=3, A-C=4, A-B-D=12*0.25+1=4, B-B=0, B-A-C=12*0.25+4=7, B-D=1, C-A-C=4+4=8, C-A-B-D=4+12*0.25+1=8, D-B-D=1+1=2 • Funkcija cilja je 64
USApHMP - načini rešavanja • Klincewicz 1991- Local neighbourhood search and clustering of nodes • Klincewicz 1992 - Tabu search • Skorin-Kapov 1994 – Tabu search (TABUHUB) • Smith 1996 - Neural networks • Ernst 1996,1998 – Simulated annealing + Branch and Bound • Pérez Pérez 2000,2004 -Path relinking + TABUHUB • Domínguez 2003 – Neural networks
GAHUB1 • Genetski kod je podeljen u dva dela: • Prvi deo se sastoji od p indeksa habova • Drugi deo se sastoji od n-p delova, gde se za svaki ne-hab čvor odredjuje hab koji mu je dodeljen (0 najbliži, 1 sledeći najbliži, ... p-1 najdalji) Genetski kod 0 1 | 0 0 odgovara prethodnom primeru • Veličina populacije je 150 jedinki, od kojih je 100 elitnih • Početna populacija se generiše tako da ima “puno nula” u drugom delu • Fino gradirana turnirska selekcija sa prosečnom veličinom turnira 5.4 • Dvostruko jednopoziciono ukrštanje (pc=0.85) • U prvom delu se primenjuje prosta mutacija (pmut=0.7/n), a u drugom nivo mutacije je 0.1/n za bitove najmanje težine (svaki sledeći bit ima 2 puta manji nivo mutacije) • Zaleđeni bitovi imaju 2.5 puta veći nivo u prvom delu i 1.5 puta u drugom delu • Uklanjanje višestruke pojave jedinki u populaciji i ograničavanje broja jedinki sa istom vrednošću (najviše 40 u datom slučaju) • Dalje poboljšanje brzine izvršavanja pomoću keširanja GA
GAHUB2 • Genetski kod je podeljen u n blokova od kojih svaki ima dva dela: • Prvi bit označava da li je dati čvor hab ili ne (1 ili 0) • Ukoliko čvor nije hab, drugi deo odredjuje hab koji mu je dodeljen (0 najbliži, 1 sledeći najbliži, ... p-1 najdalji) Genetski kod 1 0 | 1 0 | 0 0 | 0 0 odgovara prethodnom primeru • Veličina populacije je takođe 150 jedinki, od kojih je 100 elitnih • Početna populacija se generiše tako da ima “puno nula” u drugim delovima • Fino gradirana turnirska selekcija sa prosečnom veličinom turnira 5.4 • Blokovsko ukrštanje na osnovu prvog bita (pc=0.85) • Za prvi bit mutacija je 0.4/n, za drugi 0.1/n a za svaki sledeći bit 2 puta manji nivo mutacije u odnosu na prethodni • Zaleđeni bitovi takođe imaju 2.5 puta veći nivo u prvom delu i 1.5 puta u drugom delu • Uklanjanje višestruke pojave jedinki u populaciji i ograničavanje broja jedinki sa istom vrednošću (najviše 40 u datom slučaju) • Dalje poboljšanje brzine izvršavanja pomoću keširanja GA
Eksperimentalni rezultati 1/2 • Obe GA implementacije su u programskom jeziku C • AMD Athlon 1.33 GHz sa 256 MB RAM • CAB instance (Civil Aeronautics Board)n25, p4 su suviše lake (rezultati GA se mogu videti u [1]) • AP instance (Australian Post):n200, p20 (χ=3, α=0.75,δ=2 ) • Optimalna rešenja poznata za n50
Eksperimentalni rezultati 2/2 • Oba GA su izvršavana 20 puta na svakoj instanci • Kriterijum završetka • Maksimalni broj generacija Ngen = 500 za manje (n50) i Ngen = 5000 za veće instance • Ukoliko najbolja jedinka ostane nepromenjena posle Nrep = 200 (Nrep = 2000) uzastopnih generacija
Poređenje sa SA, TABUHUB i PR Alpha 200 MHz je po SPEC_fp2000 prosečno oko 7.3 puta sporija od AMD 1.33 GHz i oko 6.9 puta od Intel 1.4 GHz
Zaključak • Umesto prekomernog korišćenja lokalnog pretraživanja obe GA metode koriste uređenje najbližih suseda “nearest neighbour ordering”, koje zahteva vrlo malo dodatno vreme • Zbog toga obe metode rade vrlo efikasno • Ovakvo uređenje uspešno vodi oba GA do obećavajućih regiona pretrage (promising search regions) • Početna populacija se generiše tako da ima “puno nula” što doprinosi dobrom startu GA pretrage • Jedinke u početnoj populaciji su generisane tako da budu korektne, a genetski operatori čuvaju korektnost, tako da se nekorektne jedinke ne mogu pojaviti • Mutacija uz pomoć “zaleđenih bitova” dodatno čuva raznovrsnost genetskog materijala • Rezultati jasno prikazuju da GAHUB2 daje najbolje rezultate u odnosu na sve prethodne metode i GAHUB1 (dostiže sva ranije poznata optimalna rešenja na instancama manje dimenzije i dostiže ili popravlja sva do sada poznata najbolja rešenja na instancama velike dimenzije)
Pravci daljeg istraživanja • Paralelizacija i izvršavanje na višeprocesorskom računaru • Hibridizacija sa nekom egzaktnom metodom • Rešavanje još nekih hab lokacijskih problema • Primena sličnog pristupa za rešavanje nekih drugih problema (koji nisu hab lokacijski ili lokacijski)
Radovi (teze) u kojima su razmatrani hab lokacijski problemi • Stanimirović Z., Rešavanje nekih diskretnih lokacijskih problema primenom genetskih algoritama, magistarski rad, Univerzitet u Beogradu, Matematički fakultet, 2004. • Filipović V., Operatori selekcije i migracije i Web servisi kod paralelnih evolutivnih algoritama, doktorska disertacija, Univerzitet u Beogradu, Matematički fakultet, 2006.
Radovi (SCI) Ovaj problem: [1]Kratica J., Stanimirović Z., Tošić D., Filipović V., "Two Genetic Algorithms for Solving the Uncapacitated Single Allocation p-Hub Median Problem", Resubmitting after second revision to European Journal of Operational Research Ostali hab lokacijski problemi: [2] Kratica J., Stanimirović Z., Tošić D., Filipović V., "Genetic Algorithm for Solving Uncapacitated Multiple Allocation Hub Location Problem", Computing and Informatics, Vol. 24, No. 4, pp. 415-426, 2005. [3] Kratica J., Stanimirović Z., "Solving the Uncapacitated Multiple Allocation p-Hub Center Problem by Genetic Algorithm", Resubmitted after second revision to Asia-Pacific Journal of Operational Research [4]Stanimirović Z. "An Efficient Genetic Algorithm for the Uncapacitated Multiple Allocation p-Hub Median Problem", Submitted to Control and Cybernetics