De Taal van DNA. Piter Dykstra. 23 januari 2004

Maat: px
Weergave met pagina beginnen:

Download "De Taal van DNA. Piter Dykstra. 23 januari 2004"

Transcriptie

1 De Taal van DNA Piter Dykstra 23 januari Biologie en Informatica 1.1 Talen, problemen en automaten Er zijn duizenden programmeertalen. Het lijkt wel alsof informatici beter in staat zijn om programmeertalen te maken dan er problemen mee op te lossen. En in zekere zin is dat ook zo. In de automatentheorie worden problemen en talen zelfs gelijk gesteld: ieder probleem heeft een specifieke taal en alle oplossingen voor een probleem zijn de syntactisch correcte zinnen/expressies van die taal. Met een aantal voorbeelden wil ik laten zien dat problemen kunnen worden opgelost door ze enkel te formuleren d.m.v. een taal of -wat op hetzelfde neerkomt- een automaat. De oplossing kan dan eenvoudig worden uitgerekend. Deze methode is juist geschikt voor bioinformatica, omdat daar problemen zich al als taalproblemen aandienen. De eerste twee voorbeelden hebben eenvoudige talen (reguliere expressies) een machines (eindige automaten) als object. Het algemene en het biologische probleem staan naast elkaar om de verwantschap te benadrukken. Dat thema wordt nog een keer herhaald met een contextvrije taal, waarin een algemeen en een biologisch voorbeeld worden gegeven. Voorbeeld 1: Het aap-banaan-probleem Een aap zit in een kooi waarin in het midden aan het plafond een banaan hangt. De aap kan niet bij de banaan tenzijn zij een kist, die in een hoek staat, naar het midden van de kooi schuift. Na op de kist te zijn geklommen kan de aap de banaan grijpen. We kunnen de handelingen van de aap met de volgende symbolen coderen: 1

2 Code l r L R k g Aktie Aap loopt naar links Aap loopt naar rechts Aap schuift de kist naar links Aap schuift de kist naar rechts Aap klimt op de kist Aap grijpt de banaan Als we aannemen dat er drie posities zijn (links, midden, rechts) en in de beginsituatie zit de aap links en staat de kist rechts, dan zijn de volgende strings oplossingen voor het probleem: Hoe krijgt de aap de banaan? rrlkg rlrrlkg rrllrrlkg... Figuur 1 laat zien hoe deze zinnen kunnen worden geproduceerd als signalen bij toestandsovergangen van een automaat. Een automaat die toestandsovergangen maakt als het bijbehorende teken wordt gelezen, herkent een zin als correct als de automaat eindigt in een dubbel omcirkelde toestand. a op kist k al kist l r am r l ar L R k a op kist g grijp! al l r am kist r l ar L R al l r am r l ar kist k a op kist Fig. 1: Eindige automaat voor het aap-banaan-probleem. al = aap links; am = aap midden; ar = aap rechts. Er zijn drie toestanden waarin de aap op de kist kan zijn (a op kist) links (links-boven) midden(midden) en rechts (rechts-onder) 2

3 Een automaat die in meerdere toestanden tegelijk kan zijn, b.v. alle toestanden met de tekst al, omdat de aap wel links zit, maar de positie van de kist onbekend is, heet een indeterministische automaat. Dit principe is ook met vrucht toegepast op biologische problemen. Heel veel vragen m.b.t. sequenties kunnen m.b.v. reguliere expressies worden opgelost. Voorbeeld 2: Reguliere Expressies. Het vinden van het patroon atg kan met de RE: /atg/. En de RE: /atg(...)*[(taa)(tag)(tga)]/ levert zelfs de posities van genen. In dit verband is elke RE een taal; de eerste expressie heeft maar één correcte zin. Maar van de tweede zijn alle orf s in een bepaald bestand syntactisch correcte zinnen. RE s beschrijven dus talen. De categorie van de RE s is een taalfamilie. RE s worden geëvalueerd met eindige automaten. Dat zijn mentale constructies bestaande uit een eindig aantal toestanden met toestandsovergangen (zie fig 1). Overgangen treden op bij het lezen van tekens en in een eindtoestand stopt de automaat. a Start cg a a a t at g Eind atg cgt ct Fig. 2: Eindige automaat die het patroon atg herkent. En de vraag is: Kunnen alle bioinformatica problemen nu met RE s worden opgelost? Het antwoord is: Wel veel, maar niet alle. Maar gelukkig zijn er meer taalfamilies dan alleen de RE. Eén van de vragen die niet met RE s beantwoord kan worden, is de vraag naar de secundaire struktuur van eiwitten en RNA, maar dat kan weer met uitbreidingen van RE s. Een uitbreiding op de RE s zijn de contextvrije talen. I.p.v. een expressie wordt er een grammatica gegeven (productieregels). 3

4 Voorbeeld 3: Nederlands grammatica-fragment. Een heel klein fragment van de nederlandse grammatica wordt met de volgende regels weergegeven: Zin Onderwerp, Gezegde Onderwerp Jan Gezegde eet Gezegde eet LijdendV oorwerp LijdendV oorwerp een appel Met deze grammatica kan de zin Jan eet een appel ontleed (geparsed) worden. Contexvrije talen draaien op stapelautomaten; eindige automaten maar elke toestand heeft ook nog een eigen geheugen in de vorm van een stapel (stack). Voorbeeld 4: Secundaire struktuur van RNA Figuur 3 geeft een voorbeeld van een contextvrije taal voor de secundaire structuur van RNA. Er zijn productieregels die vastleggen wat hairpins, stems en pseudoknots zijn en een stapelautomaat genereert vervolgens de sucundaire struktuur bij het lezen van de sequentie. Stapelautomaten die in meer dan één toestand tegelijk kunnen verkeren, om onbekende parameters te kunnen representeren, zijn er ook: dat zijn indeterministische stapelautomaten. Onbekendheid moet niet worden verward met onzekerheid. Onzekerheid ontstaat wanneer een toevalsproces een rol speelt bij het ontstaan van de data. Zo is er een zekere kans dat een nucleotide muteert in één van de anderen. Dat is wat anders dan dat het onbekend is welk nucleotide zich op een bepaalde basepositie bevindt. Kansmachines bestaan ook: een stochastische eindige automaat, beter bekend als HMM, heeft voor elke overgang een kansparameter. En stochastische stapelautomaten evalueren stochastische contextvrije grammatica s en daarbij hebben de productieregels een mate van waarschijnlijkheid. 4

5 Fig. 3: Uit: Sakakibara e.a. (94) Stochastic Contextfree Grammars for trna Modeling.[Sak94] 1.2 Vertalen Het formuleren en herkennen van talen is één ding. Een compiler controleert in eerste instantie of een programma syntactisch correct is. Daarna moet er wel executable of vertaling komen. Een.java is een Java-programma, maar alleen een.class -file leidt tot aktie. Dit heeft zijn analogon in de moleculaire genetica. Alles draait om de vraag: Wat betekent deze sequentie? Nu herkennen stapelautomaten wel een syntactische structuur, maar eigenlijk willen we verder. We willen in een automaat ook de betekenis, de semantische struktuur, vastleggen. Dan ontstaan de compilers, zoals we die dagelijks gebruiken - formeel gezegd: een compiler is een automaat die bij herkende string een semantische struktuur produceert. Talen van die klasse zijn b.v. van-wijngaarden grammatica s en attribuutgrammatica s. Aan de productieregels worden attributen - de betekenis - gehecht (gedecoreerd). Die decoraties kunnen variëren in rijkdom en dat bepaalt dan weer hun soort. Zo kunnen er bij biologische sequenties ook semantische strukturen gegenereerd worden, die je ook weer als filter in een database kunt 5

