Mat Sovelletun matematiikan erikoistyöt. Geneettiset algoritmit ja sukupuolten taistelu

Koko: px
Aloita esitys sivulta:

Download "Mat Sovelletun matematiikan erikoistyöt. Geneettiset algoritmit ja sukupuolten taistelu"

Transkriptio

1 Mat Sovelletun matematiikan erikoistyöt Geneettiset algoritmit ja sukupuolten taistelu Pasi Virtanen 45787U

2

3 1. Johdanto Perusteet Geneettiset algoritmit Geneettisten algoritmien yleinen rakenne Geneettisen algoritmin käytännön toteutus Sukupuolten taistelu Geneettiset algoritmit ja sukupuolten taistelu Strategian esitys geneettisen algoritmin tarvitsemassa muodossa Hyvän strategian ominaisuuksia Geneettisen algoritmin toteutukseen liittyvistä valinnoista Peliparien valinta, pisteytys ja pelin pelaaminen Risteytys, mutaatiot ja yhteistyötavoite Geneettisen algoritmin käytännön toteutus Ohjelman pääluokka GABattleOfSexes Kierroksen pelaava luokka PlayRound Risteytyksen suorittava luokka Crossover Mutaatiot tekevä luokka Mutate Käytännön tuloksia Käytännön tuloksia parametrien alkuarvoilla Pelikierroksen pituuden ja mutaatiotodennäköisyyden vaikutus Risteytysprosessin muuttamisen vaikutus algoritmin toimintaan Parhaan mahdollisen strategian löytäminen muuttumatonta strategiaa vastaan Yhteenveto ja pohdintaa Viitteet Liite 1: Ohjelmalistaus... 39

4 1. Johdanto Geneettiset algoritmit tarjoavat voimakkaan työkalun etenkin sellaisten ongelmien ratkaisemiseen joiden ratkaisu perinteisin menetelmin on liian työlästä, kunhan ratkaisuksi riittää joku riittävän hyvä ratkaisu. Geneettiset algoritmit pyrkivät jäljittelemään toiminnassaan biologista evoluutiota siten, että ratkaisua ongelmaan haetaan ratkaisuyritteiden populaatiosta josta muodostetaan uusia yritteitä risteytyksillä ja mutaatioilla siten, että tämän hetkisistä ratkaisuista parhaimpia risteytetään keskenään ja syntyvät uudet ratkaisut altistetaan satunnaisesti mutaatioille. Yksi geneettisten algoritmien parhaista puolista on se, että ne ovat yksinkertaisia toteuttaa eivätkä ne aseta juuri mitään rajoituksia sille ongelmalle jota yritetään ratkaista. Tarvitaan ainoastaan joku tapa esittää ratkaisuyritteet binäärilukujonona ja joku funktio jolla näiden keskinäistä paremmuutta kyseisen ongelman ratkaisemisessa voidaan mitata. Täten geneettiset algoritmit soveltuvatkin mainiosti hyvien strategioiden hakemiseen normaalimuodossa oleville peleille koska näistä tiedetään aina kunkin pelaajan strategiajoukko ja pelaajien saamat hyödyt kullakin pelikierroksella valituille strategioille. Tämä takaa sen, että kukin strategia pystytään esittämään geneettisen algoritmin vaatimassa muodossa ja eri strategioille on olemassa luonnollinen hyvyyden mitta peleistä saadun hyödyn muodossa. Tässä työssä sovelletaan geneettisiä algoritmeja sukupuolten taisteluna tunnettuun yksinkertaiseen peliin kun sitä pelataan toistetusti. Sukupuolten taistelussa oleellista on, että pelin molemmille osapuolille on ensiarvoisen tärkeää tehdä yhteistyötä toisen pelaajan kanssa. Tutkitaan erityisesti sitä miten yhteistyö kehittyy geneettisen algoritmin eri sukupolvien välillä ja muodostuuko ennen pitkää jokin tasapainostrategia vai johtaako pelin luonnollinen epäsymmetrisyys siihen, että erityyppiset yhteistyöhön kykenevät strategiat jäävät taistelemaan elintilasta keskenään. Tutkitaan myös sitä, minkälaisia erilaisia tulkintoja tähän voidaan liittää kun risteytettävät strategiat valitaan eri tavoin.

5 2. Perusteet 2.1 Geneettiset algoritmit Geneettisten algoritmien yleinen rakenne Geneettiset algoritmit kehitti kerran John Holland Michiganin yliopistossa 1960-luvulla ensimmäisten evoluution matemaattisten mallien innoittamana. Holland järkeili, että jos biologisten organismien evoluutio on mallinnettavissa matemaattisesti niin ehkä samalla tavalla voidaan luoda kehittyviä tietokoneohjelmia. Vaikka 1960-luvulla monet tutkijat käyttivät evoluutiota jäljitteleviä ongelmanratkaisumenetelmiä, niin perusteoksena pidetään Hollandin 1975 julkaistua kirjaa Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence jossa ensimmäistä kertaa systemaattisesti formuloitiin geneettinen algoritmi sen nykyään tunnetussa muodossa. [1] Geneettisen algoritmin yleinen rakenne on seuraava: Asetetaan sukupolvien määrää algoritmin ajossa kuvaava aikamuuttujan arvoksi 1 Generoidaan, usein satunnaisesti, alkupopulaatio Lasketaan populaation yksilöiden hyvyys jollain tietyllä arviointifunktiolla f(x) Testataan täyttääkö populaatio valitun lopetuskriteerin Toistetaan seuraavaa kunnes lopetuskriteeri täyttyy : o Kasvatetaan aikamuuttujaa yhdellä o Valitaan populaatiosta risteytettävät ratkaisut o Yhdistetään valittujen vanhempien geeneistä seuraavan sukupolven yksilöt o Altistetaan jälkeläiset mutaatioille o Lasketaan uuden sukupolven yksilöiden hyvyys funktiolla f(x)

6 2.1.2 Geneettisen algoritmin käytännön toteutus Algoritmin populaation yksilöitä kuvataan binäärilukujonoina, nyt kun kyseessä on peliteoreettinen tapaus niin jokainen tällainen binäärilukujono vastaa jotain tiettyä strategiaa. Alkupopulaatio voitaisiin siis valita tunnettujen strategioiden joukosta, mutta tässä työssä kuitenkin käytetään satunnaista alkupopulaatiota. Arviointifunktio on periaatteessa peleille määritelty luonnollisella tavalla. Kutsutaan tästä eteenpäin pelissä pelaajan saavuttamaa hyötyä pisteiksi, jolloin tietyn strategian hyvyys on sen strategian saavuttama pistemäärä peliä pelattaessa. Se tapa millä peliä algoritmin puitteissa pelataan voidaan kuitenkin valita monin eri tavoin ja eri tavat johtavat aivan erilaisiin tulkintoihin ja erilaiseen evoluutioprosessiin. Tässä työssä arviointifunktion arvo lasketaan siten, että populaation jäsenet pelaavat peliä saman määrän jokaista mahdollista populaatiossa olevaa vastustajaa vastaan. Luonnollisia tulkintoja tälle ovat minkälaiseksi populaatio muuttuu jos sen jäsenten välinen kilpailu on kuvattavissa käytetyn pelin kaltaisella mallilla ja minkälaisia ovat tämän pelin tasapainostrategiat eli strategiat jotka ovat siinä mielessä parhaita, että niitä ei kannata muuttaa jos muutkin pelaajat käyttävät yhtä vahvoja strategioita. Muita vaihtoehtoja arviointifunktiolle olisivat esimerkiksi se, että populaation yksilöt pelaisivat peliä jotain valittua strategiaa tai strategioiden joukkoa vastaan jolloin luonnollinen tulkinta algoritmille olisi se, että yritetään löytää jokin strategia joka voittaa testistrategioina käytetyt tai sitten voitaisiin valita ne yksilöt jotka joutuvat pelaamaan toisiaan vastaan jollain kriteerillä tai satunnaisesti, jolloin tulkinnat riippuisivat valituista kriteereistä. Jos populaation yksilöiden arviointi on suoritettu ja valittu lopetus kriteeri ei ole täyttynyt, täytyy jollakin menetelmällä valita ne yksilöt joista risteytetään seuraavan sukupolven ratkaisuehdokkaita. Perusajatus vanhempien valinnassa on se, että halutaan pyrkiä yhdistämään parhaiden ratkaisujen ominaisuuksia siinä toivossa, että muodostunut ratkaisu olisi parempi kuin kumpikaan vanhempansa. Valintakriteeri halutaan sellaiseksi, että se suosii parempia yksilöitä, mutta valitsee kuitenkin heikompiakin yksilöitä jotta populaatio ei muodostu liian yksipuoliseksi liian nopeasti. Valintaa varten halutaan arviointifunktion arvot usein skaalata jotenkin. Tällä voidaan vaikuttaa siihen kuinka paljon parempia pisteitä saaneita yksilöitä halutaan suosia. Tässä työssä käytetään valintakriteerinä niinkutsuttua ruletti-menetelmää jossa kunkin yksilön todennäköisyys tulla valituksi risteytykseen on

7 suoraan verrannollinen sen yksilön skaalattuun arviointifunktion arvoon. Kun risteytettävät yksilöt on valittu on itse risteytyksen aika. Tässä tapauksessa risteytys halutaan suorittaa siten, että geneettinen koodi pysyy kaikilla yksilöillä saman mittaisena. Nyt kun perimää kuvataan binäärilukujonona, tämä tapahtuu yksinkertaisesti siten, että valitaan satunnaisesti kohta, josta vanhempien perimä katkaistaan ja lapsen perimä muodostetaan liittämällä toisen vanhemman perimän alkuosa toisen vanhemman perimän loppuosaan. Risteytyksen jälkeen uusi ratkaisukokelas altistetaan satunnaisesti mutaatioille. Mutaatioiden tarkoitus on varmistaa, ettei ratkaisua haettaessa juututa lokaaliin optimiin joka on erityisen tärkeää jos on syytä olettaa, että alkupopulaatioksi valitut ratkaisut eivät ole lähellä optimaalista. Mutaatioiden halutaan esiintyvän niin usein, että algoritmi ei jää lokaaliin optimiin liian pitkäksi aikaa, mutta mutaatiot halutaan pitää niin harvinaisina, että algoritmi silti konvergoi johonkin ratkaisuun. Mutaatiot voitaisiin suorittaa periaatteessa monin eri tavoin, mutta nyt kun halutaan kunkin ratkaisuehdokkaan geneettisen koodin pysyvän aina samanmittaisena niin toteutetaan mutaatiot yksinkertaisimmalla tavalla siten, että valitaan jokin pieni todennäköisyys p ja kullekin geenille muutetaan sen arvo nollasta ykköseksi tai päinvastoin todennäköisyydellä p. Tutkitaan myös p:n valinnan vaikutusta algoritmin käyttäytymiseen. 2.2 Sukupuolten taistelu Sukupuolten taisteluna, englanninkieliseltä nimeltään Battle of the Sexes, tunnettu peli, on määritelty seuraavasti [2]: Liisa ja Pekka päättävät molemmat samanaikaisesti työpaikoillaan illan huvituksista. Molemmilla on kaksi vaihtoehtoa, joko oopperaan tai nyrkkeilyotteluun. Kumpikin pelaajista viettäisi illan mielummin samassa paikassa kuin erikseen, mutta Liisa olisi mielummin yhdessä oopperassa kun taas Pekka viihtyisi paremmin nyrkkeilyottelussa. Pelaajienn saavuttamat hyödyt menevät nyt oheisen matriisin mukaisesti Pekka/Nyrkkeilyottelu Pekka/Ooppera Liisa/Nyrkkeilyottelu Pekka: 2 Liisa: 1 Pekka: 0 Liisa: 0 Liisa/Ooppera Pekka: 0 Liisa: 0 Pekka: 1 Liisa: 2 Taulukko 1: Sukupuolten taistelu

