55
Kandidaatintutkielma Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta Aaro Salosensaari Soveltava matematiikka Matematiikan ja tilastotieteen laitos Helsingin Yliopisto Helsinki, 2. huhtikuuta 2016

New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kandidaatintutkielma

Mallinnettu jaumlaumlhdytys ja ympyraumlkiekkojen etsiminenkuvasta

Aaro Salosensaari

Soveltava matematiikkaMatematiikan ja tilastotieteen laitos

Helsingin Yliopisto

Helsinki 2 huhtikuuta 2016

Ladottu LuaLATEX-ohjelmistolla

This work is licensed under a Creative Commons Attribution-ShareAlike 40International License

Taumlmauml teos on lisensoitu Creative Commons Nimeauml-JaaSamoin 40 Kansainvaumllinen-lisenssillauml

Matemaattis-luonnontieteellinen Matematiikan ja tilastotieteen laitos

Aaro Salosensaari

Mallinnettu jaumlaumlhdytys ja ympyraumlkiekkojen etsiminen kuvasta

Matematiikka

Kandidaatintutkielma Maaliskuu 2016 51 s

Mallinnettu jaumlaumlhdytys MetropolisndashHastings-algoritmi optimointi kuvankaumlsittely MCMC

Kumpulan tiedekirjasto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen optimoinnin me-netelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys (engl simulated annealing) ja sen soveltamista yksinker-taiseen digitaalisen kuvankaumlsittelyn ja konenaumloumln ongelmaan Kuvaongelman muotoilun yhteydessaumlesitellaumlaumln myoumls digitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys on probabilistinen optimointialgoritmi globaalien (tavallisesti diskreet-tien) optimointiongelmien ratkaisemiseksi Jaumlaumlhdytysmenetelmauml perustuu MetropolisndashHastings-algoritmin sovellukseen ja Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen MonteCarlo -menetelmauml jonka juuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettujaumlaumlhdytys on yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus on kykykiivetauml yloumls optimoitavan funktion paikallisista minimeistauml

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml kuvankaumlsittelyongelmaanjossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml k tummia ympyraumlkiekkoja sumentuneesta ja kohinai-sesta vaaleataustaisesta kuvasta Erilaisten objektien tunnistaminen kuvasta on perinteinen kone-naumloumln alan ongelma Myoumls sumeiden kuvien tarkentaminen on myoumls laajalti tutkittu kuvankaumlsittelynongelma ja tyypillinen esimerkki niin kutsutusta epaumltriviaalista inversio-ongelmasta

Tutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvista muodostetaanmalli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoordinaattien ja saumlteiden avulla jakiekkojen sumennosta mallinnetaan kuvamatriisin konvoluutio-operaatiolla Minimoitavaksi kohde-eli energiafunktioksi valitaan sopiva parametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaavafunktio E Minimointiin kaumlytetaumlaumln mallinnettua jaumlaumlhdytystauml Tuloksena havaitaan menetelmaumln loumly-taumlvaumln kiekkoja simuloidusta kuva-aineistosta melko luotettavasti Lisaumlksi havaitaan jaumlaumlhdytyksennopeuden vaikuttavan ratkaisujen laatuun ja muuta jaumlaumlhdytysalgoritmille tyypillistauml kaumlytoumlstauml

Tutkielman rakenne on johdantoluvun jaumllkeen seuraava Luvussa 2 lyhyesti todetaan joitain Mar-kovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallinnetun jaumlaumlhdytyksen algoritmi jasen teoreettisia perusteluja Luvussa 3 esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostamiseksi Luvussa 4kuvaillaan tarkemmin algoritmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongelmaanja luvussa 5 esitellaumlaumln tuloksia sovelletun algoritmin toiminnasta erilaisilla simuloiduilla aineistoil-la Viimeisessauml luvussa 6 tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

TiedekuntaOsasto mdash FakultetSektion mdash Faculty Laitos mdash Institution mdash Department

Tekijauml mdash Foumlrfattare mdash Author

Tyoumln nimi mdash Arbetets titel mdash Title

Oppiaine mdash Laumlroaumlmne mdash Subject

Tyoumln laji mdash Arbetets art mdash Level Aika mdash Datum mdash Month and year Sivumaumlaumlrauml mdash Sidoantal mdash Number of pages

Tiivistelmauml mdash Referat mdash Abstract

Avainsanat mdash Nyckelord mdash Keywords

Saumlilytyspaikka mdash Foumlrvaringsstaumllle mdash Where deposited

Muita tietoja mdash Oumlvriga uppgifter mdash Additional information

HELSINGIN YLIOPISTO mdash HELSINGFORS UNIVERSITET mdash UNIVERSITY OF HELSINKI

Sisaumlltouml

1 Johdanto 2

2 Mallinnettu jaumlaumlhdytys 521 Optimointi 522 Esitieto Markovin ketjut 623 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli 924 Algoritmin teoreettinen perustelu 11

3 Kiekko-ongelman kuvamalli 1731 Digitaalinen harmaasaumlvykuva 1732 Ongelmanasettelu ja kuvamalli 1833 Ympyraumlkiekot 1834 Konvoluutio 2035 Kohina 2336 Havaintomalli ja simuloidun aineiston malli 24

4 Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan 2741 Kiekko-ongelman muotoilu optimointiongelmana 2742 Energiafunktio 2843 Siirtymaumlt 3044 Jaumlaumlhdytysstrategia 33

5 Tulokset 3551 Testiaineisto 3552 Ratkaisun onnistumisen mittaaminen 3553 Algoritmin tulokset 37

6 Pohdinta ja johtopaumlaumltoumlkset 4661 Tulosten analyysi 4662 Yhteenveto ja pohdinta 48

Kirjallisuutta 50

1

Luku 1

Johdanto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen opti-moinnin menetelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys ja sen soveltamista digitaalisenkuvankaumlsittelyn ja keinonaumloumln ongelmaan ympyraumlkiekkojen etsimiseen sumeas-ta ja kohinaisesta kuvasta Kuvaongelman muotoilun yhteydessauml esitellaumlaumln myoumlsdigitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys (engl simulated annealing suomeksi myoumls jaumlaumlhdytysmene-telmauml tai simuloitu jaumlaumlhdytys [suomennokset ks HKR93] myoumlhemmin lyhyesti SA taiSA-algoritmi) on tunnettu probabilistinen optimointialgoritmi globaalin tavallisestidiskreetin tai kombinatorisen optimointitehtaumlvaumln ratkaisemiseksi (Kaumlytettaumlvaumlstaumlterminologiasta riippuen sitauml voidaan nimittaumlauml myoumls optimointiheurestiikaksi taimetaheurestiikaksi) Jaumlaumlhdytysalgoritmin esittelivaumlt Kirkpatrick et al 1983 artikkelis-sa [KGV83] MetropolisndashHastings-algoritmin sovelluksena erilaisiin kombinatorisiinoptimointiongelmiin kuten kuuluisaan kauppamatkustajan ongelmaan Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen Monte Carlo -menetelmauml jonkajuuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettu jaumlaumlhdytyson yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus onsen kyky kiivetauml yloumls energiafunktion paikallisten minimien rdquoenergiamaisemaanrdquoaiheuttamista kuopista [SSF02]

Sivuhuomiona mainittakoon ettauml SAlla on myoumls mielenkiintoisia ajankohtai-sia yhtymaumlkohtia kvanttilaskentaan Metodin laumlhisukulainen nk kvanttijaumlaumlhdytys(quantum annealing) perustuu siihen ettauml monia kombinatorisia optimointiongel-mia kuten verkon kahtiajako-ongelma voidaan esittaumlauml spin-lasien Ising-mallinmatalaenergisimpien tilojen etsintaumlnauml samaan tapaan kuin SA mallintaa termody-naamisen systeemin matalaenergisten tilojen loumlytaumlmistauml [LA87 luku 45 Joh+11]Kvanttijaumlaumlhdytysalgoritmi on vaumlitetysti tehokas optimointimenetelmauml jos kaumlytet-taumlvissauml on sopivasti konstruoitu Ising-spin-systeemiauml mallintava kvanttitietokonetai ainakin D-Wave Systems Inc esittaumlauml kykenevaumlnsauml huomattavaan laskentano-

2

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 2: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Ladottu LuaLATEX-ohjelmistolla

This work is licensed under a Creative Commons Attribution-ShareAlike 40International License

Taumlmauml teos on lisensoitu Creative Commons Nimeauml-JaaSamoin 40 Kansainvaumllinen-lisenssillauml

Matemaattis-luonnontieteellinen Matematiikan ja tilastotieteen laitos

Aaro Salosensaari

Mallinnettu jaumlaumlhdytys ja ympyraumlkiekkojen etsiminen kuvasta

Matematiikka

Kandidaatintutkielma Maaliskuu 2016 51 s

Mallinnettu jaumlaumlhdytys MetropolisndashHastings-algoritmi optimointi kuvankaumlsittely MCMC

Kumpulan tiedekirjasto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen optimoinnin me-netelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys (engl simulated annealing) ja sen soveltamista yksinker-taiseen digitaalisen kuvankaumlsittelyn ja konenaumloumln ongelmaan Kuvaongelman muotoilun yhteydessaumlesitellaumlaumln myoumls digitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys on probabilistinen optimointialgoritmi globaalien (tavallisesti diskreet-tien) optimointiongelmien ratkaisemiseksi Jaumlaumlhdytysmenetelmauml perustuu MetropolisndashHastings-algoritmin sovellukseen ja Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen MonteCarlo -menetelmauml jonka juuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettujaumlaumlhdytys on yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus on kykykiivetauml yloumls optimoitavan funktion paikallisista minimeistauml

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml kuvankaumlsittelyongelmaanjossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml k tummia ympyraumlkiekkoja sumentuneesta ja kohinai-sesta vaaleataustaisesta kuvasta Erilaisten objektien tunnistaminen kuvasta on perinteinen kone-naumloumln alan ongelma Myoumls sumeiden kuvien tarkentaminen on myoumls laajalti tutkittu kuvankaumlsittelynongelma ja tyypillinen esimerkki niin kutsutusta epaumltriviaalista inversio-ongelmasta

Tutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvista muodostetaanmalli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoordinaattien ja saumlteiden avulla jakiekkojen sumennosta mallinnetaan kuvamatriisin konvoluutio-operaatiolla Minimoitavaksi kohde-eli energiafunktioksi valitaan sopiva parametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaavafunktio E Minimointiin kaumlytetaumlaumln mallinnettua jaumlaumlhdytystauml Tuloksena havaitaan menetelmaumln loumly-taumlvaumln kiekkoja simuloidusta kuva-aineistosta melko luotettavasti Lisaumlksi havaitaan jaumlaumlhdytyksennopeuden vaikuttavan ratkaisujen laatuun ja muuta jaumlaumlhdytysalgoritmille tyypillistauml kaumlytoumlstauml

Tutkielman rakenne on johdantoluvun jaumllkeen seuraava Luvussa 2 lyhyesti todetaan joitain Mar-kovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallinnetun jaumlaumlhdytyksen algoritmi jasen teoreettisia perusteluja Luvussa 3 esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostamiseksi Luvussa 4kuvaillaan tarkemmin algoritmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongelmaanja luvussa 5 esitellaumlaumln tuloksia sovelletun algoritmin toiminnasta erilaisilla simuloiduilla aineistoil-la Viimeisessauml luvussa 6 tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

TiedekuntaOsasto mdash FakultetSektion mdash Faculty Laitos mdash Institution mdash Department

Tekijauml mdash Foumlrfattare mdash Author

Tyoumln nimi mdash Arbetets titel mdash Title

Oppiaine mdash Laumlroaumlmne mdash Subject

Tyoumln laji mdash Arbetets art mdash Level Aika mdash Datum mdash Month and year Sivumaumlaumlrauml mdash Sidoantal mdash Number of pages

Tiivistelmauml mdash Referat mdash Abstract

Avainsanat mdash Nyckelord mdash Keywords

Saumlilytyspaikka mdash Foumlrvaringsstaumllle mdash Where deposited

Muita tietoja mdash Oumlvriga uppgifter mdash Additional information

HELSINGIN YLIOPISTO mdash HELSINGFORS UNIVERSITET mdash UNIVERSITY OF HELSINKI

Sisaumlltouml

1 Johdanto 2

2 Mallinnettu jaumlaumlhdytys 521 Optimointi 522 Esitieto Markovin ketjut 623 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli 924 Algoritmin teoreettinen perustelu 11

3 Kiekko-ongelman kuvamalli 1731 Digitaalinen harmaasaumlvykuva 1732 Ongelmanasettelu ja kuvamalli 1833 Ympyraumlkiekot 1834 Konvoluutio 2035 Kohina 2336 Havaintomalli ja simuloidun aineiston malli 24

4 Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan 2741 Kiekko-ongelman muotoilu optimointiongelmana 2742 Energiafunktio 2843 Siirtymaumlt 3044 Jaumlaumlhdytysstrategia 33

5 Tulokset 3551 Testiaineisto 3552 Ratkaisun onnistumisen mittaaminen 3553 Algoritmin tulokset 37

6 Pohdinta ja johtopaumlaumltoumlkset 4661 Tulosten analyysi 4662 Yhteenveto ja pohdinta 48

Kirjallisuutta 50

1

Luku 1

Johdanto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen opti-moinnin menetelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys ja sen soveltamista digitaalisenkuvankaumlsittelyn ja keinonaumloumln ongelmaan ympyraumlkiekkojen etsimiseen sumeas-ta ja kohinaisesta kuvasta Kuvaongelman muotoilun yhteydessauml esitellaumlaumln myoumlsdigitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys (engl simulated annealing suomeksi myoumls jaumlaumlhdytysmene-telmauml tai simuloitu jaumlaumlhdytys [suomennokset ks HKR93] myoumlhemmin lyhyesti SA taiSA-algoritmi) on tunnettu probabilistinen optimointialgoritmi globaalin tavallisestidiskreetin tai kombinatorisen optimointitehtaumlvaumln ratkaisemiseksi (Kaumlytettaumlvaumlstaumlterminologiasta riippuen sitauml voidaan nimittaumlauml myoumls optimointiheurestiikaksi taimetaheurestiikaksi) Jaumlaumlhdytysalgoritmin esittelivaumlt Kirkpatrick et al 1983 artikkelis-sa [KGV83] MetropolisndashHastings-algoritmin sovelluksena erilaisiin kombinatorisiinoptimointiongelmiin kuten kuuluisaan kauppamatkustajan ongelmaan Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen Monte Carlo -menetelmauml jonkajuuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettu jaumlaumlhdytyson yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus onsen kyky kiivetauml yloumls energiafunktion paikallisten minimien rdquoenergiamaisemaanrdquoaiheuttamista kuopista [SSF02]

Sivuhuomiona mainittakoon ettauml SAlla on myoumls mielenkiintoisia ajankohtai-sia yhtymaumlkohtia kvanttilaskentaan Metodin laumlhisukulainen nk kvanttijaumlaumlhdytys(quantum annealing) perustuu siihen ettauml monia kombinatorisia optimointiongel-mia kuten verkon kahtiajako-ongelma voidaan esittaumlauml spin-lasien Ising-mallinmatalaenergisimpien tilojen etsintaumlnauml samaan tapaan kuin SA mallintaa termody-naamisen systeemin matalaenergisten tilojen loumlytaumlmistauml [LA87 luku 45 Joh+11]Kvanttijaumlaumlhdytysalgoritmi on vaumlitetysti tehokas optimointimenetelmauml jos kaumlytet-taumlvissauml on sopivasti konstruoitu Ising-spin-systeemiauml mallintava kvanttitietokonetai ainakin D-Wave Systems Inc esittaumlauml kykenevaumlnsauml huomattavaan laskentano-

2

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 3: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Matemaattis-luonnontieteellinen Matematiikan ja tilastotieteen laitos

Aaro Salosensaari

Mallinnettu jaumlaumlhdytys ja ympyraumlkiekkojen etsiminen kuvasta

Matematiikka

Kandidaatintutkielma Maaliskuu 2016 51 s

Mallinnettu jaumlaumlhdytys MetropolisndashHastings-algoritmi optimointi kuvankaumlsittely MCMC

Kumpulan tiedekirjasto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen optimoinnin me-netelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys (engl simulated annealing) ja sen soveltamista yksinker-taiseen digitaalisen kuvankaumlsittelyn ja konenaumloumln ongelmaan Kuvaongelman muotoilun yhteydessaumlesitellaumlaumln myoumls digitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys on probabilistinen optimointialgoritmi globaalien (tavallisesti diskreet-tien) optimointiongelmien ratkaisemiseksi Jaumlaumlhdytysmenetelmauml perustuu MetropolisndashHastings-algoritmin sovellukseen ja Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen MonteCarlo -menetelmauml jonka juuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettujaumlaumlhdytys on yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus on kykykiivetauml yloumls optimoitavan funktion paikallisista minimeistauml

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml kuvankaumlsittelyongelmaanjossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml k tummia ympyraumlkiekkoja sumentuneesta ja kohinai-sesta vaaleataustaisesta kuvasta Erilaisten objektien tunnistaminen kuvasta on perinteinen kone-naumloumln alan ongelma Myoumls sumeiden kuvien tarkentaminen on myoumls laajalti tutkittu kuvankaumlsittelynongelma ja tyypillinen esimerkki niin kutsutusta epaumltriviaalista inversio-ongelmasta

Tutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvista muodostetaanmalli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoordinaattien ja saumlteiden avulla jakiekkojen sumennosta mallinnetaan kuvamatriisin konvoluutio-operaatiolla Minimoitavaksi kohde-eli energiafunktioksi valitaan sopiva parametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaavafunktio E Minimointiin kaumlytetaumlaumln mallinnettua jaumlaumlhdytystauml Tuloksena havaitaan menetelmaumln loumly-taumlvaumln kiekkoja simuloidusta kuva-aineistosta melko luotettavasti Lisaumlksi havaitaan jaumlaumlhdytyksennopeuden vaikuttavan ratkaisujen laatuun ja muuta jaumlaumlhdytysalgoritmille tyypillistauml kaumlytoumlstauml