6 gebruiken: Geef alle genen betrokken bij de...glycolyse. Wat we dus eigenlijk nodig hebben, zijn: compilers voor DNA! Voorbeeld 5: Funktie als semantische struktuur Komt nog. 2 Bioinformatica 2.1 Visie De vorige sectie mag illustreren dat informatica een veel centralere plaats inneemt in bioinformatica dan alleen de leverancier zijn van een aantal algemene onderzoekstools zoals Perl-filters en databases. Het nut van informatica gaat ook verder dan het aanleveren voor het domein speciale tools, zoals interfaces voor biologische databases: Sequence Query Language, String QL en ook Alignment QL. [P.B95, KH94, KH99, JAC01] De voorbeelden laten zien dat de biologische vragen op dezelfde wijze als de andere algemene problemen kunnen worden opgelost, als het probleem één keer in termen van talen en vertalen is geformuleerd. DNA is een programma en de uitvoering van dat programma kan door biologen bestudeerd en door computers gesimuleerd worden. De theorie is daardoor beter toetsbaar. DNA = computerprogramma Het concept dat (programmeer-)talen een (executeerbare) semantiek hebben, is rechtsstreeks toe te passen op moleculaire genetica, zelfs met de universele tools zoals grep, lex, bison: het DNA is een taal en de betekenis vinden we in een aantal vertaalslagen. funktie = compileren De theorie voor het modelleren van funktie op een mechanistisch niveau bestaat al binnen het informatica-vakgebied. Het moet alleen nog op de biologische kennis te worden toegepast. Dat is de kracht van de bioinformatica! 6

7 2.2 What s in a name? Een studierichting moleculaire genetica, die ook een aantal informatica - modulen heeft, zoals programmeren (Java, Perl) en SQL (in 24 uur), zou niet de naam bioinformatica moeten dragen. Er zijn talloze opleidingen met informatica-modulen (welke niet?); civiele techniek kan niet zonder geografische databases; bouwkunde niet zonder tekenprogramma s waarop materiaaldatabases zijn aangesloten. Zelfs kunstopleidingen zonder computeronderdelen zijn niet meer van deze tijd. Toch hebben ze (terecht) niet het woord informatica aan hun naam toegevoegd en moleculaire genetica zou dat ook niet moeten doen. Alleen als beide vakgebieden op een ingrijpender manier aan elkaar gekoppeld worden, -het biologisch onderzoeksobject met de mechanistische methode van informatica b.v.- lijkt mij zo n naam gerechtvaardigd. Overigens is het gebruik van 24-uurscursussen een riskante onderneming. Door het onbesproken of onderbelicht laten van de achtergronden (wat immers tijd vraagt) is de student veel moeilijker in staat om aan te sluiten bij nieuwe ontwikkelingen. Als je alleen Perl hebt geleerd en niet taalonafhankelijk hebt leren programmeren (b.v. in de O-O-stijl), is de overgang naar een andere taal (Python ligt voor de hand) moeilijk. Je bent niet in staat om de nieuwe zaken in een aanwezig kader te plaatsen. Perl moet daarom geen doel op-zich zijn, maar de programmeervaardigheid moet zich ook tot scripting uitstrekken. Als slechts het gebruik van SQL een doel is, ben je niet in staat om de ODBC-package 1 van Java te gebruiken. Bovendien zie je het nut van SQL niet in vanaf het moment dat je een RAD-tool 2 gaat gebruiken. Daarmee maak je n.l. in minuten 3 databases en webapplicaties. SQL op-zichzelf is van een betrekkelijk belang, maar kennis van de mogelijkheden van relationele databases (dat houdt querying in) en hun verhouding tot andere opslagmogelijkheden, is van fundamenteler belang. 1 Open Database Connectivity; een standaard waarmee bijna alle hogeren programmeertalen communiceren met een relationele database. 2 Rapid Application Development tool 3 Volgens de makers van die pakketten tenminste - Raining Data is de leverancier van Omnis Studio 7

8 Hoofdmenu Omnis Studio 3.3 Database-applicatie bouwdoos voor veel platforms en veel databases. 2.3 Curriculum-modules Het zich eigen maken van een mechanistische denktrant, zoals die in de informatica ontwikkeld wordt, vereist de actieve beheersing van tamelijk abstracte concepten als relatie, object, grammatica, enz. en is zeker niet minder complex dan het verwerven van inzicht in de problematiek van het biologisch onderzoeksterrein. 4 De tijd en studiepunten die daarmee gemoeid zijn, dienen dan ook van dezelfde omvang te zijn. Als de stiefmoederlijke behandeling van de informatica- componenten in het tweede jaar (6 studiepunten (9 EC s) 5 van de 14 in 4 Zeker in aanmerking nemend dat we geen speciale toelatingseisen m.b.t. wiskunde hanteren. 5 Algoritmen en Datastrukturen I 2sp, Algoritmen en Datastrukturen II 2sp, waarvan een deel 8

9 de aanvankelijke opzet) ook in het derde jaar wordt voortgezet, kan informatica onmogelijk boven MBO-niveau uitkomen. Dit ondanks de goede aanzetten in het eerste jaar. We zetten de zaak eens op een rijtje. De informaticaonderdelen kunnen worden ingedeeld in drie hoofdcomponenten: Software engineering. Kernactiviteit, zoals biologie. Het programmeeronderwijs Java, Perl,, Smalltalk, logica, algoritmen, (alignment, dynamisch programmeren) Datastrukturen, parallel programmeren, automaten. Er is een goede basis gelegd in het eerste jaar, maar er is geen voortzetting van programmeerervaring met engineeringsconcepten die niet rechtsstreeks in de taal zijn geprogrammeerd (stacks, queues, tree s b.v. maar ook de biologische datastrukturen van BioJava, BioPerl). Daardoor is de basis nu onvoldoende voor technieken die meer op het domein zijn gericht, zoals: stringalgoritmen (substrings - superstrings), datamining (clustering - classificatie), neurale netwerken, Machine learning, kansmachines, stochastische grammatica s. Het is echt van belang dat er een thema is, waarin deze technieken centraal staan. 6 Databases. Interfacing tussen dataproducerende software enerzijds en de verwerkende systemen anderzijds, zoals rapportgeneratoren en relationele databases, kan op verschillende niveaus, van Perlscriptjes en piping via XML-streams, waarin al wat meer controle op de dataïntegriteit voorkomt, tot volledige protocollen als CORBA en ODBC en speciale querytalen als AQL (Alignment Query Language) StringQL en SequenceQL. Op een aantal uiteenlopende niveaus zou, voor het verkrijgen van overzicht, ervaring moeten worden opgedaan. Computersystemen. Een component met voornamelijk praktische kanten. te gebruiken voor lapwerk. En Databases 2 sp.. Uit het tweede jaar zijn verdwenen: Digitale Techniek en OS 2sp, Netwerken en datacommunicatie 2sp. De ondersteunende wiskunde voor datastrukturen en Databases II, 2sp 6 En is er nog aandacht voor grafisch programmeren (OpenGL, b.v)? Het programmeren met GUI s (zoals vorig jaar - applets) is inmiddels uit het eerste jaar verdwenen. 9