8 Peliteoriasta tiedetään, että tällä pelillä on puhtaille strategioille, ts. strategioille joissa pelaajien tekemät valinnat ovat deterministisiä, kaksi Nash-tasapainoa. Nash-tasapaino on strategiajoukko kaikille pelaajille josta kenenkään pelaajan ei kannata yksin poiketa jos muut pelaajat pitävät strategiansa ennallaan. Nash-tasapainot ovat nyt se, että molemmat pelaajat valitsevat oopperan ja se, että molemmat pelaajat valitsevat nyrkkeilyottelun. Sukupuolten taistelun problematiikka on siinä, että nämä tasapainot eivät kerro oikeastaan mitään siitä minkälaisella strategialla peliä kannattaisi pelata, sillä molempien valitessa itselleen suotuisimman vaihtoehdon päädytään molemmille huonoimpaan ratkaisuun. Sekastrategioille, eli sellaisille strategioille joissa pelaaja valitsee pelaamansa vaihtoehdon jonkun todennäköisyysjakauman mukaan, löytyy vielä kolmas Nash-tasapaino. Tässä tasapainossa Pekka pelaa vaihtoehdon nyrkkeily todennäköisyydellä 2/3 ja vaihtoehdon ooppera todennäköisyydellä 1/3. Liisa vastaavasti pelaa ooppera todennäköisyydellä 2/3 ja nyrkkeily todennäköisyydellä 1/3. Jos tarkastellaan näitä tasapainoja pelissä saavutettavan hyödyn oletusarvon mielessä niin nähdään, että * * 2 + * *1 = sekastrategiatasapainolle molempien pelaajien odotusarvo on Puhtaille strategioille saadaan odotusarvot 2 toiselle pelaajalle ja 1 toiselle. Tässä mielessä siis kummallekin pelaajalle molemmat puhtaiden strategioiden tasapainot ovat mieluisampia kuin sekastrategiatasapaino. Kuten hyötymatriisista nähdään, sukupuolten taistelun kantavana ideana on pelaajien välinen yhteistyökyky. Vaikka kumpikin pelaaja hyötyy näennäisesti eniten itselle mieluisamman vaihtoehdon pelaamisesta, niin kumpikin pelaaja saa huonoimman mahdollisen lopputuloksen pelatessaan aina pelkästään itsepäisestä omaa vaihtoehtoaan. Jos peliä pelataan vain kerran ilman mitään etukäteistietoa vastustajan preferensseistä niin peli onkin pitkälti arpapeliä. Peli saakin lisää luonnetta kun sitä pelataan toistetusti samaa vastustajaa vastaan koska tällöin pelaajilla on mahdollisuus strategiallaan lähettää toiselle pelaajalle signaaleja joiden avulla pelaajien on mahdollista kehittää yhteistyökykyään ja täten pelissä saamaansa tulosta.

9 3. Geneettiset algoritmit ja sukupuolten taistelu 3.1 Strategian esitys geneettisen algoritmin tarvitsemassa muodossa Geneettisiä algoritmeja on käytetty ennenkin peliteorin tutkimiseen. Ensimmäinen julkaisu aiheesta on vuodelta 1987 jossa Fujiki ja Dickinson sovelsivat geneettistä algoritmita toistetusti pelattuun vangin ongelmaan. [3] Vangin ongelmaan geneettisiä algoritmeja on sovellettu useastikin, rohkaisevin tuloksin. Tässä työssä kuitenkin valittiin tarkastelun kohteeksi hieman harvinaisempi peli. Sukupuolten taistelullekin on pelin yksinkertaisuuden vuoksi helposti formuloitavissa esitys pelistrategioille joihin voidaan sitten geneettisiä algoritmeja soveltaa. Erityisen kätevää on, että jokaisella pelaajalla on vuorollaan vain kaksi erilaista vaihtoehtoa joita kuvaavat siis nyt 0 ja 1. Strategiat saadaan täten pidettyä suhteellisen pienikokoisina. Nyt kun peliä pelataan toistetusti kutakin vastustajaa vastaan, on luonnollista, että kussakin pelin vaiheessa pelaajan tekemä valinta riippuu pelissä aiemmin tapahtuneista siirroista. Strategian kertova binäärilukujono siis kertoo nyt deterministisesti pelaajan valitseman siirron kun tiedetään pelin historia siihen asti. Tässä toteutuksessa siirto tehdään kahden edellisen kierrosten lopputulemien perusteella. Strategiaa esittävään binäärilukujonoon tarvitaan siis valittu siirto kaikille mahdollisille kahden siirron historioille ja lisäksi erikseen pelin ensimmäiselle ja toiselle siirrolle. Kokonaisuudessaan strategiaa kuvaavan binääriluvun rakenne on seuraava. Taulukossa historia tarkoittaa pelissä tapahtuneita valintoja siten, että ensimmäinen luku on pelaajan itsensä tekemä valinta ja jälkimmäinen vastustajan valinta. Kyseinen bitti kertoo siis mikä valinta tehdään kyseistä historiaa vastaavassa tilanteessa:

10 Bitti Historia Bitti Historia 1 - (alku) 12 01, , , , , , , , , , , , , , , ,01 Taulukko 2: Strategioiden esitys geneettisessä algoritmissa sukupuolten taistelulle Kunkin strategian esitys on siis pituudeltaan 21 bittiä. Huomattavaa on, että jokaisessa strategiassa on bittejä joita peliä pelattaessa ei voida ikinä tarvita, luontevimpana esimerkkinä biteistä 2-5 ne joissa historian strategian omaa siirtoa vastaava valinta on eri kuin ensimmäisen bitin deterministisesti määräämä aloitussiirto. Näitä bittejä on kuitenkin syytä säilyttää strategioissa, koska risteytykset tai mutaatiot voivat muuttaa aloitussiirtoa siten, että bitit tulevat taas merkityksellisiksi. Tässä työssä sukupuolten taistelua pelataan toistetusti, eli geneettisen algoritmin toivotaan löytävän strategioita jotka kykenevät yhteistyöhön muiden strategioiden kanssa mahdollisimman usein. Nashtasapainoista saadaan puhtaiden strategioiden tasapainot loogisiksi vaihtoehdoiksi strategioiksi jotka geneettisillä algoritmeilla on seuraavanlaisella toteutuksella löydettävissä. Sekastrategiatasapainoilla ei ole oikeastaan mitään tekemistä tämän toteutuksen kanssa, koska ne olettavat, että pelaaja valitsee jonkun todennäköisyysjakauman mukaisesti kun taas edellä esitetyn kaltaisilla strategioilla kaikki valinnat ovat deterministisiä kun pelin historia tunnetaan. Vaikka geneettiset algoritmit pyrkivät luonnostaan löytämään annetulle tehtävälle, tässä tapauksessa sukupuolten taistelun pelaamiselle, hyviä ratkaisuja niin tässä tapauksessa muodostuvat ratkaisut eivät ole yhtä tärkeitä kun tieto siitä pystytäänkö geneettisillä algoritmeilla luomaan strategioita jotka pystyvät yhteistyöhön muiden samanlaisten strategioiden kanssa. Tätä ominaisuutta kuvaava suure saadaan nyt helposti kun huomataan, että pelaajat saavat yhteensä kolme pistettä tehdessään yhteistyötä ja 0 pistettä muuten. Täten jos pelataan yhteensä n peliä sukupuolten taistelua ja niissä pelaajat saavat

11 p yhteensä p pistettä niin yhteistyötä tehtiin 3 n peleistä. Toivottuna tuloksena olisi, että geneettisen algoritmin edetessä tämä arvo nousisi ykköseen tai ainakin lähelle sitä. 3.2 Hyvän strategian ominaisuuksia Geneettisen algoritmin tavoitteena tässä työssä on siis muokata ratkaisuehdokkaiden populaatiota siten, että ne pystyvät yhteistyöhön keskenään, eli tekevät peliä pelattaessa samoja valintoja joutuessaan samanlaiseen tilanteeseen. Tästä nähdään triviaalisti, että täydelliseen yhteistyöhön pystyvät ainakin sellaiset ratkaisujoukot joissa kaikki yksilöt ovat strategialtaan identtisiä. Huomattakoon myös, että tässä tapauksessa jos geneettistä algoritmia jatketaan niin risteytys tuottaa satunnaisista tekijöistä riippumatta jälleen identtisen populaation, joten jos mutaatioiden todennäköisyys on pieni, kuten sen pitää käytännössä geneettisissä algoritmeissa olla jotta algoritmi pystyy konvergoimaan johonkin ratkaisuun, niin täydelliseen yhteistyöhön pystyvä populaatio on myös lähes stabiili ainoastaan mutaatioiden aiheuttaessa pieniä tilapäisiä pudotuksia yhteityöprosentissa. Evoluution kannalta ajateltuna geneettinen algoritmi siis tuottaa onnistuessaan populaatioita joiden yhteistyökyky perustuu edellisiltä sukupolvilta opittuihin käyttäytymistapoihin. Täydellistä yhteistyötä tekevästä populaatiosta pantakoon merkille, että kun kaikissa peleissä pelaajat tekevät yhteistyötä jokaisella pelikierroksella niin strategiasta ainoastaan ne bitit jotka edustavat valintoja jotka tehdään kun historiassa on tehty aina yhteistyötä voivat käytännössä olla merkitseviä. Täydellinen yhteistyö ei siis vaadi käytännössä sitä, että populaation jäsenet ovat täysin identtisiä vaan tiettyjen bittien yhtäsuuruus kaikissa populaation yksilöissä riittää täydelliseen yhteistyöhön. Nämä bitit ovat siis ylläolevasta taulukosta numerot 1, 2, 5, 6, 9, 18 ja 21. Yksinkertaisimmissa täydellisen yhteistyön populaatioissa riittää kolmen näiden yhtäsuuruus, esimerkiksi populaatio jonka jokaisella yksilöllä bittien 1, 5 ja 21 arvo on 1 tekee yhteistyötä kaikissa yksilöiden välillä pelatuissa peleissä jokaisen yksilön valitessa strategiakseen ykkösen kaikissa mahdollisissa tilanteissa. Vastaavasti jos kaikilla yksilöillä bitit 1, 2 ja 6 saavat arvon 0 niin kaikissa tällaisten yksilöiden pelaamissa peleissä molemmat pelaajat valitsevat vaihtoehdon 0 pelin kaikissa vaiheissa. Ohessa puumainen graafinen esitys erilaisten tasapainostrategioiden tuottamista syklisistä peliketjuista

12 kun pelataan ensin vaihtoehtoa 0, 1:llä alkavat vastaavat ketjut saataisiin vaihtamalla kuviossa nollat ykkösiksi ja ykköset nolliksi Kuva : Tasapainostrategioiden tuottamat peliketjut kun ensimmäiseksi pelataan 0:aa Ohessa vielä lista tasapainostrategioiden tuottamista peliketjuista ja kunkin tasapainostrategian yhtäsuuruutta vaativista biteistä, kukin peliketjun numero vastaa molempien pelaajien tekemää valintaa: Peliketju Kriittiset bitit Peliketju Kriittiset bitit ,2, ,5, ,2,6,9, ,5,9,18, ,2,6,9, ,5,9,18, ,2,6,9,18, ,5,6,9,18, ,2,6,9,18, ,5,6,9,18, ,2,6,9, ,5,6,18, ,2,6,9, ,5,9,18, ,2,6,9, ,5,9,18, ,2,9, ,5,9, ,2,6,9,18, ,5,6,9,18, ,2,6,9,18, ,5,6,9,18, ,2,9,18, ,5,6,9, ,2,9, ,5,6,18 Taulukko 3: Tasapainostrategioiden tuottamat sykliset peliketjut ja yhtäsuuruutta vaativat bitit

