109
Univerzitet u Beogradu Matematički fakultet Ana Simidevid Lokacijski problemi na mrežama diplomski (master) rad Beograd 2012.

Lokacijski Problem

Embed Size (px)

DESCRIPTION

lokacijski problem...logistika

Citation preview

  • Univerzitet u Beogradu

    Matematiki fakultet

    Ana Simidevid

    Lokacijski problemi na mreama

    diplomski (master) rad

    Beograd

    2012.

  • Mentor: Doc. dr Zorica Stanimirovid

    Matematiki fakultet u Beogradu

    lan komisije: prof. dr ore Dugoija

    Matematiki fakultet u Beogradu

    lan komisije: prof. dr Milan Draid

    Matematiki fakultet u Beogradu

    Datum odbrane: ______________________________

  • Lokacijski problemi na mreama

    Rezime

    U ovom radu opisani su Lokacijski problemi na mreama. Ovi NP-teki problemi nalaze

    veliku primenu u praksi. Modeli optimizacije na grafovima i mreama predstavljaju znaajnu

    oblast interesovanja u operacionim istraivanjima i primenjenoj matematici. U poslednjih par

    decenija raste broj radova koji se u toku jedne godine objavi na temu mrenih optimizacionih

    modela. Razlog tome su teorijski zanimljivi problemi koji nastaju pri formulisanju matematikih

    modela za reavanje vanih praktinih zadataka. Pored onih koji se odnose na realne mree, kao

    to su putne, elektrine, telekomunikacione, raunarske i druge, postoji i itav niz

    drugih problema koji se mogu formulisati kao zadaci optimizacije na grafu ili mrei.

    Kljune rei: lokacijski problemi, grafovi i mree, metaheuristike, kombinatorna

    optimizacija

    Location problems on network

    Abstract

    This review describes Location problems on networks. These NP-hard problems are

    widely used in practice. Models of optimization on graphs and networks represent a significant

    area of interest in operational research and applied mathematics. In the past few decades,

    there is a growing number of works revealed during one year on the subject of network

    optimization models. This is due to the theoretically interesting problems which arise during

    formulation of mathematical models for solving important practical problems. Apart from those

    relating to real networks, such as roads, electricity, telecommunication, computer and others,

    there is a number of other problems which can be formulated as optimization tasks on the

    graph or network.

    Keywords: location problems, graphs and networks, metaheuristics, combinatorial

    optimization.

  • Predgovor

    Rad se sastoji od pet poglavlja. U uvodnom poglavlju date su osnovne informacije o

    lokacijskim problemima. U drugom poglavlju opisane su osobine grafova i mrea. U tredem

    poglavlju opisane su metode za reavanje lokacijskih problema. Pregled i opis sedam lokacijskih

    problema na mreama dat je u etvrtom poglavlju. U zakljuku je naglaen predmet, znaaj i

    raznovrsnost matoda za reavanje lokacijskih problema.

    elela bih da se zahvalim:

    Mentoru doc. dr Zorici Stanimirovid na rukovoenju prilikom izrade ovog rada, podrci,

    razumevanju i vie nego korisnim sugestijama.

    lanovima komisije prof. dr oru Dugoiji i prof. dr Milanu Draidu na paljivom itanju

    rukopisa.

    Svojoj porodici, prijateljima i kolektivu Univerziteta Singidunum bez ije bi podrke

    izrada ovog rada bila neuporedivo tea.

    Beograd, 2012. Kandidat

    Ana Simidevid

  • 1.Uvod

    1.1 Lokacijski problemi

    Teorija lokacijskih problema bavi se zadacima izbora jedne ili vie lokacija za objekte koji

    pruaju odreene usluge u prostoru odreene dimenzionalnosti. Prilikom izbora lokacije vodi se

    rauna o interakcijama izmeu samih lokacija i prostorno rasporeenih korisnika. Interakcije

    mogu predstavljati transporte roba ili ljudi, fizike veze kao to su saobradajnice, cevovodi,

    kablovi, komunikacije i sl. Priroda ovih interakcija u velikoj meri je uslovljena prirodom objekata

    koji se lociraju. Veliki broj lokacijskih problema svrstava se u NP-teke probleme kombinatorne

    optimizacije ([Gar79], [Cre97], [Dre02]), pa je dobijanje optimalnih reenja limitirano

    dimenzijom problema. NP-teki problemi predstavljaju kombinatorne probleme za ije

    reavanje nisu poznati algoritmi s vremenom raunanja koje je zavisno od veliine problema, tj.

    ija se sloenost moe izraziti polinomnom funkcijom (npr. linearnom, kvadratnom,

    kubnom,...). U tom smislu, poeljno je razvijati i implementirati razne heuristike koje mogu da

    podre dobijanje reenja i u sluaju obimnih i kompleksnih lokacijskih problema kakvi se u

    realnosti sredu.

  • Uvod 8

    1.1.1. Istorijski razvoj teorije lokacijskih problema

    Znaaj lokacijskih problema potvruje injenica da se prvi pisani trag o lokacijskim

    problemima srede jo u Bibliji. Prvi korak, s matematike take gledita, u reavanju ovih

    problema nainio je francuski matematiar Pjer de Ferma (1601-1665). On je postavio prvi

    lokacijski problem: Za zadate tri proizvoljne take u ravni, locirati etvrtu taku, tako da je suma

    njenih rastojanja do preostale tri take minimalna ili drugaije reeno nadi taku trougla iji je

    zbir rastojanja do temena minimalan. Torieli (1608-1647) je prvi primetio da se krugovi opisani

    oko jednakostraninih trouglova, konstruisanih nad stranicama zadatog trougla, seku u

    optimalnoj taki (Slika 1.).

    Slika 1.

    Praktini znaaj lokacijskih problema prvi je opisao Alfred Weber (1868-1958) u svojoj

    poznatoj knjizi [Web09], koju je objavio poetkom dvadesetog veka. On je ilustrovao problem

    minimizacije trokova transporta u industriji postavljajudi pitanje: Gde izgraditi industrijsko

  • Uvod 9

    postrojenje tako da cena transporta bude minimalna. Weber je optimalnu lokaciju naao

    konstruktivnim putem i predloio isti postupak za reavanje problema dimenzije vede od 3.

    Ako su ,i ix y koordinate n fiksiranih taaka (lokacije potroaa), wi i=1, ..., n odgovarajude

    teine (cene transporta do datog potroaa po jedinici duine), Weber-ov problem nalaenja

    optimalne lokacije skladita * *,x y moe biti formulisan na slededi nain:

    ( , )

    1

    min ( , ) ( , )n

    x y i i

    i

    W x y wd x y

    gde je 2 2

    ( , )i i id x y x x y y Eukidsko rastojanje taaka ,x y i ,i ix y .

    Razvijene su brojne i raznovrsne metode i modeli za reavanje Weber-ovog problema i raznih

    njegovih modifikacija koje su predmet prouavanja i do dananjih dana, ([Dea85], [Lov88],

    [Dre02]).

    1.1.2. Klasifikacija lokacijskih problema

    Lokacijski problemi mogu se klasifikovati na razliite naine u zavisnosti od principa

    klasifikacije. Bilo je vie pokuaja u literaturi da se izvri stroga klasifikacija svih lokacijskih

    problema [Bra89], ali se ti pokuaji nisu odrali jer se uvek moe nadi lokacijski problem koji ne

    pripada ni jednoj od unapred odreenih klasa.

    Nekoliko najedih podela lokacijskih problema su:

    1) Prema prostoru u kome se donosi odluka, lokacijski problemi se dele na

    kontinualne, diskretne i mrene lokacijske probleme. Ako novi objekti mogu biti locirani u ravni

    (R2) ili prostoru (R3), govori se o kontinualnim problemima: polje promenljivih je kontinum,

    odnosno dopustivi skup ima beskonano mnogo taaka. U diskretnim lokacijskim problemima

    postoji utvrena lista mogudih lokacija, pa se zadatak svodi na izbor jedne ili vie lokacija iz

    konanog, odnosno diskretnog skupa mogudih lokacija. Kod mrenih lokacijskih problema

    koristi se matematika struktura: teinski graf ili mrea, pa se zadatak izbora lokacije svodi na

    izbor jednog ili vie vorova mree (diskretni mreni problemi) ili taaka na granama mree

    (kontinualni mreni problemi). Dakle mreni modeli imaju elemente i kontinualnih i diskretnih

    problema.

  • Uvod 10

    2) Pema obliku funkcije cilja, lokacijski problemi se dele na min-sum i min-max

    modele. U prvoj grupi, funkcijom cilja se minimizuje teinski zbir svih rastojanja novih i fiksnih

    objekata. Na taj nain se favorizuju "proseni" korisnici, a zanemaruju udaljeni ili izolovani.

    Drugi tip funkcije cilja ravnopravno tretira sve korisnike tako to se nalaze nove lokacije koje

    minimizuju maksimalno rastojanje izmeu postojedih i nepoznatih objekata. Primer ovakvih

    problema je lokacija vatrogasnih brigada, gde i udaljeni stanovnici imaju ista prava kao i oni koji

    se nalaze u gradovima.

    3) Prema broju objekata koje treba otvoriti, lokacijski problemi se dele na

    endogene i egzogene probleme. U endogenim problemima broj novih objekata je unapred

    zadat. Nasuprot njima su egzogeni problemi, gde je broj novih objekata nepoznata veliina i

    njena vrednost se dobija kao rezultat optimizacije. Primeri egzogenih modela su: prost lokacijski

    problem (Simple-plant location problem ili Uncapacitated facility location problem) i problem

    pokrivanja skupa.

    4) Karakteristike na osnovu kojih se takoe mogu praviti razlike meu lokacijskim

    problemima su: matematika priroda kriterijuma relevantnih za problem (deterministika,

    nedeterministika), planski horizont (statiki problem, dinamiki problem), procedure za

    reavanje lokacijskih problema (intuitivni pristup, egzaktni algoritmi, heuristike, sloene

    procedure, simulacija, ekspertni sistemi), broj kriterijuma optimalnosti relevantnih za problem

    (jedan, vie).

    1.1.3. Merenje rastojanja u lokacijskim problemima

    Meu ulazne podatke za reavanje lokacijskih problema spadaju rastojanja izmeu

    korisnika koji zahtevaju uslugu i vorova u kojima je mogude locirati objekte. Pod rastojanjem

    se pored fizikog rastojanja moe podrazumevati i vreme putovanja, trokovi putovanja i sl.

    U lokacijskim problemima je potrebno odrediti rastojanje izmeu dve take u

    posmatranom prostoru na osnovu poznavanja njihovih koordinata. U tu svrhu se koriste lp

    metrike gde je p realni broj takav da je 1 p . Ove metrike se u optem sluaju definiu nad

    takama prostora nR (tj. skupa svih ureenih n-torki realnih brojeva).

    Neka su u prostoru nR date dve take 1( ,..., ,..., )A A A

    j nA x x x i 1( ,..., ,..., )B B B

    j nB x x x Rastojanje izmeu taaka A i B u lp metrici za 1 p se rauna po obrascu:

  • Uvod 11

    1

    ( , ) | |p

    nA B pp

    l j j

    j

    d A B x x

    ( , ) lim ( , )pl lp

    d A B d A B

    Mada teorijski ima beskonano mnogo metrika lp tipa, najznaajnije su i u praksi se

    najvie koriste sledede metrike:

    1

    1

    ( , ) | |n

    A B

    l j j

    j

    d A B x x

    l1 (pravougaona) metrika

    2

    2

    1

    ( , ) ( )n

    A B

    l j j

    j

    d A B x x

    l2 (Euklidova) metrika

    ( , ) max|x |A Bl j jd A B x l (ebievljeva) metrika

    Slika 2.

    Izbor lp metrike zavisi od vie faktora, od kojih su najznaajniji:

  • Uvod 12

    1. Priroda problema: koridenje odreene lp metrike daje manje ili vie dobru

    aproksimaciju realnog rastojanja u zavisnosti od prirode prostora u kome se take nalaze. Na

    primer, ako je mogude kretati se pravolinijski izmeu dve take, tano rastojanje izmeu njih se

    dobija Euklidovom metrikom (Slika 2.), ali u gradovima u kojima su ulice pod pravim uglom,

    duina puta izmeu dve take najbolje de se aproksimirati pravougaonom metrikom. Ovo

    rastojanje se naziva i Menhetn rastojanje (Slika 2.) jer podseda na rastojanja u ovoj njujorkoj

    etvrti u kojoj su ulice i avenije pod pravim uglom.

    2. Raunska sloenost: ako je neki model bitno lake reiti primenom odreene metrike,

    a preciznost dobijenog rezultata nije od presudnog znaaja (tj. ako se manja odstupanja mogu

    tolerisati), tada de ta metrika biti upotrebljena.

  • 2.Grafovi i mree

    Prvi problem i njegovo reenje u teoriji grafova jeste rad Leonarda Ojlera pod nazivom

    Sedam mostova Kenigsberga (Slika 3.), objavljen 1736. godine, ali se zaetkom teorije grafova

    smatra problem etiri boje koji je izloio Frensis Gutri 1852. godine. On postavlja pitanje da li je

    mogude obojiti zemlje na geografskoj karti sa samo etiri boje, a da se ne pojave etiri susedne

    zemlje obojene istom bojom. Tokom pokuaja reavanja ovog problema otkrivene su mnoge

    teoreme i postavljeni mnogi teoretski pojmovi i koncepti. Problem su reili Kenet Apel i

    Volfgang Heken, [Ape77] 1976. godine. Njihov dokaz je veoma komplikovan i oslanja se na

    teorijske rezultate niza matematiara i znaajan rad raunara.

    Slika 3. Dijagram Keningsburkih mostova

  • Grafovi i mree 14

    Mnogi lokacijski problemi mogu se predstaviti i reiti primenom rezultata teorije grafova i

    mrea. Graf odnosno mrea su matematiki koncepti koji se esto koriste u modeliranju

    lokacijskih problema. U narednim podsekcijama bide izloene definicije i osobine grafova.

    2.1 Osnovni pojmovi

    Graf je ureen par G=(X,U) , gde je X konaan neprazan skup i U skup dvoelementnih

    podskupova skupa X. Elementi skupa X se nazivaju vorovi, dok se elementi skupa U nazivaju

    grane.

    Digraf je ureen par G=(X,U), gde je X konaan neprazan skup i U skup ureenih parova

    elemenata skupa X. Ovi ureeni parovi se nazivaju orjentisane grane.

    Graf ili digraf se predstavlja geometrijskom figurom sastavljenom od taaka i linija koje

    spajaju pojedine parove taaka.Take predstavljaju vorove grafa dok linije predstavljaju grane

    grafa ili orjentisane grane digrafa. U prvom sluaju linije su neorjentisane, dok se u drugom

    sluaju linije orjentiu (Slika 4.).

    Graf (X,U) Digraf(X,U)

    Slika 4. Graf i digraf

  • Grafovi i mree 15

    Grana oblika {a,a}, odnosno (a,a) naziva se petlja.Na Slici 5. ona spaja vor A sa samim sobom.

    Slika 5. Petlja

    Graf sa samo jednim vrhom se naziva trivijalni graf, inae je netrivijalan. Za graf kaemo da je prost ukoliko nema petlje i nikoje dve grane ne spajaju isti par vorova. Ako su u grafovima dva vora spojena sa vie razliitih grana, ukuljuujudi i viestruke petlje, onda takve grafove nazivamo multigrafovima ili multidigrafovima (Slika 6.).

    Multigraf Multidigraf

    Slika 6.

    Za dva vora grafa kaemo da su susedna ako su spojena granom.Dva susedna vora su

    krajnje take svake grane koja ih spaja.Ako je neki vor jedna od krajnjih taaka izvesne grane

    kae se da su vor i grana incidentni ili susedni, odnosno da se ta grana stie u ovom voru.Dve

    grane su susedne ako imaju zajedniki vor. Kaemo da su vor i grana incidentni ili susedni ako

    grana poinje odnosno zavrava se u tom voru.

    Stepen vora x predstavlja broj susednih vorova za vor x, odnosno broj grana koje se stiu u

    tom voru.

  • Grafovi i mree 16

    Ako u nekom digrafu grana u spaja vorove xi i xj i orjentisana je od xi ka xj, kae se da grana u

    izlazi iz vora xi i ulazi u vor xj.Ulazni stepen vora je jednak broju grana koje ulaze u taj vor, a

    izlazni stepen je jednak broju grana koje izlaze.Petlja se smatra i ulaznom i izlaznom granom za

    odgovarajudi vor.

    Definicija 1. Neka je dat graf (ili digraf) G=(X,U). Graf oblika H=(Y,T), gde su Y X i

    YT U Y (T je podskup skupa U i sadri sve one parove iz U koji su obrazovani samo od

    elemenata skupa Y), se naziva podgrafom grafa (podgrafom digrafa) G, obrazovanim

    (indukovanim) skupom vorova Y.

    Definicija 2. Put duine k u digrafu je svaki niz grana u1,u2, ..., uk koji ima sledede osobine:

    1. Grana u1 polazi iz proizvoljnog vora digrafa

    2. Grana ui poinje u onom voru u kojem se zavrava grana ui-1

    Elementarni put je put koji prolazi najvie jedanput kroz svaki vor grafa. Put koji se

    zavrava u istom voru u kom i poinje naziva se kruni ili zatvoreni put.

    U grafu se svaka grana moe shvatiti kao dvostrano orjentisana. Put nije definisan samo

    nizom grana , ved se za svaku granu koja ulazi u posmatrani put mora naznaiti njena orjentacija

    na tom putu. Za grafove, put duine k se definie kao naizmenini niz vorova xi i grana ui oblika

    x1, u1, x2, u2, ..., xk, uk, xk+1 , pri emu je za i=1,2,..., k vor xi poetni vor, a xi+1 krajni vor grane

    ui.

    Duina puta u grafu (digrafu) je po definiciji jednaka broju grana koje se nalaze u putu.

    Rastojanje vorova x i y u grafu se definie kao duina najkradeg puta koji povezuje ta dva vora.

    Definicija 3. Graf je povezan ako se proizvoljna dva njegova vora mogu povezati putem. Ako

    postoje vorovi koji se ne mogu povezati putem, graf je nepovezan.

    Neka su d1, d2, ..., dn stepeni vorova x1, x2, ..., xn u grafu bez petlji koji ima m grana. Ako

    saberemo sve stepene vorova, dobijamo dvostruki broj grana, pa vai relacija

    d1 + . . . + dn = 2m.

    Teorema 1. Broj vorova neparnog stepena u konanom grafu bez petlji je paran.

    Prethodna teorema u literaturi je poznata kao Lema o rukovanju [Cve96], jer se moe

    interpretirati na slededi nain: U svakom drutvu broj osoba koje su se rukovale neparan broj

    puta je paran broj. Ovde broj ososba koje su se rukovale predstavlja vorove grafa.

  • Grafovi i mree 17

    Definicija 4. Graf se naziva regularnim stepena r ako je d1 =d2= . . . = dn =r

    Posebno su interesanti regularni grafovi stepena dva.

    Definicija 5. Konaan povezan regularan graf stepena dva zove se kontura. Kontura koja sadri

    sve vorove grafa naziva se Hamiltonova kontura.

    Definicija 6. Regularni grafovi sa n vorova stepena n - 1 nazivaju se potpuni grafovi.Potpuni

    graf sa n vorova oznaava se sa Kn.

    Definicija 7. Dva grafa su izomorfna ako postoji uzajamno jednoznano preslikavanje skupa

    njihovih vorova (iz jednog u drugi) koje odrava osobinu susednosti vorova.

    U mnogobrojnim zadacima modeliranja lokacijskih problema, vorovi predstavljaju

    potencijalne lokacije za objekat (objekte) koji elimo locirati i/ili korisnike punktove, a grane

    grafa odgovaraju saobradajnicama, komunikacionim linijama, elektrinim vodovima, itd.

    Ukoliko se svakoj grani (i,j)L pridrui jedan ili vie skalara koji predstavljaju njenu duinu,

    kapacitet, itd. i svakom voru jN pridrui jedan ili vie skalara koji predstavljaju njegov

    prioritet, kapacite, itd., onda se takav graf u literature naziva teinski graf ili mrea. Najede je

    u modeliranju lokacijskih problema mreom svakoj grani (i,j)L pridruen jedan nenegativni

    skalar cij koji je parametarski reprezent rastojanja (ili vremena putovanja, trokova putovanja,

    itd.) izmeu dva vora povezana granom. Svakom voru jN pridruen je jedan nenegativni

    skalar Vj, teinski koeficijent vora, koji predstavlja njegov prioritet: to je vede Vj, vor jN je

    vedeg prioriteta. Mreu, za koju vai da je cij = cji za svako (i,j)L, zovemo neorijentisanom ili

    simetrinom. U praksi su posebno interesantne orijentisane tj. nesimetrine mree, kod kojih

    moe vaiti cij cji. Mrea je orijentisana ako su grane u njoj odreene parovima vorova (i,j).

    Za reavanje lokacijskih problema na mrei, koja se moe predstaviti u ravni, razvijaju se

    razliiti modeli. Opti mreni lokacijski problem se predstavlja u slededem obliku: odrediti jedan

    ili vie vorova koji imaju najbolje karakteristike u zadatom smislu. U ovakvim modelima se

    koristi pojam rastojanja izmeu dva vora mree. To rastojanje je po definiciji duina najkradeg

    puta (vremena putovanja, trokova putovanja, itd.) izmeu posmatranih vorova.

    U literaturi su dobro poznati algoritmi za odreivanje najkradih puteva (algoritmi

    Dijkstra-e [Dij59], Bellman-a [Blm58], Dantzig- a, Floyd-a, itd.). Najkrade rastojanje izmeu

    vorova iN i jN oznaidemo sa d(i,j), a matricu najkradih vremena putovanja (rastojanja)

    izmeu svaka dva vora iN i jN sa D=[d(i,j)]nxn. Pri raunanju duine puta, u nesimetrinim

    mreama, vano je koji je poetni, a koji krajnji vor puta. Prema tome, za jedan par vorova

    mogu postojati dva rastojanja.

  • Grafovi i mree 18

    2.2. Pretraivanje grafova

    U mnogim algoritmima zahteva se pretraivanje grafova po nekom utvrenom principu.

    Na primer, moe se poeti od proizvoljnog vora u obilazak njegovih susednih vorova, zatim suseda njihovih suseda i tako redom dok ne obiemo sve vorove grafa. U tom procesu, uvek demo znati koji deo vorova je pretraen, a u svakom narednom koraku se odreuje koji de slededi vor biti prosleen. Prioritet izbora potencijalnih kandidata se regulie uvoenjem nekih ogranienja. Postoje tri vrste pretraivanja grafova:

    Pretraivanje u dubinu

    Pretraivanje u irinu

    Kombinacija pretraivanja u dubinu i irinu Za ove pretrage je karakteristino da se obilaze svi vorovi grafa kao i grane, i to svaka po jedanput u oba smera. Pretraga u dubinu:

    Neka je X skup svih vorova, a Y skup ved prosleenih vorova. Oznaimo sa y vor koji je

    poslednji prosleen. Izbor narednog vora za prosleivanje se vri na slededi nain: prvo se

    odredi da li meu ne prosleenim vorovima, tj. vorovima skupa X/Y postoji vor koji je

    sudedan sa y, i ako postoji tada se meu potencijalnim kandidatima bira bilo koji od njih (

    prosleivanje unapred). U suprotnom, umesto vora y se posmatra njegov prethodnik i za njega

    se ponavlja isti postupak kao i za vor y (prosleivanje unazad). Ukoliko ja graf povezan, ovim

    postupkom de svi vorovi grafa biti prosleeni. Kod nepovezanih grafova isti postupak se moe

    primeniti na onim podgrafovima koji su povezani (Slika 7.).

  • Grafovi i mree 19

    Graf Stablo pretrage u dubinu

    po koracima A-B-C-D G-C-B -E-D-F-D-C-A

    Slika 7.Pretraga u dubinu Neka je X skup svih vorova, a Y skup ved prosleenih vorova. Neka je skup Q skup svih

    ne prosleenih vorova kojima je prioritet prosleivanja ranije odreen. Prosleivanje vorova

    je sada komplikovanije, jer se za izbor slededeg kandidata mora posmatrati i skup Q, koji

    tretiramo kao red za ekanje (prvo se prosleuje vor koji je najdue u redu). Na poetku

    pretrage skup Y je prazan i njemu se proizvoljno dodeljuje bilo koji vor iz grafa. Iz skupa Q se

    bira vor koji je najdue u redu i on se prosleuje skupu Y, npr. vor x. Skupu Q se na kraju reda

    unose vorovi koji su susedni sa x a koji se ved ne nalaze u skupu Q nisu ranije prosleeni u Y

    (Slika 8.).

    Graf Stablo pretrage u irinu (po koracima A-B-C-D-E-F-G)

    Slika 8.Pretraga u irinu

  • 3. Metode za reavanje lokacijskih problema

    Metode za reavanje lokacijskih problema se mogu podeliti na egzaktne i heuristike

    (pribline). Egzaktne metode su najpoeljnije. One obezbeuju optimano reenje i verifikuju

    njegovu optimalnost, ali najede daju loe rezultate na problemima velikih dimenzija. U tim

    sluajevima pribegava se primeni heuristikih metoda. Heuristike ne garantuju nalaenje

    optimalnog reenja problema, ali dobre heuristike reavaju problem u velikom broju sluajeva i

    daju suboptimalna reenja koja su bliska optimalnom reenju. Neretko se dobijaju optimalna

    reenja, ali se optimalnost ne moe dokazati. Pri reavanju problema kombinatorne

    optimizacije treba imati u vidu injenicu da ne postoji metoda za njihovo reavanje koja je

    univerzalna i koja daje najbolje rezultate na svim problemima. Zato se esto vre kombinacije

    raznih metoda i dobijaju hibridni algoritmi.

    3.1. Egzaktne metode za reavanje lokacijskih problema

    3.1.1. Metoda odsecanja

    Metodu odsecanja (Cutting plane method) za reavanje problema celobrojnog

    programiranja prvi je predloio Gomory, [Gom63]. Nedostatak ove metode je spora

    konvergencija. Iz tog razloga ova metoda nije bila aktuelna dugo vremena u literaturi.

    Uvoenjem i razvojem teorije poliedara (polyherdal theory) dolo je do ponovnog oivljavanja

    ove metode, koja danas reava iroki skup problema.

    Ako se u problemu celobrojnog programiranja izuzme uslov celobrojnosti, dobijamo

    problem linearnog programiranja (relaksacioni problem) koji se reava simpleks metodom. Ako

    je dobijeno reenje ovakve relaksacije celobrojno, onda je i reenje problema celobrojno. U

    suprotnom, ideja u reavanju problema je formiranje jedne linearne jednaine koju zadovoljava

    svako dopustivo polazno reenje, a ne zadovoljava necelobrojno reenje relaksacionog

    problema. Kaemo da ova linearna jednaina odseca nezadovoljavajude nelinearno reenje zbog

    ega se esto naziva odsecajuda nejednakost ili rez. Ukoliko dopiemo

  • Metode za reavanje lokacijskih problema 21

    ovu jednainu ogranienjima polaznog problema, dobijamo zadatak ekvivalentan polaznom.

    Optimalno reenje njegove relaksacije dobijene izostavljenjem uslova celobrojnosti, ako postoji,

    bide razliito od reenja prethodne relaksacije, pa je ili optimalno za polazni problem ili se

    postupak odsecanja moe nastaviti. Na taj nain, nastaju metode odsecanaja koje se razlikuju

    po nainu konstrukcije odsecajude nejednaine i relaksacija.

    Posmatramo Gomory-evu metodu odsecanja: Relaksacija problema se izvodi tako to se uslov celobrojnosti reenja izostavlja. Pretpostavimo

    da je linearna relaksacija reena primalnom ili dualnom simpleks metodom do zavrnog oblika:

    0 j j

    j N

    f f r x

    0i i ij j

    j N

    y x y x

    Pri tome je B skup indeksa bazinih, a N skup indeksa nebazinih promenljivih, 0

    0iy , i B i

    0jr . Ukoliko su svi 0 ,iy i B celobrojni, odgovarajude bazino reenje je optimalno reenje

    polaznog problema. Pretpostavimo da je neko 0i

    y necelobrojno.

    Oznaimo sa () = [a] razlomljeni deo realnog broja a. Tada je ( )ij ij ijy y y , pa i-tu

    jednainu moemo napisati u obliku:

    0 0( ) ( )ij j i i ij j i N j N

    y x y x y x y

    Kako je za svaki realan broj a, () *0, 1), leva strana jednakosti je veda od -1, za svako dopustivo reenje polaznog problema, a desna strana je celobrojna. Dakle, sledi:

    0( ) ( ) 0ij j i N

    y x y

    Dobijena nejednakost predstavlje Gomory-ev rez. Ukoliko se na spisak ogranienja dopie ogranienje

    0( ) ( )i ij j N

    y y x s

    gde je s izravnavajuda celobrojna nenegativna promenljiva, relaksacioni problem se moe dalje reavati dualnom simpleks metodom, a zatim po potrebi generisati novi rez. Ukoliko neka od relaksacija ima prazan dopustiv skup, polazni problem nema dopustivih taaka.

  • Metode za reavanje lokacijskih problema 22

    3.1.2. Metoda grananja i ograniavanja

    Metoda grananja i ograniavanja (Branch and Bound), bazira se na principu podeli pa

    vladaj. Prvi su je predloili Land A.H. i Doig A.G. 1960 godine [Lan60]. Kako je poetni problem

    suvie sloen da bi bio direktno reen, deli se na manje i manje delove koji se mogu reiti.

    Deljenje prostora reenja obavlja se ograniavanjem vrednosti pojedinih varijabli, dok se

    procenom maksimalne vrednosti reenja u pojedinom delu mogu odbaciti delovi prostora

    reenja koji daje najbolje vrednosti funkcije cilja. Loa osobina metode je nepolomijalnost, dok

    je dobra osobina to se u praksi ova metoda zavrava u dopustivoj taki koja je blizu reenja.

    Do trenutno najboljeg reenja se moe dodi neposrednom proverom ili nekim

    heuristikim postupcima u toku algoritma. Metoda grananja i ograniavanja sastoji se od tri

    osnovna koraka: grananje (branch), ograniavanje (bound) i procenjivanje (fathoming).

    Posmatrajmo problem:

    min f(x), xX (P) X diskretan skup

    Problem (P) razlaemo na potprobleme sa ciljem da se neki od potproblema nede ni

    reavati ako se ustanovi da nemaju bolje reenje od trenutno najboljeg reenja. Grananje

    problema P na potprobleme se moe vriti tako to se skup X pokrije unijom svojih delova Xk

    kK i problem P zameni skupom potproblema:

    min f(x) , xXk (Pk)

    Optimalno reenje polaznog problema je optimalno za bar jedan problem sa spiska.

    Razlaganje skupa X na podskupove je pogodno zato to skupovi mogu biti dovoljno sitni ili laki

    za reavanje, pa se vrednost funkcije na njima moe lake oceniti. U sluaju da je potproblem

    teak za reavanje, moemo ga olakati izostavljanjem nekih ogranienja (umesto funkcije f(x)

    posmatramo funkciju g(x) u kojoj je neko ogranienje izostavljeno) ili proirivanjem njegovog

    dopustivog skupa Xk na neki skup Yk.Na taj nain dobijamo problem:

    min g(x) ,x Yk (Qk)

    koji nazivamo relaksacioni problem.

    Optimalna vrednost relaksacionog problema Qk nije veda od optimalne vrednosti problema Pk,

    tj. vai v(Qk)v(Pk)

  • Metode za reavanje lokacijskih problema 23

    U idealnom sluaju optimalne vrednosti su jednake i poetni problem je reen. Ako

    problem nije reen, dobijamo ocenu odozdo m(Pk)= v(Qk) njegove optimalne vrednosti. Neka je,

    npr. trenutno najbolje pronaeno reenje M ili je najbolje reenje ogranieno sa M:

    m(Pk)M

    U skupu Xk nema reenja koje je bolje od onog koje smo dobili kao tekudi rekord zato to je:

    v(Pk) m(Pk)Mv(P)

    U trenutku kada procenimo da problem nede dati bolja reenja od tekudih, moemo

    predi na slededi potproblem, a tekudi problem eliminisati sa spiska potproblema.

    U svakom grananju generie se samo konaan broj potproblema, i ako se oni nikada ne

    ponavljaju, algoritam se posle konano mnogo iteracija zavrava nalaenjem optimalnih

    vrednosti i reenja polaznog problema.

    Ovaj postupak se najlake moe prikazati preko grafa iji su vorovi dobijeni grananjem.

    Dobijeni graf nazivamo drvetom pretraivanja u kome je koren polazni problem a listovi

    najsitniji problemi (problemi koji ne mogu dati bolje reenje daljim grananjem).

    Pri izboru problema za grananje, postoje dve osnovne taktike:

    Grananje u irinu

    Grananje u dubinu (LIFO strategija, grana se prvo problem koji je poslednji uao na

    spisak)

    U poetnoj fazi poeljnije je koristiti grananje u dubinu, jer na bri nain dolazimo do

    dopustivog reenja, dok je u kasnijoj fazi bolja taktika grananja u irinu, jer daje bolja

    odsecanja.

    3.1.3 Metoda grananja i odsecanja

    Metoda grananja i odsecanja (Brunch and Cut method) je veoma uspena pri reavanju

    problema kombinatorne optimizacije. Ovom metodom se teorijski dobijaju optimalna reenja.

    Ona kombinuje prednosti metode grananja i ograniavanja i Gomory-eve metode odsecanja.

    Najpoznatiji brunch-and-cut algoritmi se koriste za reavanje problema p-medijane ([Ces03],

  • Metode za reavanje lokacijskih problema 24

    [Ces05]), hab lokacijskih problema [Lab03], problema rutiranja (The Location-Routing Problem,

    LRP), [Bel10], problema trgovakog putnika (Traveling salesman problem, TSP). Dva rada koja

    opisuju primene ove metode na problem trgovakog putnika su radovi Grotschel-a i Holland-a,

    [Gro91] i Padberg-a i Rinaldi-a , [Pad91]. Kod tekih problema metoda grananja i odsecanja se

    koristi sa heuristikom ili metaheuristikom da bi se obezbedila dobra (po mogudnosti) optimalna

    reenja i da bi se ukazalo koliko daleko je reenje. Razmotrimo ovu metodu na jednostavnom

    primeru:

    Problem celobrojnog programiranja:

    min z = - 6 x1 5 x2 (1)

    1 2

    1 2

    1 2

    3 11

    2 5

    , 0

    x x

    x x

    x x

    je prikazan na Slici 9. Oznaene su celobrojne dopustive take. LP relaksacija je dobijena

    ignorisanjem uslova celobrojnosti. Brunch and cut algoritam prvo reava LP relaksaciju davajudi

    take

    sa vrednodu

    . Sada imamo izbor da LP relaksaciju ili poboljamo tako

    to demo dodati ogranienje x1 + x2 5, ili da problem podelimo na dva, razdvajanjem

    promenljivih. Ako se algoritam razdvoji na x1, dobijaju se dva nova problema:

    min z = - 6 x1 5 x2 (2) min z = - 6 x1 5 x2 (3)

    3x1 + x2 11 3x1 + x2 11

    -x1 + 2x2 5 -x1 + 2x2 5

    x1 x2

    x1, x2 0 x1, x2 0

    Najbolje reenje poetnog problema bide bolje reenje od ova dva potproblema. Reenje za LP

    relaksaciju za problem (2) je (3, 2) sa vrednodu -28. Ovo reenje je celobrojno, tako da reava

    problem (2) i postaje aktuelno najbolje dopustivo reenje. LP relaksacija za problem (3) daje

    optimalno reenje (2, 3.5) sa vrednodu -29.5 koje nije celobrojno tako da ne reava problem (3)

    i mora se dalje razmatrati. Predpostavimo da algoritam koristi metodu odsecanja (cutting plane)

    i dodaje nejednainu 2x1 + x2 7 problemu (3). Ovo je vaeda (ispravna) nejednaina, i

  • Metode za reavanje lokacijskih problema 25

    zadovoljena je za svaku celobrojnu dopustivu taku iz problema (3). Dalje, nejednakost nije

    zadovoljena za (2, 3.5) tako da je to odsecajuda ravan. Rezultirajudi problem je:

    min z = - 6 x1 5 x2 (4)

    3x1 + x2 11

    -x1 + 2x2 5

    x2

    2x1 + x2 7

    x1, x2 0

    LP relaksacija problema (4) ima optimalno resenje (1.8, 3.4) sa vrednodu -27.8. Primetimo da je

    optimalna vrednost ove modifikovane relaksacije veda nego vrednost aktuelnog reenja.

    Vrednost optimalnog celobrojnog reenja za drugi potproblem mora da bude veliko barem

    koliko i vrednost relaksacije. Aktuelno reenje (3,2) je bolje nego bilo koje dopustivo celobrojno

    reenje problema (4), odnosno reenje je poetnog problema.

    Slika 9. Dvodimenzionalni problem celobrojnog programiranja

  • Metode za reavanje lokacijskih problema 26

    3.1.3 Metoda implicitnog prebrojavanja

    Metoda implicitnog prebrojavanja predstavlja specijalan sluaj metode grananja i

    ograniavanja. Primenjuje se na problem oblika:

    min f( x1,x2,...,xn) gi (x1, x2 ,...,xn)0, i=1,2,...,m, xj Kj, j=1,2,...,n

    pri emu su Kj, j=1,2,...,n konani skupovi. Grananje se vri fiksiranjem mogudih vrednosti izabrane promenljive xj iz skupa Kj, tako da svakom problemu sa spiska odgovara delimino reenje, kod kojeg neke promenljive xj1, xj2, ..., xjk imaju fiksiranu vrednost, dok su ostale slobodne (slobodne promenljive obeleavamo sa *). Umesto relaksacija, za donju ocenu optimalne vrednosti problema sa spiska, koristi se neposredna ocena. Posmatrajmo slededi primer:

    min 1 2 3 44 3 3 2f x x x x

    1 1 2 3 42 2 4 5g x x x x

    2 1 2 3 42 3 2 5 7g x x x x

    3 1 2 3 44 5 6g x x x x

    1 2 3 4, , , 0,1x x x x

    Donja ocena za funkciju cilja je 4 1 3 1 3 1 2 1 12f

    Testiramo da li je ovo reenje dopustivo tako to raunamo donje ocene za donja ogranienja

    ig

    funkcija ig

    1

    2

    2 0 2 1 1 0 4 0 2, 2 5

    2 0 3 0 2 1 5 0 2, 2 7

    g

    g

    3 1 0 4 0 5 0 1 1 1, 1 6g

    Poetni problem je proao test nedopustivosti (najmanje mogude vrednosti poetnih

    ogranienja se mogu zadovoljiti za neke vrednosti ix ) i moemo ga podeliti na dva

    potproblema:

    1. potproblem: za 1 1x

  • Metode za reavanje lokacijskih problema 27

    2. potproblem: za 1 0x

    U zavisnosti od vrednosti promenljive 1x funkcija cilja ima vrednosti 12f

    i 8f

    Ponovo proveravamo dopustivost reenja:

    1 2 1 2 1 1 0 4 0 0,0 5g

    2 2 1 3 0 2 1 5 0 0,0 7g

    3 1 1 4 0 5 0 1 1 0,0 6g

    Reenje za 1 1x je dopustivo. Delimo ovaj problem na dva potproblema:

    1.1. za 2 1x

    1.2. za 2 0x

    U zavisnosti od vrednosti promenljive 2x funkcija cilja uzima vrednosti 12f

    i 9f

    Ponovo proveravamo dopustivost reenja:

    1

    2

    3

    2 1 2 1 1 0 4 0 0,0 5

    2 1 3 1 2 1 5 0 3,3 7

    1 1 4 1 5 0 1 1 4,4 6

    g

    g

    g

    Reenje za 1 1x , 2 1x je dopustivo. Delimo ovaj problem na dva nova potproblema:

    1.1.1. za 3 1x

    1.1.2. za 3 0x

    U zavisnosti od vrednosti promenljive 3x , funkcija cilja uzima vrednosti 12f

    i 9f

    .

    Proveravamo dopustivost reenja za promenljivu 3x :

    1

    2

    3

    2 1 2 1 1 1 4 0 1,1 5

    2 1 3 1 2 1 5 0 3,3 7

    1 1 4 1 5 1 1 1 9,9 6!!!

    g

    g

    g

    Za 1 1x , 2 1x , 3 1x reenje nije dopustivo, pa ga odbacujemo i proveravamo da li je skup

    1 1x , 2 1x , 3 0x dopustiv:

  • Metode za reavanje lokacijskih problema 28

    1

    2

    3

    2 1 2 1 1 0 4 0 0,0 5

    2 1 3 1 2 0 5 0 5,5 7

    1 1 4 1 5 0 1 1 4,4 6

    g

    g

    g

    Kako je skup dopustiv , delimo problem na dva nova sluaja:

    1.1.2.1 za 4 1x

    1.1.2.2 za 4 0x

    U zavisnosti od vrednosti promenljive 4x funkcija cilja uzima vrednosti 9f

    i 7f

    Proveravamo dopustivost reenja za promenljivu 4x :

    1

    2

    3

    2 1 2 1 1 0 4 1 4,4 5

    2 1 3 1 2 0 5 1 10,10 7!!!

    1 1 4 1 5 0 1 1 4,4 6

    g

    g

    g

    Reenje za 1 1x , 2 1x , 3 0x , 4 1x nije dopustivo. Skidamo ga sa spiska i proveravamo da li

    je skup 1 1x , 2 1x , 3 0x , 4 0x dopustiv.

    1

    2

    3

    2 1 2 1 1 0 4 0 0,0 5

    2 1 3 1 2 0 5 0 5,5 7

    1 1 4 1 5 0 1 0 5,5 6

    g

    g

    g

    Ovaj skup je dopustiv i daje vrednost funkcije cilja 7f

    .

    Nastavljamo traenje optimalnog reenja, i nakon odrenog broja koraka, zakljuujemo da su

    dva optimalna reenja 1,1,0,0 i 1,0,1,0 , a optimalna vrednost funkcije cilja je 7 .

    3.2. Heuristike za reavanje lokacijskih problema

    Veliki broj standardnih problema optimizacije su NP-teki i NP-kompletni problemi.

    Definicija i osobine NP-tekih i NP-kompletnih problema dati su u poglavlju 4.1. Poznati

    algoritmi za reavanje NP-tekih problema su eksponencijalne i faktorijelne sloenosti, zbog

    ega za reavanje ovih problema koristimo metode ija je tanost eksperimentalno potvrena.

    Neke od tih metoda su heuristiki algoritmi.

  • Metode za reavanje lokacijskih problema 29

    Re heuristika potie od starogrke rei heuriskein to znai nadi ili otkriti.

    Heuristiki algoritmi su nastali eksperimentisanjem u cilju dobijanja zadovoljavajudeg reenja.

    Mana algoritama je to nisu jednoznano odreeni. Heuristike su namenjene za reavanje

    posebnih vrsta problema optimizacije, potujudi pri tome svojstva i specifinosti ovih problema.

    Takoe, kod problema kod kojih postoje egzaktni algoritmi polinomske sloenosti, reavanje

    problema heuristikama esto ne vodi ka zadovoljavajudem reenju.

    Postoji itav niz osobina koje bi trebalo da neka heuristika zadovolji. Potrebno je da

    bude jednostavna, da bi se brzo izvravala i da ne menja drastino svoje ponaanje za male

    promene paramatra problema. Potrebno je da je korisnik u mogudnosti da utie na proces

    dobijanja reenaja, tj. da ima mogudnost interaktivnog rada. Takoe, potrebno je da poseduje

    mogudnost generisanja vedeg broja dobrih reenja, da bi korisnik mogao izabrati

    najprihvatljivije od njih.

    Princip rada heuristikih algoritama je slededi. Prvo je potrebno definisati prostor

    reenja (koji se esto naziva i pretraivaki prostor) za dati problem. Zatim se odabere poetno

    reenje, pa se nakon toga prostor reenja pretrauje u potrazi za to boljim reenjima. Razlika

    meu heuristikim algoritmima je u tome na koji nain realizuju to pretraivanje.

    3.2.1. Lokalno pretraivanje

    Lokalno pretraivanje (Local search, LS) je heuristiki pristup na kome se baziraju kompleksne metaheuristike zasnovane na pojedinanom reenju. esto se primenjuje u kontinualnoj i diskretnoj optimizaciji. Lokalno pretraivanje nastoji pronadi optimalno reenje smanjujudi prostor pretraivanja. U lokalnom pretraivanju za poetno reenje bira se proizvoljna taka iz prostora dopustivih reenja. Svakom elementu x iz prostora dopustivih reenja X pridruuje se neki podskup od X koji se naziva okolina od x, a njeni lanovi su susedi od x. U svakoj iteraciji, pretrauje se okolina trenutnog reenja i u njoj nalazi, prema nekom kriterijumu, sused koji predstavlja sledede reenje. Ukoliko se sused ne moe pronadi, pretraivanje staje i za aproksimaciju optimalnog reenja uzima se ono za koje je vrednost funkcije cilja najmanja. Osnovni nedostatak lokalnog pretraivanja je to se zaustavlja pri nailasku prvog lokalnog minimuma koji ne mora biti globalni minimum, to dosta zavisi od izbora poetnog reenja (Slika 10.).

  • Metode za reavanje lokacijskih problema 30

    Slika 10. Lokalni i globalni minimum

    Opta procedura metode lokalnog pretraivanja moe se opisati na slededi nain:

    Inicijalizacija: Izabrati poetno reenje x1 X;

    x* = x1, f* =f(x1)

    Iterativni korak: n = 1, 2, . . .

    U okolini N( xn) trenutnog reenja nadi sledede reenje xn+1 , prema nekom kriterijumu

    izbora.

    Ako je f( xn+1 ) < f* , tada x* = xn+1 i f

    * =f(xn+1)

    Kraj: Ako kriterijum izbora nije zadovoljen ni za jednog suseda iz okoline N( xn), ili je zadovoljen

    neki drugi kriterijum zaustavljanja, metoda staje, a x* se uzima za aproksimaciju optimalnog

    reenja.

    Efikasnost ove metode zavisi od strukture okolina koje se koriste, kao i od kriterijuma

    koji se koristi u svakoj iteraciji za izbor slededeg reenja.Pri definisanju okoline, poeljno je da

    budu zadovoljeni slededi uslovi:

    Okolina svake take treba da je simetrina

    Okolina nije ni suvie velika, ni suvie mala

    Polazedi od proizvoljne take prostora X, nizom uzastopnih pomaka moemo dodi do

    bilo koje druge take ovog prostora

    Pomak treba da obezbedi to jednostavnije i bre generisanje susednih reenja

  • Metode za reavanje lokacijskih problema 31

    3.2.2 Simulirano kaljenje

    Simulirano kaljenje (Simulated annealing, SA) je opta heuristika za reavanje problema kombinatorne optimizacije, a ime je dobila zbog analogije sa kaljenjem metala iz ije se simulacije i razvila. Metodu su nezavisno jedan od drugog opisali Scott Kirkpatrick, C. Daniel Gelatt i Mario P. Vecchi 1983. godine, [Kir83] i Vlado ern 1985 godine, *er85]. Metoda pokuava pronadi globalni optimum, ili mu se bar pribliiti, u zadatom prostoru konfiguracija.

    Ova heuristika se u optem obliku moe prikazati na slededi nain:

    Inicijalizacija: Izabrati poetno reenje x1 X

    x* = x1, f* =f(x1)

    Iterativni korak: n = 1, 2, . . .

    Nadi na sluajan nain x u okolini N ( xn ) trenutnog reenja xn.

    Ako je f (x) f(xn) , tada xn+1 = x

    Ako je f (x) < f*, tada x* = x , f* =f(x)

    Ako je f (x) > f(xn), izabrati sluajan broj p uniformno raspodeljen na intervalu [0,1]

    Ako je p pn , tada xn+1 = x

    Ako je p > pn , tada xn+1 = x

    Kraj: Ako je zadovoljen kriterijum zaustavljanja niz iterativnih koraka se zaustavlja, a x* se uzima

    za aproksimaciju optimalnog reenja.

    Vrednost pn predstavlja verovatnodu prihvatanja pogoranja funkcije cilja u iteraciji n. U

    osnovnj verziji simuliranog kaljenja ova verovatnoda je jednaka:

    ( ) ( )( )n

    n

    f x f x

    t

    np e

    po analogiji sa procesom kaljenja, gde je nt , vrednost temperature u iteraciji n. Temperatura je

    pozitivan kontrolni parametar, ije su vrednosti zadate nizom 1 2, ,...t t , takvim da je 1 2 ...t t i

    lim 0nn

    t

    . Ovakav niz se naziva ema hlaenja i definie nain i brzinu smanjivanja temperature

    tokom iteracija.

  • Metode za reavanje lokacijskih problema 32

    3.2.3 Pohlepni algoritam

    Jedan od najjednostavnijih heuristikih algoritama je pohlepni ili konstruktvini algoritam

    (Greedy Algorithm). Pohlepni algoritam je znatno bri od ostalih algoritama, ali ne mora uvek

    nadi optimalno reenje, jer nas u svakom trenutku usmerava na trenutno najbolje reenje, ne

    uzimajudi u obzir da nas to ne mora voditi ka globalnom optimumu. Traenje optimalnog

    reenja moe biti eksponencijalne sloenosti, a pohlepni algoritam smanjujudi prostor

    pretraivanja, smanjuje i samu sloenost. Ovakav pristup vodi do reenja koje sigurno

    predstavlja donju granicu globalnog maksimuma, ukoliko se trai maksimum, odnosno gornju

    granicu globalnog minimuma, ukoliko se trai minimum. Kako se pohlepni algoritam brzo izvodi

    i daje granicu optimalnog reenja, on nam omogudava da primenom nekih drugih algoritama

    smanjimo prostor pretrage reenja. Dodatna prednost pohlepne strategije je da, ak i kada ne

    pronae optimalno reenje, esto vodi na novu strategiju razvoja algoritma koja rezultira

    efikasnijim reenjem ili tehnikom koja brzo pronalazi dobru aproksimaciju reenja.

    Princip pohlepne metode je jednostavan: pronai najbolje trenutno reenje i idi za njim.

    Postoje mnogi algoritmi koji su zasnovani na pohlepnom pristupu, pa kada govorimo o

    pohlepnom algoritmu, ustvari govorimo o iroj klasi algoritama.

    Primer 1. Trgovac koji koristi pohlepni algoritam

    Jednostavan problem na kome moemo ilustrovati primenu pohlepnog algoritma je vradanje

    kusura prilikom kupovine. Pohlepnost pristupa se ogleda u tome to se prvo bira novid koji

    ima najvedu vrednost:

    Trgovac treba da vrati muteriji kusur od 62 dinara, a na raspolaganju su mu novanice od 50,

    20, 10, 5 i 1 dinara. Trgovac de vratiti jednu novanicu od 50 dinara, jednu od 10 dinara i 2

    novanice od dinar. Ovaj algoritam vrada taan iznos uz najkradu mogudu listu novanica.

    Algoritam: izabere se najveda novanica koja ne prelazi ukupnu sumu (50 dinara), stavlja se na

    listu za vradanje, oduzme se vradena vrednost od ukupne kako bi se izraunao ostatak za

    vradanje (12 dinara), zatim se bira slededa novanica koja ne prelazi ostatak koji treba vratiti (10

    dinara), dodaje se na listu za vradanje i rauna novi ostatak za vradanje (2 dinara) itd, sve dok se

    ne vrati taan iznos.

  • Metode za reavanje lokacijskih problema 33

    Ako trgovac treba da vrati 15 dinara, a ima novanice od 11 , 5 i 1 dinar, on de pohlepnim

    algoritmom vratiti ostatak jednom novanicom od 11 dinara i pomodu etiri novanice od 1

    dinar,iako bi mu bilo bre vratiti ostatak sa tri novanice od 5 dinara.

    Dakle, strategija pohlepnog pristupa je u primeru sa 62 dinara dovela do najefikasnijeg reenja

    problema vradanja novca i to zahvaljujudi specijalnim svojstvima raspoloivih novanica, dok u

    primeru sa 15 dinara pohlepni algoritam nije optimalan za dati skup novanica.

    U mnogim problemima pohlepni algoritmi mogu biti pogrean izbor strategije. Na primer u

    partiji aha, pohlepan algoritam de uvek odigrati onaj potez koji izgleda najbolje u datom

    trenutku, ne obazirudi se na njegove posledice. Ukoliko najvedu vrednost za igraa u datoj

    situaciji ima potez u kome on uzima protivnikog lovca, on de to i uiniti, iako taj potez daje

    protivniku mogudnost da matira igraa. Meutim, postoje problemi u kojima je dokazano da

    pohlepni algoritam daje optimalno reenje. Jedan od tih problema je i problem rasporeda

    zadataka. Pitanje je kako rasporediti zadatke, a da proseno vreme zavravanja zadatka bude

    minimalno.

    3.3 Metaheuristiki algoritmi za reavanje lokacijskih

    problema

    Za razliku od klasinih heuristikih metoda ideja metaheuristikih metoda je da se one uz odeene modifikacije mogu primenjivati na iru klasu problema kombinatorne optimizacije. Metaheuristike metode pretauju skup dopustivih reenja u cilju nalaenja to boljeg reenja. U ovom pretraivanju doputeno je kretanje ka loijem reenju od trenutnog, proirivanje skupa na kome traimo reenje nedopustivim elementima ili traenje reenja kombinovanjem postojedih.

    Problema kombinatorne optimizacije se moe definisati kao:

    min f(x), x X ,

    gde prostor dopustivih reenja X ima konano mnogo elemenata. Konkretna implementacija metaheuristika za reavanje problema kombinatorne optimizacije zavisi od prirode svakog pojednanog problema. Metaheuristike koje se najede koriste su: tabu pretraivanje, metoda promenljivih okolina, genetski algoritmi, kao i brojni metaheuristiki algoritmi inspirisani prirodom kao to su mravlje kolonije, neuronske mree, metoda kolonija pela. Pregled metaheuristika sa primenama dat je u [Glo03].

  • Metode za reavanje lokacijskih problema 34

    3.3.1. Tabu pretraivanje

    Tabu pretraivanje (Tabu search, TS) se bazira na principu lokalnog prtraivanja, i koristi kao svoju najvaniju komponentu tzv. adaptivnu memoriju, tj. pamdenje nekih podataka o prethodnim fazama procesa pretraivanja, koji utiu na izbor slededih taaka u ovom procesu.

    Koncept tabu pretraivanje je prvi predloio Fred Glover u svojim radovima ([Glo86], [Glo90]). Tabu pretraivanje koristi memorijske strukture i kada pronae potencijalno reenje, oznai ga kao tabu (zabranjeno) kako se vie ne bi vradao na njega. Sva reenja oznaena kao tabu pamte se u takozvanoj tabu listi. Tabu vreme je broj iteracije za vreme kojih je stavka sadrana u tabu listi zabranjena.

    Algoritam tabu retraivanja radi na slededi nain: u svakoj iteraciji algoritma raunamo promene vrednosti funkcije cilja za sve mogude poteze iz okoline trenutnog reenja i biramo najbolji potez. Mogude je da ak i najbolji potez ne poboljava funkciju cilja. Na primer ukoliko se trenutno nalazimo u lokalnom optimumu, svi potezi pogoravaju funkciju cilja. Oigledno je da se kod ovakve optimizacijske procedure mogu pojaviti ciklina kruenja poteza, odnosno, moe dodi do situacije da se odreeni sled poteza stalno ponavlja (npr. ukoliko smo iteraciju ranije bili u lokalnom minimumu i nakon to je algoritam odabrao potez koji ga je najmanje udaljio od lokalnog minimuma, slededi najbolji potez nas ponovo vrada u isti lokalni minimum). Kako se to ne bi dogodilo, uvodimo listu zabranjenih poteza koja definie poteze koji nisu doputeni. Ta lista je najede realizovana na principu FIFO (first- in- first- out). Kako se koji potez prihvati, stavlja se u tabu listu. Taj potez kroz odreeni broj iteracija nije doputeno izvoditi, ime de se spreiti ciklino ponavljanje poteza. Naravno, potrebno je da tabu lista bude odgovarajude veliine. Meutim, bududi da se u listu stavljaju samo potezi, a ne i celokupni kontekst u kojem je taj potez zabranjen, mogude je da zabranjivanje tog poteza, nakon to se algoritam nae u nekom drugom reenju, sprei istraivanje mogude zanimljivih reenja kojim bi taj potez vodio. Stoga se uvodi i aspiracijska funkcija pomodu koje se ponitava tabu status nekog poteza i omogudava da se on prihvati iako se nalazi u listi zabranjenih poteza. Klasina implementacija aspiracijske funkcije ponitava potezu tabu status, ukoliko taj potez vodi do reenja koje je bolje od dosada najboljeg pronaenog reenja. Predloeno da aspiracijska funkcija ne poklanja panju vrednosti funkcije cilja, ved da vri ulogu diversifikacije reenja. Smatramo da potez zadovoljava aspiracijsku funkciju ukoliko dodeljuje obe jedinke na lokacije koje one nisu okupirale unutar zadnjih t iteracija, gde je t kontrolni parameter algoritma.

    Kod tabu pretraivanja, veliina liste zabranjenih poteza je od velike vanosti. Naime, ukoliko je lista premala, moe dodi do ciklinog ponavljanja poteza, dok u sluaju da je ona prevelika, zanimljivi potezi mogu biti odbaeni, to povedava broj iteracija za dobijanje kvalitetnijih reenja.

    Veliina tabu liste zavisi od veliine problema koji se reava i s njom stoji u proporcionalnom odnosu (to je vedi problem, potrebna je i veda tabu lista). Meutim,

  • Metode za reavanje lokacijskih problema 35

    pojavljivanje ciklinih ponavljanja poteza nije obavezno u direktnoj vezi sa veliinom tabu liste. Taillard je u svom radu [Tai90] predloio da veliina tabu liste ne bude konstantna ved da se sluajno menja unutar nekog intervala sa odreenom frekvencijom. Ako uvedemo slededu notaciju: x= trenutno reenje x*= najbolje pronaeno reenje f*= vrednost funcije u taki x* N(x)= okolina od x TL= tabu lista TV= tabu vreme, algoritam tabu pretraivanja se moe predstaviti na slededi nain: Inicijalizacija:

    odaberi poetno reenje 0x

    postavi: x= 0x , x*= 0x , f*= f( 0x ), TL= ;

    Pretraga: dok (uslov_zaustavljanja nije zadovoljen) radi { odaberi najbolje dozvoljeno reenje x' iz N(x); postavi x= x'; ako je f(x) < f*, onda postavi f* = f(x), x* = x; stavi x u TL na TV iteracija; } vrati reenje x*;

    Najedi uslovi zaustavljanja su: nakon fiksnog broja iteracija (ili fiksnog vremena procesora), nakon odreenog broja iteracija bez napretka u minimiziranju funkcije, nakon to funkcija dostigne neku unapred definisanu vrednost. Kao uslov zaustavljanja mogu se koristiti i sve kombinacije gore navedenih uslova.

  • Metode za reavanje lokacijskih problema 36

    3.3.2 Genetski algoritmi

    Osnove genetskih algoritama (Genetic algorithms, GA) prvi je postavio Holland u svojoj knjizi [Hll75] 1975. godine. Holland je GA razvio radi razvoja sistema vetake inteligencije koji oponaaju modele prilagoavanja i radi prouavanja procesa prilagoavanja kod prirodnih sistema. Genetski algoritam je metoda optimizacije koja imitira proces genetske evolucije. Analogija evolucije kao prirodnog procesa i genetskog algoritma kao metode optimizacije, ogleda se u procesu selekcije i genetskim operatorima.

    Postoji veliki broj radova o genetskim algoritmima. Neki od njih su: [Djo75], [Gol89],

    [Yur94], [Mic96], [Mit96], [B00a] i [B00b]. O genetskim algoritmima se moe nadi i u domadoj literaturi: [Cve96], [Fil98], *Kra00+, *To04+.

    Genetski algoritam radi nad populacijom jedinki, najede veliine izmeu 10 i 200. Poetna populacija je obino sluajno generisana, to obezbeuje raznovrsnost genetskog materijala. Svaka jedinka je predstavljena genetskim kodom nad odreenom konanom azbukom, najede binarnom. Svakoj jedinki populacije se dodeljuje funkcija prilagoenosti (fitness function) koja odreuje kvalitet date jedinke tj. odgovarajudeg reenja. Zatim se primenjuje operator selekcije uzimaju se bolje jedinke, po nekom postupku odabira i formira nova generacija. Nakon toga neki lanovi populacije su podvrgnuti uticajima genetskih operatora: ukrtanja i mutacije.

    Selekcijom se favorizuju natproseno prilagoene jedinke i njihovi natproseno

    prilagoeni geni. Slabije prilgoene jedinke i geni imaju slabiju ansu za reprodukciju i veda je

    verovatnoda da izumru.

    Operator ukrtanja slui za razmenu genetskog materijala izmeu jedinki. Ukrtanjem se

    vri rekombinacija gena i time razmenjuje genetski material. Na ovaj nain se omoguduje da i

    slabije prilagoene jedinke u kombinaciji sa nekim dobro prilagoenim genima proizvedu dobro

    prilagoene jedinke.

    Viestrukom primenom selekcije i ukrtanja mogude je gubljenje genetskog materijala, to spreava mutacija. Ona vri sluajnu promenu odreenog gena, sa datom malom verovatnodom pm . Na taj nain se vrada izgubljeni genetski materijal u populaciju ime se spreava preuranjena konvergencije GA u lokalnom ekstremu.

    Prost genetski algoritam predstavlja osnovnu varijantu genetskog algoritma i sastoji se od proste rulet selekcije, jednopozicionog ukrtanja i proste mutacije. Najedi problem u primeni prostog genetskog algoritma je preuranjena konvergencija.

  • Metode za reavanje lokacijskih problema 37

    ematski prikaz osnovne varijante genetskog algoritma je:

    Unoenje_Ulaznih_Podataka(); Generisanje_Poetne_Populacije(); while not Kriterijum_Zaustavljanja_GA() do for i=1 to Npop do obj[i] = Funkcija_Cilja(i); endfor Funkcija_Prilagoenosti(); Selekcija(); Ukrtanje(); Mutacija();

    endwhile

    tampanje_Izlaznih_Podataka();

    ematski zapis genetskog algoritma

    Genetski algoritmi su u osnovi stohastike metode pretrage dopustivog prostora reenja, tako da mogu raditi beskonano dugo, ukoliko im ne nametnemo kriterijum zaustavljanja. Postoji nekoliko kriterijuma zaustavljanja GA:

    maksimalni broj generacija,

    slinost jedinki u populaciji,

    najbolja jedinka je ponovljena maksimalni broj puta,

    algoritam je dostigao optimalno reenje (ukoliko je ono unapred poznato),

    dokazana optimalnost najbolje jedinke (ukoliko je to mogude),

    ogranieno vreme izvravanja GA,

    prekid od strane korisnika itd.

    Svaki od navedenih kriterijuma ima dobre i loe aspekte, tako da se u praksi najbolje pokazalo njihovo kombinovanje, jer se tako smanjuje mogudnost loe procene prekida GA.

    Iako je teorijski mogude primeniti koncept GA na svaki lokacijski problem, GA nije podjednako uspean za sve probleme. Kod problema sa mnogo ogranienja mogu nastati tekode u pronalaenju adekvatnog naina kodiranja. Ispostavilo se da je genetski algoritam najefikasniji za reavanje problema sa malo ogranienja i relativno sloenom funkcijom cilja [Ree93]. Pomodu GA uspeno se reavaju: problem p-medijane [Dre03], [Cor04], problem p-centra [Mih03], hab lokacijski problemi [AbH98], [AbH99], [Ern04a], prost lokacijski problem [Kra00], problem dizajniranja mree [Kra02], problem selekcije indeksa [Kra03].

  • Metode za reavanje lokacijskih problema 38

    3.3.3 Metoda promenljivih okolina

    Metodu promenljivih okolina (Variable Neighborhood Search, VNS) predloili su Mladenovid i Hansen, u radovima ([Mla95], [Mla97]). Metoda promenljivih okolina se zasniva

    na lokalnom pretraivanju, pri emu se u svakoj iteraciji moe vriti prestruktuiranje okoline

    trenutnog reenja.

    Osnovna ideja metode je sistematska promena okolina unutar lokalnog pretraivanja (Slika 11.). Neophodno je uvesti vie okolina, bilo promenom metrike u odnosu na koju se defnie okolina, bilo povedavanjem rastojanja u odnosu na istu metriku. U trenutku kada se doe do nekog lokalnog optimuma, vri se sluajno pomeranje u tekudoj okolini do nekog reenja (koje moe biti i loe). Zatim se iz tog reenja lokalnim pretraivanjem pokua pronalaenje nekog drugog lokalnog ekstremuma. Ovim pomeranjem (do reenja koje se moe nalaziti relativno daleko od trenutnog) postie se sistematino pretraivanje prostora reenja i spreava konvergencija metode ka loijem lokalnom ekstremumu. Takoe, u sluajevima kada pomeranje nije dovelo do boljeg reenja, zadravanje u trenutno najboljem reenju smanjuje mogudnost nepotrebnog irenja pretraivanja na nove oblasti prostora dopustivih reenja. Metoda se primenjuje za reavanje problema p-medijane ([Han97], [Cra03], [Cra04]), prostog lokacijskog problema [Han07], problema vetake inteligencije. Kriterijumi zaustavljanja ove metode su slini kao i kriterijumi zaustavljanja u sluaju tabu pretraivanja. Vie o ovovj metodi moe se nadi u ([Mla95, Mla97, Han99, Han01, Dav06, Kov08,]).

    Slika 11. Pretraivanje po razliitim okolinama

    VNS metaheuristika zasnovana je na slededim injenicama:

    lokalni minimum u odnosu na jednu okolinu ne mora biti i lokalni minimum u odnosu na neku drugu okolinu;

    globalni minimum je lokalni minimum u odnosu na sve okoline;

    za vedinu problema lokalni minimumi u odnosu na razne okoline su meusobno bliski.

  • Metode za reavanje lokacijskih problema 39

    Ove tri injenice mogu se iskoristiti na tri razliita naina: deterministiki, stohastiki ili

    kombinovano (videti [Dav06]). Ukoliko iskoristimo determnistiku varijantu dobijamo metodu

    promenljivog spusta (Variable Neighborhood Descent, VND). Ona se sastoji u tome da se

    izabere kmax okolina, Nk, k=1, 2, ... , kmax, odredi poetno reenje x i startuje procedura lokalnog

    pretraivanja u odnosu na svaku od okolina, poev od izabranog reenja x. Ukoliko je kmax = 1

    re je o obinom lokalnom pretraivanju. Ukoliko iskoristimo stohastiku definiciju metode

    koraci su jednostavniji zbog toga to ne postoji proces lokalnog pretraivanja. Metoda se sastoji

    u sistematskoj promeni okolina i izboru jednog sluajnog reenja u svakoj od okolina. Koraci

    odluivanja bazirani su na tom jednom sluajnom reenju. Metoda koja se na ovaj nain dobija

    naziva se redukovana metoda promenljivih okolina (Reduced Variable Neighborhood Search,

    RVNS). Ova metoda je korisna kod primera velikih dimenzija, jer se izbegava sloena i

    dugotrajna metoda lokalnog pretraivanja. Kombinacijom prethodna dva principa, tj.

    sistematskom (deterministikom) promenom okolina, sluajnim izborom poetnog reenja u

    tekudoj okolini i primenom metode lokalnog pretraivanja poev od sluajnog reenja dobija se

    osnovna metoda promenljivih okolina (Basic Variable Neighborhood Search, VNS). Ovo je

    najrasprostranjenija varijanta metode promenljivih okolina jer obezbeuje vie preduslova za

    dobijanje kvalitetnijih konanih reenja.

    3.3.4 Neuronske mree

    Neuronska mrea (Neural network) je sistem sastavljen od vie jednostavnih procesora

    (jedinica, neurona) [Fan90]. Svaki od njih ima lokalnu memoriju u kojoj pamti podatke koje

    obrauje. Ove jedinice su povezane komunikacionim kanalima (vezama). Podaci koji se ovim

    kanalima razmenjuju su obino numeriki. Jedinice obrauju samo svoje lokalne podatke i ulaze

    koje primaju preko konekcije. Ogranienja lokalnih operatora se mogu otkloniti tokom treninga.

    Postoje dve kategorije neuronskih mrea: vetake i bioloke neuronske mree.

    Predstavnik biolokih neuronskih mrea je nervni sistem ivih bida. Vetake neuronske mree

    su po strukturi, funkciji i obradi informacija sline biolokim neuronskim mreama, ali se radi o

    vetakim tvorevinama. Neuronska mrea u raunarskim naukama predstavlja veoma povezanu

    mreu elemenata koji obrauju podatke. One su sposobne da daju reenja problema koji se

    tradicionalnim pristupima teko reavaju, kao to su govor i prepoznavanje oblika. Jedna od

    vanijih osobina neuronskih mrea je njihova sposobnost da ue na ogranienom skupu

    primera.

  • Metode za reavanje lokacijskih problema 40

    Vetaki neuroni imaju jednostavnu strukturu i sline funkcije kao i bioloki neuroni.

    Telo neurona se naziva vor ili jedinica (Slika 12).

    Slika 12. Telo neurona

    u1..n ulazni podaci

    w1..n teinski koeficijenti

    f( ) aktivaciona funkcija

    i izlazni podatak

    Neuronsku mreu ine: arhitektura (topologija) mree, odnosno ema vezivanja

    neurona, prenosna funkcija neurona, zakoni uenja.

    Arhitekturu vetake neuronske mree karakterie specifino ureenje i povezivanje

    neurona u obliku mree (Slika 13), *Mac03+. Po arhitekturi, neuronske mree se mogu

    razlikovati prema broju neuronskih slojeva. Obino svaki sloj prima ulaze iz prethodnog sloja, a

    svoje izlaze alje narednom sloju. Prvi sloj se naziva ulazni, poslednji je izlazni, ostali slojevi

    se obino nazivaju skrivenim slojevima. Jedna od najedih arhitektura neuronskih mrea je

    mrea sa tri sloja. Prvi sloj (ulazni) je jedini sloj koji prima signale iz okruenja. Prvi sloj prenosi

    signale slededem sloju (skriveni sloj) koji obrauje ove podatke i izdvaja osobine i eme iz

    primljenih signala. Podaci koji se smatraju vanim se upuduju izlaznom sloju, poslednjem sloju

    mree. Na izlazima neurona tredeg sloja se dobijaju konani rezultati obrade. Sloenije

    neuronske mree mogu imati vie skrivenih slojeva, povratne petlje i elemente za odlaganje

    vremena, koji su dizajnirani da omogude to efikasnije odvajanje vanih osobina ili ema sa

    ulaznog nivoa.

  • Metode za reavanje lokacijskih problema 41

    Slika 13. Neuronska mrea

    Postoji veliki broj razliitih realizacija neuronskih mrea, a samim tim postoji i mnogo podela. Neuronske mree moemo klasifikovati prema:

    broju slojeva (jednoslojne, vieslojne) vrsti veza izmeu neurona (slojevite, potpuno povezane, celularne) vrsti obuavanja neuronskih mrea (nadgledano, delimino nadgledano, nenadgledano) prema smeru prostiranja informacija (nepovratne (feedforward), povratne( feedback)) prema vrsti podataka (analogne, diskretne)

    Primenu neuronskih mrea je mogude podeliti na tri karakteristine oblasti, [Ili99] :

    procesiranje senzorskih informacija (prepoznavanje oblika, rukopisa, govora) analiza podataka (analiza medicinskih testova, elektrinih kola, analiziranje podataka pri

    pirolizi i spektroskopiji) kontrola upravljanja (upravljanje sistemima, upravljanje proizvodnim procesima,

    upravljanje robotima)

    Neuronske mree mogu biti kako od koristi pri akustinom modeliranju ulaznog govornog signala i njegovih osobina, tako i pri klasifkaciji ili analizi strukture govora i drugim mogudim oblastima govora. Konkretnu primenu neuronskih mrea predstavljaju dva programa: program za prepoznavanje dirilinih slova OCR i program za obuavanje neuronskih mrea ANN.

    3.3.5 Mravlji algoritmi

    Mravlji sistemi (Ant systems) predstavljaju algoritme za reavanje kompleksnih problema kombinatorne optimizacije koji su nastali pradenjem kolektivnih ponaanja ivotinja

  • Metode za reavanje lokacijskih problema 42

    poput mrava. Ove algoritme prvi je opisao Marco Dorigo, u radu [Dor96]. Nain na koji mravi uspevaju u nalaenju najkradeg mogudeg puta izmeu izvora hrane i njihovog gnezda, podseda na probem trgovakog putnika. Luenjem feromona u procesu prikupljanja hrane, jedinke daju informacije ostalim lanovima kolonije. Sprovedeni su eksperimenti u kojima je mravlje gnezdo povezano sa izvorom hrane pomodu dva mosta ija se duina razlikuje. Utvreno je da de se nakon izvesnog vremena vedina mrava kretati kradim putem. Razlog tome je to mrav odluuje kojim de se putem kretati u zavisnosti od koliine feromona koju oseda na odreenom putu. Kako se feromoni vie osedaju na kradem putu, zbog vede gustine, vedina mrava de odluiti da se krede upravo kradim putem. Pri formiranju heuristikog algoritma, koji je inspirisan ovom idejom, vetaki mravi pretrauju dopustivi prostor i formiraju rute, a odreeni mehanizmi (poput isparavanja feromona) spreavaju prebrzu konvergenciju ovakvih procesa. Eksperimenti sa preprekom (Slika 14) pokazuju da mravi uspevaju veoma brzo da otkriju kradi put. Pretpostavlja se da je izboru svakog puta od strane mrava pridruena odreena verovatnoda koja je utoliko veda ukoliko je jai feromon du tog puta. Na poetku ekspereimenta sa preprekom mravi se kredu du najkradeg puta izmeu stanita i izvora hrane. Potom se mravima postavlja prepreka na njihovom putu to uslovljava da mravi moraju da skrenu levo ili desno. Otprilike polovina mrava skrede levo i otprilike polovina mrava skrede desno. Mravi koji su skrenuli desno stiu za krade vreme da uzmu hranu i da se vrate u stanite, da ponovo odu po hranu, da se ponovo vrate, itd. Samim tim, koliina feromona du desnog puta i verovatnoda izbora ovog puta se povedava. Za relativno kratko vreme mravi su u stanju da otkriju kradi put.

    Slika 14.

    Najznaajniji vetaki sistemi razvijeni na inteligenciji roja su mravlji sistem i optimizacija kolonijom mrava. Optimizacija kolonijom mrava predstavlja novu heuristiku razvijenu sa ciljem da se pomodu nje reavaju sloeni problemi kombinatorne optimizacije. Osnovna razlika izmeu mravljeg sistema i optimizacije kolonijom mrava ogleda se u nainu na koji se izraunava verovatnoda da de mrav k koji je lociran u voru i da izabere vor j.

  • Metode za reavanje lokacijskih problema 43

    Model koji je Debebourg predloio pretpostavlja da je koliina feromona na putanji

    proporcionalna broju mrava koji su proli tom putanjom. Neka je An i Bn broj mrava koji se kredu

    du putanja A i B, respektivno, od prvih n mrava koji su napustili mravinjak. Verovatnoda da de

    (n+1)-i mrav izabrati putanju A je data sa:

    1

    ( )

    ( ) ( )

    V

    Nn V V

    N N

    K Ap

    K A K B

    Parametar K definie mogudnost izbora neobeleene staze ( za vede vrednosti potrebna je jaa

    koncentracija feromona da izbor ne bi bio sluajan), dok vrednost V odreuje stepen

    nelinearnosti ovog izbora.

    Luid i Teodorovid, *Lu02+ su modifikovali optimizaciju kolonijom mrava i predlozili fazi mravlji sistem kombinujudi optimizaciju kolonijom mrava sa fazi logikom. Osnovnu modifikaciju predstavlja nain izraunavanja verovatnoda odlaska mrava u slededi vor. Oni su svakom potencijalnom izboru novog vora dodelili odreene koristi koje ostvaruje mrav. Vetaki mrav koji treba da donese odluku uzima u obzir vidljivost i koliine feromona deponovane po pojedinim granama. Fazi mravlji sistem je zasnovan na ideji da mrav doivljava odreena rastojanja kao kratka, srednja, ili duga. Takoe, deponovanu kolicinu feromona mrav vidi kao malu, srednju ili veliku.

    Pretpostavlja se da vetaki mrav k koji se nalazi u voru i rauna korist ukij koje moe ostvariti ukoliko poseti cvor j. U zavisnosti od percepiranog rastojanja i percepirane koliine deponovanog feromona mrav ostvaruje vede ili manje koristi ukoliko poseti odreeni vor. Mrav doivljava ove koristi kao male, srednje, velike.

    Algoritam aproksimativnog rezonovanja za izraunavanje koristi koje ima mrav pri izboru sledede grane, trai da rastojanje bude to krade i koliina feromona to veda.

    Algoritam aproksimativnog rezonovanja moe da zameni izraze za izraunavanje verovatnode izbora. Na ovaj nain je mogude izraunavati koristi i u sluajevima kada su neke od ulaznih veliina poznate samo aproksimativno. Lokalna pravila za promenu feromona i globalna pravila za promenu feromona su u sluaju fazi mravljeg sistema ista kao i u sluaju optimizacije kolonijom mrava.

    3.3.6 Optimizacije metodom rojeva pela

    Pelinji ples je jedno od najintrigantnijih drutvenih ponaanja kod insekata. On

    predstavlja formu koju pele radilice koriste da bi regrutovale druge pele iz roja da ih prate do mesta sa resursima. Kada se pela vrati u konicu sa nektarom koji je dovoljno hranljiv da bi ostale pele otile do njegovog izvora, ona izvede karakteristian ples na zidu konice kako bi podelila informaciju o lokaciji tog izvora sa ostalim pelama. Ovaj ples sadri dve bitne

  • Metode za reavanje lokacijskih problema 44

    informacije: o pravcu i udaljenosti izvora hrane. Pela izvodi kruni ples kojim samo signalizira udaljenost hrane, ukoliko se izvor nalazi blizu konice( na udaljenosti manjoj od 50m). Ukoliko je udaljenost velika ( preko 150m), pela izvodi ples u obliku osmice koji u sebi sadri i informaciju o udaljenosti hrane. Ugao pod kojim se pela krede u toku uspravnog dela osmice predstavlja ugao pod kojim se nalazi hrana u odnosu na Sunce. Za srednje udaljenosti, pela koristi kombinacije ova dva plesa da bi prenela informacije.

    Slika15. Pelinji plesovi: kruni ples(levo), ples u obliku spljotene osmice( desno)

    Ovako opisan nain na koji pele prikupljaju hranu moe biti upotrebljen u algoritmima za optimizaciju (pronalaenje najboljeg izvora hrane), distribuiranu podelu zadataka (regrutacija pela u zavisnosti od kvaliteta izvora hrane), itd.

    Osnovni algoritam za optimizaciju koji se zasniva na ponaanju pela (Bees Algorithm, BA) oslanja se na koncept centralnog plesnog podijuma, kako bi se odredila najpogodnija lokacija, dok direktna komunikacija izmeu jedinki roja ne postoji. Regrutacija moe biti deterministika, na osnovu funkcije prilagoenosti svake lokacije, ili stohastika, kada vrednosti ove funkcije odreuju verovatnodu da pela bude regrutovana. Algoritam se izvrava u iteracijama i zaustavlja se kada se pronae reenje u okviru neke margine greke ili kada se dostigne maksimalan broj iteracija.

    Drugi znaajan algoritam za optimizaciju (Artificial Bee Colony, ABC) podrava tehniku

    centalnog podijuma, ali predlae da pele imaju razliite uloge u okviru roja. Postoje specijalne

    pele izviai koje se alju na sluajnu putanju u potrazi za hranom kada se postojedi izvor

    hrane istroi i pele sakupljai koje se regrutuju na osnovu funkcije prilagoenosti izvora

    hrane.

    Nijedna metaheuristika metoda ne garantuje optimalnost dobijenog reenja. ak je

    izuzetno teko predvideti njegovo odstupanje od optimalnog reenja. Kako ne postoji

    univerzalna metoda koja daje najbolja reenja za sve probleme, esto se vre kombinacije

    raznih metoda i dobijaju hibridni algoritmi.

  • Metode za reavanje lokacijskih problema 45

    Najede se kombinuju genetski algoritmi i tabu pretraivanje. Kombinacija genetskog

    algoritma i lokalnog pretraivanja poznata je pod nazivom memetski algoritam (Memetic

    Algorithm, MA) koji je naziv dobio po kulturolokom genu mem koji prenosi informacije iz

    jednog uma u drugi. Za razliku od gena, mem se ne prenosi razmnoavanjem. Memetski

    algoritmi imaju svojstvo da dobro pretrauju i iskoridavaju prostor reenja, ali su naroito

    osetljivi na odnos poremedaja informacije i njenog ouvanja prilikom mutacije: da bi algoritam

    izaao iz lokalnog optimuma i da bi se postigla stabilnost algoritma, potrebno je taj odnos

    uravnoteiti. Takoe mogude je kombinovati metaheuristie metode sa egzaktnim metodama.

    Hibridizacija GA sa egaktnom metodom Branch-and-Cut-and-Price je data u [Lju04].

    The Greedy Randomized Adaptive Search Procedure, GRASP je kombinacija pohlepne

    heuristike i lokalnog pretraivanja. Reenje se sastavlja korak po korak uzimajudi u svakoj

    iteraciji, sluajnim odabirom, komponentu reenja iz ograniene liste kandidata. Ograniena

    lista kandidata se sastoji od najboljih elemenata rangiranih prema vrednosti pohlepne

    funkcije, tj. prema kvalitetu reenja koje bi mogli postidi. Ukoliko je =1, dobijamo osnovni

    pohlepni algoritam, a ukoliko je jednak broju komponenti dobijamo sluajno pretraivanje.

    Algoritam je osetljiv na parametar i najede se algoritam menja iz iteracije u iteraciju

    algoritma (adaptivna promene parametara).

    GRASP metoda predstavlja iterativan proces gde se svaka iteracija sastoji od dve faze:

    faze izgradnje reenja i faze lokalnog pretraivanja. Najbolje naeno reenje se zadrava kao

    rezultat. U prvoj fazi, konstruiemo reenje iterativnim putem, element po element. U svakoj

    iteraciji izgradnje, izbor slededeg elementa se odreuje tako da se sloe svi elementi u listi

    kandidata s obzirom na pohlepnu funkciju koja meri profit pri izboru svakog elementa.

    Heuristika je adaptivna, jer se profit povezan sa izborom svakog elementa ponovno

    rauna prilikom svake iteracije u fazi izgradnje kako bi se uzele u obzir promene nastale izborom

    prethodnog elementa. Sluajnost je uvedena tako to se meu najboljim kandidatima sluajno

    bira element, koji najede nije i najbolji. Reenja generisana u fazi izgradnje uglavnom nisu

    lokalno optimalna, s obzirom na definciju okoline. Zato je potrebno primeniti lokalno

    pretraivanje kako bi se poboljalo izgraeno reenje. Iako ovako pretraivanje moe zahtevati

    eksponencijalno vreme ukoliko se krede iz proizvoljne poetne take, empirijski se efikasnost

    pretraivanja znaajno poboljava kako se poetno reenje poboljava.

    Koridenjem prilagoenih struktura podataka i paljivom implementacijom, moe se stvoriti

    efikasna faza izgradnje koja daje dobra poetna reenja za lokalno pretraivanje.

  • 4. Lokacijski problemi na mreama

    Iako se nekoliko objavljenih radova vezanih za lociranje proizvodnog pogona i skladita

    baziranih na mrei, pojavilo u istraivakoj literaturi 50-tih godina, ozbiljna panja usmerena ka

    mrenim lokacijskim problemima pojavila se tek sredinom 60-tih godina. Hakimi je u radovima

    ([Hak64],[Hak65]), istraivao minimalno teinsko rastojanje lociranja p objekata na n vorova

    mree i taj problem je nazvao problem p-medijane. Iako nije predloio metod koji reava

    problem p-medijane, dokazao je postojanje najmanje jednog optimalnog reenja koje svih p

    objekata locira pojedinano na vorove mree. Njegov doprinos je bio slian Dantzig-ovom u

    linearnom programiranju, po tome to je smanjio skup optimalnih reenja sa potencijalno

    beskonanog do konanog skupa. Ovaj rezultat se obino naziva Hakimijeva teorema ili

    osobina vorova.

    Slino modelima optimizacije za reavanje lokacijskih problema u ravni, koriste se

    razliiti modeli za reavanje problema lokacije na mreama, koje je dosta prouavao Klincewicz

    [Kli91]. U ovim modelima se koristi pojam rastojanja ( proseno vreme putovanja, proseni

    transportni trokovi) izmeu dva vora mree, koje je po definiciji duina najkradeg puta izmeu

    posmatranih vorova. Pri raunanju duine puta, u nesimetrinim mreama, vano je koji je

    poetni, a koji krajnji vor puta. Prema tome, za jedan par vorova mogu postojati dva

    rastojanja.

    Mreni lokacijski problemi predstavljaju kombinaciju diskretnih i kontinualnih problema.

    Mogu imati diskretna reenja koja se nalaze u vorovima grafa ili neprekidna reenja koja se

    nalaze na granama grafa. Najpoznatiji diskretni mreni lokacijski problemi su: problemi

    maksimalnog pokrivanja (maximal covering problems), problemi p-centra (p-center problems),

    p-medijane (p-median problems), problemi fiksnih trokova (fixed charge problem), lokacije

    habova (hub location problems), maksimalne sume (maxisum problem) itd.

    vorovima se pripisuju brojevi koji se koriste kao teinski koeficijenti pri raunanju teinskih

    rastojanja. Kao kriterijum moe da se koristi teinsko rastojanje od novog objekta do njemu

    najudaljenijeg vora ili zbir teinskih rastojanja od novog objekta do vorova mree. U prvom

    sluaju radi se o problemima tipa min-max koji se u teoriji grafova nazivaju problemi

    odreivanja centra grafa. U drugom sluaju u pitanju su problemi tipa min-sum, odnosno

    problemi odreivanja medijane grafa.

  • Lokacijski problemi na mreama 47

    4.1 NPteki problem

    Teorija NP-kompletnih problema je utemeljena u radovima [Cook71] i [Krp72]. Tokom 70-tih godina je dokazano da vie od 300 problema pripada toj klasi.

    Algoritam je polinomske sloenosti po vremenu izvravanja, ako je vremenske sloenosti najvie O(nk), za neku konstantu k.

    Problem pripada klasi sloenosti P, i nazivamo ga problemom polinomske sloenosti, ako ga je mogude reiti u optem sluaju, nekim od poznatih algoritama polinomske sloenosti.

    Problem pripada klasi NP, i nazivamo ga problemom nedeterministike polinomske sloenosti, ako se reenje datog problema moe verifikovati algoritmom polinomske sloenosti. Preciznije, za unapred dato reenje se utvruje da li su ispunjeni svi uslovi problema. Pri tome je potrebno da on bude zadat kao problem odluivanja, da bi odgovor bio i formalno (matematiki) korektan.

    Kljuna razlika izmeu klasa P i NP je u tome to se problemi iz klase P mogu efektivno reiti, dok se u sluaju problema iz klase NP moe samo verifikovati reenje u polinomskom vremenu izvravanja. Takoe, jasno je da svaki problem iz klase P pripada i klasi NP, odnosno da

    je P NP , ali postavlja se pitanje da li je P prava potklasa klase NP. Postoje problemi koji ne pripadaju ni klasi P ni klasi NP. Kod takvih problema moemo

    da konstruiemo eksponencijalni algritam i da pokaemo da se on ne moe izbedi. Problem odluivanja nazivamo NP-kompletnim ako: pripada klasi NP; svi ostali NP problemi se mogu algoritmom polinomske sloenosti svesti na dati problem.

    Problem koji nije problem odluivanja, a ije reavanje nije jednostavnije od reavanja

    nekog NP-kompletnog problema, naziva se NP-teak *Gar79, Gib85]. Problem je NP-teak ako i

    samo ako postoji ekvivalentan problem odluivosti koji je NP-kompletan. NP-teki problemi

    predstavljaju kombinatorne probleme za ije reavanje nisu poznati algoritmi s vremenom

    raunanja koje zavisi od veliine problema, tj. ija se sloenost moe izraziti polinomnom

    funkcijom (npr. linearnom, kvadratnom, kubnom,...). Iako nikad nije dokazano, pretpostavlja se

    da odnos skupova NP, P, NP-tekih i NP-kompletnih problema izgleda kao na Slici 16.

  • Lokacijski problemi na mreama 48

    NP kompletni problemi

    Slika 16. Grafiki prikaz odnosa skupova NP, P, NP-tekih i NP-kompletnih problema

    4.1 Prost lokacijski problem

    Prost lokacijski problem (Simple Plant Location Problem, SPLP), takoe poznat kao problem lokacije nekapacitativnog objekta (Uncapacitated facility location problem ,UFLP), je osnovni predstavnik ove klase problema i mnogi lokacijski problemi se mogu formulisati pomodu njega. Slian je problemu p-medijane, osim toga to su mnogi objekti koji treba da se lociraju u sastavu problema. Zadatak je minimizovati sumu fiksnih trokova i trokova transporta, a pri tome ispotovati zahteve skupa klijenata.

    Iako je Balinski [Bal65] prvi formulisao problem, napustio je formulu, jer je njegov kolega Gomory demonstrirao mali kontra primer. Morris [Mor78] , Ra Velle i Swain, [RaV70] su pokazali kroz eksperimente da su problem p-medijane i prost lokacijski problem celobrojno orjentisani, to jest njihove relaksacije linearnog programiranja tee celobrojnim ili skoro celobrojnim reenjima koja zahtevaju nekoliko grananja u proceduri grananja i ograniavanja. Problem lokacije proizvodnog pogona sa ogranienim kapacitetima je indentian prostom lokacijskom problemu sa dodatkom ograniavanja kapaciteta na objekte. Dodatna ogranienja unitavaju osobinu kojom su svi zahtevi korisnika zadovoljeni iz jednog objekta.

    Krarup [Krr83] je dokazao da prost lokacijski problem (SPLP) pripada klasi NP kompletnih problema.

  • Lokacijski problemi na mreama 49

    4.1.1 Formulacija problema

    Neka je dat skup I={1,,m} potencijalnih lokacija snabdevaa i skup J={1,...,n} korisnika.

    Oznaimo sa fi fiksne trokove postavljanja snabdevaa na potencijalnu lokaciju i I. Neka je bj

    koliina robe koju zahteva svaki korisnik jJ, uz transportne trokove snabdevanja sa i-te

    lokacije cij(po jedinici robe). Potrebno je rasporediti snabdevae na neke od tih lokacija tako da

    ukupni trokovi budu minimalni. Pri tome u razmatranje ulaze fiksni trokovi postavljanja

    snabdevaa i promenljivi trokovi transporta do svakog korisnika (videti [Bej93]).

    Problem se matematiki formulie na slededi nain:

    1 1 1

    min( )m n m

    ij ij i i

    i j i

    c x f y

    Uz ogranienja:

    1

    1m

    ij

    i

    x

    , za svakog korisnika j J

    0 xij yi , za svakog korisnika j J i snabdevaa i I

    yi {0,1} , za svakog snabdevaa i I

    xij 0, za svakog korisnika j J i snabdevaa i I

    Promenljive ijx oznaavaju koliinu robe koju snabdeva i isporuuje korisniku j. Binarna

    promenljiva iy uzima vrednost 1 ako je na potencijalnoj lokaciji i uspostavljen snabdeva ili 0 u

    suprotnom.

    Datom problemu odgovara slededi realni zadatak opisan u [Kra00]: U nekom naselju

    postoji n stambenih zgrada, i m potencijalnih lokacija za prodavnice (ili trafike, domove zdravlja,

    benzinske pumpe, kafane, servisne slube,...). Potrebno je u datom naselju optimalno

    rasporediti prodavnice na neke od potencijalnih lokacija, tako da budu blizu stanovnicima

    naselja, ali uzimajudi u obzir i trokove zakupa poslovnog prostora prodavnica. Najede su dati

    uslovi suprotstavljeni, pa lokacije u centru naselja koje su relativno najblie svim stanovnicima,

    imaju visoke trokove zakupa poslovnog prostora, a lokacije na periferiji sa niskim trokovima

    zakupa, zahtevaju velike transportne trokove.

  • Lokacijski problemi na mreama 50

    4.1.2 Metode za reavanje SPLP-a

    Iako je prost lokacijski problem NP teak, u specijalnim sluajevima ga je mogude reiti u polinomskom vremenu izvravanja. Egzaktne metode za reavanje SPLP-a su detaljno prikazane u radovima [Aqe90], [Ryu92] i [DSi96].

    Najefikasniji algoritam za reavanje SPLP-a dugo vremena je bio Dualoc algoritam, iji je autor Erlenkotter, [Erl78]. Osnova ovog algoritma je dualna formulacija pridruenog problema linearnog programiranja u skradenoj formi, koji doprinosi jednostavnoj implementaciji dualne metode penjanja i odgovarajude dualne metode poravnanja. Ukoliko reenje dobijeno primenom te dve metode nije optimalno, primenjuje se metoda grananja i ograniavanja. Na kraju izvravanja algoritma dobija se optimalno reenje. Postoje dve varijante Dualoc algoritma: Puna implementacija koja koristi metodu grananja-i-ograniavanja (BnB) za dobijanje optimalnog reenja; Redukovana metoda koja sadri samo metodu penjanja (dual ascent) i metodu poravnanja (dual adjustment). Kako redukovana metoda ne sadri metodu grananja i ograniavanja vreme izvravanja joj je vrlo kratko, ali daje samo suboptimalno reenje.

    Neke od uspenih metoda za reavanje SPLP-a su: genetski algoritmi [Kra99], [Kra01], [Fil00], metoda promenljivih okolina (Variable neighborhood search) [Han07], tabu pretraivanje (tabu search) [Sun06], simulirano kaljenje (simulated annealing) [Yig03], Lagraneva relaksacija (Lagrangean relaxation) [Cor06].

    U praksi se pokazalo da najbolje rezultate za reavanje prostog lokacijskog problema daju dualne metode ([Erl78], [Sim89], [Hlm95]). Dualne metode reavaju dati problem koridenjem metode grananja i ograniavanja i u optem sluaju su eksponencijalne sloenosti. Vrlo brzo reavaju SPLP instance manje dimenzije, dok u sluaju SPLP instanci velikih dimenzija, brzo dolaze do optimalnog reenja, ako je broj suboptimalnih reenja relativno mali. Samo u sluaju problema vrlo velikih dimenzija, sa malim brojem neperspektivnih potencijalnih lokacija i velikim brojem suboptimalnih reenja, vreme izvravanja je ekstremno veliko.

    U radu [Tch88] prikazan je pokuaj hibridizacije dualnih metoda i Add-heuristike.

    Pokazano je da je vreme izvravanja hibridizacije obino vrlo kratko, iako se dobijaju

    suboptimalna reenja koja mogu biti loijeg kvaliteta kod instanci vede dimenzije. Jo jedna

    varijanta hibridizacije Add heuristike i genetskog algoritma opisana je u radu [Kra98a].

    Reavanje problema (SPLP) pomodu genetskih algoritama detaljno je opisano u [Kra00].

    Izabrano je binarno kodiranje potencijalnih lokacija snabdevaa. Svaki bit u genetskom kodu

    jedinke, ija je vrednost 1 oznaava da je na datoj lokaciji postavljen snabdeva, a vrednost 0 da

    nije. Genetski kod jedinke je alociran kao niz 32-bitnih rei, radi breg izvravanja, pri primeni

    genetskih operatora.

  • Lokacijski problemi na mreama 51

    Za m=5, genetski kod jedinke 01011|000000010000000010001110101 1. - 5. 6. - 32. oznaava da su na lokacijama 2, 4 i 5 postavljeni snabdevai dok na lokacijama 1 i 3 nisu postavljeni snbdevai.Bitovi 6-32 se ignoriu.

    Iz genetskog koda nalazi se niz indikatora yi (i=1, 2, ... , m) koji prikazuju da li je na odgovarajudoj potencijalnoj lokaciji postavljen snabdeva ili nije. Poto za snabdevaa na odreenoj lokaciji ne postoji ogranienje u kapacitetu lokacije i poto je poznato na kojim su sve lokacijama postavljeni snabdevai a na kojima nisu (niz yi ), svaki korisnik moe da izabere sebi najblieg snabdevaa. U sluaju kada su snabdevai fiksirani, minimizacijom trokova za svakog korisnika ujedno se dobija i minimum ukupnih trokova. Za reavanje datog problema primenjena je selekcija bazirana na rangu (rank-based selection) sa linearnim smanjenjem rangova.

    Pri izvravanju GA implementacije, uniformno ukrtanje je dalo neto bolje rezultate u odnosu na ostale eme ukrtanja, iako razlike u performansama, pri poreenju sa jednopozicionim, dvopozicionim i viepozicionim ukrtanjem nisu bile velike. Prosta mutacija je implementirana pomodu Gausove (normalne) raspodele, radi breg izvravanja. Nivo mutacije zavisi od veliine problema.

    Z