10 Enig benul van wat een computer is, is noodzakelijk. Weten waar een operating systeem voor dient en welk os waar geschikt voor is, is redelijk relevant. Wat blijft er over van de trits: digitale techniek-os - netwerkendatacom - client/server, die ooit goed waren voor 6 sp.? Om maar te zwijgen van wat (bio-) praktijkgerichte Unix-orientatie (commandlineprogramma s, jobstreaming, scheduling, de makefaciliteit, sed, grep, lex, bison, het opzetten/ installeren van een pakket, C++, MPI, PVM). Aanvankelijk hadden we zelfs het inrichten van server en een subnet als leerdoel; met de inrichting van het binlokaal is er rekening mee gehouden. 2.4 Conclusie De overeenkomst tussen DNA en computerprogramma s is meer dan oppervlakkig. Het informatica-framework past precies op de moleculair genetische vraagstelling. Het is ook al 10 jaar een goudmijn voor onderzoek. Kan een opleiding Bioinformatica daar om heen? Het is de vraag of de student of het bedrijfsleven gediend zijn met studieonderdelen van de formule xxx-in-24-uur. Wanneer de student op de arbeidsmarkt komt zijn die al gauw 4 jaar verouderd. Bovendien is het HBO-niveau ook twijfelachtig: een HBO-er moet een keuze kunnen maken uit relevante beschikbare methoden voor een bepaalde taak. Zou er niet meer ruimte moeten zijn voor het verwerven van in- /over-zicht van de informaticamogelijkheden? ooo 10

11 Index algoritmen, 9 alignment, 9 Alignment Query Language, 9 attribuutgrammatica, 5 automaat, 2, 9 stapel-, 4, 5 stochastische eindige, 4 automatentheorie, 1 bioinformatica, 7 classificatie, 9 client/server, 10 clustering, 9 commando s bison, 10 grep, 10 lex, 10 make, 10 sed, 10 contextvrij, 4 contextvrije talen, 3 CORBA, 9 databases, 9 geografische, 7 materiaal, 7 decoratie, 5 digitale techniek, 10 grammatica, 8 GUI, 9 hairpins, 4 HMM, 4 indeterministische, 4 Java, 9 logica, 9 mechanistisch, 6 moleculaire genetica, 6, 7 MPI, 10 netwerken, 10 object, 8 ODBC, 9 onbekendheid, 4 onzekerheid, 4 OpenGL, 9 Perl, 9 probleem, 1 productieregels, 3 programmeren dynamisch, 9 parallel, 9 pseudoknots, 4 PVM, 10 querying, 7 RAD-tool, 7 reguliere expressie, 3 relatie, 8 RNA, 4 scripting, 7 secundaire struktuur, 3 semantiek, 6 SequenceQL, 9 Smalltalk, 9 SQL, 7 stems, 4 stochastische, 4 stochastische grammatica, 9 StringQL, 9 taal, 1 11

12 taalfamilie, 3 toestandsovergang, 2 Unix-orientatie, 10 waarschijnlijkheid, 4 Wijngaarden, 5 XML-stream, 9 12

13 Referenties [AS] [BD] R. Alquézar and A. Sanfeliu. An algebraic framework to represent finite state machines in single-layer recurrent neural networks. Ewan Birney and Richard Durbin. Dynamite: A flexible code generating language for dynamic programming methods used in sequence comparison. pages [BDH + 95] P. Buneman, S. B. Davidson, K. Hart, C. Overton, and L. Wong. A data transformation system for biological data sources. In Proceedings of the Twenty-first International Conference on Very Large Databases, Zurich, Switzerland, VLDB Endowment, Saratoga, Calif. [Bla01] Mathieu Blanchette. Algorithms for phylogenetic footprinting. In RECOMB, pages 49 58, [BLSS01] [BW95] [CH94] [Cla97] [CSR + ] [DHP97] Michael Benedikt, Leonid Libkin, Thomas Schwentick, and Luc Segoufin. A model-theoretic approach to regular string relations. In Logic in Computer Science, pages 431+, M. Brown and C. Wilson. Rna pseudoknot modeling using intersections of stochastic context free grammars with applications to database search, C. Chen and V. Honavar. Neural network automata. In Proceedings of World Congress on Neural Networks, volume 4, pages , J. Claverie. Computational methods for the identification of genes in vertebrate genomic sequences, John A. Crow, Rodney A. Staggs, Shalini Raghavan, James E. Johnson, Kevin A. T. Silverstein, Margaret A. Mayer, Timothy M. Kunau, and Ernest F. Retzel. Design and implementation of a simple relational database for genbank-derived data. S. Davidson, C. Hara, and L. Popa. Querying an objectoriented databases using cpl,

14 [DMS96] [DS94] Jürgen Dassow, Victor Mitrana, and Arto Salomaa. Context-free evolutionary grammars and structural language of nucleic acids. Technical Report TUCS-TR-68, 2, S. Dong and D. Searls. Gene structure prediction by linguistic methods, [EG] S. Embury and P. Gray. The declarative expression of semantic integrity in a database of protein structure. [Elm90] Jeffrey L. Elman. Finding structure in time. Cognitive Science, 14(2): , [GHNU98] G. Grahne, R. Hakli, M. Nykänen, and E. Ukkonen. Aql: An alignment based language for querying string databases, [Gie98] [Gie00] [GJP99] [GKW99] R. Giegerich. Declarative approach to the development of dynamic programming algorithms. Technical Report 98-02, Giegerich. A systematic approach to dynamic programming in bioinformatics. BIOINF: Bioinformatics, 16, Vineet Gupta, Radha Jagadeesan, and Prakash Panangaden. Stochastic processes as concurrent constraint programs. In Symposium on Principles of Programming Languages, pages , R. Giegerich, S. Kurtz, and G. Weiller. An algebraic dynamic programming approach to the analysis of recombinant dna sequences, [GN] Gösta Grahne and Matti Nykänen. Safety, translation and evaluation of alignment calculus. [GNU94] [HSO] [HW] Gösta Grahne, Matti Nykänen, and Esko Ukkonen. Reasoning about strings in databases. pages , Kyle W. Hart, David B. Searls, and G. Christian Overton. Sortez: A relational translator for ncbi s asn.1 database. Kyle Hart and Limsoon Wong. Cpl as a query language for genetic databases. 14

15 [JAC01] Rodney A. Staggs et. al. John A. Crow. Design and implementation of a simple relational database for genbankderived data. Technical report, NCBI, [KBM + 93] Anders Krogh, Michael Brown, I. Saira Mian, Kimmen Sjolander, and David Haussler. HIDDEN MARKOV MODELS IN COMPUTATIONAL BIOLOGY: APPLI- CATIONS TO PROTEIN MODELING. Technical Report UCSC-CRL-93-32, [KH99] [KH94] [Lan] [Lee02] [Nyk97a] [Nyk97b] G.C. Overton Kyle Hart, David B.Searls. Sortez: A relational translator for ncbi s asn.1 database. National Library of Medicine, Bethesda??, 199? Limsoon Wong Kyle Hart. Cpl as a query language for genetic databases. National Library of Medicine, Bethesda, Collection Programming Language. About cpl. Lillian Lee. Fast context-free grammar parsing requires fast boolean matrix multiplication. Journal of the ACM, 49(1):1 15, M. Nykanen. Querying string databases with modal logic, Matti Nykänen. Querying String Databases with Modal Logic. PhD thesis, University of Helsinki, [OAHA94] G. Overton, J. Aaronson, J. Haas, and J. Adams. Qgb : A system for querying sequence database fields and features, [OTG96] C. W. Omlin, K. K. Thornber, and C. L. Giles. Fuzzy finite-state automata can be deterministically encoded into recurrent neural networks. Technical Report UMIACS-TR and CS-TR-3599, College Park, MD 20742, [P.B95] P.Buneman. A data transformation system for biological data sources. In Proceedings of the 21st VLDB Conference,