Tutkielman rakenne on johdantoluvun jaumllkeen seuraava Luvussa 2 lyhyesti todetaan joitain Mar-kovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallinnetun jaumlaumlhdytyksen algoritmi jasen teoreettisia perusteluja Luvussa 3 esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostamiseksi Luvussa 4kuvaillaan tarkemmin algoritmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongelmaanja luvussa 5 esitellaumlaumln tuloksia sovelletun algoritmin toiminnasta erilaisilla simuloiduilla aineistoil-la Viimeisessauml luvussa 6 tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

TiedekuntaOsasto mdash FakultetSektion mdash Faculty Laitos mdash Institution mdash Department

Tekijauml mdash Foumlrfattare mdash Author

Tyoumln nimi mdash Arbetets titel mdash Title

Oppiaine mdash Laumlroaumlmne mdash Subject

Tyoumln laji mdash Arbetets art mdash Level Aika mdash Datum mdash Month and year Sivumaumlaumlrauml mdash Sidoantal mdash Number of pages

Tiivistelmauml mdash Referat mdash Abstract

Avainsanat mdash Nyckelord mdash Keywords

Saumlilytyspaikka mdash Foumlrvaringsstaumllle mdash Where deposited

Muita tietoja mdash Oumlvriga uppgifter mdash Additional information

HELSINGIN YLIOPISTO mdash HELSINGFORS UNIVERSITET mdash UNIVERSITY OF HELSINKI

Sisaumlltouml

1 Johdanto 2

2 Mallinnettu jaumlaumlhdytys 521 Optimointi 522 Esitieto Markovin ketjut 623 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli 924 Algoritmin teoreettinen perustelu 11

3 Kiekko-ongelman kuvamalli 1731 Digitaalinen harmaasaumlvykuva 1732 Ongelmanasettelu ja kuvamalli 1833 Ympyraumlkiekot 1834 Konvoluutio 2035 Kohina 2336 Havaintomalli ja simuloidun aineiston malli 24

4 Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan 2741 Kiekko-ongelman muotoilu optimointiongelmana 2742 Energiafunktio 2843 Siirtymaumlt 3044 Jaumlaumlhdytysstrategia 33

5 Tulokset 3551 Testiaineisto 3552 Ratkaisun onnistumisen mittaaminen 3553 Algoritmin tulokset 37

6 Pohdinta ja johtopaumlaumltoumlkset 4661 Tulosten analyysi 4662 Yhteenveto ja pohdinta 48

Kirjallisuutta 50

1

Luku 1

Johdanto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen opti-moinnin menetelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys ja sen soveltamista digitaalisenkuvankaumlsittelyn ja keinonaumloumln ongelmaan ympyraumlkiekkojen etsimiseen sumeas-ta ja kohinaisesta kuvasta Kuvaongelman muotoilun yhteydessauml esitellaumlaumln myoumlsdigitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys (engl simulated annealing suomeksi myoumls jaumlaumlhdytysmene-telmauml tai simuloitu jaumlaumlhdytys [suomennokset ks HKR93] myoumlhemmin lyhyesti SA taiSA-algoritmi) on tunnettu probabilistinen optimointialgoritmi globaalin tavallisestidiskreetin tai kombinatorisen optimointitehtaumlvaumln ratkaisemiseksi (Kaumlytettaumlvaumlstaumlterminologiasta riippuen sitauml voidaan nimittaumlauml myoumls optimointiheurestiikaksi taimetaheurestiikaksi) Jaumlaumlhdytysalgoritmin esittelivaumlt Kirkpatrick et al 1983 artikkelis-sa [KGV83] MetropolisndashHastings-algoritmin sovelluksena erilaisiin kombinatorisiinoptimointiongelmiin kuten kuuluisaan kauppamatkustajan ongelmaan Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen Monte Carlo -menetelmauml jonkajuuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettu jaumlaumlhdytyson yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus onsen kyky kiivetauml yloumls energiafunktion paikallisten minimien rdquoenergiamaisemaanrdquoaiheuttamista kuopista [SSF02]

Sivuhuomiona mainittakoon ettauml SAlla on myoumls mielenkiintoisia ajankohtai-sia yhtymaumlkohtia kvanttilaskentaan Metodin laumlhisukulainen nk kvanttijaumlaumlhdytys(quantum annealing) perustuu siihen ettauml monia kombinatorisia optimointiongel-mia kuten verkon kahtiajako-ongelma voidaan esittaumlauml spin-lasien Ising-mallinmatalaenergisimpien tilojen etsintaumlnauml samaan tapaan kuin SA mallintaa termody-naamisen systeemin matalaenergisten tilojen loumlytaumlmistauml [LA87 luku 45 Joh+11]Kvanttijaumlaumlhdytysalgoritmi on vaumlitetysti tehokas optimointimenetelmauml jos kaumlytet-taumlvissauml on sopivasti konstruoitu Ising-spin-systeemiauml mallintava kvanttitietokonetai ainakin D-Wave Systems Inc esittaumlauml kykenevaumlnsauml huomattavaan laskentano-

2

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 4: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Sisaumlltouml

1 Johdanto 2

2 Mallinnettu jaumlaumlhdytys 521 Optimointi 522 Esitieto Markovin ketjut 623 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli 924 Algoritmin teoreettinen perustelu 11

3 Kiekko-ongelman kuvamalli 1731 Digitaalinen harmaasaumlvykuva 1732 Ongelmanasettelu ja kuvamalli 1833 Ympyraumlkiekot 1834 Konvoluutio 2035 Kohina 2336 Havaintomalli ja simuloidun aineiston malli 24

4 Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan 2741 Kiekko-ongelman muotoilu optimointiongelmana 2742 Energiafunktio 2843 Siirtymaumlt 3044 Jaumlaumlhdytysstrategia 33

5 Tulokset 3551 Testiaineisto 3552 Ratkaisun onnistumisen mittaaminen 3553 Algoritmin tulokset 37

6 Pohdinta ja johtopaumlaumltoumlkset 4661 Tulosten analyysi 4662 Yhteenveto ja pohdinta 48

Kirjallisuutta 50

1

Luku 1

Johdanto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen opti-moinnin menetelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys ja sen soveltamista digitaalisenkuvankaumlsittelyn ja keinonaumloumln ongelmaan ympyraumlkiekkojen etsimiseen sumeas-ta ja kohinaisesta kuvasta Kuvaongelman muotoilun yhteydessauml esitellaumlaumln myoumlsdigitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys (engl simulated annealing suomeksi myoumls jaumlaumlhdytysmene-telmauml tai simuloitu jaumlaumlhdytys [suomennokset ks HKR93] myoumlhemmin lyhyesti SA taiSA-algoritmi) on tunnettu probabilistinen optimointialgoritmi globaalin tavallisestidiskreetin tai kombinatorisen optimointitehtaumlvaumln ratkaisemiseksi (Kaumlytettaumlvaumlstaumlterminologiasta riippuen sitauml voidaan nimittaumlauml myoumls optimointiheurestiikaksi taimetaheurestiikaksi) Jaumlaumlhdytysalgoritmin esittelivaumlt Kirkpatrick et al 1983 artikkelis-sa [KGV83] MetropolisndashHastings-algoritmin sovelluksena erilaisiin kombinatorisiinoptimointiongelmiin kuten kuuluisaan kauppamatkustajan ongelmaan Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen Monte Carlo -menetelmauml jonkajuuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettu jaumlaumlhdytyson yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus onsen kyky kiivetauml yloumls energiafunktion paikallisten minimien rdquoenergiamaisemaanrdquoaiheuttamista kuopista [SSF02]

Sivuhuomiona mainittakoon ettauml SAlla on myoumls mielenkiintoisia ajankohtai-sia yhtymaumlkohtia kvanttilaskentaan Metodin laumlhisukulainen nk kvanttijaumlaumlhdytys(quantum annealing) perustuu siihen ettauml monia kombinatorisia optimointiongel-mia kuten verkon kahtiajako-ongelma voidaan esittaumlauml spin-lasien Ising-mallinmatalaenergisimpien tilojen etsintaumlnauml samaan tapaan kuin SA mallintaa termody-naamisen systeemin matalaenergisten tilojen loumlytaumlmistauml [LA87 luku 45 Joh+11]Kvanttijaumlaumlhdytysalgoritmi on vaumlitetysti tehokas optimointimenetelmauml jos kaumlytet-taumlvissauml on sopivasti konstruoitu Ising-spin-systeemiauml mallintava kvanttitietokonetai ainakin D-Wave Systems Inc esittaumlauml kykenevaumlnsauml huomattavaan laskentano-

2

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 5: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 1

Johdanto

Taumlmauml soveltavan matematiikan kandidaatintutkielma kaumlsittelee matemaattisen opti-moinnin menetelmaumlauml nimeltauml mallinnettu jaumlaumlhdytys ja sen soveltamista digitaalisenkuvankaumlsittelyn ja keinonaumloumln ongelmaan ympyraumlkiekkojen etsimiseen sumeas-ta ja kohinaisesta kuvasta Kuvaongelman muotoilun yhteydessauml esitellaumlaumln myoumlsdigitaalisen kuvankaumlsittelyn perusteita

Mallinnettu jaumlaumlhdytys (engl simulated annealing suomeksi myoumls jaumlaumlhdytysmene-telmauml tai simuloitu jaumlaumlhdytys [suomennokset ks HKR93] myoumlhemmin lyhyesti SA taiSA-algoritmi) on tunnettu probabilistinen optimointialgoritmi globaalin tavallisestidiskreetin tai kombinatorisen optimointitehtaumlvaumln ratkaisemiseksi (Kaumlytettaumlvaumlstaumlterminologiasta riippuen sitauml voidaan nimittaumlauml myoumls optimointiheurestiikaksi taimetaheurestiikaksi) Jaumlaumlhdytysalgoritmin esittelivaumlt Kirkpatrick et al 1983 artikkelis-sa [KGV83] MetropolisndashHastings-algoritmin sovelluksena erilaisiin kombinatorisiinoptimointiongelmiin kuten kuuluisaan kauppamatkustajan ongelmaan Metropolis-algoritmi vuorostaan on klassinen Markovin ketjujen Monte Carlo -menetelmauml jonkajuuret ovat jaumlaumlhtyvaumln fysikaalisen systeemin simuloinnissa Mallinnettu jaumlaumlhdytyson yksinkertainen ja monikaumlyttoumlinen heurestiikka jonka hyoumldyllinen ominaisuus onsen kyky kiivetauml yloumls energiafunktion paikallisten minimien rdquoenergiamaisemaanrdquoaiheuttamista kuopista [SSF02]

Sivuhuomiona mainittakoon ettauml SAlla on myoumls mielenkiintoisia ajankohtai-sia yhtymaumlkohtia kvanttilaskentaan Metodin laumlhisukulainen nk kvanttijaumlaumlhdytys(quantum annealing) perustuu siihen ettauml monia kombinatorisia optimointiongel-mia kuten verkon kahtiajako-ongelma voidaan esittaumlauml spin-lasien Ising-mallinmatalaenergisimpien tilojen etsintaumlnauml samaan tapaan kuin SA mallintaa termody-naamisen systeemin matalaenergisten tilojen loumlytaumlmistauml [LA87 luku 45 Joh+11]Kvanttijaumlaumlhdytysalgoritmi on vaumlitetysti tehokas optimointimenetelmauml jos kaumlytet-taumlvissauml on sopivasti konstruoitu Ising-spin-systeemiauml mallintava kvanttitietokonetai ainakin D-Wave Systems Inc esittaumlauml kykenevaumlnsauml huomattavaan laskentano-

2

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 6: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

peuden parannukseen taumlllaisella laitteella [Joh+11 Den+15] mutta nopeushypynmerkittaumlvyydestauml ei ole selvyyttauml [ZBT15]

Tutkielmassa mallinnettuun jaumlaumlhdytykseen tutustutaan soveltamalla sitauml yksin-kertaiseen kuvankaumlsittelyongelmaan jossa tehtaumlvaumlnauml on tunnistaa tunnettu maumlaumlrauml 119896tummia ympyraumlkiekkoja sumentuneesta ja kohinaisesta vaaleataustaisesta kuvastaTutkittavaa kuvaongelmaa laumlhestytaumlaumln optimointiongelmana Tutkittavista kuvistamuodostetaan malli jossa kuvan ympyraumlkiekot parametrisoidaan niiden sijantikoor-dinaattien ja saumlteiden avulla ja kiekkojen sumennosta mallinnetaan kuvamatriisinkonvoluutio-operaatiolla Minimoitavaksi kohde- eli energiafunktioksi valitaan sopivaparametrisoitujen kiekkojen etaumlisyyttauml kuvadatasta mittaava funktio 119864 Energiafunk-tiota minimoimalla voidaan etsiauml parametrit jotka maumlaumlraumlaumlvaumlt kuvadataan parhaitensopivat kiekot

Tutkielman paumlaumlpainopiste on mallinnetussa jaumlaumlhdytyksessauml ja sen kaumlyttaumlyty-misen tutkimisessa kuvatussa esimerkkiongelmassa Esitetty ympyraumlongelma javalittu kuvamalli on reaalimaailman sovelluksia ajatellen varsin rajoitettu sillauml kaumly-taumlnnoumln kuvankaumlsittelysovelluksissa vastaavat ongelmat ovat usein monella tapaavaikeampia haumlirioumllaumlhteitauml on enemmaumln ja kuvan kohteista ei aina voi muodostaayhtauml yksinkertaista mallia

Ympyraumlobjektien tunnistaminen kuvasta on perinteinen konenaumloumln alan ongel-ma jota voitaisiin laumlhestyauml myoumls monella muulla tapaa Esimerkiksi kappaleidenerottelua voitaisiin helpottaa esimerkiksi esikaumlsittelemaumlllauml kuvaa soveltamalla ta-vallisia kohinanpoistomenetelmiauml tai segmentointia Jos sumennoksen maumlaumlrauml onpieni vaihtoehtoisesti kunkin alkuperaumlisen kiekon keskipisteen ja saumlteen arviointionnistuisi niin esikaumlsitellystauml kuvasta jollain Houghin ympyraumlmuunnokseen (CircleHough Transform) perustuvalla menetelmaumlllauml [ks esim Lea92] joille on monissasuosituissa kuvankaumlsittelyn kirjastoissa (esim OpenCV Matlab Image ProcessingToolbox) valmiit toteutukset

Mikaumlli kuvadata on huomattavan sumeaa alkuperaumlisen sumentumattoman ku-van pinta-alan arvioiminen luotettavasti voi olla vaikeaa Ylipaumlaumltaumlaumln sumeiden ku-vien tarkentaminen (deblurring) on myoumls laajalti tutkittu kuvankaumlsittelyn ongelma jatyypillinen esimerkki epaumltriviaalista inversio-ongelmasta [MS12] Sumennosta useinmallinnetaan konvoluutio-operaationa jonka dekonvoluutioon voidaan kaumlyttaumlauml (riip-puen kuinka hyvin konvoluution pistehajontafunktio tunnetaan) esimerkiksi regu-larisointi- [MS12] Wiener-suodatin- tai tilastollisia (Bayes) menetelmiauml [CVR14]Taumlssauml tutkielmassa sumentuneen kuvadatan ongelmaa laumlhestytaumlaumln naiivisti olet-tamalla ettauml kaumlytoumlssauml on a priori -informaatiota (tai muuten hyvauml arvaus) kuvaasumentaneesta prosessista mitauml hyoumldynnetaumlaumln optimointimallissa (Vastakohtai-sesti vaikeammassa nk sokeassa dekonvoluutiossa taumlllaisia oletuksia ei tehdauml [ksesim CVR14])

3

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 7: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Tutkielman kokeellisen osuuden numeeriseen laskentaan kaumlytettiin Matlab-ohjelmistoa [Matlab14] ja tulosten analysointiin sekauml kuvaajien tuottamiseen myoumlsSciPy-ohjelmistoa [J+01] ja sen Matplotlib-pakettia [Hun07]

Tutkielman rakenne on seuraava Luvussa 2 rdquoMallinnettu jaumlaumlhdytysrdquo lyhyestitodetaan joitain Markovin ketjuja koskevia esitietoja jonka jaumllkeen esitetaumlaumln mallin-netun jaumlaumlhdytyksen algoritmi ja sen teoreettisia perusteluja Luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esitetaumlaumln kiekko-ongelman matemaattinen malli ja hiemantarvittavaa kuvankaumlsittelyn teoriaa sekauml malli simuloidun aineiston muodostami-seksi Luvussa 4 rdquoJaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaanrdquo kuvaillaanalgoritmin tarkemmin soveltamista optimointitehtaumlvaumlnauml muotoiltuun kuvaongel-maan ja luvussa 5 rdquoTuloksetrdquo esitellaumlaumln tuloksia sovelletun algoritmin toiminnastaerilaisilla simuloiduilla aineistoilla Viimeisessauml luvussa 6 rdquoPohdinta ja johtopaumlauml-toumlksetrdquo tarkastellaan tuloksia ja algoritmin toimintaa sekauml esitetaumlaumln yhteenvetotutkielman tuloksista

4

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 8: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 2

Mallinnettu jaumlaumlhdytys

21 Optimointi

Yleisesti matemaattisissa optimointiongelmissa (eli optimointitehtaumlvaumlssauml) tavoittee-na on loumlytaumlauml annetun ongelman jossain mielessauml paras ratkaisu tietystauml mahdollistenratkaisujen joukosta Ratkaisuehdokkaan hyvyyttauml kuvaa ratkaisuehdokkaiden ava-ruudessa Ω maumlaumlritelty reaaliarvoinen funktio 119864 (hintafunktio kohdefunktio) jaoptimointiongelman ratkaisu on avaruuden piste jossa 119864 saavuttaa minimin On-gelmasta riippuen halutaan loumlytaumlauml paikallinen (lokaali) tai globaali minimipiste(Tehtaumlvaumlnauml voi olla myoumls funktion maksimointi mutta koska funktion 119864 maksi-mointitehtaumlvauml voidaan aina esittaumlauml funktion minus119864 minimointiongelmana voidaanoptimointiongelma maumlaumlritellauml minimoinnin kautta)

