Simulointi. Johdanto



Samankaltaiset tiedostot
Simulointi. Tapahtumapohjainen

Prosessin reaalisaatioiden tuottaminen

Teoria. Prosessin realisaatioiden tuottaminen

Logistiikkajärjestelmien mallintaminen - käytännön sovelluksia

Littlen tulos. Littlen lause sanoo. N = λ T. Lause on hyvin käyttökelpoinen yleisyytensä vuoksi

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Batch means -menetelmä

Jonojen matematiikkaa

Simulation and modeling for quality and reliability (valmiin työn esittely) Aleksi Seppänen

Harjoitus 2: Matlab - Statistical Toolbox

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

MS-A0503 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

J. Virtamo Jonoteoria / Prioriteettijonot 1

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

ABHELSINKI UNIVERSITY OF TECHNOLOGY

Estynyt puheluyritys menetetään ei johda uusintayritykseen alkaa uusi miettimisaika: aika seuraavaan yritykseen Exp(γ) pitoaika X Exp(µ)

1. Universaaleja laskennan malleja

Integrointialgoritmit molekyylidynamiikassa

Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja

1. Tarkastellaan seuraavaa kaaviota

Peliteorian soveltaminen hajautettujen järjestelmien protokollasuunnittelussa (valmiin työn esittely)

Signaalimallit: sisältö

Simulointi. Varianssinhallintaa Esimerkki

Demonstraatiot Luento 7 D7/1 D7/2 D7/3

Erkki Laitinen, Oulun yliopisto, matemaattisten tieteiden laitos. Mallien tyyppejä

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33

T Rinnakkaiset ja hajautetut digitaaliset järjestelmät Stokastinen analyysi

Tutkimustiedonhallinnan peruskurssi

Tilastotieteen kertaus. Vilkkumaa / Kuusinen 1

ẋ(t) = s x (t) + f x y(t) u x x(t) ẏ(t) = s y (t) + f y x(t) u y y(t),

811120P Diskreetit rakenteet

Tietokonemallinnus fysiikan työvälineenä. Juha Samela Luonnonfilosofian seura

Luento 4: Liikkeen kuvausta, differentiaaliyhtälöt

Diskreettiaikainen dynaaminen optimointi

EVE-seminaari

811120P Diskreetit rakenteet

Sijainnin merkitys Itellassa GIS. Jakelun kehittämisen ajankohtaispäivä

Sovellettu todennäköisyyslaskenta B

Sovellettu todennäköisyyslaskenta B

811120P Diskreetit rakenteet

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure

Mat Systeemien identifiointi, aihepiirit 1/4

Kevät Kirsi Valjus. Jyväskylän yliopisto Tietotekniikan laitos

Luento 3: Liikkeen kuvausta, differentiaaliyhtälöt

J. Virtamo Jonoteoria / Prioriteettijonot 1

Johdatus tilastotieteeseen Estimointi. TKK (c) Ilkka Mellin (2005) 1

MS-A0502 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Lisää pysähtymisaiheisia ongelmia

Tentin materiaali. Sivia: luvut 1,2, , ,5. MacKay: luku 30. Gelman, 1995: Inference and monitoring convergence

1. Tilastollinen malli??

Satunnaislukujen generointi

Lisää Diskreettejä jakaumia Lisää Jatkuvia jakaumia Normaalijakaumasta johdettuja jakaumia

ABHELSINKI UNIVERSITY OF TECHNOLOGY

Hahmon etsiminen syotteesta (johdatteleva esimerkki)

Poisson-prosessien ominaisuuksia ja esimerkkilaskuja

5/11 6/11 Vaihe 1. 6/10 4/10 6/10 4/10 Vaihe 2. 5/11 6/11 4/11 7/11 6/11 5/11 5/11 6/11 Vaihe 3

Liikenneteorian tehtävä

Simuloinnin taktisia kysymyksiä

Sovellettu todennäköisyyslaskenta B

3. Laskennan vaativuusteoriaa

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Monte Carlo -menetelmä optioiden hinnoittelussa (valmiin työn esittely)

TUTKIMUSAINEISTON ANALYYSI. LTKY012 Timo Törmäkangas