13 Nyt siis jokaisella tasapainostrategialla on olemassa peilikuvastrategia joka tuottaa päinvastaisen lopputuloksen. Tällaisten peilikuvastrategioiden lopputuloksia evaluoitaessa tarkastellaan kuitenkin pelin edetessä eri bittejä, joten kaikkien bittien arvot eivät ole yhdentekeviä strategian hyvyyden kannalta kun tavoitteena pidetään täydelliseen yhteistyöhön kykenevää populaatiota ts. vaikka kaikki mahdolliset strategiat voivat esiintyä ainakin joissain populaatioissa jotka tekevät täydellistä yhteistyötä niin joillekin strategioille mahdollisia yhteistyökumppaneita löytyy enemmän kuin toisille. Yksinkertaisimmat, ja tästä johtuen myös todennäköisesti yleisimmät, tasapainostrategiat ovat sellaisia joissa jokaisella pelikierroksella kaikki pelaajat pelaavat samaa vaihtoehtoa. Jos palataan siis yhteistyökyvyn tarkastelemisesta pelin alkuperäiseen ideaan sukupuolten välisenä taisteluna niin näyttää todennäköiseltä, että geneettinen algoritmi päätyy useimmiten tilanteeseen jossa toinen sukupuolista on käytännössä voittanut sukupuolten taistelun ja jokainen tämän sukupuolen yksilöistä saavuttaa pelin suurimman mahdollisen pistemäärän. Kuten yllä nähtiin on olemassa myös strategioita jotka päättyvät tasapainotilaan jossa molemmat sukupuolet saavat saman pistemäärän, jos pelataan parillinen määrä pelejä, mutta tällaiset tasapainostrategiat ovat todennäköisesti melko harvinaisia geneettisen algoritmin tuloksina. Näiden osuutta algoritmin antamista tuloksista tarkastellaan myöhemmin käytännön toteutuksen tuloksia käsittelevässä luvussa. 3.3 Geneettisen algoritmin toteutukseen liittyvistä valinnoista Tätä työtä varten tarvittava geneettinen algoritmi voitaisiin toteuttaa useilla eri tavoilla. Tässä luvussa käydään läpi tehtyjä valintoja ja niiden erityispiirteitä algoritmin käyttäytymisessä ja tuloksissa Peliparien valinta, pisteytys ja pelin pelaaminen Nyt peluutetaan siis kussakin sukupolvessa kutakin yksilöä kaikkia toisen sukupolven edustajia vastaan. Tämä tarkoittaa käytännössä sitä, että populaation täytyy käytännössä ajan myötä muuttua käytökseltään homogeeniseksi pystyäkseen saavuttamaan korkean pistemäärän. Kun risteytys suoritetaan rulettimenetelmää käyttämällä niin näin pitäisi tapahtua myös käytännössä geneettistä

14 algoritima käytettäessä. Valittu risteytystapa ja peliparien valitseminen siis tukevat toisiaan. Jos ajatellaan geneettisen algoritmin toimintaa evoluution kannalta niin voidaan ajatella, että vastaava tilanne on sellainen jossa kaikkien populaation jäsenten pitää kyetä yhteistyöhön tai olla yhteensopivia kaikkien muiden yksilöiden kanssa. Toinen mielenkiintoinen asetelma voisi olla sellainen jossa populaatio koostuu ryhmistä joiden sisällä yksilöt pelaavat kaikkia muita saman ryhmän yksilöitä vastaan ja ryhmien välillä pelaisivat vain muutamat erikseen valitut yksilöt, mahdollisesti erilaisella pisteytyksellä. Tällaisessa asetelmassa syntyisi monipuolisempia tasapainoasemia ja olisi mahdollista mallintaa, vaikkakin karkeasti, hieman monipuolisempien toisiinsa vaikuttavien systeemien käyttäytymistä ja niissä tapahtuvaa kehitystä ja oppimista. Pisteytys aloitetaan pelin määritelmän mukaisella yhdellä ja kahdella pisteellä yhteistyöstä. Näillä pistemäärillä on vaarana, että algoritmi löytää tasapainotiloja hitaasti tai ei ollenkaan, sillä täysin satunnaisestikin pelaavat pelaajat saavat keskimäärin 0,25*1+0,25*2 = 0,75 pistettä, eli piste-erot voivat jäädä tällä pisteytyksellä niin vähäpätöisiksi, että risteyttämisen aikaansaama parannus saattaa jäädä pieneksi. Strategioiden tekemien valintojen riippuminen vain kahdesta edellisestä kierroksesta saa aikaan sen, että pelien tulosketjut ovat syklisiä jolloin pelikierrosten määrän muuttaminen aiheuttaa käytännössä pistemäärän kertomisen jollakin vakiolla. Tässä työssä risteytyksessä käytettävässä rulettimenetelmässä kaikkien pistemäärien kertominen vakiolla ei muuta risteytystilannetta mitenkään, joten lineaarisesti pistemäärää muuttavat variaatiot eivät muuta olennaisesti algoritmin käyttäytymistä. Suurempia eroja pistemäärissä voidaan kuitenkin saada aikaan esimerkiksi korottamalla saadut pistemäärät toiseen potenssiin. Tämän vaikutusta algoritmiin kokeillaan myöhemmin. Pelikertojen määräksi valittiin 20 kullekin peliparille. Pelin lopputulosten syklisyyden pitäisi tulla esille tällä toistomäärällä ja algoritmin suoritus pysyy kuitenkin nopeana. Jos tasapainotilojen löytyminen on liian hidasta niin pelikertojen määrää voidaan nostaa jolloin paremmin yhteistyötä tekevät strategiat saavat risteytystä silmällä pitäen enemmän pisteitä Risteytys, mutaatiot ja yhteistyötavoite Risteytys suoritetaan siis ns. rulettimenetelmällä eli risteytettävät yksilöt valitaan koko populaatiosta

15 siten, että yksilön todennäköisyys tulla valituksi on suoraan riippuvainen yksilön saamista pisteistä. Tällainen risteytys voidaan ajatella evoluution kannalta tilanteena jossa oppiminen tapahtuu edelliseltä sukupolvelta oppien esimerkkiä seuraamalla eli seuraava sukupolvi pyrkii käyttäytymään samalla tavalla kuin menestyksekkäimmät edellisen sukupolven edustajat. Risteytys tehdään tässä työssä risteyttämällä eri sukupuolisia yksilöitä keskenään, vaihtoehtoisesti voitaisiin korostaa edelliseltä sukupolvelta oppimista esimerkkiä seuraamalla risteyttämällä kummankin sukupuolen jälkeläiset vain saman sukupuolen edustajista. Tällöin voitaisiin ajatella asetelma esimerkiksi kahden eri lajin väliseksi symbioottiseksi kilpailutilanteeksi. Eräs kolmas vaihtoehtoinen risteyttämisstrategia olisi yrittää mallintaa risteytystä nimensä mukaisesti perimän kautta siten, että eri sukupuolten edustajista muodostettaisiin risteytyksessä pareja jotka saivat keskenään hyvän pistemäärän ja näistä valittaisiin risteytettävät parit parien yhteensä saamaan pistemäärän avulla. Tässä tapauksessa siis risteytettävät parit olisivat valmiiksi jo todennäköisesti melko homogeenisiä ainakin dnan merkitsevien bittien osalta. Myöhemmin tässä työssä kokeillaan lyhyesti näiden risteyttämismenetelmien eroja yhteistyön saavuttamisessa. Mutaatioiden merkitys geneettiselle algoritmille on siis tarjota mahdollisuus poistua lokaaleista tasapainotiloista sellaisissa tapauksissa jossa ratkaisua ei pystyttäisi löytämään pelkällä risteyttämisellä. Mutaatiot siis takaavat, että kaikki mahdolliset ratkaisut ovat saavutettavissa geneettisillä algoritmeilla. Tässä tapauksessa, kuten luvusta 3.2 nähdään erilaisia täydellisiä tasapainostrategioita on hyvin suuri joukko ja mikä tahansa alkupopulaatio sisältää varmasti tarvittavat geenit täydellisen yhteistyön saavuttamiseksi. Mutaatioiden todennäköisyys halutaan siis jättää tässä tapauksessa pieneksi. Alkuarvoksi valitaan mutaation todennäköisyydeksi 0.1%. Luvussa 3.2 nähtiin myös, että täydelliset tasapainostrategiat ovat paitsi saavutettavissa millä tahansa alkupopulaatiolla niin myös varsin yksinkertaisia. Nyt kun vielä mutaatioiden todennäköisyys on pieni niin voidaan ottaa suoraan tavoitteeksi täydellinen yhteistyö, eli geneettistä algoritmia jatketaan kunnes yhteistyöprosentti on 100%:

16 4. Geneettisen algoritmin käytännön toteutus Geneettinen algoritmi toteutettiin java-kielellä ja suhteellisen yksinkertaisen rakenteen takia mitään apukirjastoja ei tarvinnut käyttää. Ohjelmalistaus on esitetty liitteessä 1. Tässä luvussa käydään läpi ohjelmaan kuuluvien luokkien rakenne ja valitut toteutustavat. 4.1 Ohjelman pääluokka GABattleOfSexes Ohjelman pääluokka GABattleOfSexes suorittaa varsinaisen geneettisen algoritmin suorituksen ja muistuttaa rakenteeltaan luvun kuvausta geneettisen algoritmin yleisestä toiminnasta. Tässä luokassa on myös määritelty suurin osa muuttujista. Pääluokassa määritellyt muuttujat ovat DNASIZE joka kertoo halutun DNA-ketjun pituuden, populationsize joka on populaation koko, targetcooperation joka on yhteistyöraja suhteellisena osuutena johon asti algoritmia jatketaan ja numberofrounds joka on kunkin peliparin pelaamien toistojen lukumäärä. Pääluokassa ensin alustetaan alkupopulaatio satunnaiseksi. Tämän jälkeen kutsutaan PlayRound luokkaa joka ottaa syötteinä populaation ja kierrosten lukumäärän ja palauttaa kunkin yksilön saamat pisteet tällä kierroksella. Tämän jälkeen pääluokassa lasketaan pisteet yhteen ja tästä tehdyn yhteistyön suhteellinen osuus ja nämä tulostetaan ohjelman käyttäjälle. Sitten toistetaan silmukkaa jossa ensin suoritetaan risteytys kutsumalla luokkaa Crossover ja altistetaan yksilöt mutaatioille kutsumalla luokkaa Mutate, tämän jälkeen silmukassa pelataan uusi kierros, lasketaan pisteet yhteen ja yhteistyön osuus ja tulostetaan tulokset ja jatketaan kunnes yhteistyön osuus ylittää asetetun rajan. 4.2 Kierroksen pelaava luokka PlayRound Luokka PlayRound ottaa syötteenä populaation esitettynä taulukkona ja pelattavien kierrosten lukumäärän. Luokkaan on koodattu sisään luvussa 3.1 esitetty kuvaus DNA:sta ja sitä hyödyksi käyttäen se laskee historiasta jota pidetään samalla muistissa kullakin kierroksella vertailtavien

17 strategiabittien numerot ja vertaa niiden yhtäsuuruutta päivittäen pelaajien pisteitä jos ne ovat yhtäsuuret sen mukaan kummalle edullisempaa vaihtoehtoa pelattiin. Tämän jälkeen päivitetään pelihistoriaan viimeisimmän kierroksen tulos ja jatketaan kunnes on pelattu niin monta kierrosta kun syötteenä otettavassa luvussa kerrottiin. 4.3 Risteytyksen suorittava luokka Crossover Luokka Crossover ottaa syötteenä populaation ja yksilöiden saamat pisteet taulukkoina ja suorittaa risteytyksen. Risteytettävät parit arvotaan rulettimenetelmällä siten, että arvotaan satunnaisluku yhden ja saman sukupuolen kaikkien jäsenten saavuttamien yhteispisteiden välillä ja vähennetään tästä yksi kerrallaan yksilöiden saavuttamat pisteet kunnes saadaan tulokseksi nolla tai pienempi luku. Tämän jälkeen arvotaan satunnaisesti leikkauskohta ja muodostetaan yksi yksilö jolla on isänsä DNA ensimmäisestä bitistä leikkauskohtaan asti ja äitinsä DNA siitä eteenpäin ja toinen päinvastoin. Sen jälkeen näille kahdelle jälkeläiselle arvotaan satunnaisesti sukupuolet. Tässä toteutuksessa siis kukin lisääntymään valittu pari tuottaa kaksi jälkeläistä, yhden kumpaakin sukupuolta. Lopuksi palautetaan uusi sukupolvi. 4.4 Mutaatiot tekevä luokka Mutate Luokka Mutate ottaa syötteenä populaation ja altistaa tämän kaikkien yksilöiden kaikki geenit mutaatioille. Tämä tapahtuu yksinkertaisesti niin, että kullekin geenille arvotaan satunnaisluku ja jos se alittaa säädetyn todennäköisyyden niin muutetaan bitin arvo nollasta ykköseksi tai ykkösestä nollaksi. Lopuksi palautetaan uusi populaatio. 5. Käytännön tuloksia 5.1 Käytännön tuloksia parametrien alkuarvoilla Geneettistä algoritmia kokeiltiin ensin yllämainituin asetuksin 20 kertaa ja tulokset ensimmäisistä