Maumlaumlritelmauml 21 (Globaali diskreetti optimointiongelma) Olkoon optimointiongel-man mahdollisten ratkaisujen 119904 avaruus Ω Jaumlaumlhdytysmenetelmaumln yhteydessauml rat-kaisumahdollisuuksia 119904 kutsutaan tiloiksi Diskreetissauml optimointiongelmassa tila-avaruus Ω on diskreetti

Energiafunktio 119864 (myoumls kohde- tai hintafunktio engl objective function costfunction) on kuvaus tila-avaruudelta reaaliluvuille

(21) 119864 ∶ Ω rarr ℝ

Globaalin optimointiongelman ratkaisu on tila 119904opt jossa 119864 saavuttaa globaalinminimin

(22) 119864(119904opt) = min119904isinΩ

119864(119904)

Merkintauml Koska tila-avaruus Ω on diskreetti ja useimmissa sovelluksissa (erityisestitaumlssauml tutkielmassa) kuten kombinatorisissa optimointitehtaumlvissauml lisaumlksi aumlaumlrellinen(tai korkeintaan numeroituva) tiloja voidaan mielekkaumlaumlsti merkitauml indeksoidulla

5

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 9: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

merkinnaumlllauml 119904119894 isin Ω missauml 119894 isin 1 hellip |Ω| Taumlssauml tutkielmassa ratkaisuavaruus onaumlaumlrellinen Jos sekaannuksen varaa ei ole tarvittaessa samastamme kunkin tilanindeksinsauml kanssa ja merkitsemme lyhyesti 119904119894n sijasta 119894

Numeerisessa optimointiongelmassa funktion 119864 arvon laskeminen kussakinpisteessauml voi olla laskennallisesti kallis operaatio ja hakuavaruus Ω suuri jotenkaikkien alkioiden 119904119894 iteroiminen on useimmiten liian hidasta Konveksin funktionminimin tai yleisesti paikallisen minimin

(23) 119904lok opt = min119904

119864(119904) missauml |119904 minus 119904lok opt| lt 120575 jollain 120575 gt 0

loumlytaumlminen on helppoa erilaisilla differentiaalilaskentaan pohjautuvilla menetel-millauml (esimerksi kvasi-Newton- konjugaattigradientti- tai jyrkimmaumln pudotuksenmenetelmaumlt) Sen sijaan ei-konveksien funktioiden optimoinnissa haasteena onvaumllttaumlauml juuttuminen paikallisiin minimialueisiin mihin tyypillinen vastaus on hyouml-dyntaumlauml algoritmissa satunnaisuutta Toisaalta haasteena on myoumls samalla hyoumldyntaumlaumlongelman rakennetta globaalin minimin loumlytaumlmiseen paremmin kuin esimerkiksiyksinkertaisessa kattavassa satunnaishaussa Erilaiset probabilistiset ja satunnai-suuteen perustuvat (meta-)heurestiikat (kuten geneettiset algoritmit tai tabu-haku[ks esim GK03]) ja Monte Carlo -menetelmaumlt (mm importance sampling) ovat osoit-tautuneet toimiviksi taumlmaumlnkaltaisissa ongelmissa Yksi taumlllaisista heurestiikoista ontaumlssauml tutkielmassa kaumlsiteltaumlvauml jaumlaumlhdytysalgoritmi [SSF02]

22 Esitieto Markovin ketjut

Ennen jaumlaumlhdytysalgoritmin tarkempaa kuvausta kaumlydaumlaumln laumlpi joitain perusteitaMarkovin ketjuista 1

Diskreetti Markovin ketju on stokastinen prosessi jossa prosessin kukin tilariippuu vain edellisestauml tilasta Olettaen ettauml ketjun tila nykyhetkellauml tunnetaanseuraava (tuleva) tila on ehdollisesti riippumaton menneistauml tiloista Taumltauml kutsutaanketjun Markov-ominaisuudeksi tai unohtuvaisuusominaisuudeksi

Maumlaumlritelmauml 22 Stokastinen prosessi (satunnaisprosessi) on jono ajanhetkien 119896 isin ℕmukaan jaumlrjestettyjauml satunnaismuuttujia (satunnaisvektoreita) 119831(119896) joltain todennauml-koumlisyysavaruudelta tilajoukkoon Ω Merkitaumlaumln

(24) 119831(119896) = ketjun 119896 toteutunut tila

Todennaumlkoumlisyys ettauml satunnaisprosessin tila 119896 hetkellauml on 119894 on siis naumlillauml merkinnoumlillaumlPr119831(119896) = 119894 Taumlssauml yhteydessauml prosessi on jaumlaumlhdytysalgoritmi jonka tila-avaruus on

1Merkinnaumlt [LA87] tapaan

6

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 10: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

optimointiongelman (korkeintaan numeroituva) tila-avaruus Ω

Markovin ketju voidaan nyt maumlaumlritellauml formaalisti ehdollisen riippumattomuu-den avulla

Maumlaumlritelmauml 23 Markovin ketju on satunnaisprosessi 119831(1) 119831(2) 119831(3) hellip joilla paumltee

(25) Pr 983560119831(119896 + 1) = 119894 ∣ 119831(1) = 1198951 119831(2) = 1198952 hellip119831(119896) = 119895119896983563 = Pr983560119831(119896+1) = 119894 ∣ 119831(119896) = 119895119896983563

kaikille tiloille 119894 1198951 hellip 119895119896

Markov-ketjun maumlaumlraumlaumlvaumlt siis ehdolliset todennaumlkoumlisyydet Pr119831(119896 + 1) = 119894 ∣119831(119896) = 119895 jotka kertovat todennaumlkoumlisyyden sille ettauml 119896 + 1 siirtymaumln jaumllkeen ollaantilassa 119894 olettaen ettauml 119896 askeleen tila oli 119895 Riippumattomuus tarkoittaa ettauml 119896taedeltaumlvaumlt tilat eivaumlt vaikuta todennaumlkoumlisyyteen 119831(119896 + 1) = 119894

SA-algoritmin maumlaumlrittelyauml varten tarvitaan Markovin ketjuja joilla on tiettyjaumlominaisuuksia

Maumlaumlritelmauml 24 Homogeeni Markovin ketju eli aikahomogeeni Markovin ketju onMarkovin ketju jossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina kaikilla 119896

Termillauml rsquoaikahomogeenirsquo korostetaan ettauml kyseessauml on dynaaminen prosessijossa siirtymaumltodennaumlkoumlisyydet pysyvaumlt samoina ajan suhteen

Homogeenissa Markovin ketjussa siirtymaumlt maumlaumlraumlauml jokaisella askeleella 119896 samasiirtymaumlmatriisi 119872

(26) 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895

Maumlaumlritelmauml 25 Ergodisessa2 Markovin ketjussa mikauml tahansa tila on saavutettavissamistauml tahansa muusta ketjun tilasta jollain siirtymien sarjalla eli kaikilla 119894 119895 onaumlaumlrellinen 119899 isin ℕ jolla

(27) Pr119831(119899) = 119894 ∣ 119831(0) = 119895 gt 0

Sanotaan ettauml kaikki tilat kommunikoivat

Maumlaumlritelmauml 26 Periodisessa Markovin ketjussa jokin tila 119894 toistuu 119901 siirtymaumln jak-soissa jollain 119901 isin ℕ eli on olemassa jakso

(28) 119901 = syt119896 ∶ Pr119831(119896) = 119894 ∣ 119831(0) = 119894 gt 0 gt 1

missauml syt on suurin yhteinen tekijauml2Kaumlytaumlmme teoksen [SSF02] terminologiaa joissain muissa maumlaumlritelmissauml ergodisuuteen vaaditaan

hieman vahvempia oletuksia ja taumlssauml kuvailtua ominaisuutta kutsutaan pelkistymaumlttoumlmyydeksi (englirreducibility)

7

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 11: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Maumlaumlritelmauml 27 Aperiodiseksi sanotaan Markovin ketjua jossa 119901 = 1 kaikilla tiloilla 119894eli yhtaumlpitaumlvaumlsti ketjua jossa kaikilla tiloilla 119894 on sellainen 119896 isin ℕ niin ettauml kaikilla119896prime ge 119896 todennaumlkoumlisyys

(29) Pr119831(119896prime) = 119894 ∣ 119831(0) = 119894 gt 0

Lause 21 Mikaumlli homogeenilla ergodisella Markovin ketjulla on olemassa tila 119894 jolla 119872119894119894 gt0 ketju on aperiodinen

Todistus Maumlaumlritelmaumln mukaan

(210) 119872119894119894 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119894 gt 0 kaikilla 119896

eli tila 119894 on aperiodinen Koska oletuksen mukaan kaikki ketjun tilat kommunikoivatkaikki muut tilat 119895 ne 119894 ovat saavutettavissa tilasta 119894 ja paumlinvastoin aumlaumlrellisessauml ajassaeli joillain 1198991 1198992 paumltee

(211) Pr119831(119896 + 1198991 + 1198992) = 119895 ∣ 119831(119896 + 1198991) = 119894 119831(119896) = 119895 gt 0

Koska 119872119894119894 gt 0 tilan 119895 todennaumlkoumlisyys on positiivinen myoumls tapahtumille 119831(119896 + 1198991 +1198992 + 1) 119831(119896 + 1198991 + 1198992 + 2) hellip eikauml siis tilalla 119895 voi olla periodia

Maumlaumlritelmauml 28 Aikahomogeenisen Markovin ketjun stationaarinen jakauma 120645 onvektori jolle paumltee

0 le 120645(119894) le 1(212)

983466119894120645(119894) = 1 ja(213)

120645(119894) = 983466119895120645(119895)119872119894119895 = 983466

119895120645(119895) Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895(214)

Seuraavat perustavanlaatuiset ([LA87 SSF02]) Markovin ketjuja koskevat lauseetoletetaan tunnetuiksi

Lause 22 Aikahomogeenisella Markovin ketjulla on stationaarinen jakauma (tasapainoja-kauma) jos ja vain jos ketju on aperiodinen ja ergodinen

Lause 23 Jos (homogeenilla) Markovin ketjulla on stationaarinen jakauma 120645 jokainenMarkovin ketju konvergoi sitauml kohti kun ketjun pituus kasvaa rajatta eli

(215) 120645(119894) = lim119899rarrinfin

Pr119831(119899) = 119894 ∣ 119831(0) = 119895 kaikilla j

8

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 12: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

23 Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli

Kuvaillaan seuraavaksi ensin jaumlaumlhdytysalgoritmin toimintaidea (jaksot 231 232)ja sitten tarkempi matemaattinen malli Markovin ketjuina (jakso 233)

231 Jaumlaumlhdytysalgoritmin idea

Jaumlaumlhdystysalgoritmin toiminta perustuu termodynaamiseen analogiaan kiinteidenmetallikappaleiden jaumlaumlhdyttaumlmiseen tietynlaisessa metallurgian laumlmpoumlkaumlsittelyme-netelmaumlssauml (menetelmaumln engl nimitys annealing) Menetelmaumlssauml metallikappalekuumennetaan niin korkeaan laumlmpoumltilaan ettauml aineen partikkelit alkavat liikkuavapaasti ja niiden keskinaumlinen jaumlrjestys on satunnainen Taumlmaumln jaumllkeen kappaleenannetaan hitaasti jaumlaumlhtyauml erityisen hitaasti jaumlaumltymispisteen laumlhellauml Naumlin jaumlaumlhdytettauml-vauml aine kristalloituu matalaenergisimpaumlaumln perustilaansa ja partikkelit muodostavatsaumlaumlnnoumlllisen virheettoumlmaumln rakenteen [KGV83 LA87] Optimointiongelman kohde-funktion arvot samastetaan jaumlaumlhdytettaumlvaumln kappaleen muodostaman fysikaalisensysteemin energiatiloihin Algoritmissa systeemin kuhunkin laumlmpoumltilaansa liitty-vaumln tasapainotilan (engl thermal equilibrium) laumlhestymistauml simuloidaan MetropolisndashHastings-algoritmilla [KGV83 SSF02]

232 Algoritmin kuvaus Metropolis-kriteeri

Oletetaan ettauml olemme maumlaumlritelleet jonkin tavoite- eli energiafunktion 119864 Maumlaumlritel-maumln 21 mukaisesti tavoitteena on loumlytaumlauml tilavektori 119904opt joka minimoi energiafunk-tion 119864(119904opt) (yhtaumllouml 22) Maumlaumlritellaumlaumln lisaumlksi kontrolliparametri 119905 gt 0 joka vastaafysikaalisen systeemin laumlmpoumltilaa

SA-algoritmi simuloi jaumlaumlhtyvaumlauml fysikaalista systeemiauml seuraavasti Alkutilassalaumlmpoumltilan 119905 = 1199050 laumlhtoumlarvo 1199050 on korkea ja se vastaa fysikaalisessa prosessissa tilan-netta jossa termodynaamisen systeemin partikkelit liikkuvat vapaasti (satunnaises-ti) Oletetaan ettauml hetkellauml 119896 nykyinen kandidaatti optimoitavan parametrivektorinarvoksi (eli fysikaalisessa tulkinnassa systeemin tila) on 119904119894 Generoidaan uusi sa-tunnainen tila 119904119895 nykyisen konfiguraation 119904119894 laumlheltauml jonkin sopivan etaumlisyysmitansuhteen ja hyvaumlksytaumlaumln se uudeksi vallitsevaksi arvaukseksi Metropolis-kriteerinperusteella

Jos uusi tila 119904119895 on energiafunktion mielessauml parempi kuin edellinen (eli 119864(119904119895) le119864(119904119894)) se hyvaumlksytaumlaumln uudeksi nykyiseksi ratkaisuehdokkaaksi Jos 119904119895 on huonompikuin 119904119894 (eli119864(119904119895) gt 119864(119904119894)) hyvaumlksymme sen joka tapauksessa laumlmpoumltilasta 119905 riippuvallatodennaumlkoumlisyydellauml

(216) exp 983556minusΔ119864119905 983559

9

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 13: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894) Mikaumlli ehdokasta 119904119895 ei hyvaumlksytauml pysytaumlaumln entisessaumltilassa 119904119894

Kun algoritmia on iteroitu tarpeeksi kauan (ja fysikaalisessa tulkinnassa simuloi-tava systeemi on saavuttanut sen hetkiseen laumlmpoumltilaan liittyvaumln termodynaamisentasapainotilan) laumlmpoumltilaparametria 119905 lasketaan hieman ja algoritmia jatketaankunnes systeemi on rdquojaumlaumlhtynytrdquo Taumlllauml tarkoitetaan ettauml algoritmi pysaumlytetaumlaumln tar-peeksi pienellauml 119905n arvolla yleensauml kun voidaan jonkin valitun kriteerin avulla todetasysteemin jaumlaumlhtyneen matalaenergisimpaumlaumln rakenteeseensa

Edellauml kuvattu prosessi on analoginen aiemmassa alaluvussa 231 kuvaillunlaumlmpoumlkaumlsittelyprosessin fysikaalisen mallin kanssa mitauml tutkitaan tarkemmin myouml-hemmin (alaluku 24) Intuitiivisesti kontrolliparametrin eli rdquolaumlmpoumltilanrdquo ollessasuuri algoritmi hyvaumlksyy runsaasti satunnaisia siirtymiauml energiafunktion suhteenrdquoylaumlmaumlkeenrdquo ja tilaehdokkaiden 119904119894 jono on hyvin satunnainen Laumlmpoumltilan laskiessaalgoritmi hyvaumlksyy yhauml harvemmin satunnaisia poikkeammia ja sen sijaan valitseetodennaumlkoumlisemmin vain energiafunktion suhteen parempia kandidaatteja 119904119894 Taumlmaumlstokastisuus selittaumlauml algoritmin kyvyn paeta paikallisia minimejauml

Jaumlljempaumlnauml tutkielmassa alaluvussa 243 esitetaumlaumln ettauml tiettyjen teoreettisten eh-tojen vallitessa tilajono 119904119894 konvergoi kohti globaalia minimiauml 119904opt todennaumlkoumlisyydellauml1 kun 119905 rarr 0

233 Algoritmin malli Markovin ketjuina

Algoritmin laumlpikaumlymiauml tiloja 119904 ajanhetkillauml 119896 = 1hellip 119899 voidaan mallintaa sarjanahomogeeneja Markovin ketjuja kullakin laumlmpoumltilaparametrin 119905 arvolla

Merkitaumlaumln algoritmin hetkellauml 119896 toteutunutta tilaa 119831(119896) jolloin algoritmi onstokastinen prosessi 119831(1) 119831(2) hellip 119831(119899) jonka siirtymaumltodennaumlkoumlisyydet hetkellauml 119896

(217) Pr 983560119831(119896 + 1) = 119895 ∣ 119831(119896) = 119894983563

riippuvat Metropolis-kriteerin mukaisesti tiloista 119894 ja 119895 ja tuonhetkisestauml laumlmpoumltilasta119905 = 119905119896 Jos laumlmpoumltila pysyy askeleiden 119896 hellip 119896 + 119898 ajan vakiona 119905119896 119905119896+1 hellip 119905119896+119898 = 119905119888tilat 119831(119896) hellip 119831(119896 + 119898) muodostavat homogeenin aumlaumlrellispituisen Markovin ketjun

Koska kullakin 119905n arvolla Metropolis-kriteerin maumlaumlraumlaumlmaumlt siirtymaumltodennauml-koumlisyydet saumlilyvaumlt samoina algoritmin Markov-ketjujen siirtymaumltodennaumlkoumlisyydetvoidaan esittaumlauml laumlmpoumltilaparametrista 119905 gt 0 riippuvan siirtymaumlmatriisin 119872(119905) avulla

(218) 119872119895119894(119905) =⎧⎪⎨⎪⎩

119866119895119894(119905)119860119895119894(119905) 119895 ne 119894

1 minus sum119897ne119894119866119897119894(119905)119860119897119894(119905) 119895 = 119894

missauml generointitodennaumlkoumlisyys119866119895119894(119905) ilmaisee todennaumlkoumlisyyden ettauml tilakonfiguraatio

10

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 14: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

119904119895 generoidaan laumlhtoumltilasta 119904119894 ja hyvaumlksymistodennaumlkoumlisyys 119860119895119894(119905) todennaumlkoumlisyydenettauml laumlhtoumltilasta 119904119894 generoitu tila 119904119895 hyvaumlksytaumlaumln