MTTTP5, luento Kahden jakauman sijainnin vertailu (jatkoa) Tutkimustilanteita y = neliöhinta x = sijainti (2 aluetta)

Yleistä. Esimerkki. Yhden palvelimen jono. palvelin. saapuvat asiakkaat. poistuvat asiakkaat. odotushuone, jonotuspaikat

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Tarvitseeko informaatioteknologia matematiikkaa?

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

pitkittäisaineistoissa

Korvausvastuun ennustejakauma bootstrap-menetelmän avulla

Tilastotieteen kertaus. Kuusinen/Heliövaara 1

tilastotieteen kertaus

Harjoitus 6: Simulink - Säätöteoria. Syksy Mat Sovelletun matematiikan tietokonetyöt 1

FYSA210/2 PYÖRIVÄ KOORDINAATISTO

Sovellettu todennäköisyyslaskenta B

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

TUTKIMUSAINEISTON KVANTITATIIVINEN ANALYYSI LTKY012. Timo Törmäkangas

Sovellettu todennäköisyyslaskenta B

Tietokoneohjelmien käyttö laadullisen aineiston analyysin apuna

MS-A0502 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

pitkittäisaineistoissa

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

Pysähtymisongelman ratkeavuus [Sipser luku 4.2]

x = ( θ θ ia y = ( ) x.

TIMBERLOG OHJEET 1 (12) TimberLOG - Käyttöohje Versio 2.2

Tehokkaiden strategioiden identifiointi vakuutusyhtiön taseesta

Äärellisesti generoitujen Abelin ryhmien peruslause

Differentiaali- ja integraalilaskenta

Kvantitatiivisen aineiston analyysi

Matematiikan tukikurssi

Harjoitus Tarkastellaan luentojen Esimerkin mukaista työttömyysmallinnusta. Merkitään. p(t) = hintaindeksi, π(t) = odotettu inflaatio,

Otoskoko 107 kpl. a) 27 b) 2654

MS-A0503 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Algoritmit 2. Luento 13 Ti Timo Männikkö

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 4: Ketjusäännöt ja lineaarinen approksimointi

Malliratkaisut Demo 1

Identifiointiprosessi

Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu

Epäyhtälöt ovat yksi matemaatikon voimakkaimmista

Insinöörimatematiikka D

Transkriptio:

Simulointi Johdanto

Simulointi Simulointi ~ jäljittely Pyrkii kuvaamaan tutkittavan ilmiön tai systeemin oleellisia piirteitä mallin avulla. Systeemin rajaus ja tarkasteltavat piirteet määriteltävä ennen mallin kiinnittämistä ja simulointia. Malli sisältää kolme mallia: Systeemin tuloksen tarkasteltavat ominaisuudet Systeemin (mallinnettu) syöte Systeemin toiminnallinen malli

Mallit Malleja voidaan luokitella eri tavoin Konkreetti/abstrakti pienoismalli vs tietokonemalli Deterministinen/stokastinen Tunnettu vs. satunnainen data Analyyttinen/numeerinen Ratkaisulle kaava vs likimääräisratkaisu Jatkuva/diskreetti Ääretön vs äärellinen määrä tiloja ja muutoksia

Esimerkkejä Vino heittoliike Yhtälöt ja alkuarvot tunnetaan, ratkaisulle esitys kaavana (deterministinen/analyyttinen) U_t = V, V_t = -g, W_t=0, U(0)=U_0, V(0)=V_0, W(0)=W_0, U(t)= U_0 + tv_0 + gt^2/2, W(t)=W_0

Esimerkkejä Tykin ammus Yhtälöt monimutkaisemmat (ilmanvastuksen ja tuulen osuus), lähtönopeus ja tuuli epätarkkoja Edellyttää numeerista ratkaisua, epävarmuuden arviointi tärkeää (stokastisuus)

Esimerkkejä Game of life Deterministiset säännöt, äärellinen määrä sääntöjä ja solujen tiloja (deterministinen, diskreettiaikainen) http://en.wikipedia.org/wiki/conway%27s_game_of_l ife Kassajono Diskreetti (äärellinen määrä tiloja/tapahtumia), Stokastinen (ajoista vain tilastollista dataa) Joskus analyyttinen (lauseke halutulle ominaisuudelle)

