Simulointi. Tapahtumapohjainen
|
|
- Hilkka Saija Hämäläinen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Simulointi Tapahtumapohjainen
2 Diskreettiaikainen simulointi 1 Tarkastellaan systeemejä, joissa on äärellisen monta komponenttia. Jokaisella komponentilla äärellisen monta tilaa. Komponentit vaikuttavat toistensa tiloihin tapahtumien välityksellä. Tapahtuma on aina sidottu tiettyyn ajan hetkeen (ts. sillä ei ole kestoa).
3 Diskreettiaikainen simulointi 2 Tapahtuma voi muuttaa tiloja, generoida muita tapahtumia (samalle ajanhetkelle tai tulevaisuuteen). Tyypillisiä rakennekomponentteja laiteresurssit (vapaa/varattu) työntekijät (vapaa/varattu) raaka-aineet (saatavuus/määrä) tuotteet (aihion saatavuus/valmistumisvaihe) Tapahtumia toimenpiteiden alut/loput
4 Pesu-esimerkki Autopesulassa rakenneosia Pesuasema (vapaa/varattu) Jonotustila (M käytettävissä olevaa tilayksikköä) Asiakkaat (pesemätön/pesty auto) Tapahtumia Asiakkaan saapuminen/lähteminen Pesun alku/loppu Jonoon liittyminen/poistuminen Osa tapahtumista esiintyy aina yhdessä
5 Simuloinnin osatoiminnot 1 Simulointiohjelmiston hallittava 5 toimintoa Mallin rakenteen määrittely Systeemin osat -> tilamuuttujat Osien looginen riippuvuus -> vuokaavio Tapahtumien logiikka -> koodi Satunnaisprosessit Halutun jakauman mukaiset satunnaisluvut Tilastollinen tietojenkeruu ja raportointi Luottamusvälit, visualisointi, analyysi
6 Simuloinnin osatoiminnot 2 Ajan hallinta kellon edistäminen Simuloinnin kokonaishallinta Simuloinnin aloitus/lopetus Tapahtumien lisäys/poisto Oikean tapahtuman aktivointi Kokeiden hallittu toisto
7 Simuloinnin osatoiminnot 3 Osa simuloinnin toiminnoista on yhteisiä kaikille malleille ja tapauksille Ajan hallinta Satunnaisprosessit Tietojen keruu ja raportointi Osa sisältää malli- ja koeriippuvia osia Mallin rakenne ja logiikka Simulointikokeen kulku ja toisto
8 Simuloinnin paradigmat Kolme tarkastelukulmaa simulointiin Tapahtumapohjainen Lähtökohtana samaan aikaan sidotut tilan muutokset Prosessipohjainen Samaan osasysteemiin liittyvien tapahtumien elinkaari. Aktiviteettipohjainen Osasysteemin resursseja sitovat aikaa vievät toiminnot Johtavat erilaisiin malli- ja ohjelmarakenteisiin Sopivat erilaisiin mallitustilanteisiin
9 Tapahtumalähtöinen simulointi Keskeisinä tapahtumarutiinit Yksi rutiini per tapahtumatyyppi Sisältävät mallin logiikan Tapahtumarutiini voi muuttaa tilasuureita ja luoda uusia tapahtumailmoituksia. Tapahtumien järjestelijä kirjaa tapahtumailmoituksia (aika, tapahtuma) Yksi rutiini kerrallaan aktivoidaan.
10 Prosessi/oliopohjainen s. Osaprosessit olioina, joilla omat tilamuuttujat ja tapahtumarutiinit. Kaikki resurssiin liittyvä toiminta yhdessä paikassa. Erilliset metodit toisten olioiden ja järjestelijän kanssa kommunikointiin. Ei erillisiä ilmoituksia. Useampi prosessi käynnissä yhtä aikaa (korutiinit, säikeistys).
11 Aktiviteettipohjainen s. Logiikka aktiviteettirutiineissa Rutiini liittyy aina johonkin resurssiin Kaksi rajapintaa Aktivointi (jos ehdot toteutuvat, varaa resurssin ja kiinnittää lopetusajan) Passivointi: vapauttaa resurssin annettuna aikana Kaikki aktiviteetit käydään systemaattisesti läpi Jos ehdot toteutuvat, aktivoidaan. Jos yksikään rutiini ei aktivoidu, kasvatetaan aikaa seuraavaan lopetushetkeen.
12 Tapahtumapohjainen s. Vanhin lähestymistapa Logiikka yksi kerrallaan suoritettavissa rutiineissa Helppo toteuttaa millä tahansa proseduraalisella kielellä Logiikka fragmentoituu helposti Peräkkäiset tai toisiinsa liittyvät tapahtumat eri rutiineissa
13 Taphtumap. pesuesim. Minimissään kaksi eri tapahtumaa (tulo ja lähtö (vrt. johdanto) Molemmat voivat varata pesuaseman ja generoida lähtötapahtuman Potentiaalinen ylläpidettävyysongelma Jako 4 atomaariseen tapahtumaan Tulo (generoi asiakkaan) Alku (varaa resurssin ja käynnistää palvelun) Loppu (vapauttaa resurssin, lopettaa palvelun) Lähtö (poistaa asiakkaan)
14 Pesu 2 Tulo Alku Jos jonossa on tilaa Luo uusi asiakas ja aseta jonoon Luo uusi Alku-tapahtuma Luo uusi tulotapahtuma (ja uusi tuloaika) Jos palvelu vapaa ja jonossa asiakas Ota jonosta asiakas Varaa palvelu Luo Loppu-tapahtuma (uusi palvelun kesto)
15 Pesu 3 Loppu Lähtö Vapauta palvelu Luo Lähtö-tapahtuma Luo Alku-tapahtuma Kerää asiakkaan tiedot (jos on) Poista asiakas
16 Pesu Tulo Alku Loppu Lähtö
17 Pesu - toteutus 4 tapahtumarutiinia (aliohjelmaa) Tapahtumia varten TapahtumaTyyppi (Tulo, Alku, Loppu, Lähtö) Kirjanpitoon TapahtumaIlmoitus(Aika, Tapahtuma) Tapahtumalista hallinnoi TapahtumaIlmoituksia Metodit SeuraavaTapahtuma LisääTapahtuma (Aika, Tapahtuma) (PoistaTapahtuma) Jono Koostuu Asiakas instansseista Metodit Lisää, Ota, Pituus Palvelee Alku-tapahtumaa Lähtö tarvitsee teknisen jonon
18 Pesu - pääohjelma Alustukset T=0; LisääTapahtuma(TuloAikaJakauma(),Tulo); While (T< TMax) \\ tms lopetusehto Ilmoitus=SeuraavaTapahtuma(); T=Ilmoitus.Aika; Tyyppi=Ilmoitus.Tapahtuma; CASE Tyyppi of \\ kutsutaan a.o. tapahtumarutiinia END CASE End While
19 Tulo Tulo_Tapahtuma() Asiakas_Tyyppi_Osoitin :: Auto { LisääTapahtuma(Tulo_Aika_Jakauma(),Tulo); If Jono.Pituus() < M then Auto= Luo_Asiakas(); Jono.Lisää(Auto) LisääTapahtuma(0.,Alku) EndIf }
20 Alku Alku_Tapahtuma() Asiakas_Tyyppi_Osoitin :: Auto { If(Asema.Vapaa() and Jono.Pituus()>0) then Endif } Auto=Jono.Ota(); Asema.Varaa(Auto); LisääTapahtuma(Palvelu_Aika_Jakauma(),Loppu)
21 Loppu Loppu_Tapahtuma() Asiakas_Tyyppi_Osoitin :: Auto { Auto= Asema.Vapauta() Lähtö.Varaa(Auto) \\ Muuten asiakas hukkuu LisääTapahtuma(0.,Lähtö) LisääTapahtuma(0.,Alku) }
22 Lähtö Lähtö_Tapahtuma() Asiakas_Tyyppi_Osoitin :: Auto { Auto=Lähtö.Vapauta() // Kerää statiikkaa Poista_Asiakas(Auto) } // Varaa ja Vapauta tarvitaan välittämään asiakastieto, koska jonoa ei ole.
23 Huomioita Erilaiset jonotusstrategiat voi piilottaa Jonon sisään. Useamman palvelun, reitityksen, asiakasvirran jne huomiointi edellyttää tapahtumien monistamista tai parametrisointia. Käytännössä palvelusta ja sen jonosta on hyvä tehdä kokonaisuus, johon asiakas reititetään.
24 Konttisatamat - toteutus Keskeiset tapahtumat Laiva i saapuu satamaan j Laiva i sataman j jonoon hetkellä t Laivan purku/lastaus alkaa laiturilla Laiva i pois jonosta, laituri k varatuksi, päättymistapahtuma hetkelle t2
25 Konttisatamat - toteutus Keskeiset tapahtumat Laivan purku/lastaus päättyy Laituri k vapautuu hetkellä t3 Laiva lähtee matkalle seuraavaan satamaan Laivan i saapuminen satamaan j hetkellä t4
26 Konttisatamat kysymyksiä? Keskeiset tapahtumat Laiva i saapuu satamaan j Laiva i sataman j jonoon hetkellä t Mitä tietoa välitetään tapahtumailmoituksessa, mitä muuten (ja miten) Laivan purku/lastaus alkaa laiturilla Laiva i pois jonosta, laituri k varatuksi, päättymistapahtuma hetkelle t1 Tarvitaanko viittausta yksittäiseen laituriin k, mihin tieto laivasta i
27 Konttisatamat kysymyksiä? Keskeiset tapahtumat Laivan purku/lastaus päättyy Laituri k vapautuu hetkellä t3 Missä tieto laiturista, laivasta Laiva lähtee matkalle seuraavaan satamaan Laivan i saapuminen satamaan j hetkellä t4 Kuka tietää j :n arvon laivalle i
Simulointi. Johdanto
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
LisätiedotProsessin reaalisaatioiden tuottaminen
Teoria Johdanto simulointiin Simuloinnin kulku -- prosessin realisaatioiden tuottaminen Satunnaismuuttujan arvonta annetusta jakaumasta Tulosten keruu ja analyysi Varianssinreduktiotekniikoista 20/09/2004
LisätiedotTeoria. Prosessin realisaatioiden tuottaminen
Teoria Johdanto simulointiin Simuloinnin kulku -- prosessin realisaatioiden tuottaminen Tapahtumapohjaisen simuloinnin periaatteet Esimerkki: M/M/1 jonon simulointi Simulointiohjelman geneeriset komponentit
LisätiedotSimulointi. Simulointi. Esimerkkejä. Mallit. Kurssirunko. Esimerkkejä
Simulointi Simulointi Johdanto Simulointi ~ jäljittely Pyrkii kuvaamaan tutkittavan ilmiön tai systeemin oleellisia piirteitä mallin avulla. Systeemin rajaus ja tarkasteltavat piirteet määriteltävä ennen
LisätiedotSuunnitteluvaihe prosessissa
Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet
LisätiedotHarjoitus 2: Oppijan aktivointi (15.3.2016)
Harjoitus 2: Oppijan aktivointi (15.3.2016) Tietokoneavusteinen opetus -kurssilla opetetaan Adobe Flash CS6:n käyttämistä neljänä kertana: 11.3.2016, 15.3.2016, 18.3.2016 ja 1.4.2016. Harjoituskerroilla
LisätiedotImperatiivisen ohjelmoinnin peruskäsitteet. Meidän käyttämän pseudokielen lauseiden syntaksi
Imperatiivisen ohjelmoinnin peruskäsitteet muuttuja muuttujissa oleva data voi olla yksinkertaista eli primitiivistä (esim. luvut ja merkit) tai rakenteista jolloin puhutaan tietorakenteista. puhuttaessa
LisätiedotSimulointi. Oliopohjainen
Simulointi Oliopohjainen Prosessipohjainen s. Loogisesti yhteenkuuluvat tapahtumat kootaan yhdeksi elinkaareksi (irrallisten tapahtumarutiinien sijaan) Osakokonaisuuksien hahmottaminen helpompaa Hallittava
LisätiedotTähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python
Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python 7. helmikuuta 2009 Ohjelmoinnista Ohjelman peruselementtejä Koodin kommentointi Lohkorakenne Ohjausrakenteet If For While Try Funktiot Käyttö
LisätiedotIDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit
IDL - proseduurit 25. huhtikuuta 2017 Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
LisätiedotATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014
18. syyskuuta 2014 IDL - proseduurit Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
LisätiedotPerinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä.
TIETOKONEOHJELMIEN RAKENNE Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä. Teollisuusautomaation ohjelmiin on lainattu runsaasti perinteisen
LisätiedotRajapinta (interface)
1 Rajapinta (interface) Mikä rajapinta on? Rajapinta ja siitä toteutettu luokka Monimuotoisuus ja dynaaminen sidonta Rajapinta vs periytyminen 1 Mikä rajapinta on? Rajapintoja käytetään, kun halutaan määritellä
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
Lisätiedot5/20: Algoritmirakenteita III
Ohjelmointi 1 / syksy 2007 5/20: Algoritmirakenteita III Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/17 Tämän
LisätiedotGraafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria
Graafit ja verkot Suuntamaton graafi: eli haaroja Joukko solmuja ja joukko järjestämättömiä solmupareja Suunnattu graafi: Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria Haaran päätesolmut:
LisätiedotUML -mallinnus TILAKAAVIO
UML -mallinnus TILAKAAVIO SISÄLLYS 3. Tilakaavio 3.1 Tilakaavion alku- ja lopputilat 3.2 Tilan nimi, muuttujat ja toiminnot 3.3 Tilasiirtymä 3.4 Tilasiirtymän vai tilan toiminnot 3.5 Tilasiirtymän tapahtumat
LisätiedotBatch means -menetelmä
S-38.148 Tietoverkkojen simulointi / Tulosten keruu ja analyysi 1(9) Batch means -menetelmä Batch means -menetelmää käytetään hyvin yleisesti Simulointi suoritetaan tässä yhtenä pitkänä ajona olkoon simuloinnin
LisätiedotCODEONLINE. Monni Oo- ja Java-harjoituksia. Version 1.0
CODEONLINE Monni Oo- ja Java-harjoituksia Version 1.0 Revision History Date Version Description Author 25.10.2000 1.0 Initial version Juha Johansson Inspection History Date Version Inspectors Approved
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 20. huhtikuuta 2018 Vastaa kaikkiin tehtäviin. Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä.
LisätiedotOhjelmistojen suunnittelu
Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer
LisätiedotGUIDELINES FOR IMPLEMENTATION KANSALLISET TILAAJATOIMINTEET. UUDELLEENKUTSU VARATTUUN LIITTY- MÄÄN
GFI 9802-19 3.9.1998 GUIDELINES FOR IMPLEMENTATION KANSALLISET TILAAJATOIMINTEET. UUDELLEENKUTSU VARATTUUN LIITTY- MÄÄN GFI 9802-19 1 (5) Sisällys 1 YLEISKUVAUS... 2 2 KESKUKSEN TOIMINTA... 2 3 TELEYRITYKSEN
LisätiedotEstynyt puheluyritys menetetään ei johda uusintayritykseen alkaa uusi miettimisaika: aika seuraavaan yritykseen Exp(γ) pitoaika X Exp(µ)
J Virtamo 383143 Jonoteoria / Engsetin järjestelmä 1 Äärellinen lähdepopulaatio: M/M/s/s/n-järjestelmä Tarkastellaan estojärjestelmää (ei odotuspaikkoja) tapauksessa, jossa saapumiset tulevat äärellisestä
LisätiedotVerilogvs. VHDL. Janne Koljonen University of Vaasa
Verilogvs. VHDL Janne Koljonen University of Vaasa Sälää Huom! Verilogistauseita versioita: 1995, 2001 ja 2005. Kommentit Javasta tutut // ja /* */ ovat kommenttimerkkejä. Case sensitivity Isot ja pienet
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotOngelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,
Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten, että se pystyy suorittamaan kaikki mahdolliset algoritmit?
Lisätiedot12. 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ätiedotVertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004
Vertailulauseet Ehtolausekkeet Ehdot, valintalausekkeet Boolean-algebra == yhtäsuuruus!= erisuuruus < pienempi suurempi >= suurempi tai yhtäsuuri Esimerkkejä: int i=7; int j=10;
Lisätiedot12. 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ätiedotPerusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.
Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Arkkitehtuuriin vaikuttavat ympäristötekijät Jo kehittämisen alkuvaiheessa on tarpeellista hahmotella arkkitehtuurin perusratkaisu. Lähtökohdat
LisätiedotSisällys. 12. Javan toistorakenteet. Yleistä. Laskurimuuttujat
Sisällys 12. Javan toistorakenteet Ylstä toistorakentsta. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirhtä. Silmukan rajat asetettu kierroksen
LisätiedotJaetun muistin muuntaminen viestin välitykseksi. 15. lokakuuta 2007
Jaetun muistin muuntaminen viestin välitykseksi Otto Räsänen 15. lokakuuta 2007 1 Motivaatio 2 Valtuuden välitys Peruskäsitteitä 3 Kolme algoritmia Valtuuden välitys käyttäen laskuria ilman ylärajaa Valtuuden
LisätiedotRutiinin muodostaminen. 2. Rutiinin muodostaminen. specification) Määrittely (specification( Määrittelyn osapuolet. Hyvän ohjelman tunnusmerkit
2. Rutiinin muodostaminen Rutiinin muodostaminen roolit 1. Rutiinin määrittely 2. Sopimuspohjainen ohjelmointi 3. Määrittelyjen kirjoittaminen 4. Erikoistilanteiden hallinta analysointi luokat rutiinit
LisätiedotOsoitin ja viittaus C++:ssa
Osoitin ja viittaus C++:ssa Osoitin yksinkertaiseen tietotyyppiin Osoitin on muuttuja, joka sisältää jonkin toisen samantyyppisen muuttujan osoitteen. Ohessa on esimerkkiohjelma, jossa määritellään kokonaislukumuuttuja
LisätiedotPythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python
Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010 Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat
LisätiedotLuento 4 Aliohjelmien toteutus
Luento 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotProjektinhallinnan lähestymistavat
16.5.2018 1 Projektinhallinnan lähestymistavat Valmistaudu ja sitouta Prepare and commit Suunnittele ja varmista toteutus Predict and control Prosessi Toteuttajat: a b c d e Prosessi Toteuttajat: a c f
LisätiedotDemonstraatiot Luento 7 D7/1 D7/2 D7/3
TEKNILLINEN KORKEAKOULU Tietoliikenne- ja tietoverkkotekniikan laitos S-8.45 Liikenneteorian perusteet, Kevät 2008 Demonstraatiot Luento 7 7.2.2008 D7/ Tarkastellaan piirikytkentäisen järjestelmän n-kanavaista
LisätiedotMetodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen
Metodit Metodien määrittely Metodin parametrit ja paluuarvo Metodien suorittaminen eli kutsuminen Metodien kuormittaminen 1 Mikä on metodi? Metodi on luokan sisällä oleva yhteenkuuluvien toimintojen kokonaisuus
Lisätiedot5. HelloWorld-ohjelma 5.1
5. HelloWorld-ohjelma 5.1 Sisällys Lähdekoodi. Lähdekoodin (osittainen) analyysi. Lähdekoodi tekstitiedostoon. Lähdekoodin kääntäminen tavukoodiksi. Tavukoodin suorittaminen. Virheiden korjaaminen 5.2
LisätiedotSTART Pääohjelma - arvojen asettaminen - keskipisteet - kierrenousujen ohjaus. Tokan reiän hionta
START Pääohjelma - arvojen asettaminen - keskipisteet - kierrenousujen ohjaus Tokan reiän hionta - ruvetaan hiomaa reikää - lisätään y-arvoa joka kierroksen jälkeen Kierrenousun alku - rekisterien nollaus
LisätiedotJakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotJava-kielen perusteet
Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, literaalivakio, nimetty vakio Tiedon merkkipohjainen tulostaminen 1 Tunnus Java tunnus Java-kirjain Java-numero
LisätiedotLuento 4 (verkkoluento 4) Aliohjelmien toteutus
Luento 4 (verkkoluento 4) Aliohjelmien toteutus Tyypit, Parametrit Aktivointitietue (AT) AT-pino, rekursio 1 Aliohjelmatyypit Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri Parametrit
Lisätiedot1. Tarkastellaan seuraavaa kaaviota
HELSINGIN YLIOPISTO TIETOJENKÄSITTELYTIETEEN LAITOS JOHDATUS SOVELLUSSUUNNITTELUUN (JSS) 19.12.2001 (H.Laine) 1. Tarkastellaan seuraavaa kaaviota Mitkä seuraavista väitteistä ovat kaavion mukaisia t.s.
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotLuento 4 (verkkoluento 4) Aliohjelmien toteutus
Luento 4 (verkkoluento 4) Aliohjelmien toteutus Tyypit, Parametrit Aktivaatiotietue (AT) AT-pino, rekursio 1 Aliohjelmatyypit Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri Parametrit
LisätiedotSimulointi. Varianssinhallintaa Esimerkki
Simulointi Varianssinhallintaa Esimerkki M C Esimerkki Tarkastellaan lasersäteen sirontaa partikkelikerroksesta Jukka Räbinän pro gradu 2005 Tavoitteena simuloida sirontakuvion tunnuslukuja Monte Carlo
LisätiedotSimuloinnin taktisia kysymyksiä
Simuloinnin taktisia kysymyksiä Simuloinnilla on aina tavoite. Simuloitaessa on käytössä ohjelma, joka tilastollisesti riittävän yhtenevä alkuperäisen systeemin kanssa. Miten simulointi järjestetään niin,
Lisätiedot12 Mallit (Templates)
12 Mallit (Templates) Malli on määrittely, jota käyttämällä voidaan luoda samankaltaisten aliohjelmien ja luokkien perheitä. Malli on ohje kääntäjälle luoda geneerisestä tyyppiriippumattomasta ohjelmakoodista
LisätiedotOSI ja Protokollapino
TCP/IP OSI ja Protokollapino OSI: Open Systems Interconnection OSI Malli TCP/IP hierarkia Protokollat 7 Sovelluskerros 6 Esitystapakerros Sovellus 5 Istuntokerros 4 Kuljetuskerros 3 Verkkokerros Linkkikerros
LisätiedotSisällys. 15. Lohkot. Lohkot. Lohkot
Sisällys 15. Lohkot Tutustutaan lohkoihin. Muuttujien ja vakioiden näkyvyys sekä elinikä erityisesti operaation lohkossa. Nimikonfliktit. Muuttujat operaation alussa vai myöhemmin? 15.1 15.2 Lohkot Aaltosulkeet
LisätiedotOhjelmistojen mallintaminen, sekvenssikaaviot
582104 - Ohjelmistojen mallintaminen, sekvenssikaaviot 1 Vuorovaikutussuunnittelu Oliojärjestelmän toiminta perustuu olioiden vuorovaikutukseen ja yhteistyöhön Olioiden yhteistyö toteutuu operaatioiden
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CSE-A1111 16.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 16.9.2015 1 / 26 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.
Lisätiedot582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus
582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus Sisältö Mikä on web-sovellus? Selaimen rooli web-sovelluksessa Palvelimen rooli web-sovelluksessa Aineistopyynnöt Tiedon välittäminen
LisätiedotHarjoitus 8: Monte-Carlo simulointi (Matlab)
Harjoitus 8: Monte-Carlo simulointi (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt MS-C2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheet Satunnaismuuttujien ja todennäköisyysjakaumien
Lisätiedot815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset
815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,
LisätiedotOhjelmistojen mallintaminen Olioiden yhteistyö. 18.11.2008 Harri Laine 1
Ohjelmistojen mallintaminen Olioiden yhteistyö 18.11.2008 Harri Laine 1 Olioiden yhteistyö Oliokeskeisen ohjelmistonäkemyksen mukaan ohjelmiston palvelut tuotetaan olioiden yhteistyön tuloksena. Ohjelmisto
Lisätiedot812341A Olio-ohjelmointi, I Johdanto
812341A Olio-ohjelmointi, 2016 I Johdanto Sisältö 1. Abstraktiosta 2. Olio-ohjelmoinnin historiaa 3. Olioparadigmasta 4. Peruskäsitteiden kertausta 812341A Olio-ohjelmointi, Johdanto 2 1 Abstraktiosta
LisätiedotSimuloinnin taktisia kysymyksiä
Simuloinnin taktisia kysymyksiä Timo Tiihonen Tietotekniikan laitos 2010 Simuloinnin taktisia kysymyksiä Simuloinnilla on aina tavoite. Simuloitaessa on käytössä ohjelma, joka tilastollisesti riittävän
LisätiedotLohkot. if (ehto1) { if (ehto2) { lause 1;... lause n; } } else { lause 1;... lause m; } 16.3
16. Lohkot 16.1 Sisällys Tutustutaan lohkoihin. Muuttujien ja vakioiden näkyvyys sekä elinikä erityisesti operaation lohkossa. Nimikonfliktit. Muuttujat operaation alussa vai myöhemmin? 16.2 Lohkot Kaarisulut
LisätiedotLohkot. if (ehto1) { if (ehto2) { lause 1;... lause n; } } else { lause 1;... lause m; } 15.3
15. Lohkot 15.1 Sisällys Tutustutaan lohkoihin. Muuttujien ja vakioiden näkyvyys sekä elinikä erityisesti operaation lohkossa. Nimikonfliktit. Muuttujat operaation alussa vai myöhemmin? 15.2 Lohkot Aaltosulkeet
LisätiedotHarjoitus 8: Monte-Carlo simulointi (Matlab)
Harjoitus 8: Monte-Carlo simulointi (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt MS-C2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheet Satunnaismuuttujien ja todennäköisyysjakaumien
LisätiedotIntegrointi. Ohjelmistotekniikka kevät 2003
Integrointi Ohjelmistotekniikka kevät 2003 ERP (Toiminnanohjausjärjestelmä) Myynti Henkilöstö, palkanlaskenta Kirjanpito Myynti Myyjät Extranet Tietovarasto Laskutus, reskontrat Asiakas ERP Asiakasrekisteri
LisätiedotHarjoitus 8: Monte Carlo -simulointi (Matlab)
SCI-C0200 Fysiikan ja matematiikan menetelmien studio SCI-C0200 Fysiikan ja matematiikan menetelmien studio 1 Harjoituksen aiheet Satunnaismuuttujien ja todennäköisyysjakaumien kertaus Tilastollinen estimointi
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2018-2019 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat
LisätiedotMakrojen mystinen maailma lyhyt oppimäärä
Makrojen mystinen maailma lyhyt oppimäärä Makrot osana SAS-teknologiaa Yleiskuva Jouni Javanainen Aureolis lyhyesti Aureolis on jatkuvia Business Intelligence -palveluita tuottava asiantuntijaorganisaatio
LisätiedotConcurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo
Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...
LisätiedotOhjelmistojen mallintaminen, kurssikoe esimerkkivastauksia
Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 12. huhtikuuta 2019 Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä. Yksi A4-kokoinen lunttilappu
LisätiedotTietotekniikan valintakoe
Jyväskylän yliopisto Tietotekniikan laitos Tietotekniikan valintakoe 2..22 Vastaa kahteen seuraavista kolmesta tehtävästä. Kukin tehtävä arvostellaan kokonaislukuasteikolla - 25. Jos vastaat useampaan
LisätiedotTikon ostolaskujen käsittely
Toukokuu 2014 1 (8) Toukokuu 2014 2 (8) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen aktivointi... 5 6. Eräajot
LisätiedotJohnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.
Kokeellinen algoritmiikka (3 ov) syventäviä opintoja edeltävät opinnot: ainakin Tietorakenteet hyödyllisiä opintoja: ASA, Algoritmiohjelmointi suoritus harjoitustyöllä (ei tenttiä) Kirjallisuutta: Johnson,
Lisätiedot812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä
2016 IX Olioiden välisistä yhteyksistä Sisältö 1. Johdanto 2. Kytkentä 3. Koheesio 4. Näkyvyydestä 2 Johdanto n Ohjelmassa syntyy kytkentöjä olioiden välille Toivottuja ja epätoivottuja n Näkyvyys vaikuttaa
LisätiedotMuistutus aikatauluista
Muistutus aikatauluista (Nämä eivät välttämättä koske avoimen yo:n opiskelijoita Erkki Kailan rinnakkaisella kurssilla) Luento 1: kotitehtävät sulkeutuvat 20.9 12:00, ennen tutoriaalia Tutoriaali 1 sulkeutuu
Lisätiedot815338A Ohjelmointikielten periaatteet 2014-2015
815338A Ohjelmointikielten periaatteet 2014-2015 X Skriptiohjelmointi Sisältö 1. Johdanto 2. Skriptikielten yleispiirteitä 3. Python 815338A Ohjelmointikielten periaatteet, Skriptiohjelmointi 2 X.1 Johdanto
LisätiedotOperaattoreiden ylikuormitus. Operaattoreiden kuormitus. Operaattoreiden kuormitus. Operaattoreista. Kuormituksesta
C++ - perusteet Java-osaajille luento 5/7: operaattoreiden ylikuormitus, oliotaulukko, parametrien oletusarvot, komentoriviparametrit, constant, inline, Operaattoreiden ylikuormitus Operaattoreiden kuormitus
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CS-A1111 26.9.2018 CS-A1111 Ohjelmoinnin peruskurssi Y1 26.9.2018 1 / 21 Oppimistavoitteet: tämän luennon jälkeen Osaat kirjoittaa for-käskyn avulla ohjelman, joka toistaa haluttua
Lisätiedot11/20: Konepelti auki
Ohjelmointi 1 / syksy 2007 11/20: Konepelti auki Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/11 Tämän luennon
LisätiedotAlkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)
Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,
LisätiedotTAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 11.08.2010 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
LisätiedotOhjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:
1 (7) Tiedon lukeminen näppäimistöltä Scanner-luokan avulla Miten ohjelma saa käyttöönsä käyttäjän kirjoittamaa tekstiä? Järjestelmässä on olemassa ns. syöttöpuskuri näppäimistöä varten. Syöttöpuskuri
Lisätiedot815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset
815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 2 vastaukset Harjoituksen aiheena on BNF-merkinnän käyttö ja yhteys rekursiivisesti etenevään jäsentäjään. Tehtävä 1. Mitkä ilmaukset seuraava
LisätiedotJohdanto. Luku Mallit ja simulointi
Luku 1 Johdanto 1.1 Mallit ja simulointi Simulointi ja mallit liittyvät läheisesti yhteen. Simulointi tarkoittaa pohjimmiltaan simuloitavan systeemin tai ilmiön jäljittelyä. Tätä varten tarvitaan malli:
Lisätiedot1. Mitä tehdään ensiksi?
1. Mitä tehdään ensiksi? Antti Jussi i Lakanen Ohjelmointi 1, kevät 2010/ Jyväskylän yliopisto a) Etsitään Googlesta valmis algoritmi b) Mietitään miten itse tehtäisiin sama homma kynällä ja paperilla
LisätiedotSIMULINK S-funktiot. SIMULINK S-funktiot
S-funktio on ohjelmointikielellä (Matlab, C, Fortran) laadittu oma algoritmi tai dynaamisen järjestelmän kuvaus, jota voidaan käyttää Simulink-malleissa kuin mitä tahansa valmista lohkoa. S-funktion rakenne
LisätiedotT Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli
T-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey Rusanovich
LisätiedotKaksiloppuinen jono D on abstrakti tietotyyppi, jolla on ainakin seuraavat 4 perusmetodia... PushFront(x): lisää tietoalkion x jonon eteen
Viimeksi käsiteltiin pino: lisäys ja poisto lopusta jono: lisäys loppuun, poisto alusta Pinon ja jonon yleistävä tietorakenne: kaksiloppuinen jono alkion lisäys/poisto voidaan kohdistaa jonon alkuun tai
LisätiedotTenttikysymykset. + UML-kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
LisätiedotRAIN Työpaketti 1 Projektisysteemi
RAIN Työpaketti 1 Projektisysteemi Kalle Kähkönen RAINHANKE, Loppuseminaari 11.12.2018 Rakennusprojekti on kompleksinen systeemi PALVELUNTARJOAJAT Tuotantopanokset Prosessit ja toimijat TILAAJA & LOPPUKÄYTTÄJÄT
LisätiedotMikä yhteyssuhde on?
1 Yhteyssuhde Mikä yhteyssuhde on? Yhteyssuhde Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma 1 Mikä yhteyssuhde on? Tili - : String - : double * 1 Asiakas - hetu: String - : String
LisätiedotMuutamia peruskäsitteitä
Muutamia peruskäsitteitä Huom. 1: nämä peruskäsitteet eivät muodosta hyvin määriteltyä keskenään yhteensopivien käsitteiden joukkoa, vaan käsitteet ovat osittain päällekkäisiä ja eri yhteyksissä niillä
Lisätiedot812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton
2015 syksy 2. vsk IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton Sisältö 1. Johdanto luontimalleihin 2. Proxy 3. Factory Method 4. Prototype 5. Singleton Suunnittelumallit Proxy et.
LisätiedotOhjeet autosuunnistuksen AT-asemalle
Ohjeet autosuunnistuksen AT-asemalle Olet tässä kilpailussa aikatarkastus- eli AT-asema numero (ei välttämätön tieto). Ensimmäiset kilpailijat saapuvat asemallesi noin kello. asemapaikaltasi ennen purkuauton
LisätiedotTaulumenetelmä modaalilogiikalle K
/ Kevät 2004 ML-6 1 Taulumenetelmä modaalilogiikalle On vaikeaa löytää Hilbert-tyylisiä todistuksia: Käytössä Modus Ponens -sääntö: jotta voidaan johtaa Q, täytyy johtaa P ja P Q. Mutta mikä on sopiva
LisätiedotAlgoritmit 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ätiedotActionTrack-sovellus
ActionTrack-sovellus Mobiiliteknologia 2 osaksi oppituntia Pelillisyys Kokemuksellisuus ja toiminnallisuus Ilmiöpohjaisuus Tiimityöskentely Ongelmanratkaisutaidot ja luovuus Kehollinen oppiminen Pelataanpa
LisätiedotMyynnin ja suunnittelun automatisoinnilla lisää tuottavuutta yrityksellesi
Myynnin ja suunnittelun automatisoinnilla lisää tuottavuutta yrityksellesi Cielo on Ihme-3d Oy:n kehittämä pilvipohjainen, nettiselaimella käytettävä palvelu, jolla automatisoidaan mittatilaustyönä valmistettavien
Lisätiedot