Taumlssauml tutkielmassa oletetaan ettauml 119866(119905) on yksinkertaisesti (tasainen) satunnaisja-kauma jonka perusjoukko on laumlhtoumltilan 119904119894 naapuritilat 119873(119894)

119866119895119894(119905) =1

119898(119873(119894))(219)

missauml 119898 on sopiva tn-mitta diskreetissauml tapauksessa naapureiden lukumaumlaumlrauml 119873(119895)jolloin

119866119895119894(119905) =1

119873(119894)(220)

ja 119860(119905) on edellauml jaksossa 232 kuvailtu Metropolis-kriteeri joka voidaan kirjoittaalyhyesti

(221) 119860119895119894(119905) = min9835621 exp 983556minusΔ119864119905 983559983565

kun huomataan ettauml exp 983555minusΔ119864119905983558 ge 1 kun Δ119864 le 0

Algoritmiin liittyy myoumls jokin jaumlaumlhdytysstrategia johon sisaumlltyy laumlmpoumltilapara-metrin 119905 alkuarvo 1199050 funktio 119879 ∶ ℕ rarr ℝ+ joka maumlaumlraumlauml sen arvot kullakin homogee-nilla ketjulla 119905119896 = 119879(119896) kunkin homogeenin Markov-ketjujen pituus 119871119896 ja algoritminpysaumlytyskriteeri (tyypillisesti laumlmpoumltila 119905stop tai iteraatio 119894stop joka maumlaumlraumlauml ketjun taihetken jolloin algoritmi pysaumlhtyy)

Yllauml esitettyauml SAn muotoilua Laarhoven ja Aarts [LA87] kutsuvat homogeeniksialgoritmiksi erotuksena epaumlhomogeenista muotoilusta jossa kontrolliparametrin119905n arvoa lasketaan jokaisen siirtymaumln jaumllkeen jolloin Markov-ketjut eivaumlt ole aika-homogeeneja

24 Algoritmin teoreettinen perustelu

Perustellaan seuraavaksi hieman miksi jaumlaumlhdytysalgoritmi toimii SA on pohjimmil-taan sovellettu MetropolisndashHastings-algoritmi (tai lyhyesti Metropolis-algoritmi)joka tuottaa (pseudo-)satunnaisotoksen 119904 yleisestauml Boltzmannin jakaumasta

(Boltzmann) Pr (119904) prop exp 983556minus119864(119904)119905 983559

Taumlmaumln tutkielman piiriin ei kuulu asymptoottinen konvergenssitarkastelu kuin-ka Boltzmannin jakauman approksimointi vaumlhenevillauml laumlmpoumltiloilla johtaa glo-

11

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 15: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

baaliin optimiin vaan nojaamme vain tilastolliseen mekaniikkaan perustuvaanfysikaaliseen intuitioon

Esitetaumlaumln kuitenkin tavanomainen todistus ([CG95] mukaan) miksi alaluvus-sa 23 kuvattu MetropolisndashHastings-algoritmi todella approksimoi haluttua jakau-maa (taumlssauml Boltzmann-jakaumaa tietyssauml laumlmpoumltilassa) tietyin Markov-ketjua koske-vin oletuksin ja lyhyt yhteenveto teoksessa [LA87] esitetyistauml laajemmista teoreetti-sista konvergenssituloksista

241 Tilastollinen mekaniikka ja Boltzmannin jakauma

Tilastollisessa fysiikassa tilastollinen mekaniikka tutkii tiiviin (kiinteaumln ja nestemaumlisen)aineen makroskooppista kaumlyttaumlytymistauml ja erityisesti termodynaamisia systeemeitaumlsoveltamalla tilastollisia menetelmiauml klassisen mekaanikan tai kvanttimekaniikanmukaisiin aineen mikroskooppisiin malleihin Tilastollisessa mekaniikassa oletetaanettauml fyysisen systeemin makroskooppinen tila voidaan mallintaa todennaumlkoumlisyysja-kaumana sen mahdollisten mikroskooppisten tilojen (konfiguraatioiden) kokoelmanyli Aineen mikroskooppisella tilalla tarkoitetaan aineen kaikkien yksittaumlisen (taumlssaumlyhteydessauml klassisen mekaniikan kaumlsityksen mukaisten) hiukkasten tilaa [SSF02]

Jaumlaumlhdytysmenetelmaumln tarkastelun kannalta tilastollisen mekaniikan keskeinentulos on ettauml mikroskooppisilla tiloilla on laumlmpoumltilassa 119905 tasapainojakauma (termo-dynaaminen tasapainotila) joka voidaan johtaa [ks esim SSF02 luku 5] ja monissamalleissa (kun kvantti-ilmioumlitauml ei huomioida) on Boltzmannin jakauma (222) Termo-dynaamisessa tasapainotilassa laumlmpoumltilassa 119905 systeemi on tilassa 119904 jonka sisaumlenergiaon 119864 = 119864(119904) todennaumlkoumlisyydellauml

(222) Pr (119904) =1

119885(119905)exp 983556minus

119864(119904)119896119861119905

983559

missauml 119896119861 on Boltzmannin vakio 119905 systeemin termodynaaminen laumlmpoumltila ja jako-funktio 119885(119905) on laumlmpoumltilasta riippuva normittava tekijauml

(223) 119885(119905) = 983466119894exp 983556minus

119864(119904119894)119896119861119905

983559

missauml summa otetaan mahdollisten energiatilojen 119864(119904119894) yliTilastollisen fysiikan tunnettu tulos on ettauml kun jaumlaumlhdytysalgoritmin simuloi-

massa jaumlaumlhdytysprosessissa 119905 rarr 0 tarpeeksi hitaasti tutkittava systeemi on saavuttaakaikissa laumlpikaumlymissaumlaumln laumlmpoumltiloissa jakauman 222 kuvaaman termodynaamisentasapainotilan Laumlmpoumltilan 119905 laskiessa todennaumlkoumlisyysjakauma 222 keskittyy pie-nienergisten tilojen 119904 ympaumlrille ja kun laumlmpoumltila laumlhestyy nollaa vain energioiltaanpienimpien tilojen todennaumlkoumlisyys on positiivinen Toisin sanoen kun 119905 laumlhestyy nol-

12

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 16: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

laa systeemi saavuttaa matalaenergisimmaumln perustilansa (engl low energy groundstate) jossa aineen hiukkaset kristalloituvat hilarakenteeseen

Kuten edellauml (jakso 232) on kuvailtu mallinnetussa jaumlaumlhdytyksessauml optimoin-tiongelman mahdolliset ratkaisut 119904119894 isin Ω vertautuvat fysikaalisen systeemin tiloihinjoiden energiatilat antaa optimoitava funktio 119864 Vastaavasti jaumlaumlhdytysalgoritmintilojen tulkitaan kullakin laumlmpoumltilaparametrin 119905 arvolla noudattavan Boltzmann-muotoista jakaumaa

(224) 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

missauml 119876(119905) on fysikaalista jakofunktiota vastaava normittava tekijauml

(225) 119876(119905) = 983466119904isinΩ

exp 983556minus119864(119904)119905 983559

Mallinnettussa jaumlaumlhdytyksessauml fysikaalista prosessia simuloidaan Metropolis-algoritmilla joka approksimoi yhtaumlloumln (224) muotoista Boltzmannin jakaumaa

Todellisuudessa monet kombinatoriset ongelmat joihin jaumlaumlhdytysalgoritmia so-velletaan eivaumlt kuitenkaan aina kaumlyttaumlydy kuin tyypilliset termodynaamiset systee-mit Taumlllaisissa tilanteissa algoritmin kaumlyttaumlytymistauml usein verrataan lasin kaltaisiinsysteemeihin (glassy systems) Kyseisen kaltaisen aineen rakenne jaumlauml epaumloptimaali-seen jaumlrjestykseen kun sen laumlmpoumltila laskee aineen nk neste-lasi-transitiolaumlmpoumltilanalapuolelle sanotaan ettauml systeemi kaumly laumlpi neste-lasitransition [SSF02 luku 66]

242 Algoritmin tasapainojakauma ja MetropolisndashHastings-algoritmi

Lauseen 22 mukaan ergodisella ja aperiodisella Markovin ketjulla on olemassajokin stationaarinen jakauma 120645 Maumlaumlritelmaumln 25 mukaan ergodisessa Markovinketjussa jokainen tila on saavutettavissa mistauml tahansa toisesa tilasta aumlaumlrellisessaumlajassa Sopivasti toteutetussa jaumlaumlhdytysalgoritmissa oletus vaikuttaa mielekkaumlaumlltaumlSA-algoritmi voidaan myoumls olettaa aperiodiseksi missauml tahansa algoritmin tilassa(joka ei ole paikallinen maksimi) Metropolis-kriteerin johdosta algoritmilla on posi-tiivinen todennaumlkoumlisyys hylaumltauml generoitu siirtymauml ja saumlilyttaumlauml edellinen tila Naumlinollen algoritmilla on kaikissa laumlmpoumltiloissa 119905 tiloja joilla 119872119894119894(119905) gt 0 ja lauseen 21mukaan algoritmin ketjut ovat aperiodisia

Naumlin ollen on perusteltua olettaa ettauml jaumlrkevaumlsti toteutettu SA-algoritmi konver-goi kohti jotain tasapainojakaumaa Edellisessauml alaluvussa perusteltiin algoritminkykyauml loumlytaumlauml globaali optimi tilastolliseen fysiikkaan perustuvan intuition kauttaminkauml kannalta oleellista on ettauml mallinnettu jaumlaumlhdytys approksimoi nimenomaisestiBoltzmannin jakaumaa (224)

13

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 17: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Mallinnettu jaumlaumlhdytys on erikoistapaus yleisestauml MetropolisndashHastings-algorit-mista MetropolisndashHastings on suosittu Markovin ketjujen Monte Carlo -menetelmauml(engl Markov Chain Monte Carlo lyhyesti MCMC) jonkin halutun todennaumlkoumlisyysja-kauman 120645(119909) approksimointiin ja erityisen hyoumldyllinen kun todennaumlkoumlisyysjakau-masta 120645(119909) on vaikea generoida satunnaisotantaa mutta tunnetaan funktio 119891 jollepaumltee

(226)120587(119909prime)120587(119909)

=119891 (119909prime)119891 (119909)

Osoitetaan ettauml mallinnetun jaumlaumlhdytyksen tasapainojakauma on Boltzmannin ja-kauma johtamalla yleinen MetropolisndashHastings-algoritmi jonka tasapainojakaumaon 120645(119909) Toisin sanoen oletetaan ettauml 120645(119909) on maumlaumlritelmaumln 28 mukainen vektori jaerityisesti halutaan ettauml siirtymaumlmatriisin 119872 maumlaumlraumlaumlmaumllle Markovin ketjulle paumlteemaumlaumlritelmaumln 28 kolmas ehto

(227) 120645(119894) = 983466119895120645(119895)119872119894119895

Oletetaan ettauml etsittaumlvaumln Metropolis-algoritmin Markovin ketju toteuttaa taumlydel-lisen tasapaino- eli kaumlaumlntyvyysominaisuuden

120645(119895)119872119894119895 = 120645(119894)119872119895119894(228)

Naumlhdaumlaumln ettauml tasapainojakauman maumlaumlritelmaumln 28 kolmas ehto seuraa kaumlaumlntyvyy-destauml

(229) 983466119895120645(119895)119872119894119895 = 983466

119895120645(119894)119872119895119894 = 120645(119894)983466

119895119872119895119894 = 120645(119894)

missauml viimeinen askel paumltee sillauml luonnollisesti sum119895119872119895119894 = sum119895 Pr119831(119896 + 1) = 119895 ∣ 119831(119896) =

119894 = 1 kaikilla 119894Johdetaan nyt yleinen Metropolis-algoritmi etsimaumlllauml Markov-ketju joka toteuttaa

kaumlaumlntyvyysominaisuuden (228) jolloin sillauml on haluttu stationaarinen jakauma 120645Kirjoitetaan 119872119894119895 = Pr119831(119896 + 1) = 119894 ∣ 119831(119896) = 119895 generointi- ja hyvaumlksymistodennauml-

koumlisyyksien 119866119894119895 ja 119860119894119895 avulla

119872119894119895 = 119866119894119895119860119894119895 119894 ne 119895

Sijoitetaan taumlmauml yhtaumlloumloumln (228) jolloin saadaan

120645(119895)119866119894119895119860119894119895 = 120645(119894)119866119895119894119860119895119894(230)

14

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 18: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Oletetaan ettauml myoumls generointitodennaumlkoumlisyydet toteuttavat kaumlaumlntyvyysehdon119866119894119895 =119866119895119894 mikauml SAn tapauksessa on useimmiten jaumlrkevauml oletus Taumllloumlin yhtaumlloumlksi tulee

(231) 120645(119895)119860119894119895 = 120645(119894)119860119895119894

On vielauml valittava hyvaumlksymistodennaumlkoumlisyyksille 119860119894119895 sellainen todennaumlkoisyysja-kauma ettauml taumlmauml paumltee kaikilla 119894 119895

Oletetaan ettauml tilat 119894 119895 ovat sellaiset ettauml

(232) 120645(119895) lt 120645(119894)

Toisin sanoen todennaumlkoumlisyys ettauml olemme tilassa 119894 on suurempi kuin tilassa 119895 Koskaoletuksen mukaan 119866119894119895 = 119866119895119894 tasapainoehdon (231) saumlilymiseksi hyvaumlksymistoden-naumlkoumlisyyden 119860119894119895 siirtymaumllle 119895 rarr 119894 on oltava suurempi kuin hyvaumlksymistodennaumlkoumli-syyden 119860119895119894 siirtymaumllle 119894 rarr 119895 eli on oltava 119860119895119894 lt 119860119894119895 Toisaalta todennaumlkoumlisyytenauml119860119894119895 ei voi olla suurempi kuin 1 valitaan se mahdollisimman suureksi 119860119894119895 = 1 elimikaumlli tehdaumlaumln siirtymauml tilasta 119895 tilaan 119894 joka on todennaumlkoumlisempi kuin 119895 (232) sehyvaumlksytaumlaumln automaattisesti

Ehdosta 119860119894119895 ja yhtaumlloumlstauml (231) saadaan kaava hyvaumlksymistodennaumlkoumlisyydelle119860119895119894

(233) 119860119895119894 =120645(119895)120645(119894)

Vastaavat yhtaumlloumlt luonnollisesti paumltevaumlt mikaumlli 120645(119895) gt 120645(119894)Hyvaumlksymimistodennaumlkoumlisyydelle 119860119894119895 on siis naumlin johdettu kaava kun 119894 ne 119895

(234) 119860119894119895 = min9835621120645(119894)120645(119895)983565

Algoritmin (218) johto on valmis kun vielauml asetamme tapauksessa 119894 = 119895

(235) 119872119894119895 = 119872119894119894 = 1 minus983466119897ne119895

119866119897119895119860119897119895

Kuten edellauml (alaluku 241) perusteltiin SA-algoritmissa approksimoitava ja-kauma 120645 on kullakin 119905n arvolla Boltzmannin jakauma (224)

(236) 120645 = 120645119905(119894) =1

119876(119905)exp 983556minus

119864(119904119894)119905 983559

15

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 19: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Koska

(237)120645(119895)120645(119894)

=120645119905(119895)120645119905(119894)

= exp 983556119864(119904119894) minus 119864(119904119895)

119905 983559

yhtaumllouml (234) saa taumlllauml jakaumalla muodon(238)

119860119895119894 = min9835621120645(119895)120645(119894)983565

= min9835621 exp 983556minusΔ119864119905 983559983565 missauml Δ119864 = Δ119864119895119894 = 119864(119904119895) minus 119864(119904119894)

mikauml on juuri haluttu Metropolis-kriteeri (221)Lauseen 23 mukaan Metropolis-algoritmi konvergoi kohti stationaarista jakau-

maa 120645 todennaumlkoumlisyydellauml 1 kun Markov-ketjujen pituudet kasvavat rajatta kullakin119905

243 Konvergenssituloksia

Yllauml oletettiin ettauml ketju toteuttaa taumlydellisen (myoumls paikallisen) tasapainoehdon(engl detailed balance) (228) Esimerkiksi Laarhoven ja Aarts esittaumlvaumlt kirjallisuudes-sa tunnettuja todistuksia [LA87 Luvut 312 313] joissa Markovin ketjuja koskevatoletukset voivat olla lievempiauml (paikallisen tasapainon sijaan riittaumlauml olettaa esi-merkiksi nk globaali tasapainoehto) ja samalla osoitetaan ettauml algoritmi konvergoiasymptoottisesti kohti globaalia optimia 119904opt tai (jos minimi ei ole yksikaumlsittaumlinen)globaalin minimin antavien konfiguraatioiden joukon 119878opt (tasa-)jakaumaa kun119905 rarr 0 eli

(239) lim119905rarr0

983555 lim119896rarrinfin

Pr 983560119831(119896) isin 119878opt983563983558 = 1

Lisaumlksi voidaan osoittaa [LA87 Luku 32 GG84] ettauml kun Markov-ketjujen pituuskullakin 119905 on yksi tai yleisemmin aumlaumlrellinen (epaumlhomogeeni algoritmi) algoritmisilti konvergoi kohti optimia kunhan 119905 rarr 0 riittaumlvaumln hitaasti missauml rsquoriittaumlvaumln hitaastirsquotarkoittaa ehtoa muotoa

(240) 119905119899 =Γ

log(119899)

Vakiolle Γ tunnetaan erilaisia rajoja Γ ge 119889 jossa 119889 on ongelman rakenteesta riippuvaparametri [LA87 s 38] Mielenkiintoinen SAn ominaisuus on ettauml myoumls ehtoa (240)nopeammat jaumlaumlhdytysstrategiat toimivat usein hyvin vaikkei niille ole yhtauml varmaateoreettista perustelua

16

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 20: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 3

Kiekko-ongelman kuvamalli

31 Digitaalinen harmaasaumlvykuva