18 koeajoista ovat allaolevassa taulukossa. Kullekin kerralle on ilmoitettu kuinka monta sukupolvea tarvittiin täydellisen yhteistyön aikaansaamiseksi ja mitkä olivat lopun tasapainotilassa kunkin sukupuolen yksilöiden saamat pisteet. Sukupolvia Pisteet sukupuolelle 0 Pisteet sukupuolelle Taulukko 4: Käytännön tuloksia parametrien alkuarvoilla Geneettinen algoritmi päätyi siis täydelliseen tasapainotilaan kaikissa tapauksissa suhteellisen lyhyessä ajassa. Vaihtelu tarvittavien sukupolvien määrässä tosin vaihteli melko paljon. On kuitenkin selvää, että geneettisillä algoritmeilla voidaan saada helposti toimivia strategioita vaikka erot pistemäärissä strategioiden välillä olisivatkin pieniä. Tasapainotiloista yleisimpiä olivat sellaiset, joissa toinen sukupuoli sai selkeästi enemmän pisteitä, yleisimpinä pisteiden jakautuminen joka tapahtui

19 7:ssä tapauksessa, mikä on loogista seurausta sille, että tällaiset tasapainotilat ovat yksinkertaisempia ja täten yleisimpiä kuten luvussa 3.2 nähtiin. Melkein yhtä yleisiä olivat jakautumiset joita tapahtui kuudessa tapauksessa. Pisteiden jakautumista täysin tasankin tapahtui kuitenkin kahdessa tapauksessa, joten harvinaisempiakin tasapainoasemia esiintyy tässä tapauksessa suhteellisen suurella todennäköisyydellä. Keskimäärin tasapainon löytämisessä kului tässä tapauksessa 46,75 sukupolvea. Ohessa vielä taulukko yhteistyöasteen kehityksestä näissä 20 ajossa kuudenkymmenen ensimmäisen sukupolven osalta. Yhteistyön suhteellisen osuuden kehittyminen geneettisessä algoritmissa 1 Yhteistyön suhteellinen osuus 0,9 0,8 0,7 0,6 0,5 0, Sukupolvi Kuva 1: Yhteistyön kehittyminen geneettisessä algoritmissa parametrien alkuarvoilla Vaikka vaihtelua eri ajojen välillä selkeästi on, niin algoritmin yleinen käyttäytyminen on melko saman

20 suuntaista. Satunnaisilla alkustrategioilla yhteistyön osuudet ovat lähellä 0,5:ttä, joka on siis myös odotusarvo täysin satunnaisille strategioille. Tästä strategiat kehittyvät selvästi ensimmäisten sukupolvien aikana kunnes noin 20 sukupolven jälkeen saavutetaan tasanne, jossa vielä tasapainoa löytämättömien strategioiden yhteistyöosuudet vaihtelevat noin välillä 0,7-0,95 kunnes yksi kerrallaan nekin saavuttavat tasapainon. Tyypilliseltä käytökseltä näyttäisi myös sahalaitakuvio joka viittaa siihen, että yhteistyön osuuden kasvua seuraa seuraavassa sukupolvessa yleensä yhteistyön osuuden tippuminen. Geneettiset algoritmit näyttävät siis soveltuvan varsin hyvin tämäntyyppiseen peliteoreettiseen evoluutioasetelmaan. Seuraavaksi kokeiltiin mallin parametrien muuttamisen vaikutusta yhteistyön kehittymiseen. 5.2 Pelikierroksen pituuden ja mutaatiotodennäköisyyden vaikutus Seuraavaksi kokeiltiin pelikierroksen pituuden vaikutusta. Edellisessä tapauksessa kukin pari pelasi peliä 20 kertaa ja tätä koetta varten toistojen määrä nostettiin neljäänkymmeneen. Käytännössä tämän pitäisi tarkoittaa ensimmäisten strategiabittien vaikutuksen pienenemistä. Pelikierrosten määrän lisääminen toivottavasti korostaa myös kullakin hetkellä yhteistyökykyisempiä strategioita ja täten parantaa geneettisen algoritmin toimivuutta, mutta toisaalta tässä tapauksessa pelien lopputulemien ollessa syklisiä strategioiden esitystavasta johtuen voi käydä niin, että eri pelaajien pistemäärien suhteet pysyvät käytännössä samoina jolloin rulettimenetelmän todennäköisyydet eivät muutu ja ensimmäisen bitin vaikutuksen väheneminen voi jopa huonontaa algoritmin toimivuutta koska ensimmäinen strategiabitti on ainoa strategiabitti jonka arvon on pakko olla kaikissa mahdollisissa tasapainoasemissa kaikilla pelaajilla sama. Algoritmia toistettiin jälleen 20 kertaa seuraavin tuloksin:

21 Sukupolvet Sukupolvet Taulukko 5: Geneettisen algoritmin tuloksia pitemmällä pelikierroksen pituudella Keskimäärin tasapainon löytämiseen meni nyt keskimäärin 53,35 sukupolvea. Pelikierroksen pidentäminen ei siis ainakaan parantanut algoritmin toimivuutta. Kuudennentoista kerran poikkeuksellisen huono tulos saattaa johtua ensimmäisen bitin vaikutuksen vähenemisestä. Toinen säädettävä parametri jonka vaikutusta haluttiin tutkia on mutaatioiden todennäköisyys. Parametrin vaikutusta testattiin nostamalla sen arvo 0.01:stä 0.03:een. Nyt kun tavoitteena on täydellinen yhteistyö ja se voidaan saavuttaa kaikista alkupopulaatioista myös ilman mutaatioita niin korkeammasta mutaatiotodennäköisyydestä on todennäköisesti enemmän haittaa kun hyötyä. Algoritmia toistettiin 20 kertaa korkeammalla mutaatiotodennäköisyydellä seuraavin tuloksin:

22 Sukupolvet Sukupolvet Taulukko 6: Geneettisen algoritmin tuloksia mutaatiotodennäköisyydellä 0,03 Mutaatiotodennäköisyyden kasvattaminen aiheutti siis selkeästi huonompia tuloksia, 0,03 on selkeästi liian suuri todennäköisyys mutaatiolle. Koska mutaatiotodennäköisyyden kasvattaminen vaikutti näin selkeästi huonontavasti tuloksiin niin kokeiltiin myös mutaatiotodennäköisyyden pienentämistä arvoon 0,001. Suoritettiin jälleen 20 toistoa seuraavin tuloksin:

23 Sukupolvet Sukupolvet Taulukko 7: Geneettisen algoritmin tuloksia mutaatiotodennäköisyydellä 0,001 Nyt tarvittiin keskimäärin 25,4 sukupolvea tasapainoaseman saavuttamiseen. Mutaatiotodennäköisyyden pienentäminen siis paransi selkeästi algoritmin toimintaa, etenkin huomattavaa parannus oli huonoimmissa toistoissa; siinä missä ensimmäisissä tuloksissa neljässä tapauksessa kahdestakymmenestä tarvittiin yli 100 sukupolvea niin nyt huonoin tulos oli 56 sukupolvea. Ohessa vielä taulukko yhteistyöasteen kehityksestä tässä tapauksessa:

24 Yhteistyön suhteellisen osuuden kehitys 1 Yhteistyön suhteellinen osuus 0,9 0,8 0,7 0,6 0,5 0, Sukupolvi Kuva 2: Yhteistyön kehittyminen geneettisessä algoritmissa pienemmällä mutaatiotodennäköisyydellä Verrattuna alkuperäiseen tulokseen algoritmin käytös on saman suuntaista yhteistyöasteen noustessa jälleen tasaisesti ensimmäisten 20 sukupolven aikana, mutta tässä tapauksessa käytös on huomattavasti tasaisempaa ja kehitys tasaisempaa. Siinä missä mutaatiotodennäköisyydellä 0,01 kahdenkymmenen sukupolven jälkeen yhteistyöaste vaihteli vielä tasapainoa hakevissa tapauksissa noin 0,7:n ja 0,95:n välillä niin mutaatiotodennäköisyydellä 0,001 melkein kaikkien tapausten yhteistyöosuudet pysyivät vastaavassa tilanteessa yli 0,9:ssä. Pienempi mutaatiotodennäköisyys on siis selkeästi tässä tapauksessa parempi algoritmin toiminnan kannalta. Tästä eteenpäin tässä työssä käytetään pienempää mutaatiotodennäköisyyttä. 5.3 Risteytysprosessin muuttamisen vaikutus algoritmin toimintaan Vaikka algoritmi löytää tämänhetkisilläkin asetuksilla täydellisen yhteistyön tasapainotiloja varmasti ja nopeasti niin kokeillaan pistemäärien muuntamisen vaikutusta. Kuten aiemmin todettiin, pistemäärien

25 vakiolla kertominen ei aiheuta rulettimenetelmää käytettäessä eroa algoritmin toimintaan, joten kokeillaan algoritmin toiminnan muuttumista jos pistemäärät korotetaan toiseen potenssiin risteytystä tehdessä. Tällöin korkeampia pistemääriä saaneiden yksilöiden todennäköisyys tulla valituksi risteytykseen kasvaa. Nyt kun tavoitteena on homogeenisen populaation luominen niin tämän pitäisi nopeuttaa algoritmin toimintaa. 20 toiston sarja tuotti seuraavanlaiset tulokset: Sukupolvet Sukupolvet Taulukko 8: Geneettisen algoritmin tuloksia kun risteytettäessä pistemäärät korotetaan toiseen potenssiin Nyt tarvittiin keskimäärin 14,3 sukupolvea tasapainon löytymiseen, eli parannusta edelliseen malliin saatiin odotetusti. Jos ajatellaan jälleen geneettistä algoritmia peliteoreettisessa mallissa jonkun populaation evoluution mallina niin pistemäärien korottamisella johonkin potenssiin voidaan mallissa kuvata oppimisnopeutta, mitä korkeampaan potenssiin pistemäärät nostetaan sitä todennäköisemmin seuraava sukupolvi ottaa oppia tämän sukupolven parhaiten menestyvistä yksilöistä. Vertailun vuoksi vielä yhteistyöasteen kehitys tässä mallissa:

26 Yhteistyön suhteellisen osuuden kehittyminen geneettisessä algoritmissa 1 Yhteistyön suhteellinen osuus 0,9 0,8 0,7 0,6 0,5 0, Sukupolvi Kuva 3: Yhteistyön kehittyminen kun risteytettäessä pistemäärät korotetaan toiseen potenssiin Verrattuna edellisiin tapauksiin algoritmin alussa parannus yhteistyössä on nopeampaa ja aiemmin havaittua tasaantumista ei useimmissa tapauksissa esiinny vaan nousu jatkuu suoraan yhteistyötavoitteeseen asti. Tästä eteenpäin työssä käytetään pisteiden korotusta toiseen potenssiin. Seuraavaksi kokeiltiin risteytysprosessin muuttamista sellaiseksi, että kummallekin sukupuolelle risteytyksessä otetaan vanhemmat saman sukupuolen sisältä. Tämän voidaan ajatella vastaavan tilannetta jossa eri sukupuolet ovat symbioosissa eläviä populaatioita jotka ottavat oppia tai perivät ominaisuutensa vain omasta populaatiostaan. 20 toistoa tuotti seuraavanlaiset tulokset:

27 Sukupolvet Sukupolvet Taulukko 9: Geneettisen algoritmin tuloksia kun risteytys suoritettiin vain sukupuolten sisällä Nyt ero edellisiin tapauksiin on huomattava. Erityisesti on nyt tapauksia joissa täydelliseen yhteistyöhön pääsemiseksi tarvitaan hyvin suuri määrä sukupolvia. Yhteistyön kehitystä tutkittaessa tapauksissa joissa sukupolvia tarvittiin paljon paljastaa, että tällöin on tyypillistä, että yhteistyön osuus pysyy usein samana useiden sukupolvien ajan joka viittaa algoritmin jäävän lokaaliin maksimiin. Tämä johtunee sukupuolten taistelulle ominaisesta epätasapainosta, eli siitä että kummallakin sukupuolella on mieluisampi vaihtoehto. Aiemmat tapaukset välttivät nämä lokaalit maksimit sillä, että risteytettäessä sukupuolten geenit menevät ristiin siten, että kaikilla yksilöillä on geenejä myös vastakkaiselta sukupuolelta. Nyt kun yleisimmät tasapainot ovat sellaisia joissa toisen sukupuolten jäsenet saavat kukin 200 pistettä ja saman pistemäärän kyseisen sukupuolen edustajat saavat myös sellaisessa lopputuloksessa jossa ne pelaavat aina mieluisinta vaihtoehtoaan, mutta yhteistyötä tapahtuu vain 50% ajasta niin on luonnollista, että täydellisen yhteistyön löytäminen kestää kauan, eihän täydellinen yhteistyö ole molemmille sukupuolille optimaalinen tilanne. Kaikissa tapauksissa kuitenkin päädyttiin täydelliseen yhteistyöhön joka kertoo geneettisen algoritmin voimasta löytää ratkaisuja vaikka käytetty pisteytys ei tässä tapauksessa mittaakaan yhtä aikaa molemmille sukupuolille varsinaisen tavoitteen läheisyyttä. Lokaalien minimien yleisyys antaa myös aihetta epäillä, että tässä tapauksessa voitaisiin saada parempia tuloksia nostamalla mutaatiotodennäköisyyttä sen lasketusta arvosta. Ohessa on tulokset 20