16 [Pol91] [Pos03] [Rai] [RE] [Run00] Jordan B. Pollack. The induction of dynamical recognizers. Machine Learning, 7: , Kjell Post. Bottom-up evaluation of attribute grammars. Dep of Comp. Eng., University of Mälardalen, Raining Data. Omnis Studio 3.3 Tutorial. Elena Rivas and Sean R. Eddy. The language of RNA: a formal grammar that includes pseudoknots, journal = Bioinformatics, volume = 16, number = 4, year = 2000, pages = , url = citeseer.nj.nec.com/ html. Rune.B.Lyngsø. Computational Biology. PhD thesis, University of Aarhus, [Sak94] Sakakibara. Stochastic contextfree grammars for trna modeling JOSL, [SBH + 94] [Sea95] [Sea99] Yasubumi Sakakibara, Michael Brown, Richard Hughey, I. Saira Mian, Kimmen Sjölander, Rebecca C. Underwood, and David Haussler. Stochastic context-free grammars for trna modeling. Nucleic Acids Research, 22: , David B. Searls. String variable grammar: A logic grammar formalism for the biological language of DNA. Journal of Logic Programming, 24(1 and 2):73 102, D. Searls. Formal language theory and biological macromolecules, [Shu93] J. Shutt. Recursive adaptable grammars, [Slo92] D. Searls and l of. American scientist, [SM95] [Sto94] D. B. Searls and K. P. Murphy. Automata theoretic models of mutation and alignment. In Proc. Third Int. Symp. on Int. Sys. for Molec. Biol., pages , Andreas Stolcke. Bayesian Learning of Probabilistic Language Models. PhD thesis, Berkeley, CA, [Wad88] P. Wadler. Deforestation: Transforming programs to eliminate trees. In ESOP 88. European Symposium on Programming, Nancy, France, 1988 (Lecture Notes 16

17 in Computer Science, vol. 300), pages Berlin: Springer-Verlag, [Won95] L. Wong. The collection programming language reference manual,

Bioinformatica en Systeembiologie (BIS)

Bioinformatica en Systeembiologie (BIS) Waarom een major Bioinformatica en Systeembiologie? Huidige methoden van onderzoek, zoals de DNAchiptechnologie, leveren enorme hoeveelheden gegevens op die met bestaande statistische methoden niet meer

Nadere informatie

DAR Approximate string matching Casus: biological sequence alignment

DAR Approximate string matching Casus: biological sequence alignment DAR Approximate string matching Casus: biological sequence alignment 1 Text search Approx string matching dynamic programming, edit distance example application: Google search Text indexing inverted list

Nadere informatie

Introductie tot de cursus

Introductie tot de cursus Inhoud introductietalen en ontleders Introductie tot de cursus 1 Plaats en functie van de cursus 7 2 Inhoud van de cursus 7 2.1 Voorkennis 7 2.2 Leerdoelen 8 2.3 Opbouw van de cursus 8 3 Leermiddelen en

Nadere informatie

Onderwijs- en examenregeling van de masteropleiding

Onderwijs- en examenregeling van de masteropleiding vrije Universiteit amsterdam Faculteit der Exacte Wetenschappen Onderwijs- en examenregeling van de masteropleiding Computer Science Deel B Preambule In dit document wordt een A en een B gedeelte onderscheiden.

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 Plaats en functie van de cursus 7 2 Inhoud van de cursus 7 2.1 Tekstboek 7 2.2 Voorkennis 8 2.3 Leerdoelen 8 2.4 Opbouw van de cursus 9 3 Leermiddelen en wijze van studeren

Nadere informatie

Automaten & Complexiteit (X )

Automaten & Complexiteit (X ) Automaten & Complexiteit (X 401049) Inleiding Jeroen Keiren j.j.a.keiren@vu.nl VU University Amsterdam Materiaal Peter Linz An Introduction to Formal Languages and Automata (5th edition) Jones and Bartlett

Nadere informatie

Taaltechnologie. Januari/februari Inhoud

Taaltechnologie. Januari/februari Inhoud Taaltechnologie Januari/februari 2002 1 Finite state............................................... 4 1.1 Deterministic finite state automata.................... 4 1.2 Non-deterministic finite state automata................

Nadere informatie

Zelftest Informatica-terminologie

Zelftest Informatica-terminologie Zelftest Informatica-terminologie Document: n0947test.fm 01/07/2015 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTIE Deze test is een zelf-test, waarmee u

Nadere informatie

Algoritmiek. 8 uur college, zelfwerkzaamheid. Doel. Hoe te realiseren

Algoritmiek. 8 uur college, zelfwerkzaamheid. Doel. Hoe te realiseren Algoritmiek Doel Gevoel en inzicht ontwikkelen voor het stapsgewijs, receptmatig oplossen van daartoe geëigende [biologische] probleemstellingen, en dat inzicht gebruiken in het vormgeven van een programmeerbare

Nadere informatie

Studentnummer: Inleiding Taalkunde 2013 Eindtoets Zet op ieder vel je naam en studentnummer!

Studentnummer: Inleiding Taalkunde 2013 Eindtoets Zet op ieder vel je naam en studentnummer! Inleiding Taalkunde 2013 Eindtoets Zet op ieder vel je naam en studentnummer! Dit tentamen bestaat uit 7 vragen. Lees elke vraag goed, en gebruik steeds de witte ruimte op de pagina, of de achterkant van

Nadere informatie

Programma Bachelor- en Masteropleiding Informatica 2009-2010

Programma Bachelor- en Masteropleiding Informatica 2009-2010 Programma Bachelor- en Masteropleiding Informatica 2009-2010 Curriculumcommissie Redactie: Jos Roerdink Laatst herzien: 26 maart 2009 Inhoudsopgave 1 Inleiding 1 2 Bacheloropleiding 1 3 Masteropleiding

Nadere informatie

Inhoud eindtoets. Eindtoets. Introductie 2. Opgaven 3. Terugkoppeling 6

Inhoud eindtoets. Eindtoets. Introductie 2. Opgaven 3. Terugkoppeling 6 Inhoud eindtoets Eindtoets Introductie 2 Opgaven 3 Terugkoppeling 6 1 Formele talen en automaten Eindtoets I N T R O D U C T I E Deze eindtoets is bedoeld als voorbereiding op het tentamen van de cursus

Nadere informatie

Knowledge Engineering @Work

Knowledge Engineering @Work Knowledge Engineering @Work REGITEL-bijeenkomst Aachen, 22/10/2013 1 Een inleidend filmpje over Knowledge Engineering is hier te bekijken (3 min.) 2 Ons Voorstel β-talent binden aan uw bedrijf Inzet op

Nadere informatie

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam.

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam. Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam. Welke hoort in dit rijtje niet thuis? Weg- en waterbouw Huizen- en kantoorbouw Stedenbouw Auto- en vliegtuigbouw

Nadere informatie