Digitaalisessa kuvankaumlsittelyssauml kuvan ja erityisesti valokuvan tapaisen kuvada-tan tyypillinen esitysmuoto on pieninauml kuvaelementteinauml pikseleinauml (engl pixellyhenne termistauml rsquopicture elementrsquo) ruudukossa Esitysmuotoa kutsutaan rasteriku-vaksi tai bittikarttakuvaksi 1 Harmaasaumlvykuvassa (engl greyscale image) kullakinpikselillauml on numeerinen arvo joka kertoo pikselin kattaman kuvapinnan alueenkeskimaumlaumlraumlisen valoisuuden eli intensiteetin Taumlstauml nimi rdquobittikarttardquo yleisissauml tieto-koneohjelmistojen kaumlyttaumlmissauml tallennusmuodoissa pikselin valoisuus ilmaistaan8-bittisellauml kokonaisluvulla vaumlliltauml 0 ja 28minus1 = 255 (binaumlaumlrinauml 02 ja 11111112) Vuoros-taan RGB-vaumlrikuvassa pikseliin liittyy vaumlri-informaation antava RGB-arvo (kolmeerillistauml 8-bittistauml kanavaa punaiselle vihreaumllle ja siniselle)

Harmaasaumlvykuvan luonnollinen vastaava matemaattinen malli on 119898times119899-matriisi

(31) 119860 isin [0 1]119898times119899

missauml 119898 ja 119899 antavat kuvan koon Alkioiden arvot ovat reaalilukuja vaumllillauml [0 1]jotka vastaavat kyseisen pikselin valoisuutta 0 on taumlysin musta pikseli 1 valkoinen[Jaumlh02 s 29ndash32]

Matriisin koordinaateissa (119894 119895) sijaitsevaa pikseliauml merkitaumlaumln 119860(119894 119895)Vaikka matemaattisissa malleissa kuvamatriisin alkiot kaumlsitetaumlaumln reaaliluvuiksi

tietokone laskee diskreetissauml lukuavaruudessa Taumlssauml tutkielmassa esitellyn algo-ritmin kaumlytaumlnnoumln Matlab-toteutuksessa laskenta tapahtuu liukulukumatriiseillajotka esitetaumlaumln yllauml kuvaillun kaltaisina pikselikuvina Vaikka liukulukulaskentapystyy mallintamaan reaalilukuja vain tiettyyn tarkkuuteen asti ovat siitauml aiheu-tuvat virheet niin pieniauml ettei niitauml tarvitse taumlmaumln tutkielman piirissauml huomioida

1Mainittakoon ettauml on myoumls olemassa vektorigrafiikkaa jossa kuva esitetaumlaumln geometristen objektien(kuten polkujen) avulla Jatkossa rsquokuvallarsquo ja rsquokuvadatallarsquo tarkoitetaan rasteri- bittikarttakuvaa

17

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 21: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

tarkemmin

32 Ongelmanasettelu ja kuvamalli

Oletetaan ettauml tutkittavana on digitaalinen harmaasaumlvyvalokuva joka esittaumlauml 119896 kap-paletta erillisiauml mustia objekteja valkoisella taustalla ja objektit voidaan tulkita tasa-vaumlrisiksi ympyraumlkiekoiksi Tehtaumlvaumlnauml on maumlaumlrittaumlauml kuvadatasta objektien 1199081 hellip 119908119896

maumlaumlrauml sijainti ja koko Tutkittavien harmaasaumlvykuvien ajatellaan syntyneen tavalli-sen (digitaalisen) kameran kaltaisessa systeemissauml joten kuvamallissamme otetaanhuomioon tyypillisiauml taumlllaisessa systeemissauml kuvadataa huonontavia virhelaumlhteitauml

Matemaattinen mallimme 119896 ympyraumlkiekkoa 119882 = 1199081 119908119896 tuottavasta prosessis-ta on

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

missauml havaittu lopullinen kuvadata 119860havaittu on ideaalinen ympyraumlkiekkoja esittaumlvaumlkuva 119860119882 johon on kohdistunut kahdenlaisia virheitauml kuva on sumentunut mitaumlmallinnetaan konvoluutio-operaatiolla 119875 lowast 119860119882 ja siinauml on additiivista kohinaa 119864

Seuraavaksi maumlaumlritellaumlaumln ideaalisen kuvamatriisin 119860119882 tuottaminen kiekkoko-koelmasta119882 konvoluutio-operaatio ja additiivinen kohina Kuvaillaan myoumls kuinkataumltauml yleistauml kuvamallia sovelletaan simuloidun aineiston tuottamiseen ja aineistontutkimiseen kaumlytetty rsquohavaintomallirsquo jota hyoumldynnetaumlaumln luvussa 4 kiekkojen loumlytauml-miseen simuloidusta aineistosta

33 Ympyraumlkiekot

Tavoitteena on rekonstruoida kuvadatan pohjalta ympyraumlobjektit joista kukin voi-daan yksiloumlidauml jaumlrjestettynauml kolmikkona (tai vektorina)

(33) 119908 = (1199090 1199100 119903) isin 119898 times 119899 times ℝ

missauml 1199090 1199100 on ympyraumln keskipisteen koordinaatti 119898 times 119899 kuvamatriisissa 119860 ja 119903ympyraumln saumlde

331 Yksi kiekko

A priori -tietomme kuvan esittaumlmien kappaleiden muodosta ja luonteesta mahdollis-taa niiden oleellisen informaatiosisaumllloumln esittaumlmisen kolmella parametrilla Tulkitaanettauml kolmikko (1199090 1199100 119903) maumlaumlraumlauml yhden mustan ympyraumln valkoisella pohjalla kuva-matriisissa 119860 seuraavan funktion avulla

18

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 22: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Maumlaumlritelmauml 31 Ympyrauml jonka keskipiste on (1199090 1199100) ja saumlde 119903 gt 0 voidaan kuvatakuvamatriisiksi 119860 funktiolla 119891 ∶ 119898 times 119899 times ℝ rarr [0 1]119899times119899

119891 (1199090 1199100 119903) = 119860missauml⎧⎪⎨⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on ympyraumln sisaumlllauml

119860119894119895 = 1 muulloin

missauml ympyraumln (ympyraumlkiekon sisaumlllauml) jos (119894 119895) minus (1199090 1199100) le 119903

Teimme yllauml muutaman tietoisen yksinkertaistuksen numeerisen laskennan hel-pottamiseksi Ensinnaumlkin oletamme ettauml ympyraumlkiekkojen keskipisteet sijaitsevataina tarkalleen jonkin pikselin kohdalla (1199090 1199100 kokonaislukuja jotka vastaavat pikse-lien koordinaatteja) realistisemmin olettaisimme koordinaatit 1199090 ja 1199100 reaaliluvuiksikuvamatriisin alueella ja laskisimme mitkauml pisteet kuuluvat ympyraumlkiekkoon laske-malla niiden etaumlisyydet niihin Toiseksi mallimme ympyraumlkiekosta on varsin karkeagraafisessa mielessauml pikseli on joko taumlysin musta tai valkea

332 Monta kiekkoa

Malli voidaan yleistaumlauml useammalle kiekolle Oletetaan ettauml meillauml on 119896 kappaleen(jaumlrjestaumlmaumltoumln) kokoelma kiekkoja 119882 = 1199081 hellip 119908119896 Intuitiivisesti vastaavassa kuva-matriisissa pikseli on valkea jos se ei kuulu mihinkaumlaumln ympyraumlkiekkoon ja musta josse kuuluu johonkin kiekkoon Kokoelma on jaumlrjestaumlmaumltoumln sillauml tulokseksi saadaansamanlainen kuva riippumatta missauml jaumlrjestyksessauml sen ympyraumlt luetellaan

Maumlaumlritelmauml 32 119896 ympyraumlkiekkoa 1199081 hellip 119908119896 voidaan kuvata kuvamatriisiksi 119860 funk-tiolla 119891monta ∶ (119898 times 119899 times ℝ)119896 rarr [0 1]119898times119899

119891monta(1199081 hellip 119908119896) = 119860missauml

⎧⎪⎪⎨⎪⎪⎩

119860119894119895 = 0 jos pikselin (119894 119895) keskipiste on

jonkin ympyraumln 119908119894 sisaumlllauml

119860119894119895 = 1 muulloin

Suoraan naumlhdaumlaumln ettauml kokoelman 119882 vektoreiden 1199081 hellip 119908119896 jaumlrjestyksellauml funk-tion 119891monta parametreina ei ole vaumlliauml

(34) 119891monta(1199081 hellip 119908119894 119908119895 hellip 119908119896) = 119891monta(1199081 hellip 119908119895 119908119894 hellip 119908119896) 119894 ne 119895

Naumlin ollen merkintauml 119891monta(119882) on jaumlrkevaumlNaumlin maumlaumlritellyn kiekkomallin avulla voidaan tulkita ympyraumlkokoelma 119882 vas-

taavaksi kuvamatriisiksi 119860 = 119860119882 = 119891monta(119882) ja jatkossa teemme naumlin suoraanmainitsematta funktiota 119891monta eksplisiittisesti

Funktio on helppo toteuttaa ohjelmallisesti rdquojardquo -operaatiolla and matriiseille

19

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 23: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Maumlaumlritelmauml 33 Jos 119860 = 119861 and 119862 missauml 119860119861 119862 ovat 119898 times 119899 -matriiseja niin

(35) 119860119894119895 =⎧⎪⎨⎪⎩

1 jos 119861119894119895 = 1 ja 119862119894119895 = 1

0 jos 119861119894119895 = 0 tai 119862119894119895 = 0

Jos 119860119894 on ympyraumlkiekkoa 119908119894 vastaava kuvamatriisi eli 119860119894 = 119891 (119908119894) 119894 = 1hellip 119896voimme kaumlsitellauml kuvamatriiseja 119860119894 maskeina ja kirjoittaa koko kiekkokokoelmaavastaavan kuvamatriisin 119860119882 niiden avulla

(36) 119860119882 = 1198601 and hellip and 119860119896

34 Konvoluutio

Digitaalisessa kuvankaumlsittelyssauml kuvan sumentaminen (engl blurring tai pehmentauml-minen engl smoothing) tehdaumlaumln soveltamalla kuvamatriisiin 119860 sopivaa (lineaarista)suodatinta 119875 (engl filter) Tuloksena saadaan summennettu kuva 119860sumea jossa kun-kin pikselin119860sumea(119894 119895) arvo perustuu vastaavan alkuperaumlisen teraumlvaumln kuvamatriisin119860 pikselin 119860(119894 119895)n ja sen ympaumlristoumln arvoihin Taumlmauml on intuitiivinen analogia fy-sikaaliselle ilmioumllle jossa virheellisesti tarkennetun optisen systeemin linssi- taipeilijaumlrjestelmauml kohdistaa havaittavasta kohteesta peraumlisin olevan valon epaumltarkas-ti kameran CCD-kennon tai silmaumln verkkokalvon kaltaiselle havaintopinnalle jatuottaa sumean kuvan

Kaumlytaumlnnoumlssauml 119860sumea(119894 119895) saadaan ottamalla 119860(119894 119895)n ympaumlristoumln pikseleistauml pai-notettu keskiarvo Painotetun keskiarvon painot ja sen mitauml oikeastaan tarkoitetaanrsquoympaumlristoumlllaumlrsquo kertoo suodatinmatriisi 119875 Formaalisti taumlllainen suodatus vastaa 119860nja 119875n (lineaarista) konvoluutiota 119875 lowast 119860 jonka maumlaumlrittelemme seuraavaksi Sanommejoskus lyhyesti ettauml kuvamatriisille 119860 tehdaumlaumln (lineaarinen) konvoluutio-operaatio119875lowast [BB09]

Yleisesti funktioteoriassa konvoluutio on kahden funktion 119891 ja 119892 vaumllinen operaa-tio joka maumlaumlrittelee uuden funktion 119891 lowast 119892

Maumlaumlritelmauml 34 Funktioiden 119891 ja 119892 konvoluutio 119891 lowast 119892 on

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

Lause 31 Konvoluutio on vaihdannainen 119891 lowast 119892 = 119892 lowast 119891

Todistus Todistus seuraa soveltamalla muuttujanvaihtokaavaa epaumloleelliselle inte-

20

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 24: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

graalille

119891 lowast 119892 = (119891 lowast 119892)(119909) = intinfin

minusinfin119891 (119905)119892(119909 minus 119905) d119905

= lim119886rarrinfin

int119886

minus119886119891 (119905)119892(119909 minus 119905) d119905

tehdaumlaumln muuttujanvaihto 119905 = 119909 minus 119904 d119905 = minusd119904 jolloin

= lim119886rarrinfin

int119909minus119886

119909+119886minus119891 (119909 minus 119904)119892(119904) d119904

= lim119886rarrinfin

int119909+119886

119909minus119886119891 (119909 minus 119904)119892(119904) d119904

= intinfin

minusinfin119892(119904)119891 (119909 minus 119904) d119904

missauml viimeinen integraali on haluttua muotoa ja maumlaumlritelmaumln mukaan 119892 lowast 119891

Mikaumlli funktioiden 119891 119892 maumlaumlrittelyjoukko on kokonaislukujen joukko integraalivoidaan luonnollisella tavalla korvata summana Toisin sanoen voidaan maumlaumlritellaumldiskreetti konvoluutio

Maumlaumlritelmauml 35 Diskreetti konvoluutio on

(119891 lowast 119892)(119899) =infin983466

119898=minusinfin119891 (119898)119892(119899 minus 119898)

joka yleistettynauml kahteen ulottuvuuteen ℤ2 on

(119891 lowast 119892)(1198991 1198992) =infin983466

1198981=minusinfin

infin983466

1198982=minusinfin119891 (1198981 1198982)119892(1198991 minus 1198981 1198992 minus 1198982)

Funktioille maumlaumlritelty konvoluutio voidaan helposti laajentaa matriiseille samas-tamalla yleinen reaalinen matriisi 119861 isin ℝ119898times119899 sen maumlaumlraumlaumlmaumln funktion 119891119861 ∶ 119898 times 119899 rarr119877119898times119899 kanssa missauml 119891119861 saa arvonsa matriisista 119861

(37) 119891119861(119894 119895) = 119887119894119895 = 119861(119894 119895)

missauml 119887119894119895 on 119861n alkio 119894 rivillauml ja 119895 sarakkeessaToisin sanoen merkintaumlmme 119860n konvolvoimiselle 119875llauml

(38) 119860sumea = 119875 lowast 119860

on jaumlrkevauml Maumlaumlritellaumlaumln vielauml konvoluutiomatriisi 119875 tarkemmin ja tutkitaan kuinkasumennos kaumlytaumlnnoumlssauml konvoluutiossa tapahtuu

Maumlaumlritelmauml 36 Konvoluution 119875lowast ydin (engl kernel) eli konvoluutiomatriisi elisuodatinmatriisi 119875 on aumlaumlrellinen 119870 times119871 -matriisi joillekin luonnolliselle luvulle 119870 119871 isin

21

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 25: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

ℕ Konvoluutio-operaatiossa 119875n ajatellaan olevan 0 119870 times 119871 -matriisin ulkopuolella

Oletetaan ettauml 119875 on 3times3 konvoluutiomatriisi joka on indeksoitu niin ettauml keskim-maumlinen alkio on 11990100 ja 119860 on 119898 times 119899 -kuvamatriisi Taumllloumlin diskreetti kaksiulotteinenkonvoluutio119875lowast119860 saadaan maumlaumlritelmaumln mukaan seuraavasta yhtaumlloumlstauml kun 1 le 119896 le 119898ja 1 le 119897 le 119899

(119875 lowast 119860)(119896 119897) =infin983466119894=minusinfin

infin983466119895=minusinfin

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(39)

Ottaen huomioon ettauml 119875n arvo konvoluutiomatriisin ulkopuolella on 0 eli 3 times 3matriisin tapauksessa 119875(119894 119895) = 0 kun |119894| gt 1 tai |119895| gt 1 voidaan kirjoittaa

=1983466119894=minus1

1983466119895=minus1

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(310)

= 983466983466119894119895=minus101

119875(119894 119895)119860(119896 minus 119894 119897 minus 119895)(311)

Toisin sanoen119875lowast119860 voidaan tulkita 119899times119899 -kuvamatriisiksi jonka kunkin (119896 119897)-pikselin(119875 lowast 119860)(119896 119897) arvo on painotettu summa 119860(119896 119897)sta ja sen naapuripikseleistauml missaumlpainot saadaan konvoluutiomatriisista

341 Reunat

Vielauml on sovittava kuinka kaumlsitellaumlaumln 119860n reunat eli tapaukset jolloin kaavassa 39summattava 119860(119894 119895) ei ole maumlaumlritelty koska indeksit (119894 119895) menevaumlt 119860n rajojen ulko-puolelle 119894 lt 1 tai 119894 gt 119898 tai 119895 lt 1 tai 119895 gt 119899

Yksinkertaisin vaihtoehto olisi yksinkertaisesti jaumlttaumlauml summasta 39 pois ne pikse-lit joissa konvoluutio-operaatio ei naumlin tulkittuna olisi maumlaumlritelty taumllloumlin konvolvoitumatriisi 119875 lowast119860 olisi mitoiltaan pienempi kuin alkuperaumlinen 119860 mikauml ei ole toivottavaa

Toinen usein kaumlytetty vaihtoehto on rsquolaajentaa matriisia nollallarsquo ja tulkita mat-riisin 119860n pikseleiden 119860(119894 119895) arvot nollaksi kun 119894 119895 ovat matriisin ulkopuolella Koskavalitussa kuvamallissa kuvamatriisin 119860n arvot rsquoneutraaliarsquo tyhjaumlauml taustaa esittaumlvillaumlalueilla ovat 1 ja kappaleen kohdalla 0 (kuvamme esittaumlauml tummia kappaleita val-kealla taustalla) kaumlytetaumlaumln rsquonollanarsquo lukua 1 2 Ongelmaksi jaumlauml taumllloumlin tilanne jossaympyraumlkiekko ei ole kokonaan kuvan sisaumlllauml taumlllaiset kiekot saisivat kuvan laidassavalkean reunan

