Lauselogiikan toteutuvuusongelman ratkaiseminen laskennallisessa gridissä
|
|
- Heli Elstelä
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Lauselogiikan toteutuvuusongelman ratkaiseminen laskennallisessa gridissä Antti E. J. Hyvärinen Teknillinen korkeakoulu Tietojenkäsittelyteorian laboratorio 1 Johdanto Laskennalliset gridit ovat vakiinnuttaneet asemansa tiedon arkistoinnin ja luetteloinnin sovelluksissa. Näistä hyvänä esimerkkinä toimii Google TM -hakukone [4]. Grid-ympäristö on kuitenkin edullisuutensa vuoksi houkutteleva vaihtoehto myös laskennallisesti vaativalle tietojenkäsittelylle. Tunnetuimpia menestystarinoita grid-laskennan soveltamisesta on [17]. Gridiin liittyvät pitkät maantieteelliset etäisyydet ja laaja laitekanta, ja näistä johtuvat viestintäviiveet sekä suuri vikautumistodennäköisyys asettavat kuitenkin erityishaasteita algoritmeille, joiden suoritus riippuu voimakkaasti syötteestä. Lauselogiikan toteutuvuusongelmassa [15] (SAT) kysytään, onko annetulle boolen funktiolle olemassa toteuttavaa totuusjakelua. Ongelma kuuluu NPtäydellisten ongelmien luokkaan [7]. Näille ongelmille ei tunneta yleistä tehokasta determinististä ratkaisualgoritmia, ja kaikkien tunnettujen algoritmien ajoaika on pahimmassa tapauksessa eksponentiaalinen syötteen pituuden suhteen. SAT-ongelmatapauksilla on keskeinen asema monissa käytännön ongelmissa. Lauselogiikka on luonnollinen esitysmuoto esimerkiksi suunnittelu- ja verifiointiongelmille, ja näille aloille löytyykin runsaasti SAT-pohjaisia sovelluksia, esimerkiksi [2, 3, 12, 18]. SATtoteutuvuustarkistimia on käytetty myös on-line ohjeistuksen konsistenssin tarkistuksessa [16], piirien testitapausten luonnissa [13] ja monissa muissa hakutehtäviksi kuvattavissa ongelmissa. SATtarkistinten tehokkuuden kasvu on ilmeistä, jos seurataan vuosittain järjestettävää SAT-kilpailua [6], ja tätä taustaa vasten onkin ymmärrettävää, että rajoiteohjelmat [14] ja monet ennen binäärisillä päätösdiagrammeilla [5] kuvatut ongelmat voidaan nykyään ratkaista tehokkaammin SAT-tarkistimilla [1, 10]. Tutkimuksen tavoitteena on kehittää menetelmiä ratkaista laskennallisesti haastavia lauselogiikan toteutuvuusongelmatapauksia hyödyntäen laskennallisia gridejä. Tätä tarkoitusta varten työssä [11] esitellään sirottaminen, joka on hajautusmenetelmä ympäristöön, jossa kommunikointi on rajoitettua. Sirottaminen soveltuu käytettäväksi minkä tahansa SATtarkistimen kanssa, mukaanlukien kaupalliset suljetun lähdekoodin tarkistimet. Lisäksi menetelmä mahdollistaa oman erillisen sirotusheuristiikan käytön osaongelmien luonnissa. Tässä tiivistelmässä ha-
2 Hyvärinen 45 jautusmenetelmän käytännön toimivuutta testataan tuotantokäytössä olevalla gridillä erityyppisillä lauselogiikan ongelmilla, kuten tekijöihinjako, kryptoanalyysi ja satunnaisesti luodut ongelmat. Lisäksi hajautusmenetelmän avulla ratkaistaan joitakin tiettävästi ennen ratkaisemattomia SAT-toteutuvuusongelmatapauksia. Koska sirottamisen soveltuvuus gridympäristöön riippuu menetelmän kyvystä toimia tehokkaasti suuriviiveisessä ympäristössä ja kyvystä sietää vikautuvia laskentoja, alkuperäisessä työssä [11] esitellään lisäksi erilaisia lähestymistapoja viiveiden minimointiin ja mitataan lähestymistapojen vaikutusta kokonaisajoaikaan. 2 Perusteet Lauselogiikan kaavat voidaan esittää konjunktiivisessa normaalimuodossa: literaalien, positiivisten tai negatiivisten boolen muuttujien, disjunktioina, eli klausuuleina, jotka on yhdistetty konjunktioksi. Normaalimuoto on yleisesti käytössä oleva tapausten esitysmuoto lauselogiikan toteutuvuustarkistimille. Lauselogiikan toteutuvuustarkistimet, eli SAT-tarkistimet, vastaavat kysymykseen, onko annetussa kaavassa esiintyville muuttujille olemassa totuusarvot siten, että koko kaava tulee todeksi. Käytännössä tämä tapahtuu joko etsimällä toteuttava totuusjakelu jos sellainen on olemassa tai osoittamalla, että toteuttavaa totuusjakelua ei ole olemassa. Esimerkiksi lauselogiikan kaavalle = (x 2 x 5 ) (x 1 x 5 ) ( x 1 x 3 x 4 ) ( x 2 x 3 x 4 ) (x 5 ) (1) löytyy kaksi toteuttavaa totuusjakelua, joista toinen on x 1 = T,x 2 = T,x 3 = E,x 4 = E,x 5 = T ja toinen x 1 = T,x 2 = T,x 3 = E,x 4 = T,x 5 = T. Useimmat SAT-ratkaisumenetelmät pohjautuvat Davis-Putnam-Logemann- Loveland -algoritmiin [8] (DPLL). 3 Ratkaiseminen gridissä Tällä hetkellä tarjolla olevat gridympäristöt, kuten NorduGrid (http: // [9], on suunniteltu tyypillisesti fysiikan sovelluksiin. Nämä sovellukset vaativat vähän kommunikaatiota töiden välillä, runsaasti levytilaa ja muistia, sekä suurta laskentatehoa. Grid-teknologia on hyvin tuoretta, mistä seurauksena laskentojen vikaantumistodennäköisyys on huomattava. Ympäristö poikkeaa siis monin osin perinteisestä rinnakkaislaskentaympäristöstä, mikä on huomioitava hajautettua SAT-algoritmia kehitettäessä. Työssä kehitetään hajautusalgoritmi nimeltä sirotus (engl. scattering), joka mahdollistaa ongelmaan mukautuvan algoritmin mutta ei vaadi suoraa kommunikaatiota töiden välillä. 3.1 Sirotusalgoritmi Sirottaminen pyrkii jakamaan SATongelman useampaan SAT-ongelmaan siten, että niiden tuloksista pystyy päättelemään alkuperäisen ongelman ratkaisun, ne ovat helpompia ratkaista kuin alkuperäinen ongelma ja joiden ratkaisuavaruudet ovat erillisiä. Jotta menetelmä olisi skaalautuva, täytyy sirottamisen aikana ratkeavien ongelmien vaikuttaa sirotuksen etenemiseen. Eräs menetelmä tuottaa tällaisia ongelmia on muodostaa lauselogiikan kaavoja S 1,...,S n siten, että (i) S 1 S n on tosi kaikissa totuusjakeluissa, ja (ii) i j : kaikilla totuusjakeluilla P pätee, että jos S i on tosi P:ssä, S j ei ole tosi P:ssä,
3 46 Lauselogiikan toteutuvuusongelman ratkaiseminen laskennallisessa gridissä ja muodostaa uusia aliongelmia i siten että i = S i. Tämän sirotusaskeleen jälkeen syntyneitä aliongelmia voidaan ratkoa ja niiden tulosten perusteella tehdä uusia sirotusaskelia aliongelmille. Erityisesti, mikäli jokin ongelma osoittautuu toteutumattomaksi, kaikki siitä sirottamalla saatavat aliongelmat tiedetään toteutumattomiksi, ja jos jollekin ongelmalle i löytyy ratkaisu, se on ratkaisu myös ongelmalle. Työssä käytetty sirotusmenetelmä muodostaa ensimmäisessä vaiheessa aliongelmat 1,..., n SATongelmatapauksesta siten, että T 1 jos i = 1 i = T 1 T i 1 T i jos 1 < i < n T 1 T n 1 jos i = n, (2) missä T i :t ovat konjunktioita (l1 i ) (ld i i ) ja negatoitu kaava T i on T i = ( l 1 i l d i i ). Nyt siis S 1 = T 1, S i = T 1 T i 1 T i, kun 2 i n 1 ja S n = T 1 T n 1. Literaalit l j i valitaan samantapaisesti kuin DPLL-algoritmin haarautumisliteraalit. Koska SAT-ongelman ratkaisemiseen kuluvaa aikaa on vaikea arvioida etukäteen, staattinen aliongelmiin pilkkominen ei ole yleisessä tapauksessa riittävää. Niinpä yksittäisessä sirotusaskeleessa syntyneitä ongelmia sirotetaan uudestaan siten, että muodostuu sirotuspuu. Sirotuspuun juuressa on alkuperäinen ratkaistava ongelma, ja yksittäisen solmun lapsia ovat solmuun liittyvän SATongelman sirottamisesta syntyvät aliongelmat. Näin muodostuvaan puuhun voi tehdä mielivaltaisen poikittaisen leikkauksen, ts. solmujen joukon jonka jäsenet eivät ole vanhemmuussuhteessa toisiinsa ja jokainen polku puun juuresta lehteen kulkee täsmälleen yhden leikkaukseen kuuluvan solmun kautta. Esimerkki sirotuspuusta, johon on merkitty harmaalla eräs leikkaus, on esitetty kuvassa 1. Hausta saadaan dynaaminen etsimällä sopiva leikkaus kokeilemalla ongelmien ratkaisua grid-ympäristössä, ja kun leikkaus on löytynyt saadaan tulos luettua leikkaukseen kuuluvien ongelmien tuloksista. 3.2 Toteutus Työssä käytetty sirotusalgoritmi pohjautuu DPLL-algoritmiin. Jotta syntyneet aliongelmat olisivat saman kokoisia, täytyy kaavassa (2) konjunktiossa T i kiinnitettävien muuttujien määrää d i säätää sen mukaan kuinka monta aliongelmaa on jo luotu alkuperäisestä ongelmasta. Olkoon t() funktio kaavalta sen ratkaisuun kuluvalle ajalle. Kun ongelma jaetaan n:ään yhtäsuureen aliongelmaan, tulee yhden ongelman ratkaisuajan olla t()/n. Jos oletamme että ongelmat eivät ole päällekäisiä, on i:nnen osaongelman luonnissa käytettävissä ratkaisuaika t() (i 1)t()/n. Tästä saadaan johdetuksi yhtälö ( t() n = t() (i 1) t() ) r i. n Ratkaisemalla tästä skaalaustermi r i saadaan 1 r i = n i 1. Jotta r i :tä pystytään arvioimaan kiinnittämällä literaaleja kaavassa (2), tehdään oletus, että yhden literaalin kiinnittäminen pienentää DPLL-algoritmin läpikäymän hakuavaruuden puoleen. Jotta literaalien määrä d i aproksimoisi r i :tä mahdollisimman tarkkaan, valitaan d i siten, että erotus r i 1 on mahdollisimman pieni. 2 d i Toteutus, joka on esitetty kuvassa 2, koostuu viidestä osasta. Osat ovat - Scatter, joka tekee yhden sirotusaskeleen,
4 Hyvärinen Kuva 1: Sirotuspuu ja leikkaus Scatter Search queue pool jobs results SATqueue GRIDJM ilter GRID Job Job Job Kuva 2: Ohjelman arkkitehtuuri - Search, joka muodostaa sirotuspuun ja etsii siitä leikkauksen, josta alkuperäisen lauselogiikan ongelman toteutuvuus päätellään, - SATQueue, joka välittää ongelmia laskettavaksi gridiin, - ilter, joka ratkoo helpot osaongelmat paikallisesti, ja - GRIDJM, joka hoitaa grid-kohtaisen kommunikaation. Jotta gridiin ja laskennallisesti vaativaan sirotukseen liittyviä aikaviiveitä voidaan tasoittaa, Search ssä ja SATQueuessa on jonoja, jotka sisältävät valmiita osaongelmia. Mikäli jollekin puun solmulle on gridistä saatu tulos, joka kertoo solmuun liittyvän ongelmatapauksen olevan toteutumaton, ei solmua siroteta enempää. 4 Tulokset Jotta työssä esitettyjen ajatusten soveltuvuutta käytäntöön voidaan arvioida, sirotusalgoritmista on tehty toteutus, jonka nimi on SATU (SAT Ubiquitous). Testeissä sitä on ajettu 500 MHz Pentium III - tietokoneessa, jossa on 500 MB muistia ja Linux-käyttöjärjestelmä. Laskennalliseksi gridiksi valittiin NorduGrid [9], pohjoismainen tuotantokäytössä oleva gridympäristö. Tulosten yhteenveto on esitetty kuvassa 3, joka näyttää kaikkien ajettujen ajojen aikojen keskiarvon ja mediaanin suhteessa maksimimäärään käytössä olevia grid-solmuja. SATU pystyy ratkaisemaan joitakin tiettävästi ennen ratkaisemattomia toteutuvuusongelmatapauksia SAT2005- konferenssin yhteydessä järjestetystä SAT-toteutuvuustarkistinkilpailusta. Osa
5 48 Lauselogiikan toteutuvuusongelman ratkaiseminen laskennallisessa gridissä Kaikki työt keskiarvo mediaani sekuntia maksimaalinen rinnakkaisten töiden määrä Kuva 3: Mediaani ja keskiarvo ajoajoista kaikille kaavoille Taulukko 1: Valikoituja ratkaisemattomia ongelmia SAT2005 toteutuvuustarkistinkilpailusta Teollisuusongelmat Nimi Aika (s) Tulos vmpc_ sat vmpc_ aika loppui Generoidut ongelmat Nimi Aika (s) Tulos eulcbip-7-unsat aika loppui eulcbip-8-unsat aika loppui eulcbip-9-unsat aika loppui gensys-ukn unsat gensys-ukn unsat linvrinv aika loppui linvrinv aika loppui linvrinv aika loppui linvrinv aika loppui mod2c-rand3bip-sat sat mod2c-rand3bip-sat sat mod2c-rand3bip-sat sat mod2c-rand3bip-sat aika loppui mod2c-rand3bip-sat sat tapauksista on esitetty taulukossa 1, ja SATUlla ratkaistuihin on merkitty tulos (sat/unsat). 5 Yhteenveto Työn pääkontribuutio on sirotus, tiettävästi uusi lauselogiikan ratkaisemisen hajautusmenetelmä. Menetelmä mahdollistaa erillisen hajautusheuristiikan ja minkä tahansa toteutuvuustarkistimen käyttämisen, mukaan lukien suljetun lähdekoodin tarkistimet. Sirotuksessa annettu SAT-ongelma jaetaan rajoittuneempiin osaongelmiin jotka muodostavat sirotuspuun. Puun solmut lähetetään ratkaistavaksi rinnakkain esimerkiksi laskennallisen gridiin. Osaongelmien rajoitteet esitetään klausuulein, jotka muodostetaan käyttäen erillistä heuristiikkaa. Työssä näytetään että menetelmä on tehokas ja skaalautuu resurssien mukaan. Koeajot ajetaan NorduGrid-nimisessä laskennallisessa gridissä, ja laskenta-ajoissa saavutetaan lineaarinen nopeutuminen käytettävien resurssien suhteen, olettaen että työt ovat riittävän vaikeita suhteessa kommunikaatioviiveisiin. Viitteet [1] N. Amla, X. Du, A. Kuehlmann, R. Kurshan ja K. McMillan. An analysis of SAT-based model checking techniques in an industrial environment. CHAR- ME:ssa, LNCS:n volyymi 3725, ss Springer, 2005.
6 Hyvärinen 49 [2] A. Biere, E. Clarke, R. Raimi ja Y. Zhu. Verifying safety properties of a PowerPC microprocessor using symbolic model checking without BDDs. CAV 1999:ssä, LNCS:n volyymi 1633, ss Springer, [3] A. Biere, A. Cimatti, E. Clarke ja Y. Zhu. Symbolic model checking without BDDs. TACAS 1999:ssä, LNCS:n volyymi 1579, ss Springer, [4] S. Brin ja L. Page. The anatomy of a large scale hypertextual web search engine. Computer Networks and ISDN Systems, 30(1 7): , [5] R. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers, 35(8): , [6] Satisfiability Competition. [7] S. Cook. The complexity of theoremproving procedures. Proceedings of the Third Annual ACM Symposium on Theory of Computing:ssa, ss ACM Press, [8] M. Davis, G. Logemann ja D. Loveland. A machine program for theoremproving. Communications of the ACM, 5(7): , 1962 [9] P. Eerola, B. Konya, O. Smirnova, T. Ekelöf, M. Ellert, J. R. Hansen, J. L. Nielsen, A. Wäänänen, A. Konstantinov ja. Ould-Saada. Building a production grid in Scandinavia. IEEE Internet Computing, 7(4):27 35, [10] E. Giunchiglia, Y. Lierler ja M. Maratea. SAT-based answer set programming. AAAI 2004, ss AAAI Press, [11] A. E. J. Hyvärinen. SATU: A system for distributed propositional satisfiability checking in computational grids. Tutkimusraportti A100, Teknillinen korkeakoulu, Tietojenkäsittelyteorian laboratorio, Espoo, Suomi, helmikuu [12] H. Kautz ja B. Selman. Pushing the envelope: Planning, propositional logic and stochastic search. AAAI 1996:ssa, ss AAAI Press, [13] T. Larrabee. Test pattern generation using boolean satisfiability. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 11(1):4 15, [14] I. Niemelä. Logic programs with stable model semantics as a constraint programming paradigm. Annals of Mathematics and Artificial Intelligence, 25(3 4): , [15] C. Papadimitriou. Computational Complexity. Addison-Wesley Publishing Company, Inc. Boston, MA, [16] C. Sinz and W. Küchlin. Verifying the on-line help system of SIEMENS magnetic resonance tomographs. ICEM 2004:ssä, LNCS:n volyymi 3308, ss Springer, [17] W. Sullivan III, D. Werthimer, S. Bowyer, J. Cobb, D. Gedye ja D. Anderson. A new major SETI project based on Project Serendip data and 100,000 personal computers. Proceedings of the ifth International Conference on Bioastronomy:ssä, IAU Colloquiumin numero 161, Bologna, Italia, Editrice Compositori. [18] M. Velev ja R. Bryant. Effective use of Boolean satisfiability procedures in the formal verification of superscalar and VLIW microprocessors. Journal of Symbolic Computation, 52(2):73 106, helmikuu 2003.
T Kevät 2005 Logiikka tietotekniikassa: erityiskysymyksiä I Kertausta Ratkaisut
T-79.146 Kevät 2005 Logiikka tietotekniikassa: erityiskysymyksiä I Kertausta Ratkaisut 1. Jokaiselle toteutuvalle lauselogiikan lauseelle voidaan etsiä malli taulumenetelmällä merkitsemällä lause taulun
SAT-ongelman rajoitetut muodot
SAT-ongelman rajoitetut muodot olemme juuri osoittaneet että SAT on NP-täydellinen perusidea on nyt osoittaa joukolle kiinnostavia ongelmia A NP että SAT p m A, jolloin kyseiset A myös ovat NP-täydellisiä
Laskennan vaativuus ja NP-täydelliset ongelmat
Laskennan vaativuus ja NP-täydelliset ongelmat TRAK-vierailuluento 13.4.2010 Petteri Kaski Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Tietojenkäsittelytiede tutkii 1. mitä tehtäviä voidaan
Matti Järvisalo. Constraint Reasoning and Optimization group Tietojenkäsittelytieteen laitos Helsingin yliopisto Complexity theory SAT
Moderni näkökulma logiikkaan tekoälytutkimuksessa Matti Järvisalo Constraint Reasoning and Optimization group Tietojenkäsittelytieteen laitos Helsingin yliopisto 29.2.2016 Complexity theory Formal logic
Computing Curricula 2001 -raportin vertailu kolmeen suomalaiseen koulutusohjelmaan
Computing Curricula 2001 -raportin vertailu kolmeen suomalaiseen koulutusohjelmaan CC1991:n ja CC2001:n vertailu Tutkintovaatimukset (degree requirements) Kahden ensimmäisen vuoden opinnot Ohjelmistotekniikan
Scheduling of Genetic Analysis Workflows on Grid Environments (valmiin työn esittely) Arttu Voutilainen
Scheduling of Genetic Analysis Workflows on Grid Environments (valmiin työn esittely) Arttu Voutilainen 20.4.2015 Ohjaaja: FT Lauri Eronen (Biocomputing Platforms Ltd.) Valvoja: Prof. Harri Ehtamo Työn
Algoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017
= k 0 NTIME(n k + k) Siis polynomisessa ajassa epädeterministisellä Turingin koneella tunnistettavien kielten joukko
238 7.2 Luokka NP Luokka NP on: NP = { NTIME(t) t on polynomi } = k 0 NTIME(n k + k) Siis polynomisessa ajassa epädeterministisellä Turingin koneella tunnistettavien kielten joukko P NP Luokan NP ongelmista
Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m.
Väite: T (n) (a + b)n 2 + a. Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m. Huomaa että funktion x x 2 + (m 1 x) 2 kuvaaja on ylöspäin aukeava paraabeli, joten funktio saavuttaa suurimman
Johdatus logiikkaan I Harjoitus 4 Vihjeet
Johdatus logiikkaan I Harjoitus 4 Vihjeet 1. Etsi lauseen ((p 0 p 1 ) (p 0 p 1 )) kanssa loogisesti ekvivalentti lause joka on (a) disjunktiivisessa normaalimuodossa, (b) konjunktiivisessa normaalimuodossa.
T Logiikka tietotekniikassa: perusteet Kevät 2008 Laskuharjoitus 5 (lauselogiikka ) A ( B C) A B C.
T-79.3001 Logiikka tietotekniikassa: perusteet Kevät 2008 Laskuharjoitus 5 (lauselogiikka 6.1 7.2) 27. 29.2.2008 Ratkaisuja demotehtäviin Tehtävä 6.1 a) A (B C) Poistetaan lauseesta ensin implikaatiot.
T kevät 2007 Laskennallisen logiikan jatkokurssi Laskuharjoitus 1 Ratkaisut
T-79.5101 kevät 2007 Laskennallisen logiikan jatkokurssi Laskuharjoitus 1 Ratkaisut 1. Jokaiselle toteutuvalle lauselogiikan lauseelle voidaan etsiä malli taulumenetelmällä merkitsemällä lause taulun juureen
Itsestabilointi: perusmääritelmiä ja klassisia tuloksia
Itsestabilointi: perusmääritelmiä ja klassisia tuloksia Jukka Suomela Hajautettujen algoritmien seminaari 12.10.2007 Hajautetut järjestelmät Ei enää voida lähteä oletuksesta, että kaikki toimii ja mikään
Kierros 10: Laskennallisesti vaativampia ongelmia
Kierros 10: Laskennallisesti vaativampia ongelmia Tommi Junttila Aalto University School of Science Department of Computer Science CS-A1140 Data Structures and Algorithms Autumn 2017 Tommi Junttila (Aalto
Yleinen paikallinen vakautuva synkronointialgoritmi
Yleinen paikallinen vakautuva synkronointialgoritmi Panu Luosto 23. marraskuuta 2007 3 4 putki 1 2 α α+1 α+2 α+3 0 K 1 kehä K 2 K 3 K 4 Lähdeartikkeli Boulinier, C., Petit, F. ja Villain, V., When graph
Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä
Rekursiolause Laskennan teorian opintopiiri Sebastian Björkqvist 23. helmikuuta 2014 Tiivistelmä Työssä käydään läpi itsereplikoituvien ohjelmien toimintaa sekä esitetään ja todistetaan rekursiolause,
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys
KNM:ien toteutumattomuuden todistaminen paikallisesti
TEKNILLINEN KORKEAKOULU Tietotekniikan osasto Tietojenkäsittelyteorian laboratorio T-79.194 Tietojenkäsittelyteorian seminaari KNM:ien toteutumattomuuden todistaminen paikallisesti Pauli Aho Ti III, 51023K
Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna
Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna. q 0 x solmuina laskennan mahdolliset tilanteet juurena alkutilanne lehtinä tilanteet joista ei siirtymää,
Esimerkkejä polynomisista ja ei-polynomisista ongelmista
Esimerkkejä polynomisista ja ei-polynomisista ongelmista Ennen yleisempiä teoriatarkasteluja katsotaan joitain tyypillisiä esimerkkejä ongelmista ja niiden vaativuudesta kaikki nämä ongelmat ratkeavia
monitavoitteisissa päätöspuissa (Valmiin työn esittely) Mio Parmi Ohjaaja: Prof. Kai Virtanen Valvoja: Prof.
Epätäydellisen preferenssiinformaation hyödyntäminen monitavoitteisissa päätöspuissa (Valmiin työn esittely) Mio Parmi 15.1.2018 Ohjaaja: Prof. Kai Virtanen Valvoja: Prof. Kai Virtanen Tausta Päätöspuu
Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea.
Roolit Tommi Perälä Department of Mathematics, Hypermedia Laboratory Tampere University of Technology 25.3.2011 J. Kleinberg kehitti -algoritmin (Hypertext Induced Topic Search) hakukoneen osaksi. n taustalla
4.3. Matemaattinen induktio
4.3. Matemaattinen induktio Matemaattinen induktio: Deduktion laji Soveltuu, kun ominaisuus on osoitettava olevan voimassa luonnollisilla luvuilla. Suppea muoto P(n) : Ominaisuus, joka joka riippuu luvusta
T Tietojenkäsittelyteorian seminaari
p.1/25 T-79.194 Tietojenkäsittelyteorian seminaari Krzysztof R. Apt: Principles of Constraint Programming: 4. luku, ss. 103 118 Jakub Jarvenpaa jakub.jarvenpaa@hut.fi p.2/25 Sisältö Termiyhtälöt Martelli-Montanari-algoritmi
Miten osoitetaan joukot samoiksi?
Miten osoitetaan joukot samoiksi? Määritelmä 1 Joukot A ja B ovat samat, jos A B ja B A. Tällöin merkitään A = B. Kun todistetaan, että A = B, on päättelyssä kaksi vaihetta: (i) osoitetaan, että A B, ts.
Yleisen PSCR-menetelmän toteutus ohjelmoitavalla näytönoh
Yleisen n toteutus ohjelmoitavalla näytönohjaimella Mirko Myllykoski mirko.myllykoski@jyu.fi 15.2.2011 Mitä teen? Tarkoituksena toteuttaa (ja osin jo toteutettukin) stä versio ohjelmoitavalle näytönohjaimelle
. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1
TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-.39 Optimointioppi Kimmo Berg 8. harjoitus - ratkaisut. a)huomataan ensinnäkin että kummankin jonon raja-arvo r on nolla. Oletetaan lisäksi että
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
Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005
Graafin 3-värittyvyyden tutkinta T-79.165 Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Mikko Malinen, 36474R 29. maaliskuuta, 2005 Tiivistelmä Artikkelissa käydään läpi teoriaa, jonka avulla
Ratkaisu: Yksi tapa nähdä, että kaavat A (B C) ja (A B) (A C) ovat loogisesti ekvivalentit, on tehdä totuustaulu lauseelle
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 3 Ratkaisuehdotukset 1. Olkoot A, B ja C propositiolauseita. Näytä, että A (B C) (A B) (A C). Ratkaisu: Yksi tapa
Luku 8. Aluekyselyt. 8.1 Summataulukko
Luku 8 Aluekyselyt Aluekysely on tiettyä taulukon väliä koskeva kysely. Tyypillisiä aluekyselyitä ovat, mikä on taulukon välin lukujen summa tai pienin luku välillä. Esimerkiksi seuraavassa taulukossa
Esimerkkejä vaativuusluokista
Esimerkkejä vaativuusluokista Seuraaville kalvoille on poimittu joitain esimerkkejä havainnollistamaan algoritmien aikavaativuusluokkia. Esimerkit on valittu melko mielivaltaisesti laitoksella tehtävään
kaikki kielet tunnistettavat A TM HALT TM { a n } { a n b n } { a n b n c n } TOTAL TM EQ TM
Kurssi tähän asti: säännölliset yhteydettömät ratkeavat { a n } { a n b n } { a n b n c n } tunnistettavat A TM HALT TM kaikki kielet A TM HALT TM TOTAL TM TOTAL TM EQ TM EQ TM 277 5. Laskennan vaativuus
ICS. T-61 (Informaatiotekniikka)
Tietotekniikan tutkinto-ohjelma korvaavuusluettelo 2010-2014 Päivitetty 1.7.2016 Käyttöohje 1. Hae etsimäsi kurssi CTRL+F 2. Viimeisin sarake oikealla on voimassaoleva kurssi/ajankohtaisin tieto 3. Jos
Lineaariset kongruenssiyhtälöryhmät
Lineaariset kongruenssiyhtälöryhmät LuK-tutkielma Jesse Salo 2309369 Matemaattisten tieteiden laitos Oulun yliopisto Sisältö Johdanto 2 1 Kongruensseista 3 1.1 Kongruenssin ominaisuuksia...................
Algoritmit 1. Luento 2 Ke Timo Männikkö
Algoritmit 1 Luento 2 Ke 11.1.2017 Timo Männikkö Luento 2 Algoritmin esitys Algoritmien analysointi Suoritusaika Asymptoottinen kertaluokka Peruskertaluokkia NP-täydelliset ongelmat Algoritmit 1 Kevät
3SAT-ongelman NP-täydellisyys [HMU ]
3SAT-ongelman NP-täydellisyys [HMU 10.3.4] erotukseksi yleisestä CNF-esityksestä, kaikilla kaavoilla ei ole 3-CNF-esitystä; esim. x 1 x 2 x 3 x 4 esitämme muunnoksen, jolla polynomisessa ajassa mielivaltaisesta
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.
Kaksiluokkainen tapaus, lineaarinen päätöspinta, lineaarisesti erottuvat luokat
1 Tukivektoriluokittelija Tukivektorikoneeseen (support vector machine) perustuva luoikittelija on tilastollisen koneoppimisen teoriaan perustuva lineaarinen luokittelija. Perusajatus on sovittaa kahden
Algoritmit 2. Luento 7 Ti Timo Männikkö
Algoritmit 2 Luento 7 Ti 4.4.2017 Timo Männikkö Luento 7 Joukot Joukko-operaatioita Joukkojen esitystapoja Alkiovieraat osajoukot Toteutus puurakenteena Algoritmit 2 Kevät 2017 Luento 7 Ti 4.4.2017 2/26
3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö
3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö Yhtälön (tai funktion) y = a + b + c, missä a 0, kuvaaja ei ole suora, mutta ei ole yhtälökään ensimmäistä astetta. Funktioiden
V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen
V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen Luento omatoimisen luennan tueksi algoritmiikan tutkimusseminaarissa 23.9.2002. 1 Sisältö Esitellään ongelmat Steiner-puu Kauppamatkustajan
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 4 Ratkaisuehdotukset
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 4 Ratkaisuehdotukset 1. Etsi lauseen (p 0 (p 1 p 0 )) p 1 kanssa loogisesti ekvivalentti lause joka on (a) disjunktiivisessa
Lineaaristen monitavoiteoptimointitehtävien
Lineaaristen monitavoiteoptimointitehtävien ratkaiseminen Jerri Nummenpalo 17.09.2012 Ohjaaja: TkT Juuso Liesiö Valvoja: Prof. Ahti Salo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla.
Kustannustehokkaat riskienhallintatoimenpiteet kuljetusverkostossa (Valmiin työn esittely)
Kustannustehokkaat riskienhallintatoimenpiteet kuljetusverkostossa (Valmiin työn esittely) Joonas Lanne 23.2.2015 Ohjaaja: Eeva Vilkkumaa Valvoja: Ahti Salo Työn saa tallentaa ja julkistaa Aalto-yliopiston
Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun
Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun Sami Hokuni 12 Syyskuuta, 2012 1/ 54 Sami Hokuni Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun Turun Yliopisto. Gradu tehty 2012 kevään
, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).
HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi II, syksy 017 Harjoitus 4 Ratkaisuehdotukset 4.1. Osoita, että tasa-arvojoukko S F (0), F : R 3 R, F (x) = 3x 1 x 3 + e x + x e x 3, on säännöllinen
Lauselogiikan toteutuvuustarkastus: käytännönläheistä teoriaa
Tietojenkäsittelytiede 22 Joulukuu 2004 sivut 47 63 Toimittaja: Antti Valmari c kirjoittaja(t) Lauselogiikan toteutuvuustarkastus: käytännönläheistä teoriaa Matti Järvisalo Teknillinen korkeakoulu Tietojenkäsittelyteorian
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 5 Ratkaisuehdotukset
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 5 Ratkaisuehdotukset 1. Päättele resoluutiolla seuraavista klausuulijoukoista: (a) {{p 0 }, {p 1 }, { p 0, p 2 },
Lineaarialgebra ja matriisilaskenta II Syksy 2009 Laskuharjoitus 1 ( ) Ratkaisuehdotuksia Vesa Ala-Mattila
Lineaarialgebra ja matriisilaskenta II Syksy 29 Laskuharjoitus (9. - 3..29) Ratkaisuehdotuksia Vesa Ala-Mattila Tehtävä. Olkoon V vektoriavaruus. Todistettava: jos U V ja W V ovat V :n aliavaruuksia, niin
Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen
Hävittäjälentokoneen reitin suunnittelussa käytettävän dynaamisen ja monitavoitteisen verkko-optimointitehtävän ratkaiseminen A*-algoritmilla (valmiin työn esittely) Joonas Haapala 8.6.2015 Ohjaaja: DI
Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä
hyväksymispäivä arvosana arvostelija Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä Tuomas Husu Helsinki 20.2.2010 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto
Muita vaativuusluokkia
Muita vaativuusluokkia Käydään lyhyesti läpi tärkeimpiä vaativuusluokkiin liittyviä tuloksia. Monet tunnetuista tuloksista ovat vaikeita todistaa, ja monet kysymykset ovat vielä auki. Lause (Ladner 1975):
Sekalaiset tehtävät, 11. syyskuuta 2005, sivu 1 / 13. Tehtäviä
Sekalaiset tehtävät, 11. syyskuuta 005, sivu 1 / 13 Tehtäviä Tehtävä 1. Johda toiseen asteen yhtälön ax + bx + c = 0, a 0 ratkaisukaava. Tehtävä. Määrittele joukon A R pienin yläraja sup A ja suurin alaraja
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
T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 2 (opetusmoniste, lauselogiikka )
T-79.144 Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 2 opetusmoniste, lauselogiikka 2.1-3.5) 21 24.9.2004 1. Määrittele lauselogiikan konnektiivit a) aina epätoden lauseen ja implikaation
Tekijä MAA2 Polynomifunktiot ja -yhtälöt = Vastaus a)
K1 a) Tekijä MAA Polynomifunktiot ja -yhtälöt 6.8.016 ( + + ) + ( ) = + + + = + + + = + 4 b) 4 4 ( 5 + ) ( 5 + 1) = 5 + + 5 + 1 4 = + + + 4 = + 5 5 1 1 Vastaus a) 4 + b) 4 + 1 K a) f ( ) = + 1 f () = +
1. Olkoot vektorit a, b ja c seuraavasti määritelty: a) Määritä vektori. sekä laske sen pituus.
Matematiikan kurssikoe, Maa4 Vektorit RATKAISUT Sievin lukio Keskiviikko 12.4.2017 VASTAA YHTEENSÄ VIITEEN TEHTÄVÄÄN! MAOL JA LASKIN/LAS- KINOHJELMAT OVAT SALLITTUJA! 1. Olkoot vektorit a, b ja c seuraavasti
P? = NP Kysymys ratkaisun keksimisestä ja sen tarkistamisesta
P? = NP Kysymys ratkaisun keksimisestä ja sen tarkistamisesta Juha Nurmonen Matematiikan laitos Helsingin yliopisto Ajatellaanpa esimerkiksi kauppamatkustajan jokapäiväistä ongelmaa: Kauppamatkustajan
5. Rajoitelaskenta (Constraint Satisfaction)
5. Rajoitelaskenta (Constraint Satisfaction) Eero Hyvönen Helsingin yliopisto Solution = An assignment of values for the variables satifying the contraints Some CSPs: optimal solution is the best solution
Vesivoimaketjun optimointi mehiläisalgoritmilla (Valmiin työn esittely)
Vesivoimaketjun optimointi mehiläisalgoritmilla (Valmiin työn esittely) Sakke Rantala 2.12.2013 Ohjaaja: DI Hannu Korva Valvoja: Professori Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston
Tietorakenteet, laskuharjoitus 7, ratkaisuja
Tietorakenteet, laskuharjoitus, ratkaisuja. Seuraava kuvasarja näyttää B + -puun muutokset lisäysten jälkeen. Avaimet ja 5 mahtuvat lehtisolmuihin, joten niiden lisäys ei muuta puun rakennetta. Avain 9
C C. x 2. x 3 x 3. Lause 3SAT p m VC Todistus. Olk. φ = C 1 C 2 C m 3-cnf-kaava, jossa esiintyvät muuttujat. φ toteutuva:
Lause 3SAT p m VC Todistus. Olk. φ = C 1 C C m 3-cnf-kaava, jossa esiintyvät muuttujat x 1,..., x n. Vastaava solmupeiteongelman tapaus G, k muodostetaan seuraavasti. G:ssä on solmu kutakin literaalia
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki:
Tehtävä 1. Päättele resoluutiolla seuraavista klausuulijoukoista. a. 1 {p 3 } oletus. 4 {p 1, p 2, p 3 } oletus. 5 { p 1 } (1, 2) 7 (4, 6)
Tehtävä 1 Päättele resoluutiolla seuraavista klausuulijoukoista. a. {{p 0 }, {p 1 }, { p 0, p 2 }, {p 1, p 2, p 3 }, { p 2, p 3 }, {p 3 }}, b. {{ p 0, p 2 }, {p 0, p 1 }, {{ p 1, p 2 }, { p 2 }}, c. {{p
Juuri 11 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty
Kertaus K1. a) 72 = 2 36 = 2 2 18 = 2 2 2 9 = 2 2 2 3 3 = 2 3 3 2 252 = 2 126 = 2 2 63 = 2 2 3 21 = 2 2 3 3 7 = 2 2 3 2 7 syt(72, 252) = 2 2 3 2 = 36 b) 252 = 72 3 + 36 72 = 36 2 syt(72, 252) = 36 c) pym(72,
missä on myös käytetty monisteen kaavaa 12. Pistä perustelut kohdilleen!
Matematiikan johdantokurssi Kertausharjoitustehtävien ratkaisuja/vastauksia/vihjeitä. Osoita todeksi logiikan lauseille seuraava: P Q (P Q). Ratkaisuohje. Väite tarkoittaa, että johdetut lauseet P Q ja
Algoritmit 2. Luento 1 Ti Timo Männikkö
Algoritmit 2 Luento 1 Ti 14.3.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin valinta Algoritmin analysointi Algoritmin suoritusaika Peruskertaluokkia Kertaluokkamerkinnät Kertaluokkien ominaisuuksia
TAMPEREEN 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Ä
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 =
Kurssin koodi ja nimi Ryhmä Päivä Aika Sali Viikot Henkilöt Course code and name Group Day Time Lecture room Weeks Course staff
Tietotekniikan tarjoama opetus keväällä 2017 23.5.2016 CS course schedule in spring 2017 Päivitetty/updated 27.5.2016 Sari Salmisuo III periodi / period III 2.1. 10.2.2017 viikot/weeks 1 6 IV periodi /
NP-täydellisyys. Joonas Järvenpää ja Topi Talvitie. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
NP-täydellisyys Joonas Järvenpää ja Topi Talvitie Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Helsinki, 23. helmikuuta 2014 Sisältö 1 Johdanto 1 2 Ongelman määrittely
LAUSELOGIIKKA (1) Sanalliset ilmaisut ovat usein epätarkkoja. On ilmaisuja, joista voidaan sanoa, että ne ovat tosia tai epätosia, mutta eivät molempia. Ilmaisuja, joihin voidaan liittää totuusarvoja (tosi,
Johdatus matemaattiseen päättelyyn
Johdatus matemaattiseen päättelyyn Maarit Järvenpää Oulun yliopisto Matemaattisten tieteiden laitos Syyslukukausi 2015 1 Merkintöjä 2 Todistamisesta 2 3 Joukko-oppia Tässä luvussa tarkastellaan joukko-opin
Mat Lineaarinen ohjelmointi
Mat-.34 Lineaarinen ohjelmointi 9..7 Luento Kokonaislukuoptimoinnin algoritmeja (kirja.-.) Lineaarinen ohjelmointi - Syksy 7 / Luentorunko Gomoryn leikkaava taso Branch & Bound Branch & Cut Muita menetelmiä
Sovellettu todennäköisyyslaskenta B
Sovellettu todennäköisyyslaskenta B Antti Rasila 8. marraskuuta 2007 Antti Rasila () TodB 8. marraskuuta 2007 1 / 18 1 Kertausta: momenttimenetelmä ja suurimman uskottavuuden menetelmä 2 Tilastollinen
Polynomiset palautukset ja NP-täydellisyys
Polynomiset palautukset ja NP-täydellisyys [HMU 10.1.5, 10.1.6] Polynomisen palautuksen idea on sama kuin rekursiivisen palautuksen, paitsi että liikutaan polynomisen aikavaativuuden maailmassa. Funktio
Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen
Etsintä verkosta (Searching from the Web) T-61.2010 Datasta tietoon Heikki Mannila, Jouni Seppänen 12.12.2007 Webin lyhyt historia http://info.cern.ch/proposal.html http://browser.arachne.cz/screen/
Johnson, 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,
Rajoittamattomat kieliopit (Unrestricted Grammars)
Rajoittamattomat kieliopit (Unrestricted Grammars) Laura Pesola Laskennanteorian opintopiiri 13.2.2013 Formaalit kieliopit Sisältävät aina Säännöt (esim. A -> B C abc) Muuttujat (A, B, C, S) Aloitussymboli
Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti
Luku 6 Dynaaminen ohjelmointi Dynaamisessa ohjelmoinnissa on ideana jakaa ongelman ratkaisu pienempiin osaongelmiin, jotka voidaan ratkaista toisistaan riippumattomasti. Jokaisen osaongelman ratkaisu tallennetaan
Tietorakenteet ja algoritmit - syksy 2015 1
Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 2 Tietorakenteet ja algoritmit Johdanto Ari Korhonen Tietorakenteet ja algoritmit - syksy 2015 1. JOHDANTO 1.1 Määritelmiä
Lisää kvanttoreista ja päättelyä sekä predikaattilogiikan totuustaulukot 1. Negaation siirto kvanttorin ohi
Lisää kvanttoreista ja päättelyä sekä predikaattilogiikan totuustaulukot 1. Negaation siirto kvanttorin ohi LUKUTEORIA JA TODISTAMINEN, MAA11 Esimerkki a) Lauseen Kaikki johtajat ovat miehiä negaatio ei
ja λ 2 = 2x 1r 0 x 2 + 2x 1r 0 x 2
Johdatus diskreettiin matematiikkaan Harjoitus 4, 7.10.2015 1. Olkoot c 0, c 1 R siten, että polynomilla r 2 c 1 r c 0 on kaksinkertainen juuri. Määritä rekursioyhtälön x n+2 = c 1 x n+1 + c 0 x n, n N,
Tiedonsiirron kokonaisoptimointi erilaisten tietoverkkojen yhteiskäytössä
Tiedonsiirron kokonaisoptimointi erilaisten tietoverkkojen yhteiskäytössä Juuso Meriläinen 27.11.2015 Juuso Meriläinen Tiedonsiirron kokonaisoptimointi erilaisten tietoverkkojen yhteiskäytössä 1 / 11 Johdanto
TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 8. syyskuuta 2016
TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. syyskuuta 2016 Sisällys a https://tim.jyu.fi/view/kurssit/tie/ tiea241/2016/videoiden%20hakemisto Matemaattisen
2.2.1 Ratkaiseminen arvausta sovittamalla
2.2.1 Ratkaiseminen arvausta sovittamalla Esimerkki: lomitusjärjestäminen (edellä) Yleistys: Ratkaistava T (1) c T (n) g(t (1),..., T (n 1), n) missä g on n ensimmäisen parametrin suhteen kasvava. (Ratkaisu
Toinen muotoilu. {A 1,A 2,...,A n,b } 0, Edellinen sääntö toisin: Lause 2.5.{A 1,A 2,...,A n } B täsmälleen silloin kun 1 / 13
2 3 Edellinen sääntö toisin: Lause 2.5.{A 1,A 2,...,A n } B täsmälleen silloin kun {A 1,A 2,...,A n,b } 0, jatkoa jatkoa 1 / 13 2 3 Edellinen sääntö toisin: Lause 2.5.{A 1,A 2,...,A n } B täsmälleen silloin
Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely)
Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely) Jani Laine 31.10.2017 Ohjaaja: DI Jimmy Kjällman Valvoja: Prof. Kai Virtanen Työn saa tallentaa ja julkistaa Aalto-yliopiston
12. luento: Simplexin implementointi Mallinnusjärjestelmät. Simplexin implementointiin liittyviä asioita
Simplex-menetelm menetelmän laskennalliset tekniikat 12. luento: Simplexin implementointi Mallinnusjärjestelmät Matemaattisten algoritmien ohjelmointi Kevät 2008 / 1 Simplexin implementointiin liittyviä
Kokonaislukuoptiomointi Leikkaustasomenetelmät
Kokonaislukuoptiomointi Leikkaustasomenetelmät Systeemianalyysin Laboratorio 19.3.2008 Sisällys Leikkaustasomenetelmät yleisesti Leikkaustasomenetelmät generoivilla kokonaislukujoukoilla Gomoryn leikkaavat
Luonnollisen päättelyn luotettavuus
Luonnollisen päättelyn luotettavuus Luotettavuuden todistamiseksi määrittelemme täsmällisesti, milloin merkkijono on deduktio. Tässä ei ole sisällytetty päättelysääntöihin iteraatiosääntöä, koska sitä
Graafit 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:
Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö
Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
Sähkötekniikan tutkintoohjelma. DI-tutkinto ja uranäkymät
Sähkötekniikan tutkintoohjelma DI-tutkinto ja uranäkymät Tervetuloa opiskelemaan sähkötekniikkaa Oulun yliopistoon! ITEE RESEARCH UNITS Tutkinto-ohjelman tuottajat CAS CIRCUITS AND SYSTEMS PROF. JUHA KOSTAMOVAARA
Skedulointi, kuormituksen tasaus, robotin navigaatio
Skedulointi, kuormituksen tasaus, robotin navigaatio Esitelmä algoritmiikan tutkimusseminaarissa 17.2.2003 Kimmo Palin Tietojenkäsittelytieteen laitos Helsingin Yliopisto Skedulointi, kuormituksen tasaus,
Dynaaminen ohjelmointi ja vaikutuskaaviot
Teknillinen Korkeakoulu / Ssteemianalsin laboratorio Mat-2.42 Optimointiopin seminaari / Referaatti esitelmästä Sami Mllmäki Dnaaminen ohjelmointi ja vaikutuskaaviot OHDANTO Dnaamiset ohjelmointitehtävät
ALGORITMIT & OPPIMINEN
ALGORITMIT & OPPIMINEN Mitä voidaan automatisoida? Mikko Koivisto Avoimet aineistot tulevat Tekijä: Lauri Vanhala yhdistä, kuvita, selitä, ennusta! Tekijä: Logica Mitä voidaan automatisoida? Algoritmi
Ongelma 1: Miten tieto kannattaa koodata, jos sen halutaan olevan hyvin vaikeasti luettavaa?
Ongelma 1: Miten tieto kannattaa koodata, jos sen halutaan olevan hyvin vaikeasti luettavaa? 2012-2013 Lasse Lensu 2 Ongelma 2: Miten tietoa voidaan (uudelleen)koodata tehokkaasti? 2012-2013 Lasse Lensu
Aki Taanila LINEAARINEN OPTIMOINTI
Aki Taanila LINEAARINEN OPTIMOINTI 26.4.2011 JOHDANTO Tässä monisteessa esitetään lineaarisen optimoinnin alkeet. Moniste sisältää tarvittavat Excel ohjeet. Viimeisin versio tästä monisteesta ja siihen