Body of Knowledge and Skills (BoKS) van de opleidingen Bio-informatica 2011-2012 / 2012-2013 / 2013-2014

Body of Knowledge and Skills (BoKS) van de opleidingen Bio-informatica 2011-2012 / 2012-2013 / 2013-2014 Body of Knowledge and Skills (BoKS) van de opleidingen Bio-informatica 2011-2012 / 2012-2013 / 2013-2014 versie 1.0, maart 2012, Deze Body of Knowledge and Skills (BoKS) is een weergave van de kenniscomponent

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 1 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen. Theorie

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 1 Plan voor Vandaag Praktische dingen Huiswerk 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen.

Nadere informatie

Curriculum 2015-2016 Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting

Curriculum 2015-2016 Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting Curriculum 2015-2016 Opleidingen Open Universiteit, faculteit Management, Science & Technology, wetenschapsgebied Informatica en informatiekunde, geldig vanaf 1-9-2015 Afkortingen European Credits (studiepunten)

Nadere informatie

Informatica kiezen. Informatica: iets met computers? Informatie over het vak informatica in de Tweede Fase van havo en vwo

Informatica kiezen. Informatica: iets met computers? Informatie over het vak informatica in de Tweede Fase van havo en vwo Informatica kiezen Informatica: iets met computers? Informatie over het vak informatica in de Tweede Fase van havo en vwo Voorlichtingsmateriaal voor leerlingen in havo en vwo Het vak informatica Waarom

Nadere informatie

Capita selecta thema Software Technologie

Capita selecta thema Software Technologie Capita selecta thema Software Technologie Thema sjabloon Naam Thema Verzorgd door domein Docenten Verklarende feedback Software technologie prof. dr. J.T. Jeuring ir. A. Gerdes Periode 1 september 2008

Nadere informatie

Het omzetten van reguliere expressies naar eindige automaten, zie de vakken Fundamentele Informatica 1 en 2.

Het omzetten van reguliere expressies naar eindige automaten, zie de vakken Fundamentele Informatica 1 en 2. Datastructuren 2016 Programmeeropdracht 3: Patroonherkenning Deadlines. Woensdag 23 november 23:59, resp. vrijdag 9 december 23:59. Inleiding. Deze opdracht is gebaseerd op Hoofdstuk 13.1.7 in het boek

Nadere informatie

Opmerkingen en vragen aan Ultieme vraag: Hoe beïnvloedt dit de winstkansen?

Opmerkingen en vragen aan Ultieme vraag: Hoe beïnvloedt dit de winstkansen? 2IP05: Programmeren Blok A http://www.win.tue.nl/ wstomv/edu/2ip05/ 5 spelers, 2 dobbelstenen Probleem met dobbelspel College 1 Per ronde werpt elke speler 1 Kees Hemerik Tom Verhoeff Technische Universiteit

Nadere informatie

Neurale Netwerken en Deep Learning. Tijmen Blankevoort

Neurale Netwerken en Deep Learning. Tijmen Blankevoort Neurale Netwerken en Deep Learning Tijmen Blankevoort De toekomst - Internet of Things De toekomst - sluiertipje Je gezondheid wordt continue gemonitored Je dieet wordt voor je afgestemd -> Stroomversnelling

Nadere informatie

2. Syntaxis en semantiek

2. Syntaxis en semantiek 2. Syntaxis en semantiek In dit hoofdstuk worden de begrippen syntaxis en semantiek behandeld. Verder gaan we in op de fouten die hierin gemaakt kunnen worden en waarom dit in de algoritmiek zo desastreus

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

High Performance Computing

High Performance Computing High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems - Embedded systems - Specifieke software mappen op specfieke hardware. - Hardware synthesis. - Real-time

Nadere informatie

Bioinformatica tentamen D1 voor 2MNW, 3I, 3PHAR op vrijdag 31 maart 2006 van uur in zaal Q105

Bioinformatica tentamen D1 voor 2MNW, 3I, 3PHAR op vrijdag 31 maart 2006 van uur in zaal Q105 Bioinformatica tentamen D1 voor 2MNW, 3I, 3PHAR op vrijdag 31 maart 2006 van 8.45-10.45 uur in zaal Q105 NB: er zijn extra vellen achteraan bijgevoegd die je kunt gebruiken om antwoorden verder uit te

Nadere informatie

Tentamen in2205 Kennissystemen

Tentamen in2205 Kennissystemen TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Tentamen in2205 Kennissystemen 21 Januari 2010, 14:0017:00 Dit tentamen heeft 5 meerkeuzevragen in totaal goed voor 10 punten

Nadere informatie

Curriculum 2014-2015 Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting

Curriculum 2014-2015 Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting Curriculum 2014-2015 Opleidingen Open Universiteit, faculteit Management, Science & Technology, wetenschapsgebied Informatica en informatiekunde, geldig vanaf 1-9-2014 Afkortingen European Credits (studiepunten)

Nadere informatie

De indeling van de sector Natuur

De indeling van de sector Natuur De indeling van de sector Natuur Elke sector is opgedeeld in vijf tot acht subsectoren. Deze sector is ingedeeld in vijf subsectoren: 1 Biologie, scheikunde en medisch 2 Wiskunde, natuurkunde en informatica

Nadere informatie

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica ECTS fiche Module info OPLEIDING STUDIEGEBIED AFDELING MODULE MODULENAAM Programmeren 5 MODULECODE B STUDIEPUNTEN 10 VRIJSTELLING MOGELIJK ja Handelswetenschappen en bedrijfskunde HBO Informatica Evaluatie

Nadere informatie

Digitale Systeem Engineering 2

Digitale Systeem Engineering 2 Digitale Systeem Engineering 2 Week 2 Toestandsmachines (vervolg) Jesse op den Brouw DIGSE2/2016-2017 Herkenningsautomaat Een typische sequentiële machine is een herkenningsautomaat of patroonherkenner.

Nadere informatie

tot oplevering (thuis e maken met ondersteuning via forum) Cursus Moodle, boek, internet

tot oplevering (thuis e maken met ondersteuning via forum) Cursus Moodle, boek, internet ECTS fiche Module info OPLEIDING STUDIEGEBIED AFDELING MODULE MODULENAAM Programmeren 4 MODULECODE B3 STUDIEPUNTEN 10 VRIJSTELLING MOGELIJK Handelswetenschappen en bedrijfskunde HBO Informatica Evaluatie

Nadere informatie

Hoe AI kan ingezet worden voor de analyse van asbesthoudende daken

Hoe AI kan ingezet worden voor de analyse van asbesthoudende daken Hoe AI kan ingezet worden voor de analyse van asbesthoudende daken Earth Observation Data Sciences www.vlaanderen.be/informatievlaanderen www.vito.be Workshop: Asbestinventarisatie en analyse Weerslag

Nadere informatie

Onderwijs- en examenregeling van de bacheloropleiding

Onderwijs- en examenregeling van de bacheloropleiding Faculteit der Exacte Wetenschappen Onderwijs- en examenregeling van de bacheloropleiding Bedrijfswiskunde en Informatica Deel B Preambule In dit document wordt een A en een B gedeelte onderscheiden. In

Nadere informatie

HOGESCHOOL ROTTERDAM / CMI

HOGESCHOOL ROTTERDAM / CMI HOGESCHOOL ROTTERDAM / CMI CMIENSBDH BIG DATA PROCESSING MET HADOOP Aantal studiepunten: 4 Modulebeheerder: R. Bakker INFANL01-3 1 Modulebeschrijving CMIENSBDH Cursusnaam: BIG DATA PROCESSING MET HADOOP