Kolmas yleinen ratkaisu on laajentaa kuvamatriisia konvoluutiota laskettaessatoistamalla rsquonollanrsquo sijasta 119860n olemassaolevia reunapikselejauml Koska puuttuvienkonvoluution laskemiseen tarvittavat alueet ekstrapoloidaan taumlmaumlkin aiheuttaa

2Tai vaihtoehtoisesti tuottaa kuvadatasta kaumlaumlnteiskuva ja operoida sillauml matriisin alkio on 1 =kuuluu ympyraumlkiekkoon 0 = ei kuulu kiekkoon

22

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 26: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

pienen vaumlaumlristymaumln 3 Tutkielmassa kaumlytetyillauml pienillauml konvoluutiomatriiseillavaumlaumlristymauml on kuitenkin hyvin pieni [BB09]

Joissain tapauksissa on hyoumldyllistauml tulkita kuva toruspintana jolloin kunkin reu-nan yli menevaumlt pikselit tulkitaan otettavaksi vastakkaisesta reunasta Naumlin maumlaumlri-teltyauml konvoluutiosuodatinta sanotaan myoumls sykliseksi konvoluutioksi Kaumlytaumlnnoumlssaumlero siihen ettauml kuvamatriisia jatkettaisiin on myoumls pienillauml konvoluutiomatriiseillapieni [Jaumlh02 s 104ndash106]

Vastrsquoedes tutkielmassa sovitaan ettauml konvoluutio-operaatiossa reunat kaumlsitellaumlaumlnkolmannella esitetyllauml tavalla eli jatkamalla olemassaolevia reunapikseleitauml

35 Kohina

Tavoitteena on mallintaa prosessia jonka tuottamat kuvat sumentuneen lisaumlksikohinaisia mihin kaumlytaumlmme additiivista kohinamallia

Yleisesti kohinalla tarkoitetaan havaitussa kuvassa 119860havaittu ei-toivottua satun-naista komponenttia Additiivisessa kohinamallissa taumltauml mallinnetaan lisaumlaumlmaumlllaumlkohinattomaan kuvaan satunnaismatriisi 119864 jossa jokainen pikseli alkio (pikseli) onjokin satunnaismuuttuja Jos sumennettu (konvolvoitu) kuva on 119875 lowast 119860 lopullinensumentunut ja kohinainen kuva on

119875 lowast 119860 + 119864

Taumlllaisessa mallissa kohinamatriisin 119864 jakauma tyypillisesti riippuu mallinnettavastahaumlirioumllaumlhteestauml Monia yleisiauml kohinatyyppejauml mallinnetaan normaalijakautuneellakohinamallilla (Gaussian noise) kuten esimerkiksi laitteiston elektronisten kom-ponenttien laumlmpoumlkohinaa ([Bon05]) tai approksimaationa Poisson-jakautuneestaotoskohinasta [Ks esim Jaumlh02 luku 345] Toinen yleinen kohinatyyppi on nksuola ja pippuri -kohina (salt and pepper noise) jota syntyy esimerkiksi digitoinnissatai digitaalisessa tiedonsiirrossa kuvan pikseleistauml vain harvaan on kohdistunutvirhe mutta haumlirioumlt ovat hyvin suuria suuntaan tai toiseen jolloin kuva naumlyttaumlauml siltaumlikaumlaumln kuin sille olisi ripoteltu suolaa ja pippuria [Bon05]

Yhteistauml edellaumlmainituille virhelaumlhteille on ettauml kohina syntyy vasta kuvandigitaalisessa talteenottolaitteistossa kuva on jo sumea havaintopinnan tulkitessasen digitaaliseksi signaaliksi Taumlssauml mielessauml additiivinen malli on mielekaumls

3Parhaassa tapauksessa konvolvoitava raakakuva olisi suurempi kuin tarpeen jolloin siitauml voitaisiinleikata reunat pois ja syntyvauml pienempi kuva olisi toivottun kokoinen

23

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 27: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

36 Havaintomalli ja simuloidun aineiston malli

Edellauml maumlaumlriteltiin yleinen kuvamalli

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

sumentuneita ja kohinaisia kiekkokuvia tuottavasta prosessistaTutkielmassa esitellyn algoritmin toimivuutta esitettyyn ongelmaan testataan ko-

keilemalla sitauml simuloituun aineistoon Oikeasssa tutkimustilanteessa havaintomalliolisi muodostettu approksimoimaan jotain todellista prosessia ja fysikaalisestaprosessista muodostettu malli on usein ainakin hieman epaumltarkka sillauml tutkittavaprosessi harvoin tunnetaan aivan taumlydellisesti

Naumlin ollen olisi epaumlrealistista sekauml tuottaa simuloitu aineisto ettauml sitten ana-lysoida sitauml taumlsmaumllleen samanlaiseen malliin perustuen Oletetaan kuitenkin ettaumlhavaintomallimme on approksimoi todellisuutta varsin hyvin jolloin simuloituunaineistoon 119860data voidaan kaumlyttaumlauml periaatteeltaan samaa mallia

(312) 119860data = 119875data lowast 119860119882 + 119864

missauml datan luomiseen kaumlytetty sumentava suodatin on kuitenkin hieman erilainenkuin havaintomallissa odotetaan

Kuvittelememme siis ettauml tutkimme yleisen mallin 32 mukaista prosessia jonkardquotodelliset parametritrdquo (konvoluutiomatriisi) ovat mallin 312 mukaiset Ympyroumlidentunnistamiseen (seuraavasssa luvussa) kuitenkin kaumlytetaumlaumln nk rdquohavaintomalliardquojoka on hieman yksinkertaisempi kuin aineiston luomiseen kaumlytetty rdquotodellinenrdquomalli

Kaumlytaumlnnoumlssauml ero mallien vaumllillauml on pieni mutta tarkoituksena on esitellauml par-haita periaatteita kuinka taumlllaisissa tutkimusongelmissa rdquorealistinenrdquo simuloituaineisto kannattaa tuottaa Erityisesti monissa inversio-ongelmien laskennallisissaratkaisuissa aineiston tuottaminen ja inversioratkaisun laskeminen samalla lasken-tamenetelmaumlllauml voi johtaa epaumlrealistisen hyviin tuloksiin [MS12]

361 Havaintomallin konvoluutiomatriisi

Valitaan havaintomallissa kaumlytettaumlvaumlksi konvoluutiomatriisiksi 119875

(313) 119875 =126

sdot

⎛⎜⎜⎜⎝

2 2 22 10 22 2 2

⎞⎟⎟⎟⎠

24

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 28: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Yllauml matriisi kerrotaan skalaarilla 126 jolla normitetaan matriisi siten ettauml konvoluutio

vastaisi painotetun keskiarvon ottamista Skalaari 126 saadaan yhtaumlloumlstauml

126

(8 sdot 2 + 10) = 1

Valittu 119875 muistuttaa hieman kuvan- ja signaalinkaumlsittelyssauml kaumlytettyauml Gauss-sumennosta (engl Gaussian low pass filter Gaussian blur) jossa konvoluutiomatriisinarvot saadaan kaksiulotteisesta Gaussin normaalijakaumasta

362 Havaintomallin kohina

Havaintomallissamme oletetaan yksinkertaisesti ettauml kohina 119864 on tasaisesti jakautu-nutta valkoista kohinaa Kaumlytettaumlvauml simuloitu data (joka maumlaumlritellaumlaumln tarkemminalaluvussa 36) ei pyri mallintamaan mitaumlaumln tiettyauml erityistauml kamerasysteemiauml jo-ten voimme valita yleisen esimerkin kohinalaumlhteestauml joka huonontaa kuvan laatuavarsin paljon Oikeassa sovelluksessa kohinamallia todennaumlkoumlisesti olisi tarpeentarkentaa kaumlytettaumlvaumln mittaustilanteen ja -vaumllineiden oikeasti tuottaman kohinanperusteella

Kohinamatriisi 119864 ajatellaan satunnaismatriisiksi jonka alkiot 119864(119894 119895) = 119864119894119895 ovatriippumattomia tasaisesti jakautuneita satunnaismuuttujia keskiarvolla 0

(314) 119864(119894 119895) sim 119880(minus05 05)

Taumlllaista kohinaa jossa 119864119894119895 ovat samoin jakautuneita (riippumattomia) satunnais-muuttujia ja niiden keskiarvo on 0 kutsutaan valkoiseksi kohinaksi4

Visuaalisesti summamatriisin 119875 lowast 119860 + 119864 alkiot joiden arvot ovat vaumllin [0 1] ulko-puolella tulkitaan luvuksi 0 tai 1 riippuen olisiko alkio vaumllin [0 1] ala- vai ylaumlpuolella

363 Simuloidun aineiston sumennos ja kohina

Sumentavaksi suodattimeksi 119875data valitaan hieman monimutkaisempi konvoluutio-matriisi jota havaintomallin konvoluutiomatriisi yrittaumlauml rdquoepaumltarkastirdquo mallintaa

(315) 119875data =136

⎛⎜⎜⎜⎜⎜⎝

0 1 1 1 01 2 2 2 11 2 8 2 11 2 2 2 10 1 1 1 0

⎞⎟⎟⎟⎟⎟⎠

4Valkoisen kohinan tarkka maumlaumlritelmauml joka perustuu 119864n tehospektrin tarkasteluun ei kuulu taumlmaumlntutkielman piiriin Tehospektri voidaan maumlaumlritellauml esimerkiksi 119864n autokorrelaatiofunktion Fourier-muunnoksen kautta [ks Jaumlh02 s96 ndash 97]

25

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 29: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Simuloituun aineistoon lisaumlttaumlvauml kohina on havaintomallin mukaista tasaistasatunnaiskohinaa

(316) 119864(119894 119895) sim 119880(minus05 05)

jota on helppo generoida laskennellisilla ohjelmistoilla Havaintomallin mukaisestilopullisessa kuvassa harmaasaumlvykuvan pikseleiden arvorajojen [0 1] ylle tai allearvoja saavat matriisin alkiot tulkitaan pikseleiksi

(317) (119875 lowast 119860 + 119864)kuva(119894 119895) =⎧⎪⎨⎪⎩

0 jos (119875 lowast 119860 + 119864)(119894 119895) lt 0

1 jos (119875 lowast 119860 + 119864)(119894 119895) gt 1

26

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 30: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 4

Jaumlaumlhdytysalgoritmin soveltaminenkiekko-ongelmaan

41 Kiekko-ongelman muotoilu optimointiongelmana

Oletetaan ettauml kuva 119860data esittaumlauml edellisessauml luvussa esitellyn mallin mukaisesti yhtaumlympyraumlkiekkoa1199080 = (1199090 1199100 1199030) jonka parametrit ajatellaan tuntemattomiksi vakioik-si jotka halutaan selvittaumlauml Taumlmauml yhden kiekon kiekko-ongelma voidaan ajatella maumlauml-ritelmaumln 21 mukaisena globaalina diskreettinauml optimointiongelmana jossa pyritaumlaumlnloumlytaumlmaumlaumln muuttujille 119909 119910 119903 arvot jotka minimoivat niitauml vastaavan havaintomallinkuvan 119860havaittu eron 119860dataaan Monen kiekon tapauksessa vastaavasti pyritaumlaumln mini-moimaan jokaista kuvan 119860data esittaumlmaumln kiekkokokoelman 119882 = (1199080 hellip 119908119896) kiekkoavastaavat parametrit

Jos kuvien resoluution ajatellaan olevan tarpeeksi suuri kiekko-ongelmaa olisimyoumls perusteltua mallintaa jatkuvan optimoinnin tehtaumlvaumlnauml eikauml kombinatorisenaoptimointiongelmana johon taumlssauml tutkielmassa kuvattu rdquoklassinenrdquo SA soveltuuEsimerkiksi Press et al [Pre+07] ehdottavat jatkuvassa tapauksessa hieman hie-nostuneempaa menetelmaumlauml uuden tilan 119904119895 valitsemiseen Kaumlytaumlnnoumlssauml diskreettialgoritmi kuitenkin toimii kiekko-ongelmaan ja joka tapauksessa teoreettisestijatkuva parametriavaruus on diskreetti laskentatarkkuuden puitteissa

Muotoillaan 119896 kiekon ongelma aumlaumlrelliselle 119896 isin ℕ (josta yhden kiekon ongelmasaadaan erikoistapauksena 119896 = 1) optimointiongelmana johon sovelletaan jaumlaumlh-dytysalgoritmia Maumlaumlritellaumlaumln algoritmin tilat ja valitaan sopiva energiafunktio jajaumlaumlhdytysstrategia

Maumlaumlritelmauml 41 Yhden kiekon tapauksessa sanomme ettauml kiekon 119908119894 maumlaumlrittaumlvaumltparametrit 119909119894 119910119894 119903119894 muodostavat yhdessauml jaumlaumlhdytysalgoritmin tilan (tai ratkaisueh-

27

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 31: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

dokkaan tai konfiguraation) 119904119894

(41) 119904119894 = (119909119894 119910119894 119903119894) isin 119898 times 119899 times ℝ

Vastaavasti monen kiekon ongelmassa kun kiekkojen maumlaumlrauml 119896 on tunnettu systeemintila 119904119894 on kokoelma kiekkoja 119882 eli ne maumlaumlritteleviauml parametrivektoreita

119904119894 = 1199041198941 hellip 119904119894119896(42)

= (1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)(43)

jotka voidaan tarpeen vaatiessa esittaumlauml esimerkiksi matriisina

(44) 119904119894 = 983548(1199091198941 1199101198941 1199031198941) hellip (119909119894119896 119910119894119896 119903119894119896)983551

42 Energiafunktio

Maumlaumlritellaumlaumln seuraavaksi edellisessauml luvussa 3 rdquoKiekko-ongelman kuvamallirdquo esi-tellyn havaintomallin (32)

(32) 119860havaittu = 119875 lowast 119860119882 + 119864

pohjalta sopiva optimoitava energiafunktio

421 Naiivi energiafunktio

Kuten aiemminkin merkitaumlaumln kuvadatamatriisia 119860data ja parametrien 119909 119910 119903 maumlauml-raumlaumlmaumlauml ympyraumlauml 119908 esittaumlvauml matriisia 119860119909119910119903 = 119860119908 Mallin (32) ytimellauml konvolvoitukuvamatriisi on 119875 lowast 119860119908 jonka avulla voidaan maumlaumlritellauml eraumls yksinkertainen ener-giafunktio

Energiafunktio 119864naiivi on 119875 lowast 119860119908n rsquopikselikohtainenrsquo ero matriisiin 119860data elierotuksen 119860data minus 119875 lowast 119860119908 alkioittainen euklidisen normin neliouml

(45) 119864naiivi(119904) = 119864naiivi(119909 119910 119903) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119908(119894 119895)983557

2

Luvussa 3 maumlaumlriteltiin myoumls malli usean 119896 kiekon kokoelmaa 119882 = 1199081 hellip 119908119896vastaavalle kuvalle 119860119882 ja 119864naiivi yleistyy suoraan kokoelmalle 119882 kun tila 119904 yleiste-taumlaumln monelle kiekolla kuten yllauml yhtaumlloumlssauml (42)

(46) 119864naiivi(119904) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)983557

2

28

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 32: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Suoraan naumlhdaumlaumln ettauml energiafunktion kannalta parempi on sellainen tila 119904jonka parametrit ovat laumlhellauml kaumlyttaumlmaumlmme mallin mukaisia rdquotodellisiardquo kiekko-parametreja 119882 = 119904opt ja vastaavasti tilat 119904prime joiden kiekot kaukana 119860data todellisistakiekoista ovat energiafunktion 119864naiivi huonompia

Ilman datan kohinaa ja mallin epaumltarkkuutta (119875 ne 119875data) edellauml maumlaumlritelty ener-giafunktio saavuttaisi globaalin minimin 119864naiivi(119904opt) = 0 Virheilaumlhteiden vuoksitaumlmauml ei ole luultavasti taumlysin mahdollista mutta voidaan olettaa ettauml suurella to-dennaumlkoumlisyydellauml energiafunktio on taumlssauml suhteessa edelleen hyvauml kohinasta jaepaumltarkasta sumennosmallista huolimatta

422 Energiamaasto

Tarkastellaan seuraavaksi energiafunktion 119864naiivi rsquoenergiamaastoarsquo eli sen paramet-riavaruudessaan saamia arvoja ( energy landscape [SSF02])

Ensinnaumlkin 119864naiivi ei erota toisistaan kahta eri tilavektoria 119904 ja 119904prime mikaumlli niitaumlvastaavat ympyraumlt eivaumlt osu paumlaumlllekkaumlin minkaumlaumln 119860datan ympyraumlobjektin kanssaToisin sanoen vaikka toinen tilavektori 119904 olisi paljon laumlhempaumlnauml optimia kuin 119904prime(Ks kuva n) Kaumlytaumlnnoumlssauml algoritmi ei pysty parempaan kuin satunnaisiin arvauk-siin kunnes tilakandidaattien 119904119894 satunnaiskulku osuu sellaiseen kandidaattiin jotavastaava ympyrauml on osittain 119860datan tavoiteympyraumln paumlaumlllauml vasta taumlmaumln jaumllkeenenergiafunktio pystyy mittaamaan uuden tilaehdokkaan 119904119895 paremmuutta suhteessaedelliseen 119904119894

Hyvin pienillauml ympyraumln saumlteillauml tehtaumlvauml muistuttaa yhtauml enemmaumln sellaista opti-mointiongelmaa jota Salamon Sibani ja Frost [SSF02] kutsuvat rsquogolf-reikaumlongelmaksirsquotasaisessa energiamaastossa on pieni alue joka ei naumly ympaumlroumlivaumlssauml energiamaas-tossa (ikaumlaumln kuin golf-kentaumln reikauml) jossa saavutetaan globaali minimi (Kuva 41)Taumlllaumlisen yksittaumlisten algoritmin naumlkoumlkulmasta satunnaisten minimipisteiden loumlytauml-miseen on vaikea loumlytaumlauml satunnaishakua parempaa strategiaa SA-algoritmi pyrkiivastaamaan taumlhaumln korkean laumlmpoumltilan ratkaisujen satunnaisuudella sopivalla jaumlaumlh-dytysskenaariolla ratkaisu loumlydetaumlaumln vielauml laumlmpoumltilan 119905 ollessa korkea ja suuri osaparametriavaruudesta on satunnaiskulun tavoitettavissa mikauml on kuitenkin kiekko-jen saumlteiden kutistuessa pistemaumlisiksi yhauml vaikeampaa

