rasporeĐivanje u okruŽju nesrodnih strojeva uporabom evolucijskog raČunanja
TRANSCRIPT
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
1/45
SVEUILITE U ZAGREBU
FAKULTET ELEKTROTEHNIKE I RAUNARSTVA
ZAVRNI RAD br. 1991
RASPOREIVANJE U OKRUJU
NESRODNIH STROJEVA UPORABOM
EVOLUCIJSKOG RAUNANJA
Karlo Kneevi
Zagreb, srpanj 2011.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
2/45
Posveujem ovaj rad svojim roditeljima,
sestri,
bakama i djedu.
Zahvaljujem mentoru, doc.dr.sc. Domagoju Jakoboviu,na pruenim savjetima tijekom izrade ovog rada.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
3/45
ii
Sadraj
Uvod .................................................................................................................................................. 1
1. Algoritam kolonije mrava ........................................................................................................ 3
1.1. Evolucijsko raunanje ..................................................................................................... 3
1.2. Mravi u prirodi .................................................................................................................. 4
1.3. Pojednostavljeni matematiki model ............................................................................ 5
1.4. Algoritam Ant Colony System ........................................................................................ 7
1.5. Vrste mravljih algoritama .............................................................................................. 10
2. Problem rasporeivanja u okruju nesrodnih strojeva..................................................... 12
2.1. Postupak rasporeivanja.............................................................................................. 12
2.2. Zapis okruenja rasporeivanja .................................................................................. 14
2.2.1. Okolina strojeva ..................................................................................................... 14
2.2.2. Uvjeti rasporeivanja............................................................................................. 15
2.3. Vrednovanje rasporeda ................................................................................................ 16
2.4. Okruje nesrodnih strojeva .......................................................................................... 18
2.4.1. Pretpostavke i postupci rasporeivanja za okruje nesrodnih strojeva ........ 18
2.4.2. Min-min algoritam .................................................................................................. 19
3. Rjeavanje problema rasporeivanja u okruju nesrodnih strojeva uporabom
algoritma kolonije mrava.............................................................................................................. 21
3.1. Uvjeti rasporeivanja i vrednovanje rasporeda......................................................... 21
3.2. Grafika interpretacija ................................................................................................... 23
3.3. Predstavljanje rjeenja.................................................................................................. 24
3.4. Funkcija dobrote ............................................................................................................ 25
3.5. Heuristike funkcije ....................................................................................................... 25
4. Izgled i rad aplikacije............................................................................................................. 27
5. Rezultati mjerenja.................................................................................................................. 29
5.1. Predodreeno rasporeivanje ..................................................................................... 29
5.1.1. Utjecaj tipa heuristike funkcije ........................................................................... 29
5.1.2. Utjecaj veliine kolonije......................................................................................... 32
5.1.3. Utjecaj broja ciklusa .............................................................................................. 33
5.1.4. Vrijeme izraunavanja rasporeda........................................................................ 34
5.2. Rasporeivanje na zahtjev........................................................................................... 35
5.2.1. Rezultati za heuristiku funkciju
............................................................... 35
5.2.2. Utjecaj veliine kolonije......................................................................................... 36
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
4/45
iii
5.2.3. Vrijeme izraunavanja rasporeda........................................................................ 37
Zakljuak......................................................................................................................................... 39
Literatura......................................................................................................................................... 40
Saetak ........................................................................................................................................... 41
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
5/45
1
Uvod
Rasporeivanje je proces koji se bavi dodjelom ogranienih sredstava
skupu aktivnosti u cilju optimiranja jednog ili vie mjerila vrednovanja. Ovisno o
danim uvjetima, sredstva i aktivnosti mogu poprimiti mnoge oblike. Sredstva mogu
biti strojevi u proizvodnom pogonu, procesor raunala, spremniki i komunikacijski
ureaji u raunalnom sustavu itd. Aktivnosti mogu biti razne operacije u
proizvodnji, izvoenja raunalnih programa, popravci u radionici i druge. Rjeenje
problema rasporeivanja je raspored koji definira kada e se i na kojem sredstvu
odvijati pojedina aktivnost. Vrednovanje rasporeda mogue je definirati po puno
razliitih kriterija, kao to je ukupno vrijeme izvoenja, broj zakanjelih aktivnostiitd [4].
Rasporeivanje u posljednje vrijeme, razvojem tehnologije i nastankom sve
sloenijih zahtjeva, znatno dobiva na vanosti.Raunarstvo u oblaku (engl. cloud
computing) primjer je jedne od aktualnih tehnologija, ija uinkovitost i brzina
izvoenja zadataka uvelike ovisi o rasporedu zahtjeva na posluitelj ima. Razvoj
tehnologije doprinio je razvoju novih tehnika rasporeivanja od kojih je jedna
predstavljena u ovom radu. Rije je o algoritmu kolonije mrava, algoritmuzasnovanom na inteligenciji roja i jednom od algoritama strojnog uenja. Bez
razvoja tehnologije taj algoritam ne bi bio primjenjiv u ovom stupnju u kojem jest,
jer uvelike ovisi o brzini rada raunala.
U ovom radu naglasak je na rasporeivanju u okruju nesrodnih strojeva.
Za navedeno okruje postoji niz heuristika rasporeivanja, a jedna od najpoznatijih
metoda je min-min heuristika. Ovaj heuristiki algoritam prua zadovoljavajua
rjeenja, ali mogue je njegovo poboljanje, tako da su u nekim sluajevimapostignuti bolji rezultati uporabom algoritma kolonije mrava.
Ispitivanja su provedena za dva naina rasporeivanja, predodreeno
rasporeivanje i rasporeivanje na zahtjev, i etiri razliite heuristike koje koristi
algoritam kolonije mrava. Ispitana je dobrota rasporeda u odnosu na veliinu
kolonije mrava i broj generacija mrava.
Cilj ovog rada je pokazati dobrotu heuristikog algoritma min-min u odnosu
na algoritam kolonije mrava.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
6/45
2
Rad ini pet poglavlja u kojima se navode problemi koji se rjeavaju, kao i
nain njihovog rjeavanja. U prvom poglavlju opisuje se algoritam ko lonije mrava,
svojstva mrava u prirodi i umjetnih mrava, implementacija funkcija koje algoritam
koristi i vrste mravljih algoritama. U drugom poglavlju pojanjava se pojam
rasporeivanja u okruju nesrodnih strojeva, zapis okruenja rasporeivanja,
nain vrednovanja rasporeda i okruje nesrodnih strojeva. Takoer e detaljnije
biti pokazana primjena rasporeivanja na nesrodnim strojevima. U treem
poglavlju predstavljeno je rjeenje problema rasporeivanja na nesrodnim
strojevima pomou algoritma kolonije mrava. U poglavlju se opisuje funkcija
dobrote i koritene heuristike, kao i grafika interpretacija implementacije. U
etvrtom poglavlju pokazan je izgled aplikacije sa svim mogunostima odabira
rasporeivanja i optimizacija. U zadnjem, petom, poglavlju, prikazani su rezultati
mjerenja.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
7/45
3
1. Algoritam kolonije mrava
Ovo poglavlje obrauje tematiku evolucijskog raunanja, a detaljnije opisuje
algoritam kolonije mrava. Navedeni su motivi za imitiranje ponaanja mrava i
algoritamska implementacija, kao i vrste mravljih algoritama.
1.1. Evolucijsko raunanje
U raunarskoj znanosti, evolucijsko raunanje dio je umjetne inteligencije,
polje raunarska inteligencija, koje se bavi kombinatornim optimizacijama.
Evolucijsko raunanje primjer je metaheuristike i danas se dijeli na dva velika
podruja [5]:
1. evolucijski algoritmi (engl. evolutionary algorithms),2. algoritmi zasnovani na inteligenciji roja (engl. swarm intelligence).
Evolucijski algoritmi definiraju se kao postupci optimiranja, uenja i
modeliranja, koji se temelje na mehanizmu evolucije u prirodi. Njihov nastanak
uzrokovali su prvenstveno pokuajiprimjene naela evolucije pri rjeavanju nekih
problema, ali i nastojanja za boljim razumijevanjem samo evolucije u prirodi. Ideja
evolucijskih algoritama je da rade s populacijom rjeenja nad kojima se primjenjuju
evolucijski operatori (selekcija, krianje, mutacija, supstitucija) ime populacija izgeneracije u generaciju posrtaje sve bolja i bolja [1]. Evolucijski algoritmi su:
genetski algoritmi,
evolucijsko programiranje,
evolucijske strategije,
genetsko programiranje.
Algoritmi zasnovani na inteligenciji roja definiraju se na slian nain kao
evolucijski algoritmi, ali temelje se na socioloko-psiholokim principima i pruajuuvid u socioloka ponaanja. Baziraju se na populaciji rjeenja. U odnosu na
evolucijske algoritme, ne postoji mehanizam stvaranja nove generacije iz
postojee, tj. ne postoje evolucijski operatori, ve se modeliraju individualni i
socijalni faktori, ime se stvara novo znanje i nova informacija [1]. Najpoznatija
dva algoritma zasnovana na inteligenciji roja su:
algoritam (optimizacija) kolonije mrava,
algoritam (optimizacija) roja estica.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
8/45
4
Osnovna prednost evolucijskog raunanja jest to preslikava rjeenja problema
faktorijelne ili eksponencijalne sloenosti u probleme polinomne sloenosti.
Meutim, pronaena rjeenja u veini sluajeva su optimalna ili vrlo blizu
optimalnih.
1.2. Mravi u prirodi
Mravi su izuzetno jednostavna bia usporedimo li ih, primjerice, s
ovjekom. No i tako jednostavna bia, zahvaljujui socijalnim interakcijama,
postiu zadivljujue rezultate. Uoeno je da mravi uvijek pronalaze najkrai put
izmeu izvora hrane i njihove kolonije, to im omoguuje da hranu dopremaju
maksimalno brzo.
Uzrok tog svojstva jest specifina mravlja strategija u kojoj glavnu ulogu igra
kemijska supstanca feromon kojeg mravi ostavljaju za sobom nakon to pronau
hranu. Na taj nain indirektno signaliziraju drugim mravima da prate taj trag kako
bi i oni pronali isti izvor hrane. Takav oblik komunikacije poznat je pod nazivom
stigmergije (engl. stigmergy) gdje agenti komuniciraju preko okoline koja je
modificirana drugim agentima [3].
Inspiraciju za optimizaciju kolonijom mrava dao je eksperiment koji je
proveo Goss sa suradnicima, 1989. godine, s argentinskim mravima (lat.
Iridomyrmex humilis). Kako bi istraili ponaanje mrava, Gross i suradnici napravili
su niz eksperimenata koristei dvokraki most postavljen izmeu mravinjaka i
hrane. Tijekom eksperimenta varirane su duljine krakova mosta. U prvom
eksperimentu oba kraka bila su jednako duga i mravi su u poetku, u
podjednakom broju, krenuli preko oba kraka. Nakon nekog vremena, dominantni
dio mrava kretao se samo jednim krakom sluajno odabranim. Objanjenje
eksperimenta jest da krak kojeg je nasumino odabrala veina mrava sadri veukoncentraciju feromona koja ne hlapi jer se isti mravi u koloniju vraaju istim
krakom. Zbog jednako intenzivnog feromonskog mirisa, i drugi mravi poinju
koristiti taj krak. Time je postignuta konvergencija [2].
Sljedei eksperiment napravljen je s dvokrakim mostom kod kojeg je jedan
krak dvostruko dulji od drugog. U svim pokuajima eksperimenta pokazalo se da
najvei broj mrava, nakon nekog vremena, bira krai krak. Ovakvo ponaanje na
makroskopskoj razini, rezultat je interakcije na mikroskopskoj razini, individualnih i
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
9/45
5
socijalnih faktora. Takvo ponaanje temelj je onog to se danas naziva izranjajua
inteligencija (engl. emerging intelligence) [2].
Kako bi se provjerila dinamika, odnosno sposobnost prilagodbe mrava na
promjene, napravljen je trei eksperiment. Kod ovog eksperimenta mravinjak i
izvor hrane najprije su spojeni jednokrakim mostom. Mravi se kreu tim krakom od
hrane i natrag. Nakon pola sata, kada se situacija stabilizirala, mostu je dodan
drugi, dvostruko krai krak. Meutim, eksperiment je pokazao da se najvei broj
mrava i dalje nastavio kretati duljim krakom, zahvaljujui stvorenom jakom
feromonskom tragu [2].
1.3. Pojednostavljeni matematiki model
Temelj za matematiki model jest teorija grafova jer se algoritam kolonije
mrava generalizira na traenje Hamiltonovog ciklusa u grafu. Neka je povezani graf, gdje je skup svih vorova, a skup svih lukova. Broj vorova je . Rjeenje problema predstavlja ciklus na grafu koji povezuje izvorini iodredinivor, a ija duljina je jednaka broju vorova.
Sa svakim lukom grafa povezana je varijabla koja predstavljaumjetni trag feromona. U fazi inicijalizacije, na sve se bridove postavi ista koliina
feromona. Tragove feromona itaju i piu mravi. U svakom voru grafa dolazi do
stohastike odluke koji je vor sljedei. mrav lociran u voru koristi tragferomona za izraun vjerojatnosti u koji vor ij N treba otii. je skup svihindeksa svih vorova u koje je u koraku mogue prijei iz vora . Simbol jekonstanta.
(1.1)
Nakon to odabere sljedei vor, mrav ponavlja proceduru donoenja
odluke o odlasku u sljedei vor opisan jednadbom (1.1) sve dok ne stigne do
ciljnog vora. Mravlji algoritmi pripadaju obitelji konstrukcijskih algoritama jer do
konanog rjeenja dolaze akumulirajui dio po dio rjeenja [3].
Kako bi se izbjeglo obilaenje istih vorova vie puta, svaki mrav ima
vlastitu tabu listuu kojoj se pamti koji vorovi su posjeeni.Dolaskom u ciljni vor,
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
10/45
6
na temelju funkcije dobrote, mrav zna kolika je vrijednost puta kojeg je proao.
Mravi feromone osvjeavaju nakon dolaska u ciljno stanje, a koliina feromona
proporcionalna je dobroti rjeenja.Auriranje se radi za sve bridove kojima je mrav
proao prema izrazu (1.2).
(1.2)Isparavanje feromona odreeno je izrazom (1.3). (1.3)Konstanta oznaava brzinu isparavanja ili postotak feromona koji ne isparava, avrijednost je iz intervala . Temeljei se opisanim principima, napisan jeoptimizacijski algoritam (1.1).
Slika 1.1 Jednostavan mravlji algoritam
Algoritam mrava radi s populacijom od mrava, a ciklus se iterira puta.Svih mrava pusti se da stvore rjeenja i ta se rjeenja vrednuju. Kada svih mrava stvori prijedloge rjeenja, odabire se mrava koji e obaviti auriranjetragova, a pri tome vrijednost
moe biti jednaka
, manja od
ili jednaka jedan.
Pojednostavljenim matematikim modelom opisana su svojstva mrava ikolonije. Svojstva kolonije kao cjeline su [3]:
dobra rjeenja mogu proizai kao rezultat kolektivne interakcije,
svaki mrav koristi samo privatne informacije i lokalne informacije
vora kojeg posjeuje,
mravi komuniciraju samo indirektno,
mravi se sami po sebi ne adaptiraju, ve mijenjaju nain
prezentacije, problema i percepcije drugih mrava.Svojstva mrava kao jedinke su [3]:
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
11/45
7
mrav trai najisplativije rjeenje,
svaki mrav ima memoriju za pohranu informacija o putu i moe jekoristiti:
o za generiranje smislenog rjeenja,
o za evaluaciju pronaenog rjeenja,
o za povratak po istom putu.
mrav moe se pomaknuti u bilo koji vor u susjedstvu , mravu moe se dodjeliti poetno stanje i jedan ili vie terminirajuih
uvjeta,
mrav stvara rjeenje inkrementalno i konstrukcija zavrava kada je
zadovoljen jedan od uvjeta zaustavljanja,
odabir sljedeeg vora temelji se na vjerojatnosti,
vjerojatnost pojedine odluke mrava temelji se na:
o vrijednostima pohranjenim u strukturi vora ,o privatnoj memoriji mrava,
o ogranienjima problema.
pomicanjem iz vora
u vor
mrav aurira trag feromona,
kada je izgradio rjeenje i vratio se na izvorite, mrav umire ioslobaa resurse.
1.4. Algoritam Ant Colony System
Algoritam Ant Colony System podskup je algoritma Ant System kojeg su
predloili Dorigo i Gambardella. U odnosu na algoritam Ant System, algoritam se
razlikuje u tri glavne toke [3]:
1. bolje se iskoritava steeno iskustvo pretraivanja ostalih mrava
preko snanije funkcije izbora sljedeeg vora,
2. globalno feromonski trag isparava i aurira samo mrav s najboljim
rjeenjem,
3. svaki put kad mrav prolazi bridom , lokalno isparava feromonskitrag u namjeri da povea istraivanje bridova ostalih mrava.
U algoritmu Ant System definirano je sluajno proporcionalno pravilo (engl.
random proportional rule) koje odreuje vjerojatnost prelaska iz vora
u vor
.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
12/45
8
Jednadba (1.4) koristi dvije komponente: jakost prethodno deponiranog
feromonskog traga te vrijednost heuristike funkcije.
(1.4)
je heuristika informacija koja govori koliko je dobro iz vora prijei u vor.To je informacija koja se moe odrediti statiki, unaprijed definirana, ili dinamiki,
mijenja se tijekom izvoenja algoritma. Pritom treba paziti da funkcija koja opisuje
heuristiku informaciju bude optimistina.
Parametri i odreuju ponaanje algoritma. Ako je , utjecajferomonskog traga se ponitavai pretraivanje se vodi samo heuristikom
informacijom. Ako je , utjecaj heuristike informacije se ponitava i ostajeutjecaj iskljuivo feromonskog traga, to esto dovodi do prebrze konvergencijesuboptimalnom rjeenju.
Algoritam Ant Colony System ima snaniju funkciju izbora sljedeeg vora,
odnosno sluajno proporcionalno pravilo definirano je izrazom (1.5).
(1.5)
Varijabla ima sluajnu vrijednost uniformno distribuiranu na intervalu , jeparametar intervala , a je sluajna varijabla odreena vjerojatnosnomfunkcijom (1.4). S vjerojatnou mrav radi najbolji mogui odabir vora natemelju feromonskih tragova i heuristike informacije. Kae se da mrav iskoritava
steeno znanje [3]. S vjerojatnou mrav istrauje bridove susjednihneposjeenih vorova.Pseudokod na slici (1.2) prikazuje moguu implementaciju
istraivanja bridova.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
13/45
9
Slika 1.2 Pseudokod istraivanja bridova
Mijenjanje parametra doputa promjenu stupnja istraivanja susjednihbridova u odnosu na odabir vora na temelju steenog znanja. Steeno znanje
konvergira lokalnoj okolini najboljeg rjeenja.
U algoritmu Ant Colony System globalno auriranje feromonskih tragova,
nakon svakog ciklusa, izvodi mrav s najboljim rjeenjem prema izrazu (1.6).
(1.6)
Izraz jednak je, ukoliko optimum predstavlja minimum, recipronoj vrijednostirjeenja najboljeg mrava,
. Vano je uoiti da se feromonski tragovi aurirajudu bridova kojim je proao najbolji mrav, a ne du svih bridova kao u algoritmu
Ant System. Ta injenica vana je iz razloga to se sloenost izraunavanja
reducirala s na , gdje je broj vorova [3].Lokalno auriranje feromonskih tragova u algoritmu Ant Colony System
obavljaju mravi odmah nakon to su proli bridom , a auriranje je odreenoizrazom (1.7). (1.7)Vrijednost parametra, koji oznaava lokalnu brzinu isparavanja, je iz intervala, a je inicijalna vrijednost feromonskog traga na grafu . Pokazuje se da jepoeljna vrijednost parametra
iz intervala
, a inicijalna vrijednost od
postavlja se iskustveno ili se koristi izraz (1.8).
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
14/45
10
(1.8)Vrijednost
najkraa je duljina puta pronaena nekim jednostavnim algoritmom,
npr. algoritam najblieg susjeda ili min-min algoritam, a vrijednost moe bitijednaka jedan ili broju mrava.Ideja je dobiti odreenu procjenu duljine puta od koje e mravi dalje traiti
bolja rjeenja te ponuditi optimalnu poetnu toku za rad algoritma. Uz premalu
vrijednost , pretraga e brzo biti usmjerena prema podruju koje su mravisluajno odabrali u prvoj iteraciji, a uz preveliki , koliine feromona koje mraviostavljaju u svakoj iteraciji bit e premale da bi mogle usmjeravati pretragu, pa e
se morati potroiti puno ciklusa kako bi mehanizam isparavanja odnio viak
feromona.
Slikom (1.3) prikazan je pseudokod algoritma Ant Colony System.
Slika 1.3 Pseudokod algoritma Ant Colony System
1.5. Vrste mravljih algoritama
Algoritam kolonije mrava openit je naziv za skup algoritama koji se temeljena jednostavnom mravljem algoritmu ( 1.3). Motiv za daljnju nadogradnju
jednostavnog algoritma jest bolja pretvorba i problemau probleme. Prvi algoritam kolonije mrava je Ant System. Predloene su triinaice algoritma [3]:
1. algoritam temeljen na gustoi mrava (engl. ant-density),
2. algoritam temeljen na brojnosti mrava (engl. ant-quantity),
3. algoritam temeljen na ciklusima mrava (engl. ant-cycle).
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
15/45
11
Prve dvije inaiceodbaene su zbog loih svojstava, a trea inaica evoluirala je u
niz drugih algoritama.
Neposredni slijednici algoritma Ant System su:
elitistiki algoritam (engl. Elitist Ant System),
algoritam rangirajueg sustava mrava (engl. Rank-based Ant
System),
Max-Minalgoritam (engl. Max-Min Ant System).
Glavne modifikacije u odnosu na Ant System su pravila auriranja feromonskih
tragova i dodatna ogranienja, koja uvodi Max-Minalgoritam.
Ukljuivanje novih temeljnih mehanizama, algoritam Ant System proiruje
se u sljedee algoritme [3]:
Ant Colony System,
ANTS (engl. Approximate Nondeterministic Tree Search),
radna okolina hiperkocke za algoritam kolonije mrava,
paralelna implementacija algoritma kolonije mrava.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
16/45
12
2. Problem rasporeivanja u okruju nesrodnih strojeva
U ovom poglavlju prikazani su elementi koji ine problem rasporeivanja i
neki pristupi rjeavanju toga problema. Opisan je nain zapisa okruenja
rasporeivanja, podjela uvjeta rasporeivanja i vrednovanje rasporeda. Definirano
je okruje nesrodnih strojeva i heuristika koja rjeava zadani problem. Na kraju
poglavlja opisana je mogua primjena izrade rasporeda u okruju nesrodnih
strojeva.
2.1. Postupak rasporeivanja
Rasporeivanje je u irem smislu postupak izrade bilo kakvog rasporeda. U
razliitim okruenjima postupak izrade rasporeda moe se podijeliti na viestupnjeva, ovisno o algoritmu i problemu. U problemima koji ukljuuju samo jedno
sredstvo, rasporeivanje se sastoji od odreivanja redoslijeda aktivnosti na tom
sredstvu. Ako se koristi vie odvojenih sredstava, prije izrade redoslijeda potrebno
je odrediti koje aktivnosti e se odvijati na kojem sredstvu.
U oba sluaja, postupak izrade cjelokupnog rasporeda naziva se
rasporeivanjem. U problemima sa vie sredstava, postupak dodjeljivanja
aktivnosti sredstvima naziva se pridruivanjem (engl. matching), a postupak izraderedoslijeda na pojedinom sredstvu ureivanjem (engl. sequencing) [4].
Rasporeivanje je proces u kojem se dodjeljuju ograniena sredstva (engl.
resources) skupu aktivnosti koje se trebaju izvriti, ovisno o danom okruenju
rasporeivanja i ogranienjima. Aktivnost je bilo kakva operacija koja se treba
izvriti u odreenom vremenu, na odreenom sredstvu.
Sloenost postupka rasporeivanja mijenja se ovisno o okolini u kojoj se
vri rasporeivanje. Poveanjem sloenosti okoline, raste i sloenost
rasporeivanja poslova u toj okolini. Shodno poveanju sloenosti problema
rasporeivanja, raste potreba za algoritmima koji e u to kraem roku rezultirati
prihvatljivim rjeenjima problema. Za veinu problema koji se pojavljuju, budui da
je nemogue razviti algoritam koji bi bio egzaktan,razvijaju se heuristiki algoritmi
[4].
Takvi algoritmi koriste metode pretraivanja prostora stanja, a metode je
mogue primijeniti u statikim i dinamikim okrujima rasporeivanja. Evolucijsko
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
17/45
13
raunanje, na kojem je teite ovog rada, a koje je opisano u ( 1.), jedno je od
moguih postupaka rjeavanja problema rasporeivanja.
Vaan element rasporeivanja je posao (engl. job), koji se moe sastojati
od vie aktivnosti, ali najee je rije o jednoj nedjeljivoj aktivnosti. Cilj postupka
rasporeivanja je omoguiti izvoenje posla, te su svojstva poslova varijable
samog algoritma rasporeivanja. Skup svih poslova oznaava se s , dok sepojedini posao oznaava s . Skup zadataka (engl. task), ili aktivnosti, oznaavase s , dok se pojedini zadatak oznaava s . U nastavku su navedenarelevantna svojstva poslova za sam postupak rasporeivanja [4].
Trajanje izvoenja ( pj)
Svaki posao izvrava se u odreenom vremenu, te se ta koliina vremena naziva
trajanje izvoenja (engl. processing time). Oznaava se oznakom , pri emu je indeks posla. U okruenju vie strojeva, trajanje izvoenja posla na stroju oznaava se oznakom .Vrijeme pripravnosti ( rj)
Trenutak u kojem posao postaje raspoloiv za izvoenje naziva se vrijeme
pripravnsti (engl. ready time, release time) i oznaava se oznakom . Prijevremena pripravnosti nije mogue izvoenje posla u sustavu.Vrijeme eljenog zavretka ( dj)
Trenutak do kojeg bi posao trebao zavriti s izvoenjem naziva se vrijeme
eljenog zavretka (engl. due date) i oznaava se s . U sluaju da se izvoenjeposla zavri nakon tog trenutka, dolazi do stvaranja odreenog troka i ovo
ogranienje vrlo je vano u stvaranju kvalitetnog rasporeda.
Vrijeme nunog zavretka ( j)
Vrijeme nunog zavretka (engl. deadline, drop dead time), koje se oznaava
oznakom , je vremenski trenutak do kojeg posao mora zavriti kako bi rasporedbio valjan.
Teina ( wj)
Vrijednost koja odreuje prioritet posla u sustavu naziva se teina (engl. weight),
te se oznaava oznakom . Ta se vrijednost najee koristi kod vrednovanja
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
18/45
14
rasporeda, gdje predstavlja mjeru kvalitete rasporeda. U sluaju da se
vrednovanje rasporeda obavlja na temelju vie kriterija, mogue je svakom poslu
pridruiti vie teinskih vrijednosti.
2.2. Zapis okruenja rasporeivanja
Okolina rasporeivanja zapisuje se koristei standardni zapis , koji su1979. Godine uveli R. Graham, E. Lawer, J.K. Lenstra i A. Rinooy Kan. Svako
polje u zapisu odgovara elementu koji mora biti definiran kako bi okolina bila
odrediva. Ti elementi svojstva su strojeva, svojstva zadataka i kriterij vrednovanja
rasporeda. Obzirom na pojavu sve sloenijih okruja, kontinuirano se uvode nove
oznake i time proiruje navedeni zapis.
2.2.1. Okolina strojeva
Prvo polje u zapisu, , odreuje okolinu strojeva na kojima se posloviizvode. Ovdje e biti navedene najee okoline strojeva [4].
Jedan stroj ( 1 )
U sustavu postoji samo jedan stroj (engl. single machine) i na njemu se izvode svi
poslovi. Ovakvo okruenje moe se promatrati kao specijalni sluaj svih ostalih
sloenijih okolina.
Paralelni identini strojevi ( Pm )
U sustavu postoji identinih strojeva koji rade paralelno (engl. parallel identicalmachines). Svaki se posao sastoji od jedne operacije i moe se izvesti na bilo
kojem stroju. Brzina obrade, budui da su strojevi identini, jednaka je za svaki
stroj, pa za vrijeme izvoenja nije potrebno navoditi njegovu oznaku. Ako broj
strojeva nije naveden, smatra se da je proizvoljan, to vrijedi i za sljedeanavedena okruenja.Jednoliki strojevi ( Qm )
U ovakvom okruenju svaki stroj ima razliitu brzinu, no ona je jednaka za svaki
zadatak koji se na njemu obavlja. Brzina jednolikog stroja (engl. uniformmachines) oznaava se oznakom . Time trajanje obavljanja posla na stroju ,koje se oznaava
, dobiva vrijednost
.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
19/45
15
Nesrodni strojevi ( Rm )
U okruenju nesrodnih strojeva (engl. unrelated machines) svaki stroj ima razliitu
brzinu za svaki pojedini posao u sustavu. Trajanje izvoenja posla definirano je za
svaku kombinaciju posla i stroja, te se oznaava , kao i u prethodnom sluaju.Otvorena obrada ( Om )U okruenju otvorene obrade (engl. open shop) svaki posao sastoji se od vienedjeljivih operacija, pri emu se broj operacija posla oznaava s , a pojedinaoperacija s . Svaka opercija moe se obaviti jedino na za nju predvienomstroju, te je broj operacija jednak broju strojeva.
Obrada tijeka ( Fm )
Za razliku od prethodno navedene okoline, o okolini obrade tijeka (engl. flow shop)
postoji jo jedno ogranienje. Naime, za sve poslove utvren je jednak redoslijed
obavljanja operacija. Tako se operacija obavlja na stroju , zatim operacija na stroju itd.Proizvoljna obrada ( Jm )
U okruenju proizvoljne obrade (engl.job shop) mogue je da se operacije izvodevie puta na jednom stroju, a niti jednom na nekom drugom stroju. Takoer se
moraju izvoditi odreenim redoslijedom i na odreenim strojevima, kao i u
prethodno navedenom okruju.
2.2.2. Uvjeti rasporeivanja
Uvjeti rasporeivanja odnose se na razliite mogunosti izrade rasporeda te
na vremenski odnos izmeu same izrade rasporeda i njegovog izvoenja u nekom
stvarnom sustavu. Uvjeti rasporeivanja mogu se podijeliti po nekoliko neovisnih
osnova koje su opisane u nastavku [4].
Raspoloivost parametara
Budui da svi algoritmi rasporeivanja koriste neke od parametara sustava
(npr. broj poslova, vrijeme dolaska itd.) kao ulazne veliine, najvaniji imbenik u
odabiru algoritma rasporeivanja je raspoloivost parametara sustava. Po pitanju
raspoloivosti parametara, sustavi rasporeivanja dijele se na dvije skupine:
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
20/45
16
Predodreeno rasporeivanje (engl. offline scheduling) u ovom
obliku rasporeivaja pretpostavlja se da su sve potrebne vrijednosti
poznate prije izrade rasporeda i prije samog rada sustava. Isto tako,
u svakom trenutku rada sustava poznate su sve ulazne veliine koje
opisuju budunost sustava (kao to su dolasci poslova),
Rasporeivanje na zahtjev (engl. online scheduling) za razliku od
prethodnog modela, u rasporeivanju na zahtjev odluke se donose
na temelju trenutno dostupnih podataka, bez znanja o eventualnoj
budunosti sustava. Primjerice, znaajke poslova poznate su tek kad
neki posao doe u sustav, odnosno, kada postane raspoloiv, a ne
prije poetka izrade rasporeda.
Pouzdanost parametara
Neovisno o tome jesu li vrijednosti parametara poznate ili ne prije izrade
rasporeda, okolina rasporeivanja moe se razlikovati i po tome koliko su
vrijednosti tih parametara pouzdane, odnosno kojom preciznou su procijenjene.
Po tom kriteriju rasporeivanje se moe grubo podijeliti u dvije skupine:
Deterministiko rasporeivanje u deterministikom rasporeivanju
smatra se da su vrijednosti parametara sustava odreene s dovoljnovelikom preciznou, bez obzira u kojem trenutku postaju poznate,
Stohastiko rasporeivanjeunutar stohastikog rasporeivanja ne
postoje pouzdane procjene vrijednosti parametara sustava, ve se
stvarne vrijednosti mogu oitati tek nakon zavretka rada odreenog
dijela sustava.
2.3. Vrednovanje rasporeda
Vrednovanje rasporeda odnosi se na njegovo ocjenjivanje prema nekom od
kriterija. Odluka o kojem se kriteriju radi ima vaan utjecaj i na izbor algoritma
rasporeivanja koji e se koristiti. Mjerila vrednovanja, tj. kriteriji definiraju se u
ovisnosti o izlaznim veliinama u sustavu, koje e sad biti navedene [4].
Vrijeme zavretka (engl. completion time) je trenutak u kojem sezavrava izvoenje aktivnosti ,
Protjecanje (engl. flowtime)je koliina vremena koju je u sustavu provelaaktivnost:
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
21/45
17
(2.1) Kanjenje (engl. lateness) je razlika izmeu vremena zavretka i
vremena eljenog zavretka aktivnosti
:
(2.2) Zaostajanje (engl. tardiness) je pozitivni iznos kanjenja neke aktivnosti ,odnosno jednako je nuli ako je kanjenje negativno: (2.3)
Preuranjenost (engl. earliness) je negativan iznos kanjenja aktivnosti ,odnosno jednako je nuli ako je kanjenje pozitivno:
(2.4)
Zakanjelost govori je li aktivnost prekoraila eljeno vrijeme zavretkaili nije: (2.5)Na osnovu ovih veliina navedeni su najee koritenih kriterija
vrednovanja rasporeda. U sluaju da je teina svakog zadatka jednaka, vrijednost
teine ne utjee na ocjenu rasporeda te je samim time postupak rasporeivanja
olakan, no to najee nije sluaj kod stvarnih uvjeta rasporeivanja.
Ukupna duljina rasporeda (engl. makespan) je posljednje vrijemezavretka svih poslova u sustavu: (2.6) Najvee kanjenje (engl. maximum lateness) definirano je kao: (2.7) Teinsko protjecanje (engl. weighted flowtime) definira se kao suma
teinskog protjecanja svih poslova:
(2.8) Teinsko zaostajanje (engl. weighted tardiness) jednako je teinskoj
sumi zaostajanja svih poslova:
(2.9) Teinska zakanjelost (engl. weighted number of tardy jobs) definira se
kao teinska suma svih zaostalih poslova:
(2.10)
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
22/45
18
Teinska preuranjenost i teinsko zaostajanje (engl. weighted earlinessand weighted tardiness) definira se kao zbroj teinske preuranjenosti i
teinskog zaostajanja, uz posebne teinske faktore za obje vrijednosti:
(2.11)
U posljednjem navedenom kriteriju ukljuen je troak preuranjeno zavrenog
posla, to nije sluaj kod tzv. pravilnih kriterija, te je kriterij primjer tzv. nepravilnog
mjerila.
2.4. Okruje nesrodnih strojeva
Okruje nesrodnih strojeva definirano je u ( 2.2.1.), a u ovom potpoglavlju
bit e definirane pretpostavke koje vrijede za okruje nesrodnih strojeva i postupcirasporeivanja na nesrodnim strojevima.
2.4.1. Pretpostavke i postupci rasporeivanjaza okruje nesrodnih strojeva
U okruju nesrodnih strojeva rasporeivanje moe biti predodreeno ili na
zahtjev. U veini stvarnih sustava, izvodi se rasporeivanje na zahtjev ( 2.2.2.).
Pretpostavke koje u ovom radu vrijede za okruje nesrodnih strojeva [4]:
podaci o poslovima nisu unaprijed poznati (rasporeivanje na zahtjev),
poslovi su neprekidivi,
strojevi su neprekidno raspoloivi od poetka rada sustava.
Prilikom rasporeivanja na nesrodnim strojevima, dolaze do izraaja dvije faze
rasporeivanja poslova: pridruivanje i ureivanje ( 2.1.). Neki postupci
rasporeivanja ove dvije faze obavljaju odvojeno, a kod nekih je jedna sadrana u
drugoj. Takoer, dvije je razliite metode pridruivanja i ureivanja mogue
obuhvatiti u jedinstveni postupak rasporeivanja.
Algoritmi rasporeivanja u dinamikim uvjetima rasporeivanja na zahtjev
mogu se razlikovati po tome u kojem trenutku je neki posao rasporeen na
odgovarajui stroj. Jedna skupina algoritama rasporeuje pristigli posao na neki
od strojeva odmah po njegovu dolasku, ime se zapravo obavlja samo
pridruivanje poslova. Ureivanje poslova na stroju podrazumijeva redoslijed
izvoenja jednak redu prispjea, tj. ureivanje po FCFS (engl. first come first
served). Druga skupina algoritama ne rasporeuje svaki posao po njegovu
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
23/45
19
dolasku, ve se u predodreenim vremenskim intervalima zajedniki rasporeuju
svi do tada pristigli, a jo nepokrenuti poslovi (engl. batch mode) [4].
U veini primjena algoritmi iz druge skupine postiu bolje rezultate. Za
okruenje nesrodnih strojeva postoji niz heuristika rasporeivanja, no jedna od
najpoznatijih metoda je min-min heuristika.
2.4.2. Min-min algoritam
Prije opisa algoritma, potrebno je uvesti sljedee oznake [4]:
je trajanje izvoenja posla na stroju ; sva trajanja izvoenjaunaprijed su poznata s dovoljnom preciznou,
je vrijeme pripravnosti stroja
(obzirom na poslove koji se na njemu
trenutno izvode),
je vrijeme zavretka izvoenja posla na stroju ; budui su vremenazavretka vezana samo za poslove, za odreivanje kriterija koristi se
oznaka kao vrijeme zavretka posla je skup svih raspoloivih poslova koji jo nisu pokrenuti; neki od tih
poslova su moda dodijeljeni nekome stroju, ali njihovo izvoenje jop nije
zapoelo pa su podloni novom pridruivanju.
U nastavku je prikazan i opisan algoritam min-min.
Slika 2.1 Min-min postupak rasporeivanja [4]
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
24/45
20
Min-min postupak prikazan je kao algoritam slikom 2.1. U svakom koraku
algoritam rauna oekivano vrijeme zavretka izvoenja poslova na svakom od
strojeva, uzevi u obzir vrijeme pripravnosti stroja. Potom se za svaki posao
pronalazi stroj koji daje najmanje oekivano vrijeme zavretka. Postupak tada
rasporeuje posao koji postie najblie vrijeme zavretka (od svih poslova) na
stroj koji tom poslu daje to vrijeme zavretka.
Vaan element uporabe opisanog postupka rasporeivanja je i odabir
trenutka rasporeivanja nagomilanih poslova. U stvarnim se uvjetima obino
definira neki vremenski interval nakon kojeg se algoritam ponovno primjenjuje.
Odreivanje veliine intervala u velikoj je mjeri ovisno o vrsti sustava u kojemu se
rasporeivanje obavlja. U ovom radu, u postupku simulacije, primjenjuje se najbolji
sluaj: algoritam se izvodi svaki puta kada novi posao doe u sustav.
Na slici 2.2 grafiki je prikazano rasporeivanje i ureivanje pomou min-
min algoritma. Poto je stroj zauzet, a novi posao dolazi u sustav, niti jedanposao iz skupa poslova stroja nee biti izvren, ve se ponovno vraaju u skup.
Slika 2.2 Grafiki prikaz algoritma min-min
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
25/45
21
3. Rjeavanje problema rasporeivanja u okruju nesrodnihstrojeva uporabom algoritma kolonije mrava
U ovom poglavlju prikazana je grafika interpretacija i prikaz rjeenja.
Predstavljen je pseudokod funkcije dobrote (engl. fitness function) i koritenaheuristika pravila u svrhu koritenja parametra u izrazu (1.5.). Rjeenjeproblema rasporeivanja u okruju nesrodnih strojeva ostvareno je uporabom
algoritma Ant Colony System.
3.1. Uvjeti rasporeivanja i vrednovanje rasporeda
Algoritam Ant Colony System implementiran je za predodreeno
rasporeivanje i rasporeivanje na zahtjev ( 2.2.2.). Svrha implementiranja dvatipa rasporeivanja, po kriteriju uvjeta rasporeivanja, je utvrditi kada algoritam
min-min postie bolje rezultate, a kada algoritam Ant Colony System.
Rasporeivanje na zahtjev implementirano je na isti nain kao i min-min
postupak rasporeivanja, uz iznimku da pridruivanje i ureivanje ( 2.1.) radi
algoritam Ant Colony System (slika 3.1.).Radi usporedivosti algoritama, i algoritam
Ant Colony System implementiran je tako da se izvodi svaki puta kada novi posao
doe u sustav.
Rasporeivanje na zahtjev ima veu sloenost od predodreenog
rasporeivanja jer je prije svakog pokretanja algoritma Ant Colony System
potrebno ponovno inicijalizirati feromonske tragove na vrijednost , rasporeditimrave u vorove poslova koji se nalaze u skupu , a za neraspoloive poslovesvakome mravu upisati u njegovu da ne smije posjetiti vorove tihposlova.
Prilikom rasporeivanja na zahtjev dovoljan je mali broj ciklusa jer je
prosjena maksimalna veliina skupa jednaka , a u odreenim trenucima,na poetku rada sustava i na kraju rada, nalazi se vrlo malen broj poslova (izmeu i ) i velik broj ciklusa vrlo bi usporio izvoenje programa. Unato velikombroju ciklusa, osjetno poboljanje rezultata nije vidljivo jer velik broj mrava i malen
broj poslova u sustavu dovodi do brze konvergencije rjeenja. U programu je
najvei dozvoljen broj ciklusa jednak pet.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
26/45
22
Slika 3.1 Rasporeivanje na zahtjev algoritmom Ant Colony System
Predodreeno rasporeivanje algoritam Ant Colony System izvodi po
definiciji ( 2.2.2.). Slikom 3.2. prikazan je nain izvoenja predodreenog
rasporeivanja.
Slika 3.2 Predodreeno rasporeivanje algoritmom Ant Colony System
Stvoren raspored optimiran je s obzirom na jedan od sljedea etiri uvjeta
rasporeivanja ( 2.3., izrazi (2.6), (2.8.), (2.9) i (2.10)):
ukupna duljina rasporeda,
teinsko protjecanje,
teinsko zaostajanje,
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
27/45
23
teinska zakanjelost.
3.2. Grafika interpretacija
Kao to je opisano u 1.3., rjeenje problema moe se interpretirati grafom
, gdje je . U rjeenju problema rasporeivanja u okruju nesrodnihstrojeva, veliina skupa jednaka je broju poslova, . Svaki posaopredstavlja jedan vor, . Svaki vor sastoji se od podvorova, gdjepredstavlja broj nesrodnih strojeva u okruju, dakle .Svaki vor spojen je s bridova.
Veliine struktura podataka za feromonske tragove i heuristike informacije
iznose
. Upravo iz tog razloga, sloenost auriranja feromonskih
tragova iznosi .Slikom 3.3. prikazana je grafika interpretacija rjeenja. Crnim strelicama
prikazani su bridovi koji spajaju vor s preostalim vorovima. Crvenimstrelicama prikazano je jedno od moguih rjeenja rasporeivanja. U poglavlju 3.3.
objanjeno je predstavljanje rjeenja.
Slika 3.3 Grafika interpretacija rjeenja algoritma Ant Colony System
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
28/45
24
Prilikom inicijalizacije, svaki mrav postavi se u jedan podvor vora . Potrebanbroj mrava da bi se zauzeli svi podvorovi, svih vorova, jest , gdje je definiran kao:
(3.1)
U implementaciji nije potrebno koristiti broj mrava jer se poveava vrijemeizvoenja programa. Stoga je koriten izraz (3.2.) za ukupan broj mrava u sustavu. (3.2)Faktor je iz intervala , a program je izveden za vrijednosti .3.3. Predstavljanje rjeenja
Pridruivanje i ureivanje ( 2.1.) implementirani algoritam Ant Colony
System radi istovremeno. Rjeenje ili raspored koji algoritam stvara prikazan je u
obliku prioritetnog vektora. Prioritetni vektor sastoji se od elemenata, a svakielement sastoji se od dvije informacije: rednog broja posla i rednog broja stroja na
kojem e se posao izvoditi. Svaki mrav rauna vlastiti raspored, koji se nakon
obienih vorova evaluira pomou funkcije dobrote.Nakon to se prioritetni vektor preda funkciji za odreivanje dobrote
rasporeda, iz prioritetnog vektora se jedan po jedan posao, s poetka prema kraju
vektora, ekstrahira i dodaje u skup poslova stroja (slike 3.1., 3.2.). Crvenimstrelicama na slici 3.3. prikazano je jedno mogue rjeenje problema. Slikom 3.4.prikazan je prioritetni vektor koji prikazuje rjeenje sa slike 3.3.
Slika 3.4 Prikaz rasporeda u obliku prioritetnog vektora
Strelica pokazuje poetak vektora i poetak dekodiranja vektora. Nakon
dekodiranja poslovi moraju zadrati svojstvo prioriteta, odnosno, posao koji jeispred posla , a oboje se izvode na stroju , nakon pridruivanja moraju ostati uistom poretku.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
29/45
25
3.4. Funkcija dobrote
Implementirana funkcija dobrote (engl. fitness function) simulira izvoenje
poslova u okruju nesrodnih strojeva prema stvorenom rasporedu. Prilikom
simulacije, funkcija biljei zavretak izvoenja posla na stroju i tu vrijednostpohranjuje u strukturu podataka. Zavretak izvoenja posla, , najvaniji jeparametar jer ostale mjerene vrijednosti ( 3.1.) direktno ovise o njoj. Slika 3.5.
prikazuje algoritam implementirane funkcije dobrote.
Slika 3.5 Pseudokod algoritma za evaluaciju dobrote rasporedaPovratna vrijednost funkcije dobrote ovisi o kriteriju optimizacije rasporeda.
Implementirane su etiri mogue povratne vrijednosti opisane u 3.1.
3.5. Heuristike funkcije
U izrazu (1.5.) koristi se heuristika . U implementaciji algoritma Ant ColonySystem implementirane su etiri statike heuristike funkcije. Pojam statika
funkcijaoznaava da vrijednostifunkcije izraunaju na poetku izrade rasporeda i
da se tijekom izrade vie ne mijenjaju.
Implementirane heuristike funkcije su [4]:
EDD(engl. earliest due date) definirano je kao:
(3.3) SPT(engl. shortest processing time) definirano je kao:
(3.4)
WSPT(engl. weighted shortest processing time) definirano je kao:
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
30/45
26
(3.5) MON( Montagne) definirano je kao:
(3.6)
pri emu je ukupan broj poslova.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
31/45
27
4. Izgled i rad aplikacije
Program za rjeavanje rasporeivanja u okruju nesrodnih strojeva
implementiran je u programskom jeziku
, u razvojnom okruenju
. Koritena je proceduralna paradigma prilikomprogramiranja.Za ispravan rad aplikacija oekuje pet datoteka, od kojih je datoteka
fitness.txt glavna i u njoj se nalaze podaci o broju skupa poslova za
rasporeivanje, broj nesrodnih strojeva za pojedini skup poslova i imena preostalih
etiri datoteka. U preostale etiri datoteke pojedinano moraju za svaki skup
poslova biti definirani parametri koje koristi program za izradu rasporeda ( 2.1.):
vremena pripravnosti,
trajanje izvoenja posla na strojevima,
vrijeme eljenog/nunog zavretka,
teina.
Pri pokretanju aplikacije korisnik odabire uvjet rasporeivanja, kriterij
optimizacije i heuristiku informaciju za algoritam Ant Colony System. Zatim
korisnik odabire interval skupova poslova za koje eli izraditi raspored. Korisniku je
ponuena opcija da se, nakon upisa gornje i donje granice intervala skupaposlova, upiu predodreene vrijednosti za algoritam Ant Colony System ili da ih
sam korisnik upisuje. Slikom 4.1. prikazan je ulazni dio aplikacije.
Slika 4.1 Ulazni dio aplikacije za rasporeivanje poslova na nesrodnim strojevima
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
32/45
28
Ukoliko korisnik odabere vlastito upisivanje vrijednosti, od korisnika se
oekuje upis parametara koji zahtjeva formula (1.5.) i broj ciklusa mrava (slika
4.2.).
Slika 4.2 Korisnikov upis vrijednosti parametara u sluaju nepretpostavljenog odabira
Nakon to se upiu svi ulazni podaci, program zapoinje s radom. Kao to
je napomenuto u ( 1), cilj programa je usporediti dobrotu algoritma Ant Colony
System u odnosu na heuristiki algoritam min-min. Nakon obrade svakograsporeda, za svaki skup, u aplikacijski prozor upisuju se mjerene vrijednosti u
programu ( 3.1.). Osim ispisa u aplikacijski prozor, podaci se ispisuju u tri izlazne
datoteke. Osim podataka o parametrima rasporeda i vremenu izrade rasporeda, u
treu datoteku upisuje se dominacija algoritma Ant Colony System nad algoritmom
min-min. Postotak dominacije je mjera koja daje udio ispitnih primjera u kojima
odreeni algoritam postie rezultat bolji od rezultata svih testiranih algoritama ili
nije loiji od rezultata bilo kojeg drugog algoritma. Slika 4.3. prikazuje izgledaplikacijskog prozora tijekom izvoenja programa.
Slika 4.3 Aplikacijski prozor tijekom izvoenja programa
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
33/45
29
5. Rezultati mjerenja
Pretpostavljene vrijednosti parametara iz formule (1.5.), vrijednosti broja
ciklusa i broja mrava prikazane su tablicom 5.1.
Tablica 5.1 Pretpostavljene vrijednosti parametara u programu Mjerenja su provedena za predodreeno rasporeivanje i rasporeivanje na
zahtjev. Pritom su testirane etiri karakteristike za algoritam Ant Colony System:
veliina kolonije (broj mrava),
broj ciklusa,
tip heuristike ( 3.5.),
vrijeme izraunavanja rasporeda.
Ispitivanja su provedena na procesorima i . Prosjeno vrijeme izvoenja rasporeda za skupova poslova od poslova rasporeivanih na nesrodnastroja iznosi
sati.
Za svaku od etiri karakteristike provedeno je optimiranje po svim kriterijima
navedenim u 3.1. Testiranja su provedena na skupova poslova od po i poslova.5.1. Predodreeno rasporeivanje
Prilikom testiranja u uvjetima predodreenog rasporeivanja, htjela se,
izmeu ostalog,otkriti jedna od etiri optimalne heuristike ( 3.5.). Ta heuristika
koriti se u svim daljnjim testiranjima, kao i u rasporeivanju na zahtjev.
5.1.1. Utjecaj tipa heuristike funkcijeSlike 5.1, 5.2, 5.3 i 5.4 pokazuju postotak dominacije za sve navedene
kriterije iz 3.1.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
34/45
30
Slika 5.1 Postotak dominacije za heuristiku funkciju EDD
Slika 5.2 Postotak dominacije za heuristiku funkciju SPT
Slika 5.3 Postotak dominacije za heuristiku funkciju WSPT
ACO min-min ACO min-min ACO min-min ACO min-min
Cmax Fwt Twt Uwt
Twt 0% 100% 0% 100% 0% 100% 0% 100%
Uwt 0% 100% 0% 100% 0% 100% 4% 98%
Fwt 0% 100% 0% 100% 0% 100% 0% 100%
Cmax 1% 100% 0% 100% 0% 100% 0% 100%
0%20%40%60%80%
100%120%
Postotakdominacije
Kriteriji vrednovanja
Heuristika funkcija EDD
Twt
Uwt
Fwt
Cmax
ACO min-min ACO min-min ACO min-min ACO min-min
Cmax Fwt Twt Uwt
Twt 31% 71% 30% 73% 38% 66% 25% 76%
Uwt 28% 75% 31% 73% 34% 71% 35% 67%
Fwt 14% 87% 18% 83% 15% 86% 10% 91%
Cmax 65% 37% 44% 59% 48% 55% 27% 74%
0%20%40%60%80%
100%
Postotcidominacije
Kriteriji vrednovanja
Heuristika funkcija SPT
Twt
Uwt
Fwt
Cmax
ACO min-min ACO min-min ACO min-min ACO min-min
Cmax Fw Tw Uw
Twt 39% 65% 37% 64% 46% 58% 33% 70%
Uwt 30% 75% 34% 68% 45% 60% 45% 59%
Fwt 17% 84% 26% 75% 22% 79% 13% 88%
Cmax 63% 40% 42% 60% 47% 55% 31% 70%
0%10%20%30%40%
50%60%70%80%90%
100%
Postotakdom
inacije
Kriteriji vrednovanja
Heuristika funkcija WSPT
Twt
Uwt
Fwt
Cmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
35/45
31
Slika 5.4 Postotak dominacije za heuristiku funkciju MON
Iz rezultata se moe uoiti da je uinkovitost heuristike funkcijenajvea i uglavnom podjednaka uinkovitosti min-min algoritma, a heuristikefunkcije najloija. Funkcija neznatno postie bolje rezultate od funkcije ,a razlog je to prilikom izrade rasporeda u obzir uzima prioritet posla. Razlog to
funkcija postie tako loe rezultate jest to prilikom izrade rasporeda u obziruzima samo vrijeme eljenog zavretkaposla, a na temelju toga ne moe odrediti
na kojem stroju posao postie optimalno izvravanje, pa na sluajan nain odabirestroj. Iz razloga to funkcija postie najbolje rezultate, koristi se u svimdaljnjim ispitivanjima.
Slika 5.5 prikazuje vrijednosti mjerila vrednovanja za funkciju .
Slika 5.5 Vrijednosti mjerila vrednovanja za heuristiku funkciju MON
ACO min-min ACO min-min ACO min-min ACO min-min
Cmax Fw Tw Uw
Twt 41% 62% 40% 61% 50% 53% 38% 65%
Uwt 35% 70% 40% 64% 44% 60% 45% 58%
Fwt 19% 82% 30% 71% 23% 78% 12% 89%
Cmax 65% 36% 41% 60% 49% 52% 30% 71%
0%10%20%30%40%50%60%70%80%90%
100%
Postotakdominacije
Kriteriji vrednovanja
Heuristika funkcija MON
Twt
Uwt
Fwt
Cmax
Cmax Fw Tw Uw min-min
ACO MIN-MIN
Twt 173995 159317 153850 193145 107763
Uwt 888,1 826,6 831,4 750 564,8
Fwt 562402 525799,93 535285 570689 310933,01
Cmax 60229 68288 65516 76834 62355
0
100000
200000300000
400000
500000
600000
Vrijednosti mjerila vrednovanja za hf. MON
Twt
Uwt
Fwt
Cmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
36/45
32
5.1.2. Utjecaj veliine kolonije
Slike 5.6 i 5.7 prikazuju rezultate optimizacije ukupne duljine rasporeda
obzirom na broj mrava u koloniji. Faktor
je iz skupa
(3.2).
Slika 5.6 Optimiranje ukupne duljine rasporeda obzirom na broj mrava
Slika 5.7 Postotci dominacije za ukupnu duljinu rasporeda obzirom na broj mrava
Iz rezultata se moe uoiti daveibroj mrava pozitivno utjee na rezultat.
to je kolonija vea, u ciklusu prolaska kroz vorove stvori se vie rjeenja, od
kojih proizie samo najbolje rjeenje. Takoer, to vie mrava ima, to prilikom
N/4 N/3 N/2 N min-minACO MIN-MIN
Twt 179464 175842 173995 162165 107763
Uwt 899,8 890,2 888,1 865,7 564,8
Fwt 574279 569824 562402 553098,64 310933,01
Cmax 63132 62832 60229 57842 62355
0
100000
200000
300000
400000
500000
600000
700000
Vrijednosti mjerila vrednovanja
Twt
Uwt
Fwt
Cmax
ACO min-min ACO min-min ACO min-min ACO min-min
N/4 N/3 N/2 N
Twt 35% 65% 36% 63% 37% 63% 45% 59%Uwt 29% 73% 32% 70% 36% 65% 40% 65%
Fwt 15% 83% 17% 80% 22% 78% 22% 79%
Cmax 53% 46% 56% 41% 63% 36% 69% 34%
0%10%20%30%40%50%60%70%80%90%
Postotak najboljih pronaenih rjeenja
Twt
Uwt
Fwt
Cmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
37/45
33
poetnog odreivanja poloaja mrava pokrije se vei broj vorova i podvorova u
grafu .5.1.3. Utjecaj broja ciklusa
Slike 5.8 i 5.9 prikazuju rezultate optimizacije ukupne duljine rasporeda
obzirom na broj ciklusa. Broj ciklusa, , je is skupa .
Slika 5.8 Optimiranje ukupne duljine rasporeda obzirom na broj ciklusa
Slika 5.9 Postotci dominacije za ukupnu duljinu rasporeda obzirom na broj ciklusa
Iz rezultata se moe uoiti da vei broj ciklusa pozitivno utjee na rezultat.
to je broj ciklusa vei, ukupna duljina rasporeda se smanjuje i poveava se
dominacija nad algoritmom min-min. Objanjenje takvog rezultata je to vei broj
20 40 60 80 min-min
ACO MIN-MIN
Twt 167242 173995 167262 163808 107763
Uwt 896,1 888,1 890,9 879,8 564,8
Fwt 559214 562402 558525 553776 310933,01
Cmax 61014 60229 59954 59520 62355
0
100000
200000
300000
400000
500000
600000
AxisTitle
Vrijednosti mjerila vrednovanja
Twt
Uwt
Fwt
Cmax
ACO min-min ACO min-min ACO min-min ACO min-min
20 40 60 80
Twt 41% 62% 41% 62% 40% 64% 43% 60%
Uwt 40% 65% 35% 70% 35% 69% 34% 70%
Fwt 20% 81% 19% 82% 20% 80% 19% 82%
Cmax 61% 40% 65% 36% 64% 39% 65% 37%
0%10%20%30%40%50%60%70%80%90%
Postotak najboljih pronaenih rjeenja
Twt
Uwt
Fwt
Cmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
38/45
34
ciklusa, kao i mrava, dovodi do bre konvergencije optimalnom rjeenju, a to se
dogaa jer mravi vie puta mogu aurirati feromonske tragove.
5.1.4. Vrijeme izraunavanja rasporedaProsjeno izraunavanje rasporeda za pretpostavljene vrijednosti (tablica
5.1) iznosi . Slike 5.10 i 5.11 prikazuju vrijeme izraunavanja rasporedaobzirom na broj mrava i na broj ciklusa.
Slika 5.10 Trajanje izraunavanja rasporeda u ovisnosti o broju mrava
Slika 5.11 Trajanje izraunavanja rasporeda u ovisnosti o broju ciklusa
Iz rezultata se uoava da je trajanje izraunavanja rasporeda u ovisnosti o
broju mrava sloenosti. Razlog takvoj sloenosti su popratniefekti povaenja broja mrava. Osim veeg broja auriranja feromonskih tragova,
treba se osvjeiti i tabu lista i ponovno rasporediti sve mrave u poetne vorove.
Za razliku od ovisnosti o broju mrava, trajanje izraunavanja rasporeda u
ovisnosti o broju ciklusa je sloenosti jer ne postoje popratni efekti.
N/4 N/3 N/2 N min-min
ACO MIN-MIN
vrijeme/s 6184 7498 12353 24442,923 0,6
0
5000
10000
15000
20000
25000
30000
Trajanje izraunavanja rasporeda u ovisnosti o broju mrava
vrijeme/s
20 40 60 80 min-min
ACO MIN-MIN
vrijeme/s 6124 12352,9 18262 24410 0,6
0
5000
10000
15000
20000
25000
30000
Trajanje izraunavanja rasporeda u ovisnosti o broju ciklusa
vrijeme/s
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
39/45
35
5.2. Rasporeivanje na zahtjev
Prilikom rasporeivanja na zahtjev koritena je heuristika funkcija .Testirana su dva uvjeta: broj mrava i trajanje izvoenja. U svakom testiranju, osim
testirane varijable, vrijednosti ostalih varijabli jednake su vrijednostima iz tablice
5.1.
5.2.1. Rezultati za heuristiku funkciju Slikama 5.12 i 5.13 prikazani su rezultati optimizacije svih kriterija za
heuristiku funkciju .
Slika 5.12 Vrijednosti mjerila vrednovanja za heuristiku funkciju MON
Slika 5.13 Postotci dominacije za heuristiku funkciju MON
Rezultati testiranja pokazuju da prilikom rasporeivanja na zahtjev, za
kriterije optimiranja ukupne duljine rasporeda i teinskog protjecanja, algoritam Ant
Cmax Fw Tw Uw min-min
ACO MIN-MIN
Twt 43618 29120,8 63709,3 79981,9 107763
Uwt 383,9 364,5 595,64 626,1 564,8Fwt 173330 157343 315455 349677 310933,01
Cmax 43618 43160 53801 58223 62355
050000
100000150000200000250000300000350000400000
Vrijednosti mjerila vrednovanja
Twt
Uwt
Fwt
Cmax
ACO min-min ACO min-min ACO min-min ACO min-min
Cmax Fw Tw Uw
Twt 91% 16% 91% 17% 51% 52% 34% 68%
Uwt 89% 23% 91% 21% 45% 61% 35% 78%
Fwt 89% 12% 94% 7% 36% 70% 24% 77%
Cmax 88% 13% 87% 15% 54% 45% 41% 60%
0%
20%40%60%80%
100%
Postotak najboljih pronaenih rjeenja
Twt
Uwt
Fwt
Cmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
40/45
36
Colony System u potpunosti dominira algoritmom min-min. Razlog takvih rezultata
je da velik broj mrava na relativno malenom broju poslova u sustavu vrlo brzo
konvergira optimalnom rjeenju. Malen broj poslova ( 3.1) dovodi viestruke
raspodjele mrava po vorovima i podvorovima grafa
te uzrokuje viestruka
rjeenja za svaki podvor, od kojih se izabire najbolje rjeenje i to je razlog brze
konvergencije. Optimiranje po kriteriju teinskog zaostajanja ima vrlo sline
rezultate kao i algoritam min-min, a optimiranje po teinskoj zakanjelosti ima
loije rezultate od algoritma min-min. Razlog loim rezultatima je brza
konvergencija suboptimalnom rjeenju, ija posljedica moe biti forsirano
optimiranje parametra koji je funkcija drugih parametara. Formule 2.10 i 2.5
poblie opisuju ovisnost teinske zakanjelosti o drugim parametrima.
Zakanjelost (formula 2.5) je funkcija od zaostajanja (formula 2.3), koja je funkcija
od kanjenja (formula 2.2). Optimirajui raspored po parametru teinske
zakanjelosti, optimiraju se zapravo svi parametri o kojima funkcija ovisi, a ako
parametara ima puno, optimizacija je spora i loa.
5.2.2. Utjecaj veliine kolonije
Slike 5.14 i 5.15 prikazuju rezultate optimizacije ukupne duljine rasporeda
obzirom na broj mrava u koloniji. Faktor je iz skupa (3.2).
Slika 5.14 Optimiranje teinskog zaostajanja obzirom na broj mrava
N/4 N/3 N/2 N min-min
ACO MIN-MIN
Twt 48329 46283 45672 48640,6 107763
Uwt 518 525,8 535,5 553,9 564,8
Fwt 266863 268636 269271 273671 310933,01
Cmax 54297 54384 54573 55352 62355
050000
100000150000200000250000300000350000
Vrijednosti mjerila vrednovanja
Twt
Uwt
FwtCmax
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
41/45
37
Slika 5.15 Postotci dominacije za teinsko zaostajanje obzirom na broj mrava
Iz rezultata se uoava da broj velik broj mrava negativno utjee na teinsko
zaostajanje poslova.
5.2.3. Vrijeme izraunavanja rasporeda
Prosjeno izraunavanje rasporeda za pretpostavljene vrijednosti (tablica
5.1) iznosi . Slika 5.16 prikazuje vrijeme izraunavanja rasporeda obzirom nabroj mrava.
Slika 5.16 Trajanje izraunavanja rasporeda u ovisnosti o broju mrava
Kao i kod predodreenog rasporeivanja, trajanje izraunavanja rasporeda
u ovisnosti o broju mrava kod rasporeivanja na zahtjev ima
sloenost zbog popratnih efekata. Ovdje je vremensko izvravanje dulje jer se
ACO min-min ACO min-min ACO min-min ACO min-min
N/4 N/3 N/2 N
Twt 57% 45% 56% 46% 55% 47% 55% 47%
Uwt 46% 58% 47% 59% 47% 57% 45% 60%
Fwt 40% 61% 39% 62% 39% 62% 35% 66%
Cmax 53% 49% 54% 47% 55% 48% 55% 45%
0%10%20%30%
40%50%60%70%
Postotak najboljih pronaenih rjeenja
Twt
Uwt
Fwt
Cmax
N/4 N/3 N/2 N min-min
ACO MIN-MIN
vrijeme/s 24550,6 26842 29741 62876,532 0,6
0
10000
20000
30000
40000
50000
60000
70000
Trajanje izraunavanja rasporeda u ovisnosti o broju mrava
vrijeme/s
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
42/45
38
popratni efekti dogaaju ne samo izmeu skupova poslova, nego i svaki put kad
novi posao ue u skup ( 3.1).U tablici 5.2. prikazan je faktor usporenja rasporeivanja na zahtjev pomou
algoritma kolonije mrava u odnosu na algoritam min-min. Izmjereno je prosjeno
vrijeme, u milisekundama, jednog rasporeivanja na zahtjev. Za svaku
kombinaciju broja poslova i broja strojeva, nasumino je izabran skup poslova nad
kojim se provodilo ispitivanje. Za algoritam kolonije mrava koriteni su parametri iz
tablice 5.1.
Tablica 5.2 Faktor usporenja jednog rasporeivanja na zahtjev algoritmom kolonije mrava u
odnosu na algoritam min-min
Broj strojeva Broj poslova milisekunde Faktor
usporenjatr(min-min) tr(ACO)
3
12 0.167 17.31 104
25 0.268 72.974 273
50 0.153 446.549 2919
100 0.204 3676.59 18023
6
12 0.05 15.471 310
25 0.243 105.0 432
50 0.108 650.327 6022
100 0.301 4149.16 13785
10
12 0.112 137.4 1227
25 0.104 142.24 1368
50 0.072 882.737 12261
100 0.204 9846.43 48267
Razlog sporosti rasporeivanja na zahtjev algoritmom kolonije mrava lei uinjenici da prilikom svakog rasporeivanja moraju se instancirati sve strukture
podataka koje algoritam kolonije mrava koristi (matrice feromonskih tragova i
matrica heuristike, tabu lista, poloaj mrava). Faktor usporenja to je vei to je
umnoak broja strojeva i broja poslova vei, a o tom umnoku direktno ovisi broj
mrava i veliine svih navedenih struktura podataka( 3.2 i 3.3).
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
43/45
39
Zakljuak
Usporedba algoritama Ant Colony System i min-min pokazuje da oba
algoritma imaju prednosti i mane. Najvea prednost algoritma min-min je to u
izrazito kratkom vremenu ( 0.5 sekundi) rasporeuje poslove i pritom ostvaruje
relativno dobre rezultate, u nekim sluajevima bolje od algoritma Ant Colony
System. Mana algoritma je to su ti rezultati daleko od optimalnih vrijednosti.
Algoritam Ant Colony System najbolje rezultate postie za heuristiku
funkciju , od preostalih ispitanih. Prilikom predodreenog rasporeivanjaalgoritam postie bolje rezultate od min-min kod optimiranja ukupne duljine
rasporeda; teinsko zaostajanje i teinska zakanjelost su priblino isti (min-min je
u veini bolji); teinsko protjecanje postie loije rezultate od min -min. Prilikomrasporeivanja na zahtjev, algoritam Ant Colony System postie izrazito dobre
rezultate za optimizaciju ukupne duljine rasporeda i teinskog protjecanja; teinsko
zaostajanje je priblino isto (min-min je ponekad bolji); za teinsku zakanjelost
postie loije rezultate od min-min.
Poveanje broja mrava uzrokuje linearno poboljanje prethodno dobivenih
rezultata. Poveanje broja ciklusa, takoer, uzrokuje linearno poboljanje
prethodno dobivenih rezultata, no u puno manjoj mjeri. Broj mrava u algoritmuvezan je uz eksponencijalnu sloenost programa, a broj ciklusa vezan je uz
linearnu sloenost.Najvea mana algoritma je izrazito dugo izvoenje u odnosu
na algoritam min-min.
Pokazano je da rasporeivanje u okruju nesrodnih strojeva uporabom
evolucijskog raunanja postie zadovoljavajue rezultate. Evolucijski algoritam Ant
Colony System davao bi jo bolja rjeenja da su pretpostavljeni parametri u
programu bili bolji, ali traenje njihovog optimalnog iznosa zahtjeva vee
raunalne resurse. Kao najvea mana algoritma pokazuje se vrijeme izvoenja
rasporeda pa se algoritam Ant Colony System ne preporua za dinamike sustave
u kojima je brzina rasporeivanja bitna, ve za statike sustave u kojima je bitna
optimalnost.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
44/45
40
Literatura
[1] eri, M. et al., Evolucijski algoritmi, sijeanj 2008., Projekt: Evolucijski
algoritmi,
http://www.zemris.fer.hr/~golub/ga/studenti/projekt2007/index.html, 5.
svibnja 2011.
[2] upi, M., Prirodom inspirirani optimizacijski algoritmi, Zavod za
elektroniku, mikroelektroniku, raunalne i inteligentne sustave, Fakultet
elektrotehnike i raunarstva, 2009.
[3] Dorigo, M., Sttzle, T., Ant Colony Optimization, MIT Press, Cambridge,
MA, 2004.
[4] Jakobovi, D., Rasporeivanje zasnovano na prilagodljivim pravilima,doktorska disertacija, Fakultet elektrotehnike i raunarstva, 2005.
[5] Ant colony optimization algorithms, 20. travnja 2011., Ant colony
optimization algorithms,
http://en.wikipedia.org/wiki/Ant_colony_optimization_algorithms, 5. svibnja
2011.
-
8/4/2019 RASPOREIVANJE U OKRUJU NESRODNIH STROJEVA UPORABOM EVOLUCIJSKOG RAUNANJA
45/45
Saetak
Rasporeivanje u okruju nesrodnih strojeva uporabom evolucijskog
raunanja
U radu je opisan postupak rasporeivanja i okruje rasporeivanja na
nesrodnim strojevima. Za rasporeivanje koristi se algoritam evolucijskog
raunanja Ant Colony System.Algoritam je usporeen s postojeim heuristikim
algoritmom min-min. Ostvareno je okruje u kojem je mogue provesti usporedbu
uinkovitosti oba algoritma. Usporedba algoritama napravljena je za dva tipa
rasporeivanja: predodreeno rasporeivanje i rasporeivanje na zahtjev.
Algoritam evolucijskog raunanja Ant Colony System pokazuje slinu ili bolju
uinkovitost u usporedbi s heuristikim algoritmom min-min. Navedene su
prednosti i mane koritenja oba algoritma prilikom rasporeivanja u okruju
nesrodnih strojeva.
Kljune rijei: rasporeivanje u okruju nesrodnih strojeva, evolucijsko
raunanje, Ant Colony System, heuristiki algoritam min-min, predodreeno
rasporeivanje, rasporeivanje na zahtjev
Scheduling for parallel unrelated machines using evolutionaryalgorithms
This BSc thesis gives a description of the scheduling process and parallel
unrelated machines environment. Ant Colony System evolutionary algorithm is
used for scheduling. The algorithm is compared to the existing heuristic algorithm
min-min. A framework which enables the comparison of efficiency of both
algorithms is implemented. Two types of scheduling comparison are implemented:
offline scheduling and online scheduling. Ant Colony System evolutionary
algorithm exhibits similar or, in some cases, better efficiency compared to the
heuristic algorithm min-min. Advantages and disadvantages of using both
algorithms in scheduling for parallel unrelated machines are given.
Keywords: parallel unrelated machines scheduling, evolutionary
algorithms, Ant Colony System, heuristic algorithm min-min, offline scheduling,
online scheduling