28 toistosta kun mutaation todennäköisyys oli 0.1: Sukupolvet Sukupolvet Taulukko 10: Geneettisen algoritmin tuloksia suuremmalla mutaatiotodennäköisyydellä kun risteytys suoritettiin vain sukupuolten sisällä Edellisiin tuloksiin verrattuna parannusta tapahtui etenkin kaikista eniten sukupolvia vaatineissa tapauksissa. Suuremmasta mutaatiotodennäköisyydestä näytti siis olleen tässä tapauksessa selkeästi hyötyä siinä missä alkuperäisessä tapauksessa siitä oli haittaa. Oikean mutaatiotodennäköisyyden valinta geneettisessä algoritmissa riippuu siis kulloinkin kyseessä olevasta tehtävästä. Yleisesti ottaen monimutkaisemmat ja vaikeammat tehtävät hyötyvät suuremmasta mutaatiotodennäköisyydestä. 5.4 Parhaan mahdollisen strategian löytäminen muuttumatonta strategiaa vastaan Geneettisiä algoritmeja käytetään yleensä ratkaisun löytämiseen johonkin ongelmaan. Tässä työssä tähän mennessä geneettistä algoritmia on käytetty eräänlaisen evoluution mallina, tavoitteena tutkia pikemminkin geneettisen algoritmin käyttäytymistä ja tarkastelun alla olevan peliteoreettisen pelin luontaisia ominaisuuksia. On kuitenkin mielenkiintoista tutkia samalla miten tehokkaasti geneettisellä algoritmilla voidaan löytää optimaalinen strategia jotain tiettyä strategiaa vastaan pelattaessa. Tässä osassa työtä tutkittiin siis geneettistä algoritmia tilanteessa, jossa toisen sukupuolen strategia on aina

29 vakio. Normaalisti tällaisessa tilanteessa algoritmi voitaisiin lopettaa heti, kun löytyy yksikin strategia joka saa täydet pisteet vastustajan strategiaa vastaan, mutta tässä työssä tasapainostrategioiden vaatimusten ollessa näin vähäiset, vaikeimmassakin tapauksessa vaaditaan siis vain viiden bitin yhtäsuuruutta, otetaan tässäkin tapauksessa lopetusehdoksi koko populaation yhteistyökyky vakiostrategian kanssa. Evoluutionäkökulmasta tämä tarkoittaa tarkastelua sille miten nopeasti koko populaatio saadaan pelaamaan optimaalisesti. On tärkeä muistaa, että liitteenä esitetyssä ohjelmalistauksessa käytetään lopetusrajana yhteistyön suhteellista osuutta, nyt on kuitenkin mahdollista, että täydellinen yhteistyö ei takaa kaikissa tapauksissa sukupuolelle suurinta mahdollista pistemäärää joten on valittava vastustajiksi vain strategioita joissa optimaalinen tulos saavutetaan yhteistyöllä tai muutettava algoritmin pysähtymisehtoa. Tässä luvussa geneettinen algoritmi säätelee sukupuolen 0 kehitystä, sukupuoli 1:n strategia pysyys siis vakiona. Samalla kaksinkertaistetaan sukupuolen 0 populaation koko, eli geneettinen algoritmi käsittelee yhä 20:tä yksilöä. Kokeilu aloitettiin helpoimmasta tapauksesta jossa sukupuoli 1 pelaa aina sukupuolelle 0 mieluisempaa vaihtoehtoa, eli vaihtoehtoa 0. Sukupuolen 1 strategian jokainen bitti on siis 0. Optimaaliset populaatiot ovat siis sellaiset joissa kaikkien yksilöiden strategioiden bitit 1, 2 ja 6 saavat arvon 0. Algoritmia toistettiin 20 kertaa ja tulokset ovat seuraavassa taulukossa:

30 Sukupolvet Sukupolvet Taulukko 11: Geneettisen algoritmin tuloksia strategiahaussa staattista vastusta vastaan osa 1 Nähdään, että vaihtelu tulosten välillä on hyvin suurta. Suurimassa osassa tapauksia oikea strategia löydettiin koko populaatiolle nopeasti, mutta muutamissa tapauksissa tässä kesti hyvin kauan. Ohessa vielä kuvaaja yhteistyön kehittymisestä 50 ensimmäisen sukupolven aikana.

31 Yhteistyön kehittyminen geneettisessä algoritmissa 1 Yhteistyön suhteellinen osuus 0,9 0,8 0,7 0,6 0,5 0, Sukupolvi Kuva 4: Yhteistyön kehittyminen strategiahaussa staattista vastustajaa vastaan Jälleen kerran nähdään selkeästi samansuuntaista käytöstä. Kaikissa tapauksissa yhteistyön nousu viiden ensimmäisen sukupolven aikana on voimakasta ja kaikissa tapauksissa melko samanlaista. Tämän jälkeen yhteistyö tasoittuu noin 0,95:een jossa se suurimmaksi osaksi pysyy kunnes täydellinen tasapaino löydetään jossain vaiheessa. Tämä esimerkki demonstroi myös hyvin yhden geneettisen algoritmin haitan, nimittäin sen että vaikka geneettisellä algoritmilla onkin aina mahdollisuus löytää optimaalinen ratkaisu jos se on olemassa niin algoritmi voi juuttua käytännössä lokaaliin maksimiin. Tässä tapauksessa tiesimme optimaalisen ratkaisun, mutta jos optimaalista ratkaisua ei tiedetä etukäteen niin löydetyn ratkaisun optimaalisuutta ei voida taata. On kuitenkin pidettävä mielessä, että geneettinen algoritmi löytää hyvin nopeasti melko hyvän ratkaisun ongelmalle ja geneettisiä algoritmeja käytetäänkin usein tilanteissa joissa hyvä ratkaisu riittää globaalin optimin sijaan. Tutkimalla lukuarvoja tapauksista joissa sukupolvia kului paljon nähdään, että jälleen saadaan pitkiä tasaisia jaksoja. Tyypillisiä yhteistyöasteen arvoja näille tasanteille ovat 0.95, ja Nyt kun pelejä pelataan kierroksessa yhteensä 400 niin nämä vastaavat tapauksia joissa yhteistyötä tehdään 380

32 tapauksessa, 378 tapauksessa ja 379 tapauksessa. Tapaus jossa yhteistyötä tehdään 380 tapauksessa vastaa ilmeisesti sellaista tilannetta, jossa populaation kaikki jäsenet pelaavat ensimmäisellä kierroksella ykköstä ja kaikilla seuraavilla nollaa jolloin kukin menettää ensimmäisellä pelikierroksella kaksi pistettä. Tällaiseen tilanteeseen algoritmi jää helposti jumiin sellaisessa tapauksessa, jossa populaatiossa yleisesti strategiabitti 2 saa arvon 1 jolloin siinäkin tapauksessa jolloin mutaatio muuttaa jossain yksilössä bitin 1 arvon ykköseksi jolloin tämä yksilö tekee yhteistyötä ensimmäisellä kierroksella niin yhteistyötä toisella pelikierroksella ei tapahdu ja oikeansuuntainen mutaatio ei saakaan aikaan yhtään parempaa yksilöä ja tämä geeni voi helposti seuraavassa risteytyksessä poistua jälleen populaatiosta. Muut havaitut lokaalit maksimit ovat niin lähellä tätä tapausta, että niissä lienee eroa tähän tilanteeseen vain yhden yksilön strategiassa. Tässäkin tapauksessa siis vaikka täydellinen tasapaino vaatii vain kolmen bitin tiettyä arvoa on mahdollista jäädä hyvinkin pitkäksi ajaksi jumiin lokaaliin maksimiin, joten mutaation todennäköisyyttä voisi kannattaa kasvattaa. Toisaalta yleisessä tapauksessa kun algoritmille riittää yhdenkin optimaalisen ratkaisun löytäminen ei ole tarpeellista liikaa kasvattaa mutaatioiden todennäköisyyttä, vaikkakin tällöin myös mutaatioiden suurimman haitta tämän työn ensimmäisessä vaiheessa, eli muuten valmiin populaation muuttaminen pois optimaalisesta, todennäköisyys pienenee rajusti. Evoluution kannalta ajateltuna tämä tarkoittaa sitä, että poikkeaminen totutuista tavoista on kannattavaa silloin, kun tavoitellaan yksittäisiä onnistumisia ja vähiten kannattavaa tilanteessa jossa halutaan välttää yhdenkään populaation jäsenen epäonnistumista. Tällä tavoin siis geneettinen algoritmi mallintaa melko luontevasti riskinottamista totutusta poikkeavin muutoksin strategioihin. Koska yksinkertaisimmassakin tapauksessa lokaalit maksimit aiheuttivat algoritmin venymistä niin jatkossa käytetään jälleen mutaation todennäköisyytenä 0,01:tä. Seuraavaksi kokeiltiin seuraavaksi yksinkertaisinta tilannetta, jossa sukupolven 1 strategian ensimmäinen bitti on 1 ja muut nollia. Nyt siis vastustaja pelaa ensimmäisellä kierroksella vaihtoehdon 1 ja sen jälkeen aina vaihtoehdon 0. Nyt täydellinen tasapaino vaatii siis neljän bitin yhtäsuuruutta. Algoritmia toistettiin jälleen 20 kertaa ja tulokset ovat seuraavassa taulukossa:

33 Sukupolvet Sukupolvet Taulukko 12: Geneettisen algoritmin tuloksia strategiahaussa staattista vastusta vastaan osa 2 Verrattuna edellisiin tuloksiin saatiin nyt tasaisesti hieman huonompia tuloksia, joka oli odotettavissa koska tällä kertaa vaadittu ratkaisu oli monimutkaisempi kun viime kerralla.

34 Yhteistyön kehittyminen geneettisessä algoritmissa 1 Yhteistyön suhteellinen osuus 0,9 0,8 0,7 0,6 0,5 0, Sukupolvi Kuva 5: Yhteistyön kehittyminen strategiahaussa staattista vastustajaa vastaan Algoritmin käytös on suurin piirtein sellainen kuin edellisistä tapauksista voitiin päätelläkin. Varsin hyvään tulokseen päästään viidessä sukupolvessa ja siitä eteenpäin yhteistyötaso liikkuu noin 0,95:en ympärillä kunnes tasapaino löydetään. Korkeamman mutaatiotodennäköisyyden vaikutus näkyy selvästi suurempana vaihteluna kehityksen kasvun taituttua samalla tavoin kuin ensimmäisissä käytännön kokeissa. Viimeisenä esimerkkinä strategian löytämisestä vastustajan staattista strategiaa vastaan kokeiltiin vielä yhtä monimutkaisimista täydellisen yhteistyön tasapainoista. Monimutkaisimmat tapauksethan vaativat taulukon 2 mukaan kuuden bitin yhtäsuuruutta. Tähän vaiheeseen valittiin tasapaino jossa täydellisessä yhteistyössä pelaajat pelaavat ketjun Tällaisia strategioita ovat sellaiset, joissa bitti 1 saa arvon 0, bitti 2 arvon 1, bitti 6 arvon 1, bitti 9 arvon 1, bitti 18 arvon 0 ja bitti 21 arvon 0. Jotta täydellinen tasapaino vastaisi sukupuolen 1 pistemäärän maksimointia niin muiden bittien arvoiksi annettiin 1. Sukupuolen 1 strategia on siis nyt