Toiseksi kuvan reunat muodostavat 119864naiivin suhteen lokaalin minimin (ks ku-va 41c) samoin tilavektorit 119904 joissa kiekkokandidaatit asettuvat osittain paumlaumlllekkaumlinpyrkien kattamaan esimerkiksi vain yhden suurempia 119860datan kiekon mahdollisim-maan tarkkaan (kuva 42b)

29

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 33: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

423 Paranneltu monen kiekon energiafunktio

Kiekkojen lukumaumlaumlraumln ja ratkaisuavaruuden Ω ulottuvuuksien maumlaumlraumln kasvaessapaumlaumlllekkaumlisten kandidaattien lokaalien minimien maumlaumlrauml moninkertaistuu nopeastija vaikeuttaa optimaalisen ratkaisun 119904opt loumlytaumlmistauml (Kuva 42b) Taumlmaumln vuoksimaumlaumlritellaumlaumln myoumls paranneltu energiafunktio 119864par joka rankaisee paumlaumlllekkaumlisistaumlkandidaattikiekoista (Tutkituissa aineistoissa 119860datassa ei ole paumlaumlllekkaumlisiauml kiekkoja)

Maumlaumlritellaumlaumln ensin kuvamatriisin 119860 intensiteettikaumlaumlnteiskuva

119860prime = 1 minus 119860 =⎧⎪⎨⎪⎩

119860(119894 119895)prime = 0 jos 119860(119894 119895) = 1

119860(119894 119895)prime = 1 jos 119860(119894 119895) = 0

ja reaalilukuarvoinen apumatriisi Δ119860 isin ℝ119898times119899

(47) Δ119860 = 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557

missauml 1 on 119860n kokoinen ykkoumlsmatriisi ja yhteenlasku- ja erotus tavallisia matriisio-peraatiota Matriisin A avulla voidaan nyt maumlaumlritellauml paranneltu energiafunktio

(48) 119864par(119904) = 119864par(1199081 hellip 119908119896) = 983466119894983466119895983554119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895)983557

2

Naumlhdaumlaumln ettauml jos kiekot 1199081 hellip 119908119896 ovat erillisiauml paumltee 1 minus 983554119860prime1199081 +⋯+119860prime

119908119896983557 =

1198601199081hellip119908119896 = 119860119882 ja 119864par saisi kyseisillauml parametrin arvoilla saman arvon kuin 119864naiiviSellaisten pikseleiden (119894 119895) joiden kohdalla useampi kiekko osuu paumlaumlllekkaumlin apu-matriisin pikselit Δ119860(119894 119895) ovat negatiivisia toisin kuin vastaavassa kuvamatriisissa119860119882 jonka elementeille paumltee

119860119882 (119894 119895) isin [0 1]

Naumlin ollen yhtaumlloumln (48) energiafunktio 119864sov saa paumlaumlllekkaumlisten kiekkojen kohdallasuuremman arvon kuin 119864naiivi sillauml

119860data(119894 119895) minus 119875 lowast Δ119860(119894 119895) gt 119860data(119894 119895) minus 119875 lowast 119860119882 (119894 119895)

Kaumlytaumlnnoumln esimerkki kuvassa 42

43 Siirtymaumlt

Yksinkertaisin tapa toteuttaa jaumlaumlhdytysalgoritmin rsquopieni satunnainen siirtymaumlrsquo olisisatunnaisesti valita jokin muuttujista 119909 119910 119903 ja lisaumltauml tai vaumlhentaumlauml siitauml jokin kiinteaumlpieni luku 120575 gt 0 Kaumlytaumlnnoumlssauml naumlin saataisiin jatkuvan parametriavaruuden Ωdiskretisointi Taumllloumlin kuitenkin joko menetettaumlisiin ratkaisutarkkuutta (jos 120575 on

30

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 34: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

(a) 119860data 119903 = 3

120

130

100

110

r = 3

10

20

30

40

50

140

0 010

2030

4050

(b) Kiinteauml 119903 = 3

120

130

140

150

160

170

180

r = 5

10

20

30

40

50

0 010

2030

4050

(c) Kiinteauml 119903 = 5

Kuva 41 Energiafunktion 119864naiivi energiamaasto 119909119910-avaruudessa Energiamaasto on119909119910-ulottuvuudessa golf-reikaumlmaumlinen (kuva 41b) mutta 119903-ulottuvuudessa globaalinminimin rsquokuopparsquo naumlkyy alati laajemmalla alueella kun 119903 kasvaa Huomaa myoumlsreunojen lokaalit minimit

31

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 35: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

(a) 119860data (119909119894 119910119894 119903119894) =(35 20 15) (10 30 5)

180

200

220

240

260

280

10

20

30

40

50

r = 5

300

0 010

2030

4050

(b) 119864naiivi

150

200

250

10

20

30

40

50

r = 5

300

350

0 010

2030

4050

(c) 119864sov

Kuva 42 Energiafunktioiden 119864naiivi ja 119864sov arvoja toisen kiekon 11990921199102-avaruudessakun toisen kiekon saumlde 1199032 = 5 ja ensimmaumlisen kiekon parametrit pidetaumlaumln vakioina(1199091 1199101 1199031) = (34 22 14) 119864sov rankaisee tiloista joissa toinen parametrikiekko onensimmaumlisen paumlaumlllauml

32

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 36: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

suuri) tai pienellauml vakion arvolla 120575 asymp pikseli siirtymaumlt olisivat liian pieniauml jottaalgoritmi kaumlvisi ratkaisuavaruutta laumlpi tehokkaasti

Taumlmaumln vuoksi kaumlytetaumlaumln seuraavaa menetelmaumlauml siirtymien generointiin Valitaansatunnainen kiekko jonka parametrit ovat (119909 119910 119903) Uusi piste (119909prime 119910prime 119903prime) valitaan(119909 119910 119903) -keskisen rsquoellipsoidinrsquo sisaumlltauml parametriavaruudessa Ω

119903prime = 120575 sdot 119903 120575 sim 119880(minus1 1)(49)

(119909prime 119910prime) = (119909 119910) + 120575 sdot (cos(120601) sin(120601)) 120601 isin 119880(0 2120587)(410)

Lisaumlksi rajoitetaan 119909 119910-siirtymiauml siten ettei kiekon keskipiste voi mennauml kuva-alueen 119860 ulkopuolelle Vastaavasti estetaumlaumln arvot 119903 lt 1 pikseli (119903 = 0 muodostaisimyoumls lokaalin minimin) ja 119903 gt kuvan koko

44 Jaumlaumlhdytysstrategia

SA-algoritmin jaumlaumlhdytysstrategian valitsemiseen yleisesti kirjallisuus ([LA87] [SSF02][Pre+07]) tarjoaa lukuisia hyvin erilaisia vaihtoehtoja Taumlssauml tutkielmassa kaumlytetaumlaumlnyksinkertaista eksponentiaalista jaumlaumlhdytysstrategiaa

441 Laumlmpoumltilan laskeminen

Laumlmpoumltilaa homogeenilla ketjulla 119896 paumlivitetaumlaumln yhtaumlloumln

(411) 119905119896+1 = 120572 sdot 119905119896 119896 = 0 1 2 hellip

mukaisesti missauml 120572 on vakio 1 minus 120598 jollekin pienelle 120598 gt 0 (Kaumlytaumlnnoumlssauml rsquopienellaumlrsquotarkoitamme ettauml kokeilemme luvussa 5 arvoja 120572 = 090hellip099)

Markov-ketjun pituus kullakin kontrolliparametrin arvolla 119905119896 asetetaan vakioksi119871119896 = 10

442 Laumlmpoumltilan alkuarvo

Kontrolliparametrin alkuarvo 1199050 eli laumlhtoumllaumlmpoumltila pyritaumlaumln valitsemaan siten et-tauml laumlmpoumltilan ensimmaumlisillauml arvoilla hyvaumlksyttyjen tilamuutosten suhde kaikkiinyritettyihin tilamuutoksiin 119902 on laumlhellauml yhtauml eli

(412) 1199020 = expminusΔ1198641199050 asymp 1

missauml Δ119864 on rsquokeskimaumlaumlraumlistaumlrsquo satunnaista siirtymaumlauml vastaava energiafunktion muu-tos laumlmpoumltilassa 1199050 Toisaalta ei ole toivottavaa ettauml 119905 saumlilyy korkeana (ja 119902 asymp 1) liian

33

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 37: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

pitkaumlaumln jolloin siitauml ei enaumlauml hyoumltyauml algoritmin toimivuuden kannalta ja simulointikorkeissa laumlmpoumltiloissa vie turhaan laskenta-aikaa

Naumlin ollen kunkin algoritmin ajokerran alussa valitaan sopiva arvio saadaanyhtaumlloumln 412 avulla

exp 983554minusΔ1198641199050983557 = 1199020 (le 1)(413)

1199050 = minusΔ119864

log 1199020 1199020 le 1(414)

missauml keskimaumlaumlraumlistauml energiafunktion muutosta Δ119864 kullakin 119860data arvioidaan simu-loimalla muutamia jaksossa 43 kuvailtuja siirtymiauml

443 Loppukriteeri

Kaumlytaumlnnoumln varotoimenpiteenauml asetetaan maksimiraja kuinka monta iteraatiota algo-ritmia suoritetaan (119899 = 1000 homogeenia 10 iteraation Markov-ketjua)

Varsinaiseksi lopetuskriteeriksi asetamme kuitenkin sen laumlmpoumltilan jossa Markov-ketjut alkavat toistua samankaltaisina eli uudet iteraatiot pienemmillauml laumlmpoumltiloillaeivaumlt enaumlauml vaikuta johtavan merkittaumlvaumlsti parempiin ratkaisuihin Kaumlytaumlnnoumlssaumlkelvolliseksi osoittautui katkaisuehto jossa algoritmin iteraatio 119894 jaumlauml viimeiseksi119894 ∶= 119894final jos

(415)sum

119895=0hellip3 119902119894minus1198954

lt 005

34

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 38: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 5

Tulokset

51 Testiaineisto

Algoritmin tutkimista varten luotiin simuloitu testiaineisto jaksossa 36 kuvaillunmallin mukaisesti Aineistoa varten generoitiin suuri joukko erilaisia parametreil-taan mielivaltaisten 119896 = 1 5 kiekon harmaasaumlvykuvia joiden koko oli 50 times 50pikseliauml ja algoritmin toiminnan tarkastelua varten poimittiin esimerkinluontoi-sesti kuusi kuvaa (a b c d e f) jotka naumlkyvaumlt kuvassa 51 Testikuvien a b ja cavulla esitellaumlaumln algoritmin toimintaa kiekkomaumlaumlraumln kasvaessa Kuvan d avulla taasvaikuttavatko eri jaumlaumlhdytysskenaariot ratkaisun tarkkuuteen loumlytaumlauml pieni kiekko(119909 = 35 119910 = 35 119903 = 2) ja testikuvia e f vertailemalla tarkastellaan miten yhdenkiekon saumlteen muutos algoritmin toimintaan

52 Ratkaisun onnistumisen mittaaminen

Kuvaillaan vielauml mitat joita kaumlytetaumlaumln ratkaisun onnistumisen arvioimiseen

521 Energiafunktio

Energiafunktion arvon tarkastelu kullakin iteraatiolla kunkin kulkijan edetessauml onluonnollinen menetelmauml arvioida optimointialgoritmin toimintaa Varjopuolena ku-va energiafunktion tarkastelu ei vaumllttaumlmaumlttauml kerro paljonkaan kuinka hyvauml ratkaisuon tarkasteltavan kuvakaumlsittelyongelman suhteen

522 Pinta-alan symmetrinen erotus

Toinen vaihtoeheto on verrata todellisen ja ratkaisun kiekkojen symmetristauml erotustaOlkoon119882final kulkijan lopullinen ratkaisu ympyraumlparametreille ja119882orig alkuperaumlisetdatan luomiseen kaumlytetyt kiekkojen parametrit ja 119860119882 luvun 3 mallin mukaisesti

35

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 39: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kuva 51 Tutkielmassa laumlhemmin tarkasteltavat testikuvat Vasemmalta oikealleylaumlrivi Testikuvat a b c Alarivi d e f

kiekkoparametreja vastaava haumlirioumltoumln kuva jossa 119860119894119895 = 0 jos pikseli on kuvansisaumlllauml Olkoon myoumls vastaava kuvaa 119860 vastaava kaumlaumlnteiskuva 119860prime = 1 minus 119860 kutenkappaleessa 423 Taumllloin symmetriseen erotukseen perustuva mitta on

119898symm(119882final119882orig) = (119860prime119882final

⧵ 119860prime119882orig

) cup (119860prime119882orig

⧵ 119860prime119882final

)

kun kuvamatriisit mielletaumlaumln joukoiksi johon joku tietty pikseli kuuluu (119860prime119894119895 = 1)

tai ei (119860prime119894119895 = 0) Mitta vastaa naiivia energiafunktiota ja melko samankaltainen

parannellun energiafunktion kanssa

523 Sovellettu etaumlisyysmitta

Maumlaumlritellaumlaumln lisaumlksi toisenlainen ratkaisukiekkojen etaumlisyyttauml todellisista mittaavamitta joka ei perustu pinta-aloihin mutta kuitenkin vastaa intuitiivisista kaumlsitystaumlkiekkojen etaumlisyydestauml Valitaan loumlydetyn ratkaisun ja todellisten kiekkojen vaumllisek-si etaumlisyydeksi summa kunkin ratkaisukiekon keskipisteen ja saumlteen Euklidinenetaumlisyys alkuperaumlisten kiekkojen keskipisteeseen ja saumlteeseen kun ratkaisun kiekko-jen todelliset vastineet valitaan kaikkien mahdollisten kiekkoparien etaumlisyyksienpienuusjaumlrjestyksessauml

Toisin sanoen kaumlytetaumlaumln seuraavanlaista algoritmia Olkoon 119882final119882orig kiekko-

36

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 40: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

joukot kuten yllauml ja lasketaan etaumlisyys 119898sov seuraavasti

Data 119882final119882origResult 119898sov

119899circles larr |119882| 119898119904 larr 0for 119894 larr 1 to 119899circles do

119889min larr min119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119886min 119887min larr argmin119886isin119882final119887isin119882orig

119886119909 minus 119887119910 + 119886119910 minus 119887119910 + 119886119903 minus 119887119903

119898sov larr 119898119904 + 119889min119882final larr 119882final ⧵ 119886min119882orig larr 119882orig ⧵ 119887min

end

53 Algoritmin tulokset

Testiaineiston kuville ajettiin 100 kertaa luvussa 4 kuvailtu algoritmi vaihtelevallamaumlaumlraumlllauml jaumlaumlhdytysskenaarioita 120572 = 090hellip099 Jokaista algoritmin ajokertaa tietyinparametrein eli toteutunutta Markov-ketjua nimitetaumlaumln jatkossa kulkijaksi

Koska kulkijat ovat itsenaumlisiauml kunkin 100 kulkijan kokoelman simuloinnissavoitiin hyoumldyntaumlauml rinnakkaislaskentaa Numeeriseen laskentaan kaumlytettiin Helsinginyliopiston Tietojenkaumlsittelytieteen laitoksen Ukko-laskentaklusteria

Taulukko 51 Testiaineiston kuvat a b c Kuvien 52 ja 53 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus (homogeenienMarkov-ketjujen maumlaumlrauml) Jaumlaumlhdytysskenaariot 120572 = 090 ja 120572 = 099

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

090 a 56 129982734083 143765180533 22b 52 136670018567 336654077973 66c 60 159514844916 675832581266 131

099 a 679 129277573595 141934200707 22b 411 135156720071 50613981837 49c 438 149503374454 27974956417 73