Nadere informatie

SHICO: SHIFTING CONCEPTS OVER TIME

SHICO: SHIFTING CONCEPTS OVER TIME SHICO: SHIFTING CONCEPTS OVER TIME Tracing Concepts in Dutch Newspaper Discourse using Sequential Word Vector Spaces Melvin Wevers Translantis Project Digital Humanities Approaches to Reference Cultures:

Nadere informatie

Zelftest Java concepten

Zelftest Java concepten Zelftest Java concepten Document: n0838test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST JAVA CONCEPTEN Om de voorkennis nodig

Nadere informatie

UBC op Microsoft Windows 64-bits

UBC op Microsoft Windows 64-bits UBC op Microsoft Windows 64-bits Inleiding Op de 64-bits varianten van Windows werkt de UBC (en vele andere pakketten) op een andere manier dan op de oudere 32-bits varianten van deze Windows versies.

Nadere informatie

Probleem met dobbelspel. 2IP05: Programmeren Blok A. 5 spelers,2 dobbelstenen. wstomv/edu/2ip05/ Per ronde werpt elke speler 1

Probleem met dobbelspel. 2IP05: Programmeren Blok A. 5 spelers,2 dobbelstenen.  wstomv/edu/2ip05/ Per ronde werpt elke speler 1 2IP05: Programmeren Blok A http://www.win.tue.nl/ wstomv/edu/2ip05/ College 1 5 spelers,2 dobbelstenen Probleem met dobbelspel Per ronde werpt elke speler 1 Tom Verhoeff Technische Universiteit Eindhoven

Nadere informatie

Nieuw Curriculum Bachelor Technische Informatica 2013

Nieuw Curriculum Bachelor Technische Informatica 2013 Nieuw Curriculum Bachelor Technische Informatica 2013 Emile Hendriks Opleidingsdirecteur TI/CS Waarom? TU-breed project Studiesucces omdat Rendement te laag Studieduur te lang In 2011: slechts 22% haalde

Nadere informatie

Master Wiskundige Ingenieurstechnieken

Master Wiskundige Ingenieurstechnieken Master Wiskundige Ingenieurstechnieken Meer informatie https://wms.cs.kuleuven.be/cs/studeren/masterwiskundige-ingenieurstechnieken Of via de facultaire webpagina s of webpagina van het departement computerwetenschappen

Nadere informatie

Digitale Systeem Engineering 2

Digitale Systeem Engineering 2 Digitale Systeem Engineering 2 Week 2 Toestandsmachines (vervolg) Jesse op den Brouw DIGSE2/214-215 Herkenningsautomaat Een typische sequentiële machine is een herkenningsautomaat of patroonherkenner.

Nadere informatie

3HUIRUPDQFH0HDVXUHPHQW RI'\QDPLFDOO\&RPSLOHG -DYD([HFXWLRQV

3HUIRUPDQFH0HDVXUHPHQW RI'\QDPLFDOO\&RPSLOHG -DYD([HFXWLRQV 3HUIRUPDQFH0HDVXUHPHQW RI'\QDPLFDOO\&RPSLOHG -DYD([HFXWLRQV Tia Newhall and Barton P. Miller {newhall *, bart}@cs.wisc.edu Computer Sciences University of Wisconsin 1210 W. Dayton St. Madison, WI 53706

Nadere informatie

Relatie Algebra in een Intelligent Tutoring Systeem

Relatie Algebra in een Intelligent Tutoring Systeem Relatie Algebra in een Intelligent Tutoring Systeem 1 April 2017 Esther Hageraats Student master BPMIT Faculteit Management, Science & Technology Examencommissie: L. Rutledge en S. Joosten Studie en loopbaan

Nadere informatie

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Wat is een database? Een verzameling van georganiseerde data Een database bestaat uit applicaties, SQL en het DBMS Watis eendbms? EenDBMS

Nadere informatie

Minder Big data Meer AI.

Minder Big data Meer AI. Minder Big data Meer AI. Minder Big data, meer AI. Marijn uilenbroek BI & Analytics consultant Utrecht, 1 november 2016 BI&A symposium 2016 Minder Big data meer AI 2 BI&A symposium 2016 Minder Big data

Nadere informatie

Plan van aanpak. 1 Inleiding. 2 Onderzoek. 3 Taken. Kwaliteitswaarborging van webapplicaties. Rachid Ben Moussa

Plan van aanpak. 1 Inleiding. 2 Onderzoek. 3 Taken. Kwaliteitswaarborging van webapplicaties. Rachid Ben Moussa Plan van aanpak Rachid Ben Moussa Kwaliteitswaarborging van webapplicaties 1 Inleiding De meeste zwakheden in software worden veroorzaakt door een klein aantal programmeerfouten. Door het identificeren

Nadere informatie

Introductie in flowcharts

Introductie in flowcharts Introductie in flowcharts Flow Charts Een flow chart kan gebruikt worden om: Processen definieren en analyseren. Een beeld vormen van een proces voor analyse, discussie of communicatie. Het definieren,

Nadere informatie

Hertentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) July 2 nd 2015, 9:00-12:00, Educatorium Alfa

Hertentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) July 2 nd 2015, 9:00-12:00, Educatorium Alfa Hertentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) July 2 nd 2015, 9:00-12:00, Educatorium Alfa Cursuscode: B-B1SYSB09 Enkele regels van orde (niet uitputtend): - De eerste

Nadere informatie

Reguliere Expressies

Reguliere Expressies Reguliere Expressies Een reguliere expressie (regexp, regex, regxp) is een string (een woord) die, volgens bepaalde syntaxregels, een verzameling strings (een taal) beschrijft Reguliere expressies worden

Nadere informatie

Program overview. Year 2013/2014 Electrical Engineering, Mathematics and Computer Science

Program overview. Year 2013/2014 Electrical Engineering, Mathematics and Computer Science Program overview 5-Jun-017 0:17 Year 013/014 Organization Electrical Engineering, Mathematics and Computer Science Education Minors EWI Code Omschrijving ECTS TI-Mi-110-13 TI-Mi-110-13 Software Ontwerpen

Nadere informatie

Het computationeel denken van een informaticus Maarten van Steen Center for Telematics and Information Technology (CTIT)

Het computationeel denken van een informaticus Maarten van Steen Center for Telematics and Information Technology (CTIT) Het computationeel denken van een informaticus Maarten van Steen Center for Telematics and Information Technology (CTIT) 2-2-2015 1 Computationeel denken vanuit Informatica Jeannette Wing President s Professor

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Opdracht 1 Topics on Parsing and Formal Languages - fall 2010

Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 8 december 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]

Nadere informatie

IN2505 II Berekenbaarheidstheorie Tentamen Maandag 2 juli 2007, uur

IN2505 II Berekenbaarheidstheorie Tentamen Maandag 2 juli 2007, uur TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Mekelweg 4 2628 CD Delft IN2505 II Berekenbaarheidstheorie Tentamen Maandag 2 juli 2007, 14.00-17.00 uur BELANGRIJK Beschikbare

Nadere informatie

Dat zoeken we op! NIOC 2011. Paul.Jansen@tiobe.com