Geneettiset algoritmit

Geneettiset algoritmit Geneettiset algoritmit Evoluution piirteitä laskennassa Optimoinnin perusteet - Kevät 2002 / 1 Sisältö Geneettisten algoritmien sovelluskenttä Peruskäsitteitä Esimerkkejä funktion ääriarvon etsintä vangin

Lisätiedot

Algoritmit 2. Luento 12 To Timo Männikkö

Algoritmit 2. Luento 12 To Timo Männikkö Algoritmit 2 Luento 12 To 3.5.2018 Timo Männikkö Luento 12 Geneettiset algoritmit Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Algoritmit 2 Kevät 2018 Luento 12 To 3.5.2018 2/35 Algoritmien

Lisätiedot

SEKASTRATEGIAT PELITEORIASSA

SEKASTRATEGIAT PELITEORIASSA SEKASTRATEGIAT PELITEORIASSA Matti Estola 8. joulukuuta 2013 Sisältö 1 Johdanto 2 2 Ratkaistaan sukupuolten välinen taistelu sekastrategioiden avulla 5 Teksti on suomennettu kirjasta: Gibbons: A Primer

Lisätiedot

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly Bayesin pelit Kalle Siukola MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly 12.10.2016 Toistetun pelin esittäminen automaatin avulla Ekstensiivisen muodon puu on tehoton esitystapa, jos peliä

Lisätiedot

Evolutiivisesti stabiilin strategian oppiminen

Evolutiivisesti stabiilin strategian oppiminen Evolutiivisesti stabiilin strategian oppiminen Janne Laitonen 8.10.2008 Maynard Smith: s. 54-60 Johdanto Käytös voi usein olla opittua perityn sijasta Tyypillistä käytöksen muuttuminen ja riippuvuus aikaisemmista

Lisätiedot

Yhteistyötä sisältämätön peliteoria

Yhteistyötä sisältämätön peliteoria Yhteistyötä sisältämätön peliteoria jarkko.murtoaro@hut.fi Optimointiopin seminaari Kevät 2003 / 1 Sisältö Johdanto Käsitteistö Työkalut Nashin tasapaino Täydellinen tasapaino Optimointiopin seminaari

Lisätiedot

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010 TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010 Evoluutiopohjainen monitavoiteoptimointi MCDM ja EMO Monitavoiteoptimointi kuuluu

Lisätiedot

Yhteistyötä sisältämätön peliteoria jatkuu

Yhteistyötä sisältämätön peliteoria jatkuu Yhteistyötä sisältämätön peliteoria jatkuu Tommi Lehtonen Optimointiopin seminaari - Syksy 2000 / 1 Bayesilainen tasapaino Täysi informaatio Vajaa informaatio Staattinen Nash Bayes Dynaaminen Täydellinen

Lisätiedot

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 2. Luento 13 Ti Timo Männikkö Algoritmit 2 Luento 13 Ti 30.4.2019 Timo Männikkö Luento 13 Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Ositus ja rekursio Rekursion toteutus Algoritmit 2 Kevät 2019 Luento 13 Ti 30.4.2019

Lisätiedot

Luento 8. June 3, 2014

Luento 8. June 3, 2014 June 3, 2014 Luokka pelejä, joissa pelaajilla on epätäydellistä informaatiota toistensa preferensseistä ja joissa valinnat tehdään samanaikaisesti. Tämä tarkoittaa, että pelaajat eivät tiedä toistensa

Lisätiedot

MS-C2105 Optimoinnin perusteet Malliratkaisut 5

MS-C2105 Optimoinnin perusteet Malliratkaisut 5 MS-C2105 Optimoinnin perusteet Malliratkaisut 5 Ehtamo Demo 1: Arvaa lähimmäksi Jokainen opiskelija arvaa reaaliluvun välillä [0, 100]. Opiskelijat, joka arvaa lähimmäksi yhtä kolmasosaa (1/3) kaikkien

Lisätiedot

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto OHJ-3200 Ohjelmistoarkkitehtuurit 1 Arkkitehtuurien tutkimus Outi Räihä 2 Darwin-projekti Darwin-projekti: Akatemian rahoitus 2009-2011 Arkkitehtuurisuunnittelu etsintäongelmana Geneettiset algoritmit

Lisätiedot

Luento 5: Peliteoriaa

Luento 5: Peliteoriaa Luento 5: Peliteoriaa Tässä kappaleessa tutustutaan hieman peliteoriaan. Keskeisiä asioita ovat Nash-tasapaino ja sekastrategia. Cournot n duopolimalli vuodelta 1838 toimii oivallisena havainnollistuksena

Lisätiedot

Nollasummapelit ja bayesilaiset pelit

Nollasummapelit ja bayesilaiset pelit Nollasummapelit ja bayesilaiset pelit Kristian Ovaska HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Seminaari: Peliteoria Helsinki 18. syyskuuta 2006 Sisältö 1 Johdanto 1 2 Nollasummapelit 1 2.1

Lisätiedot

Dynaaminen hintakilpailu ja sanattomat sopimukset

Dynaaminen hintakilpailu ja sanattomat sopimukset Dynaaminen hintakilpailu ja sanattomat sopimukset Pasi Virtanen 12.3.2003 Johdanto Hintakilpailu jossa pelaajat kohtaavat toisensa toistuvasti Pelaajien on otettava hintaa valittaessa huomioon hintasodan

Lisätiedot

Sekastrategia ja Nash-tasapainon määrääminen

Sekastrategia ja Nash-tasapainon määrääminen May 24, 2016 Sekastrategia Monissa peleissä ei ole Nash-tasapainoa puhtaissa strategioissa H T H 1, 1 1, 1 T 1, 1 1, 1 Ratkaisu ongelmaan löytyy siitä, että laajennetaan strategiat käsittämään todennäköisyysjakaumat

Lisätiedot

Algoritmit 2. Luento 12 Ke Timo Männikkö

Algoritmit 2. Luento 12 Ke Timo Männikkö Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 10 1 Funktion monotonisuus Derivoituva funktio f on aidosti kasvava, jos sen derivaatta on positiivinen eli jos f (x) > 0. Funktio on aidosti vähenevä jos sen derivaatta

Lisätiedot

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari Konsensusongelma hajautetuissa järjestelmissä Niko Välimäki 30.11.2007 Hajautetut algoritmit -seminaari Konsensusongelma Päätöksen muodostaminen hajautetussa järjestelmässä Prosessien välinen viestintä

Lisätiedot

Epätäydellisen tiedon jatkuvat pelit. Mika Viljanen Peliteorian seminaari

Epätäydellisen tiedon jatkuvat pelit. Mika Viljanen Peliteorian seminaari Epätäydellisen tiedon jatkuvat pelit Mika Viljanen Peliteorian seminaari Erityispiirteitä Erityispiirteitä Epätäydellinen tieto aiemmista toiminnoista Erityispiirteitä Epätäydellinen tieto aiemmista toiminnoista

Lisätiedot

Mikrotaloustiede Prof. Marko Terviö Aalto-yliopisto BIZ 31C00100 Assist. Jan Jääskeläinen Syksy 2017

Mikrotaloustiede Prof. Marko Terviö Aalto-yliopisto BIZ 31C00100 Assist. Jan Jääskeläinen Syksy 2017 Mikrotaloustiede Prof. Marko Terviö Aalto-yliopisto BIZ 31C1 Assist. Jan Jääskeläinen Syksy 17 Mallivastaukset 7. 1. Kaupungissa on kaksi suurta taidemuseoa (pelaajat) ja 5 asukasta. Taidemuseoilla on

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 1 Funktion kuperuussuunnat Derivoituva funktio f (x) on pisteessä x aidosti konveksi, jos sen toinen derivaatta on positiivinen f (x) > 0. Vastaavasti f (x) on aidosti

Lisätiedot

Johdanto peliteoriaan Kirja kpl. 2

Johdanto peliteoriaan Kirja kpl. 2 Aalto-yliopiston TKK Mat-2.4142 K2010 Esitelmä 1 Ilkka Leppänen 1 Johdanto peliteoriaan Kirja kpl. 2 Ilkka Leppänen 20.1.2010 Aalto-yliopiston TKK Mat-2.4142 K2010 Esitelmä 1 Ilkka Leppänen 2 Aiheet Laajennettu

Lisätiedot

Pohdiskeleva ajattelu ja tasapainotarkennukset

Pohdiskeleva ajattelu ja tasapainotarkennukset Pohdiskeleva ajattelu ja tasapainotarkennukset Sanna Hanhikoski 24.3.2010 Sisältö Pohdiskeleva ajattelu Nashin tasapainotarkennukset Täydellinen tasapaino Täydellinen bayesiläinen tasapaino Vaiheittainen

Lisätiedot

S Laskennallinen systeemibiologia

S Laskennallinen systeemibiologia S-114.2510 Laskennallinen systeemibiologia 3. Harjoitus 1. Koska tilanne on Hardy-Weinbergin tasapainossa luonnonvalintaa lukuunottamatta, saadaan alleeleista muodostuvien eri tsygoottien genotyyppifrekvenssit

Lisätiedot

Evolutiivinen stabiilisuus populaation

Evolutiivinen stabiilisuus populaation Antti Toppila sivu 1/20 Optimointiopin seminaari Syksy 2008 Evolutiivinen stabiilisuus populaation määrittämisessä Antti Toppila 24.9.2008 Antti Toppila sivu 2/20 Optimointiopin seminaari Syksy 2008 Sisältö

Lisätiedot

Luento 5: Peliteoriaa

Luento 5: Peliteoriaa Luento 5: Peliteoriaa Tässä kappaleessa tutustutaan lyhyesti peliteoriaan. Peliteorian ratkaisukäsite on Nashin tasapaino, jonka jo Augustin Cournot esitti duopolimallinsa ratkaisuna v. 1838. Cournot n

Lisätiedot

Luento 9. June 2, Luento 9

Luento 9. June 2, Luento 9 June 2, 2016 Otetaan lähtökohdaksi, että sopimuksilla ei voida kattaa kaikkia kontingensseja/maailmantiloja. Yksi kiinnostava tapaus on sellainen, että jotkut kontingenssit ovat havaittavissa sopimusosapuolille,

Lisätiedot

11. Javan toistorakenteet 11.1

11. Javan toistorakenteet 11.1 11. Javan toistorakenteet 11.1 Sisällys Laskuri- ja lippumuuttujat. Sisäkkäiset silmukat. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin

Lisätiedot

f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))

f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n)) Määritelmä: on O(g(n)), jos on olemassa vakioarvot n 0 > 0 ja c > 0 siten, että c g(n) kun n > n 0 O eli iso-o tai ordo ilmaisee asymptoottisen ylärajan resurssivaatimusten kasvun suuruusluokalle Samankaltaisia

Lisätiedot

11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17)

11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17) 11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17) Oligopoli on markkinamuoto, jossa markkinoilla on muutamia yrityksiä, jotka uskovat tekemiensä valintojen seurauksien eli voittojen riippuvan

Lisätiedot

Demo 1: Simplex-menetelmä

Demo 1: Simplex-menetelmä MS-C2105 Optimoinnin perusteet Malliratkaisut 3 Ehtamo Demo 1: Simplex-menetelmä Muodosta lineaarisen tehtävän standardimuoto ja ratkaise tehtävä taulukkomuotoisella Simplex-algoritmilla. max 5x 1 + 4x

Lisätiedot

Matematiikan tukikurssi, kurssikerta 3

Matematiikan tukikurssi, kurssikerta 3 Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus

Lisätiedot

Luento 7. June 3, 2014

Luento 7. June 3, 2014 June 3, 2014 Peli, jossa on kaksi Nash-tasapainoa. Yksi tasapaino on (1; 2) ja toinen (2; 1); P1:n valinta on ilmoitettu ensin. Ensimmäinen tasapaino ei vaikuta hyvältä; se perustuu epäuskottavaan uhkaukseen.

Lisätiedot

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014 Yhtälönratkaisusta Johanna Rämö, Helsingin yliopisto 22. syyskuuta 2014 Yhtälönratkaisu on koulusta tuttua, mutta usein sitä tehdään mekaanisesti sen kummempia ajattelematta. Jotta pystytään ratkaisemaan

Lisätiedot