Kurssirunko Kurssi painottuu äärellisiin, stokastisiin malleihin (ns. discrete event) ja niiden numeerisiin simulointeihin. Esitietoina todennäköisyyslaskennan ja tilastotieteen perusteita sekä olioohjelmointia.

Luentorunko Johdanto Simulointiparadigmat Tapahtumapohjainen simulointi Oliopohjainen simulointi Satunnaisluvut Monte Carlo Tasapainotilan simulointi Varianssin hallinta Kokeensuunnittelu ja Metamallinnus

Oppimistavoitteet Tuntee tapahtumapohjaisen simuloinnin keskeiset käsitteet Hallitsee satunnaislukujen systemaattisen generoinnin Tuntee keskeisimmät simulointipradigmat ja niiden toteutusstrategiat Osaa toteuttaa yksikertaisia simulointimalleja Osaa analysoida yksittäistä simulointikoetta ja arvioida tulosten luotettavuutta Osaa suunnitella tavoitteellisia simulointikoesarjoja

Esimerkki (1/8) (Auton) pesuautomaatti Tarjolla kaksi erilaista mallia (hinta, operointikustannus ja kapasiteetti poikkeavat). Tiedossa potentiaalinen asiakasvirta. Kumpi malli on kannattavampi (ja onko kumpikaan kannattava). Arvioitava tuotto/aikayksikkö

Esimerkki (2/8) Tuotto/aikayksikkö P= au b b = kiinteät kulut/aikayksikkö a = tuotto/aikayksikkö pesun aikana U = käyttöaste a ja b tunnetaan tai ovat arvioitavissa U määrättävä simuloinnin avulla

Esimerkki (3/8) Tilanteesta tunnetaan Potentiaalisten asiakkaiden käyttäytyminen (tuloaikojen jakauma) Maksimaalinen jonon pituus Palvelutapahtuman kesto(n jakauma) Haluttu tulos Käyttöaste U =T_busy/T_total Tai 1 T_idle/T_total Tai eri varianttien käyttöasteiden erotus

Esimerkki (4/8) Tila kuvattavissa yhdellä muuttujalla N(t)= asiakkaiden määrä hetkellä t Systeemin tilaan kohdistuu kahden tyyppisiä tapahtumia Tulo: uusi asiakas (i) saapuu hetkellä t= t_a(i) Lähtö: asiakas (j) poistuu hetkellä t= t_d(j) Jos N=0, systeemi on tyhjä (asema ei käytössä). = > Simuloinnissa selvitettävä ajat, jolloin N=0 (tai N>0).

Esimerkki (5/8) Jos N(0) ja t_a:t ja t_d:t tunnetaan, N(t) on yksikäsitteisesti määrätty ja laskettavissa. Tulo- ja lähtöaikojen määrääminen edellyttää systeemin simulointia. Neljä muuttujaa + laskurit AT, DT (seuraavat tulo- ja lähtöajat) N (asiakkaiden määrä) t (nykyinen aika) E, T_idle (laskurit tyhjäajalle)

Esimerkki (6/8) Alusta simuloinnin kesto (T), jonon pituus M. t=0, laskurit (T0=0, E=0), N=0 (tyhjä systeemi), DT=maxint AT= t+ tuloaika Toista kunnes t>t Jos AT<DT tapahtuma AT, muuten DT Raportoi tulokset

Esimerkki (7/8) AT t=at; Jos N<= M, N=N+1; Jos N=1 DT=t+ palveluaika T0=T0+t-E; AT=t+ tuloaika ; DT t=dt; N=N-1; Jos N>0 DT=t+ palveluaika Muuten DT=maxint; E=t;

Esimerkki (8/8) Esimerkki oli brute force lähestyminen hyvin yksinkertaiseen tapaukseen. Yleistettävyys monimutkaisempiin tilanteisiin on huono useampia tapahtumatyyppejä, monimutkaisempi tila, asiakkaiden seuraaminen. Kaikki tehdään itse Tietojen keruu, kirjanpito tapahtumista ja systeemin tilasta, jne.