Dat zoeken we op! NIOC 2011. Paul.Jansen@tiobe.com Dat zoeken we op! NIOC 2011 Paul.Jansen@tiobe.com Wat komen gaat... Wie ben ik? Wat doe ik? Wat is het probleem? Basisschool - Geschiedenis, Nederlands en Aardrijkskunde Middelbare school - Informatica

Nadere informatie

Tentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) April 9 th 2015, 17:00-20:00, Educatorium Gamma

Tentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) April 9 th 2015, 17:00-20:00, Educatorium Gamma Tentamen Bioinformatic Data Analysis (1/3 deel van de cursus Systems Biology) April 9 th 2015, 17:00-20:00, Educatorium Gamma Cursuscode: B B1SYSB09 Enkele regels van orde (niet uitputtend): - De eerste

Nadere informatie

Dynamisch Programmeren. Het Rugzakprobleem

Dynamisch Programmeren. Het Rugzakprobleem INLEIDING Dynamisch Programmeren 1 Dynamisch Programmeren Section Page Inleiding................................................. 1 1 Oplossing................................................ 2 2 Subprobleem.............................................

Nadere informatie

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma 3 Vereiste kennis Dit boek richt zich op het leren programmeren door het oefenen met programmeercodes. Veel theorie komt in het begin niet aan de orde. Dat is een grote uitdaging want het is niet makkelijk

Nadere informatie

Wie? Advanced Databases blok 4 2011. DB vs IR. Wat? Canonical application (DB) Canonical application (DB)

Wie? Advanced Databases blok 4 2011. DB vs IR. Wat? Canonical application (DB) Canonical application (DB) Advanced Databases blok 4 2011 Wie? Hans Philippi: docent/practicumleider René Kersten: assistent bij practicum Hans Philippi 1 2 Wat? DB vs IR 2005 XML (Siebes) 2007 Google ranking (Siebes) 2009/2011

Nadere informatie

Algoritmen abstract bezien

Algoritmen abstract bezien Algoritmen abstract bezien Jaap van Oosten Department Wiskunde, Universiteit Utrecht Gastcollege bij Programmeren in de Wiskunde, 6 april 2017 Een algoritme is een rekenvoorschrift dat op elk moment van

Nadere informatie

Wat is JAVA? Peter van Rijn

Wat is JAVA? Peter van Rijn Wat is JAVA? Peter van Rijn Wat is JAVA? een concept een platform een ontwikkelomgeving een mentaliteit 2 Het ontstaan van JAVA Patrick Naughton ergernis over de verschillende programma bibliotheken schrijft

Nadere informatie

Opdracht 1 Topics on Parsing and Formal Languages - fall 2010

Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 13 november 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]

Nadere informatie

High Performance Computing

High Performance Computing High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems High-Performance Computing Optimizing compilers (generieke codes, maar ook specifieke rekenkernels). Parallel

Nadere informatie

Modulewijzer InfPbs00DT

Modulewijzer InfPbs00DT Modulewijzer InfPbs00DT W. Oele 0 juli 008 Inhoudsopgave Inleiding 3 Waarom wiskunde? 3. Efficiëntie van computerprogramma s............... 3. 3D-engines en vectoranalyse................... 3.3 Bewijsvoering

Nadere informatie

Uitgebreid voorstel Masterproef Informatica. Titel van het project : Ontwikkeling van remote controlled Alert & Task Agent

Uitgebreid voorstel Masterproef Informatica. Titel van het project : Ontwikkeling van remote controlled Alert & Task Agent HoGent Uitgebreid voorstel Masterproef Informatica Titel van het project : Ontwikkeling van remote controlled Alert & Task Agent Datum: Naam student: Glenn Jacob Interne promotor: Wim Van den Breen In

Nadere informatie

Thinking of development

Thinking of development Thinking of development Databases Arjan Scherpenisse HKU / Miraclethings Agenda voor vandaag Opdracht tussenstand State diagram / Observer pattern Bret Victor Databases 2/42 Opdracht tussenstand Slides

Nadere informatie

Modulewijzer tirprog02/infprg01, programmeren in Java 2

Modulewijzer tirprog02/infprg01, programmeren in Java 2 Modulewijzer tirprog02/infprg01, programmeren in Java 2 W. Oele 17 november 2009 1 Inhoudsopgave 1 Inleiding 3 2 Studiehouding 3 3 Voorkennis 4 4 Inhoud van deze module 5 5 Leermiddelen 5 6 Theorie en

Nadere informatie

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c Een Minimaal Formalisme om te Programmeren We hebben gezien dat Turing machines beschouwd kunnen worden als universele computers. D.w.z. dat iedere berekening met natuurlijke getallen die met een computer

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Voorbereiding onderwijsvisitatie: Bachelor Opleidingsonderdelen J. Broeckhove

Voorbereiding onderwijsvisitatie: Bachelor Opleidingsonderdelen J. Broeckhove Voorbereiding onderwijsvisitatie: Bachelor Opleidingsonderdelen J. Broeckhove Gevorderd Programmeren Verplicht onderdeel: BA2, 1 e semester, 6 studiepunten, 30+30 contacturen Vakbeschrijving Werkvorm Evaluatievorm

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

Parse and Corpus-based Machine Translation. STEVIN Programmadag 2010 1

Parse and Corpus-based Machine Translation. STEVIN Programmadag 2010 1 PaCo-MT Parse and Corpus-based Machine Translation STEVIN Programmadag 2010 1 Project: PaCo-MT 2008-2011 Gesponsord door NL EN NL FR Consortium partners CCL KULeuven Alfa-Informatics RUGroningen OneLiner

Nadere informatie

Installatie SQL: Server 2008R2

Installatie SQL: Server 2008R2 Installatie SQL: Server 2008R2 Download de SQL Server 2008.exe van onze site: www.2work.nl Ga naar het tabblad: Downloads en meld aan met: klant2work en als wachtwoord: xs4customer Let op! Indien u een

Nadere informatie

Software Mobiliteit. UAMS - 6 maart 2001. Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.

Software Mobiliteit. UAMS - 6 maart 2001. Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac. Software Mobiliteit Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.be/~tjdhondt p. 1 Overzicht Stelling Objecttechnologie Distributie Mobiliteit Evolutie Besluit p.

Nadere informatie

Installatie Solid Edge ST5

Installatie Solid Edge ST5 Installatie Solid Edge ST5! NEEM DIT DOCUMENT DOOR VOORDAT U UW HUIDIGE SOLID EDGE VERSIE GAAT VERWIJDEREN! LET OP!! SOLID EDGE ST5 KUNT U NIET MEER OP WINDOWS XP INSTALLEREN LET OP!! DE ST5 LICENSE MANAGER

Nadere informatie

Cover Page. The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation.

Cover Page. The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation. Cover Page The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation. Author: Witsenburg, Tijn Title: Hybrid similarities : a method to insert relational information

Nadere informatie

Oriëntatie Kunstmatige Intelligentie. Inleidend College Niels Taatgen

Oriëntatie Kunstmatige Intelligentie. Inleidend College Niels Taatgen Oriëntatie Kunstmatige Intelligentie Inleidend College Niels Taatgen Inhoud vandaag! Wat is kunstmatige intelligentie?! Vakgebieden die bijdragen aan de AI! Kunnen computers denken?! Hoe denken mensen

Nadere informatie

B.Sc. Informatica Module 4: Data & Informatie

B.Sc. Informatica Module 4: Data & Informatie B.Sc. Informatica Module 4: Data & Informatie Djoerd Hiemstra, Klaas Sikkel, Luís Ferreira Pires, Maurice van Keulen, en Jan Kamphuis 1 Inleiding Studenten hebben in modules 1 en 2 geleerd om moeilijke