TEAMGOLF-KUTSU. Kilpailu järjestetään Veritas-Stadionin sisähallissa (Hippoksentie 6, Kupittaa, Turku) sunnuntaina 22.1.2006.

TEAMGOLF-KUTSU. Kilpailu järjestetään Veritas-Stadionin sisähallissa (Hippoksentie 6, Kupittaa, Turku) sunnuntaina 22.1.2006. TEAMGOLF-KUTSU Ajankohta Kilpailu järjestetään Veritas-Stadionin sisähallissa (Hippoksentie 6, Kupittaa, Turku) sunnuntaina 22.1.2006. Lähtöaika Ensimmäinen lähtö klo 10.00. Pelitapa Kierrokset Parikilpailu

Lisätiedot

Kombinatorinen optimointi

Kombinatorinen optimointi Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein

Lisätiedot

JUSSIN KISAT 2017, TEAMGOLF-KUTSU

JUSSIN KISAT 2017, TEAMGOLF-KUTSU JUSSIN KISAT 2017, TEAMGOLF-KUTSU Ajankohta Kilpailu järjestetään Impivaarassa sunnuntaina 21.5. Lähtöaika Kilpailu alkaa massalähdöllä klo 9.00. Pelitapa Kierrokset Parikilpailu parannusyrityksillä, tarkempi

Lisätiedot

Matematiikan tukikurssi: kurssikerta 10

Matematiikan tukikurssi: kurssikerta 10 Matematiikan tukikurssi: kurssikerta 10 1 Newtonin menetelmä Oletetaan, että haluamme löytää funktion f(x) nollakohan. Usein tämä tehtävä on mahoton suorittaa täyellisellä tarkkuuella, koska tiettyjen

Lisätiedot

Königsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )

Königsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( ) Königsbergin sillat 1700-luvun Königsbergin (nykyisen Kaliningradin) läpi virtasi joki, jonka ylitti seitsemän siltaa. Sanotaan, että kaupungin asukkaat yrittivät löytää reittiä, joka lähtisi heidän kotoaan,

Lisätiedot

MS-A0004/A0006 Matriisilaskenta

MS-A0004/A0006 Matriisilaskenta 4. MS-A4/A6 Matriisilaskenta 4. Nuutti Hyvönen, c Riikka Kangaslampi Matematiikan ja systeemianalyysin laitos Aalto-yliopisto..25 Tarkastellaan neliömatriiseja. Kun matriisilla kerrotaan vektoria, vektorin

Lisätiedot

PELITEORIAN PERUSTEITA

PELITEORIAN PERUSTEITA PELITEORIAN PERUSTEITA Matti Estola 29. marraskuuta 2013 Sisältö 1 Johdanto 2 2 Peliteoreettisen analyysin vaiheet 2 3 Staattiset pelit täydellisen informaation vallitessa 3 4 Pelin ratkaiseminen 4 4.1

Lisätiedot

Harjoitus 6 ( )

Harjoitus 6 ( ) Harjoitus 6 (30.4.2014) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on max θ(u,v) s.t. u 0,

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 6 Sarjojen suppeneminen Kiinnostuksen kohteena on edelleen sarja a k = a + a 2 + a 3 + a 4 +... k= Tämä summa on mahdollisesti äärellisenä olemassa, jolloin sanotaan

Lisätiedot

811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu

811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu 811312A Tietorakenteet ja algoritmit, 2018-2019, Harjoitus 3, Ratkaisu Harjoituksessa käsitellään algoritmien aikakompleksisuutta. Tehtävä 3.1 Kuvitteelliset algoritmit A ja B lajittelevat syötteenään

Lisätiedot

811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu

811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu 811312A Tietorakenteet ja algoritmit 2017-2018, Harjoitus 2 ratkaisu Harjoituksen aiheena on algoritmien oikeellisuus. Tehtävä 2.1 Kahvipurkkiongelma. Kahvipurkissa P on valkoisia ja mustia kahvipapuja,

Lisätiedot

1 + b t (i, j). Olkoon b t (i, j) todennäköisyys, että B t (i, j) = 1. Siis operaation access(j) odotusarvoinen kustannus ajanhetkellä t olisi.

1 + b t (i, j). Olkoon b t (i, j) todennäköisyys, että B t (i, j) = 1. Siis operaation access(j) odotusarvoinen kustannus ajanhetkellä t olisi. Algoritmien DP ja MF vertaileminen tapahtuu suoraviivaisesti kirjoittamalla kummankin leskimääräinen kustannus eksplisiittisesti todennäköisyyksien avulla. Lause T MF ave = 1 + 2 1 i

Lisätiedot

Peliteoria luento 2. May 26, 2014. Peliteoria luento 2

Peliteoria luento 2. May 26, 2014. Peliteoria luento 2 May 26, 2014 Pelien luokittelua Peliteoriassa pelit voidaan luokitella yhteistoiminnallisiin ja ei-yhteistoiminnallisiin. Edellisissä kiinnostuksen kohde on eri koalitioiden eli pelaajien liittoumien kyky

Lisätiedot

http://www.nelostuote.fi/suomi/rummikubsaan.html

http://www.nelostuote.fi/suomi/rummikubsaan.html Sivu 1/5 Pelin sisältö 104 numeroitua laattaa (numeroitu 1-13) 2 laattaa kutakin neljää väriä (musta, oranssi, sininen ja punainen) 2 jokerilaattaa, 4 laattatelinettä, pelisäännöt Pelin tavoite Tavoitteena

Lisätiedot

Signalointi: autonromujen markkinat

Signalointi: autonromujen markkinat Signalointi: autonromujen markkinat Mat-.414 Optimointiopin seminaari Klaus Mattila 1.0.008 1 Esityksen rakenne Johdanto Autonromujen markkinat: Akerlofin malli Kustannuksellinen signalointi: Spencen malli

Lisätiedot

Satunnaisalgoritmit. Topi Paavilainen. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Satunnaisalgoritmit. Topi Paavilainen. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Satunnaisalgoritmit Topi Paavilainen Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Helsinki, 23. helmikuuta 2014 1 Johdanto Satunnaisalgoritmit ovat algoritmeja, joiden

Lisätiedot

Toistetut pelit Elmeri Lähevirta. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Toistetut pelit Elmeri Lähevirta. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly Toistetut pelit MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly 12.10.2016 Elmeri Lähevirta The document can be stored and made available to the public on the open internet pages of Aalto University.

Lisätiedot

Onnistut yrittämässäsi, mutta jokin täysin epäolennainen. vikaan.

Onnistut yrittämässäsi, mutta jokin täysin epäolennainen. vikaan. KYLLÄ, JA Onnistut yrittämässäsi ja saavutat enemmän kuin odotit, enemmän kuin kukaan osasi odottaa. KYLLÄ, MUTTA Onnistut yrittämässäsi, mutta jokin täysin epäolennainen asia menee vikaan. EI, MUTTA Et

Lisätiedot

Vangin dilemma häiriöisessä ympäristössä Markov-prosessina (valmiin työn esittely) Lasse Lindqvist

Vangin dilemma häiriöisessä ympäristössä Markov-prosessina (valmiin työn esittely) Lasse Lindqvist Vangin dilemma häiriöisessä ympäristössä Markov-prosessina (valmiin työn esittely) Lasse Lindqvist 21.01.2013 Ohjaaja: Kimmo Berg Valvoja: Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston

Lisätiedot

7.4 Sormenjälkitekniikka

7.4 Sormenjälkitekniikka 7.4 Sormenjälkitekniikka Tarkastellaan ensimmäisenä esimerkkinä pitkien merkkijonojen vertailua. Ongelma: Ajatellaan, että kaksi n-bittistä (n 1) tiedostoa x ja y sijaitsee eri tietokoneilla. Halutaan

Lisätiedot

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Esimerkki otteluvoiton todennäköisyys A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Yksittäisessä pelissä A voittaa todennäköisyydellä p ja B todennäköisyydellä q =

Lisätiedot

Y56 laskuharjoitukset 6

Y56 laskuharjoitukset 6 Y56 Kevät 00 Y56 laskuharjoitukset 6 Palautus joko luennolle/mappiin tai Katjan lokerolle (Koetilantie 5, 3. krs) to.4. klo 6 mennessä (purku luennolla ti 7.4.) Ole hyvä ja vastaa suoraan tähän paperiin.

Lisätiedot

Pelien teoriaa: tasapainokäsitteet

Pelien teoriaa: tasapainokäsitteet Pelien teoriaa: tasapainokäsitteet Salanién (2005) ja Gibbonsin (1992) mukaan Mat-2.4142 Optimointiopin seminaari Jukka Luoma 1 Sisältö Staattinen Dynaaminen Staattinen Dynaaminen Pelityyppi Täydellinen

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 Väliarvolause Oletetaan, että funktio f on jatkuva jollain reaalilukuvälillä [a, b] ja derivoituva avoimella välillä (a, b). Funktion muutos tällä välillä on luonnollisesti

Lisätiedot

Uolevin reitti. Kuvaus. Syöte (stdin) Tuloste (stdout) Esimerkki 1. Esimerkki 2

Uolevin reitti. Kuvaus. Syöte (stdin) Tuloste (stdout) Esimerkki 1. Esimerkki 2 Uolevin reitti Kuvaus Uolevi on ruudukon vasemmassa ylänurkassa ja haluaisi päästä oikeaan alanurkkaan. Uolevi voi liikkua joka askeleella ruudun verran vasemmalle, oikealle, ylöspäin tai alaspäin. Lisäksi

Lisätiedot

III Perinnöllisyystieteen perusteita

III Perinnöllisyystieteen perusteita Perinnöllisyystieteen perusteita III Perinnöllisyystieteen perusteita 15. Populaatiogenetiikka ja evoluutio 1. Avainsanat 2. Evoluutio muuttaa geenipoolia 3. Mihin valinta kohdistuu? 4. Yksilön muuntelua

Lisätiedot

DNA sukututkimuksen tukena

DNA sukututkimuksen tukena Järvenpää 12,2,2019 Teuvo Ikonen teuvo.ikonen@welho.com DNA sukututkimuksen tukena DNA sukututkimuksessa (Peter Sjölund: Släktforska med DNA) tiesitkö, että olet kävelevä sukukirja? on kuin lukisit kirjaa

Lisätiedot

Kimppu-suodatus-menetelmä

Kimppu-suodatus-menetelmä Kimppu-suodatus-menetelmä 2. toukokuuta 2016 Kimppu-suodatus-menetelmä on kehitetty epäsileiden optimointitehtävien ratkaisemista varten. Menetelmässä approksimoidaan epäsileitä funktioita aligradienttikimpulla.

Lisätiedot

Matematiikan tukikurssi, kurssikerta 2

Matematiikan tukikurssi, kurssikerta 2 Matematiikan tukikurssi kurssikerta 1 Relaatioista Oletetaan kaksi alkiota a ja b. Näistä kumpikin kuuluu johonkin tiettyyn joukkoon mahdollisesti ne kuuluvat eri joukkoihin; merkitään a A ja b B. Voidaan

Lisätiedot

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt Yhtälöryhmät 1/6 Sisältö Yhtälöryhmä Yhtälöryhmässä on useita yhtälöitä ja yleensä myös useita tuntemattomia. Tavoitteena on löytää tuntemattomille sellaiset arvot, että kaikki yhtälöt toteutuvat samanaikaisesti.

Lisätiedot

FoA5 Tilastollisen analyysin perusteet puheentutkimuksessa. Luentokuulustelujen esimerkkivastauksia. Pertti Palo. 30.

FoA5 Tilastollisen analyysin perusteet puheentutkimuksessa. Luentokuulustelujen esimerkkivastauksia. Pertti Palo. 30. FoA5 Tilastollisen analyysin perusteet puheentutkimuksessa Luentokuulustelujen esimerkkivastauksia Pertti Palo 30. marraskuuta 2012 Saatteeksi Näiden vastausten ei ole tarkoitus olla malleja vaan esimerkkejä.

Lisätiedot

CHERMUG-pelien käyttö opiskelijoiden keskuudessa vaihtoehtoisen tutkimustavan oppimiseksi