37

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 41: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kuva 52 Testiaineiston kuvat a b c Parhaat ratkaisut energiafunktion suhteen (pu-naiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 = 090 Todellisetkiekot alarivillauml vihreaumlllauml katkoviivalla

Kuva 53 Samat testikuvat a b c kuin kuvassa 52 Parhaat ratkaisut energiafunktionsuhteen (punaiset ympyraumlt) 100 kulkijan kokoelmasta jaumlaumlhdytysskenaariolla 120572 =099

38

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 42: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

200 300 400 500 600 700E

0

10

20

30

40

50

60

70

n

140 210 280 350 420 490E

160 200 240 280 320E

Kuva 54 Kuvan 52 skenaariota vastaavien kokoelmien kulkijoiden lopullistenenergioiden jakaumat Testikuvaa b vastaavaan histogrammiin merkitty kokoelmanenergialtaan paras ratkaisu sekauml histogrammin moodi (119864 asymp 280)

0 10 20 30 40 500

10

20

30

40

50 090

Kuva 55 Kuvan 54 testikuvan b histogrammin energiamoodin kulkijoiden (119899 = 22kpl) loumlytaumlmaumlt keskipisteet saman kulkijan pisteet samalla vaumlrillauml Keskipisteidensijaintiin lisaumltty 119880(minus2 2)-taumlrinaumlauml paumlaumlllekkaumlisten merkkien naumlkemiseksi Toisin kuinkuvassa 54 naumlkyvaumlssauml parhaassa ratkaisussa loppuenergiamoodin kulkijat eivaumltnaumlytauml loumlytaumlvaumln neljaumlttauml kiekkoa (119909 = 44 119910 = 44 119903 = 8)

39

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 43: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Taulukko 52 Testiaineiston kuva d Kuvien 56 ndash 510 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

Aineisto 120572 Markov-ketjuja Energia 119898sov 119898symm

d 099 582 11270531642 134903737042 12098 292 115799173967 171400032558 20096 188 113108609169 133302834307 12094 103 112772445287 13089734381 12090 70 115694414615 338856144998 22

Kuva 56 Testikuva d loppuenergialtaan paras kulkija 100 kulkijan kokoelmastakun 120572 = 099

Kuva 57 Testikuva d 120572 = 098

40

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 44: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kuva 58 Testikuva d 120572 = 096

Kuva 59 Testikuva d 120572 = 094

Kuva 510 Testikuva d 120572 = 090

41

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 45: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

100 101 102 103 104102

103

104

E

099098096094090

100 101 102 103 104

iter

0100200300400500600700

t

Kuva 511 Kuvien 56 ndash 510 kulkijoiden energioiden ja laumlmpoumltilojen kehitys Sto-kastisen alkuarvon asetuksen takia alkulaumlmpoumltilassa on huomattavaa vaihtelua(1199050 asymp 200hellip700)

0 20 40 60 80 100kulkija

120

140

160

180

200

E

099

0 20 40 60 80 100kulkija

E

098

0 20 40 60 80 100kulkija

E

096

0 20 40 60 80 100kulkija

E

094

0 20 40 60 80 100kulkija

E

090

Kuva 512 Kuvien 56 ndash 510 vastaavien kokoelmien parhaan energian kehitys ko-koelman koon funktiona

42

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 46: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Taulukko 53 Testiaineiston kuvat ef Kuvien 513 ja 515 energiafunktion suhteenparhaiden ratkaisujen lopulliset energiat virheet ja kulkijoiden pituus

120572 Aineisto Markov-ketjuja Energia 119898sov 119898symm

099 e 636 126820768777 417710820974 26f 483 131350277715 212525820166 58

094 e 89 126912392409 295102365738 36f 102 134677587474 278990164056 70

090 e 74 124101054568 118660423496 30f 65 139955257356 140600416833 92

Kuva 513 Kuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoelmastajaumlaumlhdytysskenaariolla 120572 = 099

43

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 47: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kuva 514 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 094

Kuva 515 Testikuvat e f Parhaat ratkaisut (punaiset ympyraumlt) 100 kulkijan kokoel-masta jaumlaumlhdytysskenaariolla 120572 = 090

44

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 48: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

0 100 200 300 400 500E

0

10

20

30

40

50

60

n

0 100 200 300 400 500E

HidasNopea

Kuva 516 Testikuvien e ja f kulkijakokoelmien loppuenergiajakaumien histogram-mit jaumlaumlhdytysskenaarioilla 120572 = 099 (hidas) ja 120572 = 090 (nopea)

45

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 49: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Luku 6

Pohdinta ja johtopaumlaumltoumlkset

61 Tulosten analyysi

611 Energiafunktio

Luvussa 53 esitettyjen tulosten perusteella voidaan todeta ettauml algoritmi toimiiyleensauml kelvollisesti Silmaumlmaumlaumlraumlisesti energiafunktioltaan parhaat ratkaisukiekotovat usein varsin laumlhellauml oikeaa Energiafunktion teoreettista globaalia minimiaumlvoidaan arvioida laskemalla energiafunktion 119864naiivi odotusarvo E 5011990950-kokoisellekuvalle jossa teoreettisen ihanteellisten ratkaisuympyroumliden 119875 lowast 119860119882 peittaumlessaumldatan ympyraumlt on jaumlljellauml pelkkaumlauml mallin mukaista satunnaiskohinaa Odotusarvoksisaadaan

E983549119864naiivi([119864]gt0) = E983549983466119894119895[119864(119894 119895)]2gt0 (61)

missauml kukin matriisin [119864]gt0 alkio [119864(119894 119895)]gt0 on yhtaumlloumln (317) mukainen satunnais-muuttuja joka saadaan rsquoleikkaamallarsquo 119880(minus05 05)-jakautunut muuttuja 119864(119894 119895) vaumllille[0 1] jolloin kun satunnaismuuttujan 119864(119894 119895) tiheysfunktiota merkitaumlaumln 119901119864(119894119895)(119909)

= 983466119894119895

E983549[119864(119894 119895)]2gt0(62)

= 983466119894119895

983555int05

01199092119901119864(119894119895)(119909)119889119909 + int0

minus050 sdot 119901119864(119894119895)(119909)119889119909983558(63)

= 983466119894119895

9835491199093

3

05

0= 983466

119894119895

13 sdot 8

= 983466119894119895

124

(64)

=50 sdot 5024

asymp 10417(65)

mikauml on hyvin laumlhellauml muutamia myoumls silmaumlmaumlaumlraumlisesti erikoisen hyvin onnistu-neiden ratkaisujen lopullisia energiatasoja esimerkkinauml kuvan 56 ratkaisu jonka

46

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 50: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

loppunenergia asymp 11271 (taulukossa 52) Toisaalta pitaumlauml myoumls huomioida ettauml si-muloidun datan ja mallin erojen ynnauml muiden virheiden vuoksi on epaumlrealististaodottaa taumlllaista ideaalista ratkaisua jossa energiafunktiolla arvioitaisiin kuvaa jostakiekot olisi poistettu taumlydellisesti ja jaumlljellauml olisi vain kohinaa

Yllauml vaihe (62) seuraa odotusarvon lineaarisuudesta ja (63) yleisestauml kaavastamuunnetun (myoumls sekatyyppisen) satunnaismuuttujan odotusarvolle

E[119892(119883)] = intinfin

minusinfin119892(119909)119901119883(119909)119889119909

joiden tarkemmat perustelut loumlytyvaumlt esimerkiksi luentomonisteessa [Koi13]Toisaalta kuten jaksoissa 422 ja 423 oletettiin paranneltu energiafunktio 119864par

ei ole taumlydellinen ihmissilmaumlaumln suunnilleen oikeissa paikoissa sijaitsevat muttahieman epaumltarkasti 119860datan peittaumlvaumlt ratkaisukiekot kuten kuvassa 52 viiden kiekontestidatan c ratkaisu (120572 = 090 loppuenergia asymp 1595) on parempi ratkaisu kuinesimerkiksi saman datan toinen ratkaisu (kuvassa 52 120572 = 099 energia asymp 1495)jossa suuret kiekot ovat sijoittuneet tarkemmin kuin 120572 = 090 -skenaariossa muttayksi pieni kiekko taumlysin vaumlaumlraumlssauml paikassa Energiafunktio ja 119898symm ovat arvoltaankuitenkin kyseisellauml silminnaumlhden huonommalla ratkaisulla parempia toisin kuinintuitiota paremmin vastaava mitta 119898sov Suurten kiekkojen pienetkin virheet naumlky-vaumlt suuren pinta-alansa vuoksi energiafunktiossa ja virhemitasssa 119898symm herkaumlstiNaumlin ollen ylipaumlaumltaumlaumln pienet kiekot olivat algoritmille vaikeita kuvat 513 ndash 515

612 Jaumlaumlhdytysstrategiat

Samoin kuten jaumlaumlhdytysmenetelmaumln kirjallisuus antaa olettaa hitaat jaumlaumlhdytyss-kenaariot saavuttavat jossain maumlaumlrin parempia tuloksia kuin hitaat Vaikka sadankulkijan joukosta valikoidut kaikkein parhaat ratkaisut saavat kaikki melko hyviaumlja varsin samanlaisia tuloksia kaikilla 120572 (kuvat 56 ndash 510 513 ndash 515) hitaan ja hie-man nopeamman jaumlaumlhdytyksen ero naumlkyy kaikkien kulkijoiden loppuenergioidenhistogrammissa 516 Nopeilla skenaarioilla histogrammin massa on oikeammalla

Lisaumlksi havaitaan ettauml useiden kiekkojen ongelmissa jakauma ei ole aina uni-modaalinen vaan erityisesti nopeilla strategioilla huomattavan moni kulkija voirsquojaumlaumlhtyaumlrsquo epaumledulliseen konfiguraatioon jossa vain osa kiekoista loumlydetaumlaumln (Havain-nollistava kuva 55 vastaavia piikkejauml myoumls 516)

Toisaalta kuitenkin vastapainona nopealle jaumlaumlhdytysstrategialla kulkijakokoel-man kokoa kasvattamalla todennaumlkoumlisyyttauml ettauml nopeakin jaumlaumlhdytys loumlytaumlauml hyvaumlntuloksen (kuva 512) Yleisesti jaumlaumlhdytysmenetelmaumln kaltaisten algoritmien tehok-kaassa soveltamisessa numeerisesti raskaissa ongelmissa usein onkin hyoumldyllistaumlyrittaumlauml loumlytaumlauml optimaalinen suhde jaumlaumlhdytysskenaarion pituuden ja kulkijakokoel-man koon vaumllillauml ja etenkin sen dynaaminen arvioiminen ongelmanratkaisun aikana

47

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 51: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

[SSF02]

613 Ulottuvuuskirous

Kiekkojen lukumaumlaumlraumln kasvaessa yhdellauml ongelman optimoitavien parametrienavaruuden ulottuvuus kasvaa kolmella Tunnetusti optimointiongelmissa taumlmauml ava-ruuden koon kasvu vaikeuttaa optimointiongelmia ja taumlstauml syystauml kiekkojen maumlaumlraumloletettiin tunnetuksi vakioksi Naumlin ollen vielauml tutkielman pienillauml kiekkomaumlaumlrillauml119896 = 1hellip 5 ulottuvuuksien kasvu ei naumlyttaumlnyt olevan jaumlaumlhdytysalgoritmille suuriongelma

62 Yhteenveto ja pohdinta

621 Algoritmi

Jaumlaumlhdytysalgoritmi loumlysi esitettyyn kuvaongelmaan hyvaumln ratkaisun melko luotetta-vasti joten taumlssauml mielessauml metodia voi pitaumlauml toimivana SA on vakiintunut menetelmaumljosta on laajalti monenlaisia sovelluksia Taumlssauml tutkielmassa sovellettiin perinteistaumljaumlaumlhdytysalgoritmin muotoilua hyvin yksinkertaisella jaumlaumlhdytysskenaariolla Myoumlstoiminnan analysointiin ja parantelemiseen kuhunkin ongelmaan sopivaksi kirjalli-suus esittelee runsaasti termodynamiisesta analogiasta inspiroituneita tyoumlkalujajoiden kaumlsittely jaumlauml taumlmaumln tutkielman ulkopuolelle (Esimerkiksi tilastollisen meka-niikan kaumlsitteiden kuten jaumlaumlhdytettevaumln ongelman rsquoominaislaumlmmoumlnrsquo tai rsquoentropianrsquohyoumldyntaumlminen ongelman rakenteen tutkimisessa tai jaumlaumlhdytysskenaarion tai siir-tojen optimoinnissa [ks SSF02] Nykyisenlaajuisessa tarkastelussa soveltamallaalgoritmia erilaisiin ympyraumlkuviin erilaisilla jaumlaumlhdytysskenaarioilla havaittiin SAlletyypillistauml kaumlytoumlstauml

622 Konenaumlkoumltehtaumlvauml

Kuten luvussa 1 rdquoJohdantordquo todettiin oletettu kuvantunnistusongelma on melkoyksinkertainen

Esimerkiksi kiekkojen maumlaumlraumln olettaminen tunnetuksi on rajoittava yksinker-taistus SA-algoritmia voisi laajentaa kasvattamalla parametriavaruuden kokoaoletettuun ympyroumliden maksimimaumlaumlraumlaumln mutta vastavuoroisesti ulottuvuuksienmaumlaumlrauml kasvattaisi ongelman kokoa Eraumls mielenkiintoinen vaihtoehto voisi olla so-veltaa jotain perinteistauml erillisten yhtenaumlisten komponenttien laskemiseen (connected-component labeling) tunnettua algoritmia [Cor+09] objektien lukumaumlaumlraumln selvittauml-miseen ja sitten soveltaa taumlssauml esitettyauml SA-algoritmia (Kappaleiden laskemistakuvassa voidaan myoumls laumlhestyauml yleisenauml ongelmana koneoppimisen menetelminkuten esimerkiksi [LZ10])

48

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 52: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Toisaalta myoumls erilliset ympyraumlt ovat myoumls melko rajoittunut malli monimut-kaisempien muotojen mallintamiseen Taumlllaisten vaikeuksien vuoksi konenaumloumlnalalla muotojen mallintamisessa taumlssauml tutkielmassa kaumlytetyn kaltaisten geometristenmallia sijasta suositumpia ovat erilaisiin merkitseviin pisteisiin perustuvat mallit(esimerkiksi active contour model snakes [Pri12])

Yhteenvetona yleisesti reaalimaailman dekonvoluutiosovelluksia ajatellen taumlssaumltutkielmassa kaumlsitelty ongelma on rajoittunut Usein tutkittavan kuvan rakenteesta eivoida tehdauml samanlaisia oletuksia kuten taumlssauml tutkielmassa ja joudutaan kaumlyttaumlmaumlaumlnpaljon yleisempiauml malleja Mutta rdquooikeidenrdquo konenaumloumln ongelmien ratkaisemiseenkaumlytetaumlaumln yleisellauml tasolla hyvin samankaltaisia metodeja Sumennosta kuitenkinmallinnetaan konvoluutio-operaationa ja ratkaisun laumlhtoumlkohtana on usein muodos-tetaan jokin sopiva energiafunktio jota optimoidaan

49

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 53: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

Kirjallisuutta

[BB09] Wilhelm Burger ja Mark James Burge Principles of Digital Image Proces-sing Fundamental Techniques Undergraduate Topics in Computer ScienceLontoo Springer 2009

[Bon05] Charles Boncelet rdquoImage Noise Modelsrdquo Teoksessa Handbook of Imageand Video Processing Toim Alan C Bovik Amsterdam Academic Press2005

[CG95] Siddhartha Chib ja Edward Greenberg rdquoUnderstanding the Metropolis-Hastings Algorithmrdquo The American Statistician 49 (1995)

[Cor+09] Thomas H Cormen et al Introduction to Algorithms 3 painos Cam-bridge Massachusetts MIT Press 2009

[CVR14] Subhasis Chaudhuri Rajbabu Velmurugan ja Renu Rameshan BlindImage Deconvolution Springer 2014

[Den+15] Vasil S Denchev et al rdquoWhat is the Computational Value of FiniteRange Tunnelingrdquo (2015) arXiv151202206 url httparxivorgabs151202206

[GG84] Stuart Geman ja Donald Geman rdquoStochastic Relaxation Gibbs Distri-bution and the Bayesian Restoration of Imagesrdquo IEEE Transactions onPattern Analysis and Machine Intelligence 6 (1984) s 721ndash741

[GK03] Fred Glover ja Gary A Kochenberger toim Handbook of MetaheuresticsBoston Dordrecht London Kluwer Academic Publishers 2003 isbn1-4020-7263-5

[HKR93] Juha Haataja Juhani Kaumlpyaho ja Jussi Rahola Numeeriset menetelmaumltCSC - Tieteellinen laskenta 1993

[Hun07] John D Hunter rdquoMatplotlib A 2D Graphics Environmentrdquo Computingin Science amp Engineering 9 (2007) s 90ndash95

[J+01] Eric Jones Travis Oliphant Pearu Peterson et al SciPy Open sourcescientific tools for Python [Online accessed 2015-11-24] 2001ndash url httpwwwscipyorg

50

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta
Page 54: New Mallinnettu jäähdytys ja ympyräkiekkojen etsiminen kuvasta · 2016. 4. 2. · Kandidaatintutkielma Maaliskuu 2016 51 s. Mallinnettu jäähdytys, Metropolis Hastings-algoritmi,

[Jaumlh02] Bernd Jaumlhne Digital Image Processing 5 painos Berliini ja HeidelbergSpringer 2002

[Joh+11] M W Johnson et al rdquoQuantum annealing with manufactured spinsrdquoNature 473 (2011) s 194ndash198

[KGV83] S Kirkpatrick C D Gelatt Jr ja M P Vecchi rdquoOptimization by Simu-lated Annealingrdquo Science 220 (1983)

[Koi13] Petri Koistinen Todennaumlkoumlisyyslaskenta Luentomoniste 2013

[LA87] P J M van Laarhoven ja E H L Aarts Simulated Annealing Theoryand Applications Dordrecht Reidel 1987

[Lea92] V F Leavers Shape Detection in Computer Vision Using the Hough Trans-form Lontoo Springer-Verlag 1992

[LZ10] Victor Lempitsky ja Andrew Zisserman rdquoLearning to Count Objects inImagesrdquo Teoksessa Advances in Neural Information Processing Systems23 Toim JD Lafferty et al Curran Associates Inc 2010 s 1324ndash1332url httppapersnipsccpaper4043-learning-to-count-objects-in-imagespdf

[Matlab14] MATLAB Versio 830 (R2014a) Natick Massachusetts The MathWorksInc 2014

[MS12] Jennifer Muumleller ja Samuli Siltanen Linear and Nonlinear Inverse Problemswith Practical Applications Computational Science amp Engineering SeriesPhiladelphia SIAM 2012

[Pre+07] William H Press et al Numerical Recipes Art of Scientific Programming3 painos New York Cambridge University Press 2007

[Pri12] Simon JD Prince Computer vision models learning and inference Cam-bridge University Press 2012

[SSF02] Peter Salamon Paolo Sibani ja Richard Frost Facts Conjectures andImprovements for Simulated Annealing SIAM Monographs on mathema-tical modeling and computation Philadelphia SIAM 2002

[ZBT15] Ilia Zintchenko Ethan Brown ja Matthias Troyer Recent developmentsin quantum annealing 2015 url httpwwwscottaaronsoncomtroyerpdf

51

  • Johdanto
  • Mallinnettu jaumlaumlhdytys
    • Optimointi
    • Esitieto Markovin ketjut
    • Jaumlaumlhdytysalgoritmi ja sen matemaattinen malli
    • Algoritmin teoreettinen perustelu
      • Kiekko-ongelman kuvamalli
        • Digitaalinen harmaasaumlvykuva
        • Ongelmanasettelu ja kuvamalli
        • Ympyraumlkiekot
        • Konvoluutio
        • Kohina
        • Havaintomalli ja simuloidun aineiston malli
          • Jaumlaumlhdytysalgoritmin soveltaminen kiekko-ongelmaan
            • Kiekko-ongelman muotoilu optimointiongelmana
            • Energiafunktio
            • Siirtymaumlt
            • Jaumlaumlhdytysstrategia
              • Tulokset
                • Testiaineisto
                • Ratkaisun onnistumisen mittaaminen
                • Algoritmin tulokset
                  • Pohdinta ja johtopaumlaumltoumlkset
                    • Tulosten analyysi
                    • Yhteenveto ja pohdinta
                      • Kirjallisuutta