Vaativampi esimerkki Tarkastellaan esimerkkiä, jossa on enemmän rakenneosia ja niiden vuorovaikutusta Otetaan tarkasteluun jakeluverkosto purku- ja lastausoperaatioineen sekä eri pisteiden välisine matkoineen Kuvataan esimerkki konttisatamille

Konttisatamaverkosto Tarkastellaan useamman sataman verkostoa ja näiden välistä liikennettä Oletetaan liikenteen määrä (satamista toiseen) keskimäärin tunnetuksi ja annetuksi Satamilla on erilaisia ominaisuuksia (lastauslaitureiden määrä ja kapasiteetti) Laivoilla erilaisia vakioreittejä

Konttisatamat Mitä voitaisiin simuloida, mitä muutella Satamien käyttöasteet, odotusajat Tarvittavien laivojen määrät, reittien kestot ja kestojen vaihtelut (vaikutukset työvuoroihin) Eri reittivaihtoehtojen vaikutukset Eri jonotusstrategiat Jne

Konttisatamat Mitkä ovat mallin rakenneosia Satamat Lastauslaiturit Laivat Kontit? Tarvitaanko muuta?

Konttisatamat Tapahtumat ja vuorovaikutukset Laiva saapuu satamaan Laivan purku/lastaus alkaa laiturilla Laivan purku/lastaus päättyy Laiva lähtee matkalle seuraavaan satamaan (Laiva luodaan systeemiin) (Laiva poistuu systeemistä)

Konttisatamat Aloitetaan yksinkertaistetusta tapauksesta (laiva saapuu laituriin ja puretaan) Yksinkertaisin asiakas-palvelu malli (vrt pesu-asema) Laiva luodaan ja asetetaan jonoon Laiva otetaan jonosta laituriin ja aloitetaan purku (konttien määrä tunnettava) Purku loppuu, laituri vapautuu ja laiva poistetaan

Konttisatamat Isossa satamassa on useampia laitureita Samankaltaisia laitureita ei kannata hallita erillisinä Vapaat laiturit voi pistää jonoon Alussa sataman kaikki laiturit vapaa jonoon Laivan saapuessa vapaa jonosta otetaan laituri Laituri palaa jonoon kun laiva on purettu

Konttisatamat Laivoilla on yleensä reitit. Laiva luodaan, sille määritellään reitti ja se asetetaan lähtösatamaan (tarvittaessa jo valmiiksi lastattuna) Laiva aloittaa siirtymän seuraavaan satamaan Laiva saapuu ja puretaan ja se aloittaa siirtymän eteenpäin Laiva poistuu (jos ei käytetä syklistä reititystä)

Simuloinnin vaiheet 1 Systeemin/ongelman tunnistaminen Miten rajata tarkastelu, mihin kysymyksiin haetaan vastausta. Mallin suunnittelu Systeemin osat ja niiden väliset vuorovaikutukset Tiedon keruu ja parametrien arviointi Mistä saadaan realistiset syöttötiedot (paljon kovaa työtä ja mittausta)

Simuloinnin vaiheet 2 Ohjelman suunnittelu Mallin logiikan ja tarvittavien käsitteiden kuvaaminen Ohjelman toteutus Simulaattorin koodaus Ohjelman testaus Koodin debuggaus

Simuloinnin vaiheet 3 Mallin validointi Mallin laadullinen analyysi (vertailut havaittuun, intuitiivisiin odotuksiin, yksinkertaistetut tilanteet, tulosten riippuvuus epävarmoista parametreista) Mallin kokeilu Ensimmäiset tuotantoajot, tulosten tarkkuus/luotettavuus, tuotantokokeiden suunnittelu. Tulosten analyysi Johtopäätökset, riski/herkkyysanalyysi, päätöksenteko ja mallipohjainen optimointi

Simuloinnin periaatteita Älä simuloi, jos ei ole pakko Analyyttiset ja deterministiset ratkaisut ensisijaisia Älä simuloi, jos et ymmärrä, mikä on kysymys Tavoitteen vaihto kesken mallin rakennuksen voi olla todella vaikeaa When computing starts, thinking stops!