CHERMUG-pelien käyttö opiskelijoiden keskuudessa vaihtoehtoisen tutkimustavan oppimiseksi Tiivistelmä CHERMUG-projekti on kansainvälinen konsortio, jossa on kumppaneita usealta eri alalta. Yksi tärkeimmistä asioista on luoda yhteinen lähtökohta, jotta voimme kommunikoida ja auttaa projektin

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 4 Jatkuvuus Jatkuvan funktion määritelmä Tarkastellaan funktiota f x) jossakin tietyssä pisteessä x 0. Tämä funktio on tässä pisteessä joko jatkuva tai epäjatkuva. Jatkuvuuden

Lisätiedot

Luento 13: Geneettiset Algoritmit

Luento 13: Geneettiset Algoritmit Luento 13: Geneettiset Algoritmit Geneettiset algoritmit ovat luonnon evoluutiomekanismeja imitoivia heuristisia optimointimenetelmiä. Ne soveltuvat tehtäviin, joissa ratkaisuavaruus on hyvin suuri (esim.

Lisätiedot

Rationalisoituvuus ja yleinen tieto rationaalisuudesta

Rationalisoituvuus ja yleinen tieto rationaalisuudesta Rationalisoituvuus ja yleinen tieto rationaalisuudesta Keskeiset termit: Rationalizability rationalisoituvuus ratkaisukonsepti peliteoriassa Rationalizable rationalisoituva Rationality rationaalisuus pelaajat

Lisätiedot

3 Raja-arvo ja jatkuvuus

3 Raja-arvo ja jatkuvuus 3 Raja-arvo ja jatkuvuus 3. Raja-arvon käsite Raja-arvo kuvaa funktion kättätmistä jonkin lähtöarvon läheisdessä. Raja-arvoa tarvitaan toisinaan siksi, että funktion arvoa ei voida laskea kseisellä lähtöarvolla

Lisätiedot

Harjoitus 6 ( )

Harjoitus 6 ( ) Harjoitus 6 (21.4.2015) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s. t. g(x) 0 h(x) = 0 x X olevan optimointitehtävän Lagrangen duaali on missä max θ(u, v) s. t.

Lisätiedot

Avainsanat: peli, matematiikka, polynomi, yhteen- ja vähennyslasku, kertolasku

Avainsanat: peli, matematiikka, polynomi, yhteen- ja vähennyslasku, kertolasku Pasi Leppäniemi OuLUMA, sivu 1 POLYNOMIPELI Avainsanat: peli, matematiikka, polynomi, yhteen- ja vähennyslasku, kertolasku Luokkataso: 8-9 lk Välineet: pelilauta, polynomikortit, monomikortit, tuloskortit,

Lisätiedot

Sekastrategiat ja intensiiviyhteensopivuus

Sekastrategiat ja intensiiviyhteensopivuus Sekastrategiat ja intensiiviyhteensopivuus Petteri Räty 2010-03-14 God does not play dice with the universe Albert Einstein Agenda Intensiiviyhteensopivuuden käsite Yrittää vastata kysymykseen, mitä sekastrategiat

Lisätiedot

Paljonko maksat eurosta -peli

Paljonko maksat eurosta -peli Paljonko maksat eurosta -peli - Ajattele todellinen tilanne ja toimi oman näkemyksesi mukaisesti - Tee tarjous eurosta: * Korkein tarjous voittaa euron. * Huonoimman tarjouksen esittäjä joutuu maksamaan

Lisätiedot

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1)

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1) Approbatur 3, demo, ratkaisut Sovitaan, että 0 ei ole luonnollinen luku. Tällöin oletusta n 0 ei tarvitse toistaa alla olevissa ratkaisuissa. Se, pidetäänkö nollaa luonnollisena lukuna vai ei, vaihtelee

Lisätiedot

Johdatus verkkoteoriaan 4. luento

Johdatus verkkoteoriaan 4. luento Johdatus verkkoteoriaan 4. luento 28.11.17 Viikolla 46 läpikäydyt käsitteet Viikolla 47 läpikäydyt käsitteet Verkko eli graafi, tasoverkko, solmut, välit, alueet, suunnatut verkot, isomorfiset verkot,

Lisätiedot

Luetteloivat ja heuristiset menetelmät. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Luetteloivat ja heuristiset menetelmät. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Luetteloivat ja heuristiset menetelmät Mat-2.4191, Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Sisältö Branch and Bound sekä sen variaatiot (Branch and Cut, Lemken menetelmä) Optimointiin

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

Peliteoria Strategiapelit ja Nashin tasapaino. Sebastian Siikavirta sebastian.siikavirta@helsinki.fi

Peliteoria Strategiapelit ja Nashin tasapaino. Sebastian Siikavirta sebastian.siikavirta@helsinki.fi Peliteoria Strategiapelit ja Nashin tasapaino Sebastian Siikavirta sebastian.siikavirta@helsinki.fi Helsinki 11.09.2006 Peliteoria Tomi Pasanen HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö

Lisätiedot

Harjoitus 7: NCSS - Tilastollinen analyysi

Harjoitus 7: NCSS - Tilastollinen analyysi Harjoitus 7: NCSS - Tilastollinen analyysi Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tilastollinen testaus Testaukseen

Lisätiedot

Matematiikka vuosiluokat 7 9

Matematiikka vuosiluokat 7 9 Matematiikka vuosiluokat 7 9 Matematiikan opetuksen ydintehtävänä on tarjota oppilaille mahdollisuus hankkia sellaiset matemaattiset taidot, jotka antavat valmiuksia selviytyä jokapäiväisissä toiminnoissa

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä Sisällys 11. Javan toistorakenteet Laskuri- ja lippumuuttujat.. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin lopettaminen break-lauseella.

Lisätiedot

Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu

Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu (Valmiin työn esittely) 11.4.2011 Ohjaaja: Ville Mattila Valvoja: Raimo Hämäläinen Työn tavoite Tutkia evoluutioalgoritmia (Lee

Lisätiedot

MATEMATIIKAN KOE, LYHYT OPPIMÄÄRÄ HYVÄN VASTAUKSEN PIIRTEITÄ

MATEMATIIKAN KOE, LYHYT OPPIMÄÄRÄ HYVÄN VASTAUKSEN PIIRTEITÄ MATEMATIIKAN KOE, LYHYT OPPIMÄÄRÄ 24.9.2019 HYVÄN VASTAUKSEN PIIRTEITÄ Alustavat hyvän vastauksen piirteet on suuntaa-antava kuvaus kokeen tehtäviin odotetuista vastauksista ja tarkoitettu ensisijaisesti

Lisätiedot

Parinmuodostuksesta tietojenkäsittelytieteen silmin. Petteri Kaski Tietojenkäsittelytieteen laitos Aalto-yliopisto

Parinmuodostuksesta tietojenkäsittelytieteen silmin. Petteri Kaski Tietojenkäsittelytieteen laitos Aalto-yliopisto Parinmuodostuksesta tietojenkäsittelytieteen silmin Petteri Kaski Tietojenkäsittelytieteen laitos Aalto-yliopisto Suomalainen Tiedeakatemia Nuorten Akatemiaklubi 18.10.2010 Sisältö Mitä tietojenkäsittelytieteessä

Lisätiedot

806109P TILASTOTIETEEN PERUSMENETELMÄT I Hanna Heikkinen Esimerkkejä estimoinnista ja merkitsevyystestauksesta, syksy (1 α) = 99 1 α = 0.

806109P TILASTOTIETEEN PERUSMENETELMÄT I Hanna Heikkinen Esimerkkejä estimoinnista ja merkitsevyystestauksesta, syksy (1 α) = 99 1 α = 0. 806109P TILASTOTIETEEN PERUSMENETELMÄT I Hanna Heikkinen Esimerkkejä estimoinnista ja merkitsevyystestauksesta, syksy 2012 1. Olkoon (X 1,X 2,...,X 25 ) satunnaisotos normaalijakaumasta N(µ,3 2 ) eli µ

Lisätiedot

ESS oppiminen ja sen simulointi

ESS oppiminen ja sen simulointi ESS oppiminen ja sen simulointi 8.10.2008 Suhteellinen palkkiosumma, RPS = = = = + + = = n i t i t i t i t i i n i i i i P m r P m r t f r r f 1 1 1 1 1 1 1 1 ) ( ) ( ) ( (1) τ τ τ τ τ τ Harleyn (1981)

Lisätiedot

keskenään isomorfiset? (Perustele!) Ratkaisu. Ovat. Tämän näkee indeksoimalla kärjet kuvan osoittamalla tavalla: a 1 b 3 a 5

keskenään isomorfiset? (Perustele!) Ratkaisu. Ovat. Tämän näkee indeksoimalla kärjet kuvan osoittamalla tavalla: a 1 b 3 a 5 Johdatus diskreettiin matematiikkaan Harjoitus 6, 21.10.2015 1. Ovatko verkot keskenään isomorfiset? (Perustele!) Ratkaisu. Ovat. Tämän näkee indeksoimalla kärjet kuvan osoittamalla tavalla: a 2 b 4 a

Lisätiedot

Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)

Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely) Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely) Jari Hast xx.12.2013 Ohjaaja: Harri Ehtamo Valvoja: Hari Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston

Lisätiedot

Lukuteoria. Eukleides Aleksandrialainen (n. 300 eaa)

Lukuteoria. Eukleides Aleksandrialainen (n. 300 eaa) Lukuteoria Lukuteoria on eräs vanhimmista matematiikan aloista. On sanottu, että siinä missä matematiikka on tieteiden kuningatar, on lukuteoria matematiikan kuningatar. Perehdymme seuraavassa luonnollisten

Lisätiedot

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Duaalisuus kokonaislukuoptimoinnissa Mat-2.4191, Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki Sisältö Duaalisuus binäärisissä optimointitehtävissä Lagrangen duaalisuus Lagrangen

Lisätiedot

Jos nyt on saatu havaintoarvot Ü ½ Ü Ò niin suurimman uskottavuuden

Jos nyt on saatu havaintoarvot Ü ½ Ü Ò niin suurimman uskottavuuden 1.12.2006 1. Satunnaisjakauman tiheysfunktio on Ü µ Üe Ü, kun Ü ja kun Ü. Määritä parametrin estimaattori momenttimenetelmällä ja suurimman uskottavuuden menetelmällä. Ratkaisu: Jotta kyseessä todella

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 2 Lisää osamurtoja Tutkitaan jälleen rationaalifunktion P(x)/Q(x) integrointia. Aiemmin käsittelimme tapauksen, jossa nimittäjä voidaan esittää muodossa Q(x) = a(x x

Lisätiedot

Strateginen kanssakäyminen. Taloustieteen perusteet Matti Sarvimäki

Strateginen kanssakäyminen. Taloustieteen perusteet Matti Sarvimäki Strateginen kanssakäyminen Taloustieteen perusteet Matti Sarvimäki Johdanto Viime viikolla tilanteet joissa valinnat eivät riipu muiden valinnoista Tänään aloitamme valintojen vuorovaikutuksen tutkimisen

Lisätiedot

PID-sa a timen viritta minen Matlabilla ja simulinkilla

PID-sa a timen viritta minen Matlabilla ja simulinkilla PID-sa a timen viritta minen Matlabilla ja simulinkilla Kriittisen värähtelyn menetelmä Tehtiin kuvan 1 mukainen tasavirtamoottorin piiri PID-säätimellä. Virittämistä varten PID-säätimen ja asetettiin

Lisätiedot

Peliteoria luento 3. May 27, Peliteoria luento 3

Peliteoria luento 3. May 27, Peliteoria luento 3 May 27, 2015 Dominanssi Mitkä ovat uskottavia tulemia? Ja miksi? Yksi päätösteoreettinen periaate on dominanssi. Kuten lähes kaikkia taloustieteessä kiinnostavia käsitteitä niitä on kahta lajia. Aito ja

Lisätiedot

Perinnöllinen informaatio ja geneettinen koodi.

Perinnöllinen informaatio ja geneettinen koodi. Tehtävä A1 Kirjoita essee aiheesta: Perinnöllinen informaatio ja geneettinen koodi. Vastaa esseemuotoisesti, älä käytä ranskalaisia viivoja. Piirroksia voi käyttää. Vastauksessa luetaan ansioksi selkeä

Lisätiedot

Trichoderma reesein geenisäätelyverkoston ennustaminen Oskari Vinko

Trichoderma reesein geenisäätelyverkoston ennustaminen Oskari Vinko Trichoderma reesein geenisäätelyverkoston ennustaminen Oskari Vinko 04.11.2013 Ohjaaja: Merja Oja Valvoja: Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla. Muilta

Lisätiedot