Nadere informatie

slides2.pdf 2 nov 2001 1

slides2.pdf 2 nov 2001 1 Opbouw Inleiding Algemeen 2 Wetenschap Informatica Studeren Wetenschap en Techniek Informatica als wetenschap Informatica studie Wetenschappelijke aanpak Organisatie Universiteit Instituut Piet van Oostrum

Nadere informatie

Zelftest Inleiding Programmeren

Zelftest Inleiding Programmeren Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze

Nadere informatie

Sectie TCS (Theory of Computer Science)

Sectie TCS (Theory of Computer Science) Sectie TCS (Theory of Computer Science) Bezoek studenten tbv Practicum Academische Vaardigheden Alban Ponse Sectie Theory of Computer Science Instituut voor Informatica, FNWI Universiteit van Amsterdam

Nadere informatie

Modulewijzer Tirdat01

Modulewijzer Tirdat01 Modulewijzer Tirdat01 W. Oele 25 augustus 2008 1 Inhoudsopgave 1 Inleiding en leerdoelen 3 2 Voorkennis 3 2.1 tirprg01 en tirprg02........................ 3 2.2 tirprg03.............................. 4

Nadere informatie

AI Kaleidoscoop. College 9: Natuurlijke taal. Natuurlijke taal: het probleem. Fases in de analyse van natuurlijke taal.

AI Kaleidoscoop. College 9: Natuurlijke taal. Natuurlijke taal: het probleem. Fases in de analyse van natuurlijke taal. AI Kaleidoscoop College 9: atuurlijke taal Het Probleem Grammatica s Transitie netwerken Leeswijzer: Hoofdstuk 14.0-14.3 AI9 1 atuurlijke taal: het probleem Communiceren met computers als met mensen, middels

Nadere informatie

De plug-in is heel eenvoudig te installeren met een setup-programma. Waarna je een aantal menu opties in het tools menu er bij krijgt.

De plug-in is heel eenvoudig te installeren met een setup-programma. Waarna je een aantal menu opties in het tools menu er bij krijgt. Plsqldoc Genereer je documentatie Beeklaan 444 2562 BK Den Haag www.darwin-it.nl info@darwin-it.nl KvK 27283780 ING 65.35.40.663 Technical Architect Net als (vrijwel) elke ontwikkelaar vind ik het documenteren

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 De functie van de cursus 7 2 De inhoud van de cursus 7 2.1 Voorkennis 7 2.2 Leerdoelen van de cursus 8 2.3 Opbouw van de cursus 8 3 Leermiddelen en wijze van studeren

Nadere informatie

Datastructuren en algoritmen

Datastructuren en algoritmen Datastructuren en algoritmen Doelstelling Datastructures + algorithms = programs Boek van Niklaus Wirth: bedenker Pascal en Modula Datastructuur: structuur om informatie op te slaan Algoritme: voorschrift

Nadere informatie

Halma Bot: Monte Carlo versus Alpha-Beta

Halma Bot: Monte Carlo versus Alpha-Beta : Monte Carlo versus Alpha-Beta Inleiding Marijn Biekart-11032278, Artemis Çapari-11336390, Jesper van Duuren-10780793, Jochem Hölscher-11007729 en Reitze Jansen-11045442 Zoeken, Sturen en Bewegen 30 juni

Nadere informatie

Algoritmiek. 12 uur college, werkgroep, zelfwerkzaamheid. Doel. Eindniveau. Hoe te realiseren

Algoritmiek. 12 uur college, werkgroep, zelfwerkzaamheid. Doel. Eindniveau. Hoe te realiseren Algoritmiek Doel Gevoel en inzicht ontwikkelen voor het stapsgewijs, receptmatig oplossen van daartoe geëigende [biologische] probleem-stellingen, en dat inzicht gebruiken in het vormgeven van een programmeerbare

Nadere informatie

MODULEBESCHRIJVING Databases DBS1

MODULEBESCHRIJVING Databases DBS1 MODULEBESCHRIJVING Databases DBS1 Samensteller(s): Richard van den Ham Datum: 30-08-2012 Versie: 1.0 Module: Databases Identificatie Progresscode: DBS1 Semester: 1 Omvang: 140 SBUs/ 5 ECTS-punten Lestijd:

Nadere informatie

Abstraheren van modellen

Abstraheren van modellen Abstraheren van modellen Geert Delanote 7 maart 2005 Geert.Delanote@cs.kuleuven.ac.be Software Development Methodology 1 Inhoudstafel Motivatie Denkpistes Software Development Methodology 2 Motivatie Verslag

Nadere informatie

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET Visual Basic.NET M. den Besten 0.3 VB. NET Inhoud Voorwoord Deel 1 Visual Basic.NET 1.1 Inleiding...13 1.2 De programmeertaal Visual Basic.NET...14 1.3 Microsoft Visual Basic 2010 Express Edition...15

Nadere informatie

Bijlage 1 Indeling programma s volgens onderdeel 7 van de TU/e Richtlijn Bachelor College

Bijlage 1 Indeling programma s volgens onderdeel 7 van de TU/e Richtlijn Bachelor College Bijlage 1 Indeling programma s volgens onderdeel 7 van de TU/e Richtlijn Bachelor College Automotive Automotive trends I Dynamics Automobility Systems Computation for AU Elective Signals Elective Basic

Nadere informatie

Equivalentie tussen: vormingen georganiseerd door het ministerie van Defensie en opleidingen van het volwassenenonderwijs

Equivalentie tussen: vormingen georganiseerd door het ministerie van Defensie en opleidingen van het volwassenenonderwijs - 1 - Equivalentie tussen: vormingen georganiseerd door het ministerie van Defensie en opleidingen van het volwassenenonderwijs 1. Vorming officier Informaticus niveau Korps Technische fiche van de vorming

Nadere informatie

DNAQL Simulator. Presentatie Bachelorproef. Tom Desair. Universiteit Hasselt. Academiejaar 2010-2011

DNAQL Simulator. Presentatie Bachelorproef. Tom Desair. Universiteit Hasselt. Academiejaar 2010-2011 DNAQL Simulator Presentatie Bachelorproef Tom Desair Universiteit Hasselt Academiejaar 2010-2011 Tom Desair (Universiteit Hasselt) DNAQL Simulator Academiejaar 2010-2011 1 / 13 Inhoud Inleiding Inhoud

Nadere informatie

De combinatie van verrijkingen, machine learning en crowd sourcing

De combinatie van verrijkingen, machine learning en crowd sourcing Verbetering vindbaarheid en bruikbaarheid van de digitale content van de KB De combinatie van verrijkingen, machine learning en crowd sourcing Theo van Veen, 31-1-2017 Theo van Veen, 31-1-2017 Verrijken:

Nadere informatie

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Deze vakinhoudelijke uitwerking is ontwikkeld door het Redactieteam van de Schooleamenbank vmbo voor dit

Nadere informatie

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22618 holds various files of this Leiden University dissertation Author: Schans, Martin van der Title: Blowup in the complex Ginzburg-Landau equation Issue

Nadere informatie

Applicatie-Architecturen

Applicatie-Architecturen Applicatie-Architecturen joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost/dn/ Programmeren in het echt! Programming in the large Deel van groter geheel! In teamverband! Open opdracht!! Inhoud:

Nadere informatie