Uitwerking Onderdelen Major-Minor Curriculum

Maat: px
Weergave met pagina beginnen:

Download "Uitwerking Onderdelen Major-Minor Curriculum"

Transcriptie

1 Uitwerking Onderdelen Major-Minor Curriculum Curriculumcommissie Informatica Laatst gewijzigd: 9 november 2005 In dit document staan de voorlopige uitwerkingen van het nieuwe curriculum. Hierbij is het RUG/FWNuitgangspunt gevolgd dat alle cursussen een omvang van 5 EC krijgen. Op veel punten moet nog verder werk gedaan worden. Op dit moment ontbreken nog: 1. Oriëntatie Intell. Systemen (KI) 2. Wet. basisvaard. (KI+Informatica) 3. Functioneel programmeren (weekschema aanwezig) 4. Automaten (weekschema aanwezig) 5. Statistiek 6. Operating Systems 7. IT-Beroepspraktijk Over de in dit stuk opgenomen onderdelen heeft de curriculumcommissie inmiddels vergaderd. Op diverse inhoudelijke discussiepunten zijn beslissingen genomen, en aanbevelingen voor verbeteringen en nadere uitwerkingen gedaan. Om deze reden zijn de notulen van de curriculumcommissie van 23 juni aan het begin van het document opgenomen. Ook opgenomen zijn de samenstelling van de teams en de meest recente versie van het concept-rooster. Opmerkingen zijn uiteraard altijd welkom (naar Jan Jongejan of Jos Roerdink).

2 Curriculumcommissie Informatica, June 24, Verslag Curriculumcommissie Informatica, 23 juni 2005 Aanwezig: Michael Biehl, Wim Hesselink (verslag), Marten Pijl, Gerard Renardel, Jos Roerdink (voorzitter), Rein Smedinga. Afwezig: Jan Jongejan. Algemene opmerkingen Bespreking van de uitwerkingen van Curriculumonderdelen zoals door de gevormde teams ingestuurd zijn. We zijn nog in afwachting van de uitwerkingen door de teams Bakker-Terlouw en Achterop-Jonker-Petkov. We zijn in het algemeen tevreden over het werk dat geleverd is. In een later stadium zullen de vakken ingedeeld moeten worden overeenkomstig de drie standaardniveau s. Er wordt de aandacht op gevestigd, dat de conceptverroostering van het eerste jaar van de major gewijzigd is door een permutatie binnen de periodes 2, 3 en 4. Het is geworden: periode 2: WetBaVa, OrInf, Mod1; periode 3: OOA (=OO), DiscStruct, PCor; periode 4: OOB (=OOO), A&N, Mod2. Naar aanleiding van de bijdragen van en over Software Engineering wordt vastgesteld, dat besloten is dat het Afstudeerproject (AP) per specialistische minor verschillend zal zijn. Dit impliceert, dat Project Software Ontwikkeling (PSO) van het huidige AP losgekoppeld wordt en dat het algemene leerdoel leren projectmatig werken zoveel mogelijk in PSO gerealiseerd zal moeten worden. Het Concept Eindtermen (2 juni) De eindtermen verwijzen naar doelstellingen. Deze moeten hier worden opgenomen, zie het Workshop document van Jan. 2005, sectie 2.2. We vinden voorts, dat de zes geformuleerde CCV s, hoewel niet dekkend, toch richtinggevend zijn voor het curriculumontwerp. Ze moeten dus niet verloren gaan maar een goede plaats krijgen in het uiteindelijk curriculumontwerpdocument, zeg ergens tussen de doelstellingen en de eindtermen. We voegen toe een eindterm als (2b): Het doelmatig gebruiken van een methode van software ontwikkeling (bv. Unified Process). Explicieter dan thans dient in het onderwijs nagestreefd te worden: het aankweken van een engineering attitude (het beschouwen van zaken als performance, reliability en andere quality aspects) en vaardigheden op het gebied van ontwerpen (opnemen in de eindtermen?). Bespreking van de voorgestelde vak-uitwerkingen Imperatief Programmeren. Met instemming overgenomen. Logica, Discrete Structuren en Algoritmen & Datastructuren. Renardel zegt toe met een voorstel te komen voor formuleringen van de doelstellingen, die begrijpelijk en overtuigend zijn voor mensen die de cursussen (nog) niet gelopen hebben. Verder akkoord.

3 Curriculumcommissie Informatica, June 24, Modelleren 1 (Wiskunde A) en 2 (Wiskunde B). Er is hier eerst overleg met KI nodig, over de namen, de inhoud en de projectmatige opzet. Vervolgens met Wiskunde over de uitvoering. Zichtbare betrokkenheid van één docent vanuit Informatica en/of KI zal nodig zijn voor de projectorganisatie en ter motivatie en ondersteuning van de studenten. Een studiewijzer is inderdaad onontbeerlijk om de studenten inzicht in de opbouw van de cursus te geven. Het doet wat vreemd aan, dat de eindtermen van Modelleren 1 en 2 gelijk zijn. Objectgeoriënteerd Programmeren A. Het voorstel (in punt 9) om de namen van OOA en OOB te wijzigen in Objectgeoriënteerd Programmeren en Objectgeoriënteerd Ontwerpen wordt overgenomen. Programmacorrectheid. Overgenomen. Objectgeoriënteerd Ontwerpen (vroeger OOB). Afkortingen zoals MVC en IDE zullen ingevoerd of vermeden worden. Verder akkoord. Software Analyse en Ontwerp (SAO). Overgenomen. De wijze van toetsing moet iets explicieter gemaakt worden. Aan het eind van de cursus kan projectmatig werken worden geïntroduceerd ter voorbereiding van PSO. Invulling van PSO volgt nog. Databases. Verzoek een begrijpelijke subsectie Doelstellingen toe te voegen. Voorkennis: Objectgeoriënteerd Programmeren en Objectgeoriënteerd Ontwerpen. Verder akkoord. Signalen en Systemen. Voorstel akkoord. Het is niet nodig naar een alternatief voor het boek uit te kijken. Het lijkt nuttig het modelleeraspect wat te versterken, bv. via nadere uitwerking van het practicum (vgl Modelleren 1 en 2). De minoren De specialistische minoren hebben een omvang van 30 ec en een structuur van drie verplichte vakken, één keuzevak en een Afstudeerproject (AP) van 10 ec. Het keuzevak dient te passen in de betreffende richting. Het kan ook ingevuld worden als een project van 5 ec (of als een uitbreiding van het AP tot 15 ec). De keuze van een specialistische minor is een belangrijke voorsortering voor de masterphase, maar wordt niet dwingend opgelegd. De namen van de minoren zijn in beginsel gelijk aan de namen van de aansluitende mastervarianten. Dit roept de vraag op naar het ontbreken van het woord Systems in de minor Software Engineering. Voorstel Minor Software Engineering. Opname van het vak Software Engineering spreekt hier van zelf. Het voorstel om het vak Translators op te nemen in de major vindt geen meerderheid. Dit vak blijft derhalve in de minor SE. Als derde verplichte minorvak wordt voorgesteld een vak Software Quality and Process Improvement (een combinatie van Software Quality and Management en Software Process Improvement ). De Curriculumcommissie is ermee

4 Curriculumcommissie Informatica, June 24, akkoord, dat het vak Ontwerp van Intelligente Systemen niet verplicht wordt gesteld. Voorstel Minor Computational Science and Visualization. Akkoord. De vakken dienen nog uitgewerkt te worden. Voorstel Minor Intelligent Systems. Akkoord. Het vak Ontwerp van Intelligente Systemen wordt hier niet voorgesteld en vervalt dus vooralsnog. Het stuk over de vrije minor(en) stelt vragen waarop we nog geen antwoord weten. Er zijn incidenteel studenten die een informatica (service) vak bij ons willen volgen, maar we voorzien dat vrijwel geen enkele student zal kiezen voor een vrije minor informatica van 30 ec. Er zullen vast ook studenten zijn, die in hun major wat informaticavakken moeten doen (bv naast wiskunde of natuurkunde) en die daarnaast nog wat informatica willen doen, maar niet 30 ec erbij. Het zou ons veel beter uitkomen als elke bachelorstudent naast zijn major van 120 ec en zijn specialistische minor van 30 ec een profileringsruimte van 30 ec zou hebben die hij/zij cumulatief kan invullen. Het is de vraag of dit toegestaan zal zijn of dat het uitdrukkelijk verboden, cq onmogelijk gemaakt wordt. Hesselink legt dit voor aan Bart van der Laar. Actiepunten en slotopmerkingen We verwachten de uitwerkingen van OrInf, A&N, FP, Automaten, OS, ITB, APPHPS en Net Computing zo spoedig mogelijk. Renardel komt nog met mooiere doelstellingen voor Logica, Discrete Structuren en Algoritmen & Datastructuren. Jongejan wordt gevraagd doelstellingen voor Databases te formuleren. Smedinga c.s. zullen de SE-vakken nader uitwerken. Statistiek moet nog gemaakt worden. Uitwerkingen van OrInt en WetBaVa zullen van KI moeten komen of in samenspraak met hen moeten worden opgesteld. Tevens moet er met KI overlegd worden over Modelleren 1 en 2. Hesselink deelt mee, dat de zelfstudie voor de accreditatie van 2007 per 1 maart 2006 bij de QANU zal dienen te zijn. We zullen hier dus in het najaar hard aan moeten trekken. Er worden thans namen gevraagd voor potentiële leden van een visitatiecommissie.

5 Uitwerking Major-minor curriculum Wim Hesselink, Jos Roerdink, 9 mei 2005 Hierbij vragen wij jullie om de curriculumonderdelen in een elftal teams (met overlap) nader uit te werken wat betreft eindtermen, inhoud, onderwijsvormen, onderwijsmateriaal, naamgeving, onderwijsorganisatie. We verzoeken de teams vóór 10 juni met een afgerond voorstel te komen. De samenstelling van de teams kan uiteraard in onderling overleg aangepast worden. Zie ook het Werkdocument, versie 2, Voorstellen s.v.p. per naar Jos Roerdink, roe@cs.rug.nl. Team Onderdeel Aandachtspunten Gerard Renardel Discr. Structuren Logica Elementen uit Dig. Techniek verwerken. Gemeensch. vak 1e semester. Rein Smedinga OO-B Naar 5 EC. Afstemmen met OO-A. CV elementen opnemen. Dieter Hammer SAO Naar 5 EC. PSO Naar 5 EC. CV elementen opnemen. Afstudeerproject in verdiepende minor, dus minder aanbod van studenten die AP1/2 in richting SE doen. Wim Hesselink Imp. Prog. CV elementen opnemen. Harm Bakker OO-A Rudy Moddemeijer Prog. Correctheid Valt in propedeuse. Alg & Datastructuren Behandeling FFT wenselijk Harm Bakker Orient. Informatica Gemeensch. vak 1e semester Jan Terlouw Func. Progr. Automaten Nieuw vak 5 EC. Vervangt Talen en Automaten. ITB Naar 5 EC. Extra elementen CV ter grootte 2 EC opnemen. Sietse Achterop Arch. & Netwerken Aansluiting tussen en eventuele overlap Jan Eppo Jonker Net Computing van deze vakken. Nicolai Petkov Operating Systems Elementen uit Concurrency APPHPS verwerken. Jan Jongejan Databases Naar 5 EC. Michael Wilkinson Modelleren: Overleg met Wiskunde over verroostering Jos Roerdink - Wisk. A+B van Wisk. A+B, Statistiek. Gert Vegter - Statistiek Rudy Moddemeijer - Sign.& Systemen p.m. Rein Smedinga, Dieter Hammer, Jan Jongejan, Rudy Moddemeijer Gert Vegter, Jos Roerdink, Henk Bekker Nicolai Petkov, Michael Biehl, Michael Wilkinson, Gerard Renardel, Jan Terlouw Harm Bakker, Sietse Achterop, Rein Smedinga, Jan Jongejan Wet. Basisvaardigheden Minor Software Engineering Minor Computational Science & Visualisatie Minor Intelligente Systemen Gemeenschappelijke vakken, b.v. beeldbewerking. Gemeenschappelijke vakken, b.v. beeldbewerking. Vrije minor Uit bestaand service-onderwijs?

6 4.3 Minoren We gaan uit van een verdiepende minor voor elk van de bestaande mastervarianten. Tabel 9: Drie verdiepende minoren. Software Engineering Computational Science & Visualisatie Intelligente Systemen Software Engineering Computer Graphics Kennisrepresentatie & Redeneren Translators Computational Geometry Neurale Netwerken Ontw. Intell. Syst. Beeldbewerking Beeldbewerking keuze keuze keuze AP1 AP1 AP1 AP2 AP2 AP2 De genoemde invulling is een eerste aanzet. Nieuw zijn de vakken Translators en Beeldbewerking (dit vak is gemeenschappelijk in minor 2 en 3). Het vak Neurale Netwerken in minor 3 behoeft mogelijk aanpassing. De haalbaarheid van de minor Software Engineering hangt af van het tijdig opvullen van vacatures binnen de basiseenheid Software Engineering. Ook over een vrije minor voor studenten buiten Informatica kan nagedacht worden. 4.4 Verroostering major Hieronder een concept verroostering. Hierbij hebben we tevens gekeken naar de voorlopige semesterindeling die tijdens Workshop 3 is vastgesteld, en naar de bijbehorende CCV s. Tabel 10: Concept verroostering van de major (120 EC). Semester 1 Semester 2 Semester 3 Semester 4 Semester 5 Orient Intell Sys OO-A Algor & Datastr Softw Arch&Ontw Operating systems Imper Progr Discr Structuren Func Progr Signalen&Systemen IT-Beroepspraktijk Logica Progr Correctheid minor minor minor Wet Basisvaard. OO-B Automaten Statistiek Paral. Computing Orient Informatica Arch & Netw Databases Proj Softw Ontw Net Computing Modell 1: Wisk A Modell 2: Wisk B minor minor minor Opmerkingen: APPHPS is omgedoopt tot Parallel Computing. Semester 6 is niet opgenomen, dit wordt geheel besteed aan verdiepende minor (incl. afstudeerproject). Wiskunde A, Wiskunde B, Statistiek en Signalen & Systemen maken deel uit van het voorgestelde project Modelleren, zie Appendix A, uitwerking CCV4. We concluderen dat een aantal CCV s hier wel degelijk in aan te wijzen is, maar er zijn ook lacunes, zoals we al eerder hadden geconstateerd. Het gebruiken van thema s per blok kan een punt van discussie zijn. 11

7 1 Inleiding 1.1 Omschrijving Imperatief Programmeren (Harm Bakker, Wim Hesselink, Rudy Moddemeijer) Het vak Imperatief Programmeren vormt samen met de vakken Objectgeoriënteerd Programmeren A en Objectgeoriënteerd Programmeren B de brede basiscursus imperatief en objectgeoriënteerd programmeren. In deze eerste cursus komen de gebruikelijke controlestructuren uit imperatieve talen aan de orde (keuze, herhaling, recursie); methoden worden in eerste instantie geïntroduceerd als mechanisme om structuur aan te brengen in het programma. Omdat de programma s worden genoteerd in Java, zal er ook aandacht zijn voor objecten; klasse-hiërarchieën en overerving vallen buiten het bereik van dit vak. 2 Doelstelling De bedoeling van dit vak is om een begin te maken met het ontwikkelen van de vaardigheid van studenten om vanuit een (informele) probleemstelling te komen tot een correct programma. Naast het behandelen van de syntax en semantiek van een aantal constructies uit de taal java, is er expliciet aandacht voor probleem-oplossen: hoe kom je van een vraagstelling tot een algoritme/programma in java. 2.1 Plaats in het curriculum Periode 1.1; omvang 5 EC. 3 Voorkennis Als voorkennis wordt niet anders verondersteld dan de verplichte stof uit het profiel Natuur en Gezondheid uit de tweede fase van het vwo (of daarmee vergelijkbaar). In het bijzonder zal enige vertrouwdheid met onderwerpen uit het wiskunde-programma nodig zijn. 4 Einddoelen De student kent de begrippen variabele en toekenning; De student heeft een (informele) notie van het begrip toestand en kan aangeven hoe een opeenvolging van toekenningen de toestand verandert. De student kent de basistypen in java en de onderlinge verhoudingen tussen deze typen; De student kent de syntax en semantiek van de java-constructies if, for, while, do; De student kent één- en meerdimensionale arrays; De student kent de begrippen type en variabele; de student kent de begrippen klasse en object; 1

8 De student kent het begrip methode en kent het mechanisme van parameteroverdracht in java; De student kent het begrip recursie en weet dit mechanisme in te zetten; De student kan de orde van tijdcomplexiteit van een programma met herhalingsstructuren aangeven en beargumenteren; De student is in staat om op adequate wijze gebruik te maken van de online APIdocumentatie van java, voorzover dit behandelde klassen betreft; De student kan een probleemstelling herformuleren tot een programmeerprobleem (modelleren); De student kan helder verslag doen van het traject van een (informele) probleemstelling tot de uitwerking in de vorm van een java-programma. 5 Werkvormen 5.1 Hoorcollege Tijdens de hoorcolleges worden systematisch constructies uit de taal java gepresenteerd, steeds geïnpireerd vanuit een probleemstelling. 5.2 Werkcollege Tijdens het werkcollege krijgen de deelnemers de gelegenheid om onder begeleiding van een docent de leerstof te verwerken aan de hand van min of meer elementaire oefeningen. 5.3 Practicum Daar waar het werkcollege bedoeld is om elementaire vaardigheden te ontwikkelen is het practicum bedoeld om de diverse vaardigheden te integreren en toe te passen in iets complexere probleemstellingen. Verder zal bij een aantal problemen de gevonden oplossing moeten worden gepresenteerd in een (kort) verslag. 5.4 Zelfwerkzaamheid Per week in de collegeperiode 7 uur met daarna 20 uur voor de afsluitende keuzeopdracht. 6 Literatuur Ira Pohl/ Charlie McDowell: Java by Dissection Addison-Wesley (2001) ISBN Collegeschema Er wordt uitgegaan van één hoorcollege van twee uur, één werkcollegezitting van twee uur en één practicumsessie van twee klokuren per week. 2

9 week onderwerpen Wat is programmeren?; editen, compileren, uitvoeren; (basis-)structuur van een java-programma; het type int; variabelen, toekenning en sequentie; in- en uitvoer met Extractor; het if-statement. De primitieve types in java; operatoren; type-casting; de klasse Math; de klasse String; (statische) methoden met (primitieve) parameters; parameter-overdracht. Het for-statement; arrays. Klassen en objecten; de overeenkomst met typen en variabelen; objecten als bundeling van data-elementen en operatoren (methoden). Het while-statement; het do - while statement; oneindige herhaling; het break-commando. Recursie: recursieve functies uit de wiskunde; generalisatie; recursieve oplossingen bij array-problemen. Complexiteit van algoritmen: tel het aantal elementaire operaties dat het programma (maximaal) moet uitvoeren om de oplossing te berekenen (als functie van de lengte van de invoer). 8 Toetsing Elke week is er een verzameling opgaven die op het practicumsysteem uitgewerkt moeten worden. De uitwerkingen moeten voor het verstrijken van de deadline door het electronisch controle systeem zijn geaccepteerd. De geaccepteerde uitwerkingen worden van commentaar voorzien; er worden geen beoordelingen gegeven. Bij een aantal opgaven moeten de studenten (in tweetallen) een schriftelijk verslag maken; dit verslag wordt besproken met en beoordeeld door een van de begeleiders. Tweemaal wordt er een verplicht individueel toetspracticum georganiseerd, eenmaal halverwege en eenmaal aan het eind van de college periode. De ingeleverde werkstukken worden door de begeleiders voorzien van een beoordeling. De afsluiting wordt gevormd door een wat grotere programmeeropdracht (keuzeopdracht) die individueel wordt uitgewerkt en wordt nabesproken met een begeleider. 3

10 Deze keuzeopdracht valt buiten de collegeperiode. De eindbeoordeling wordt gevormd door een gewogen gemiddelde van de gegeven beoordelingen. Een student die één of meer van de genoemde onderdelen heeft gemist krijgt geen voldoende beoordeling. Door middel van een tentamen krijgt zo n student alsnog de mogelijkheid dit vak met een voldoende af te sluiten. 4

11 voorstel voor invulling van het vak Logica Gerard Renardel 8 november 2005 Dit is een voorstel voor invulling van het vak Logica, ten behoeve van het herontwerp van de Major van de bacheloropleiding Informatica. Positionering 1e jaar, 1e semester, 5 EC. Dit vak is onderdeel van het gemeenschappelijke 1e semester met Kunstmatige Intelligentie. Doelstelling Doel van deze cursus is de student kennis te laten maken met de predikatenlogica, een wiskundig instrument voor het formuleren van en redeneren over allerhande begrippen. Eindtermen De student heeft kennis van en inzicht in de propositie- en de predikatenlogica (syntax, semantiek en afleidingssysteem); kan formules van deze logica s lezen, interpreteren en vertalen van en naar informele beweringen; kan formele afleidingen voor formules van deze logica s opstellen; kan formules omzetten in normaalvormen; heeft kennis van en inzicht in de begrippen soundness (gezondheid) en volledigheid. Onderwerpen Propositielogica: connectieven, propositionele variabelen, waarheidswaarden, waarheidstafels, axioma s bewijsregels, formele afleidingen, onderlinge definieerbaarheid van connectieven, disjunctieve en conjunctieve normaalvorm. Predikatenlogica: individuele variabelen, constanten, gelijkheid, predikaten, kwantoren, modellen, interpretaties, axioma s, bewijsregels, formele afleidingen. 1

12 Tevens voor beide logica s de begrippen geldig, vervulbaar, weerlegbaar, soundness (gezondheid) en volledigheid, en het vertalen van zinnen en redeneringen in de logica s. In het prakticum wordt gewerkt met het leerprogramma s Tarski s World en Fitch. Onderwijsvormen Per week 4 uur hoorcollege, 2 uur werkcollege en 2 uur computerprakticum. Toetsing Prakticumopdrachten en schriftelijk tentamen. Literatuur J. Barwise & J. Etchemendy, The Language of First-Order Logic, ISBN Aanvullende syllabus 2

13 1 Inleiding 1.1 Omschrijving Oriëntatie Informatica Het vak Oriëntatie Informatica geeft een bloemlezing van een aantal fundamentele aspecten van het vakgebied Informatica. De nadruk zal liggen op die onderwerpen die in nagenoeg alle deelgebieden van de informatica een rol spelen, meer dan dat aandacht wordt besteed aan de verschillende toepassingen waarin informatica een rol speelt. De behandelde onderwerpen worden verderop in de opleiding uitgebreid en verdiept. Op deze wijze vormt dit vak niet alleen een panorama van de informatica als wetenschap, maar ook een oriëntatie op vaardigheden die in het vervolg van de opleiding nodig zijn. 1.2 Doelstelling In aansluiting op wat hierboven is gezegd, heeft het vak Oriëntatie Informatica tot doel de student kennis te laten maken met een aantal wezenlijke aspecten van de informatica: algoritmen, talen waarin algoritmen kunnen worden genoteerd, automaten om algoritmen te laten uitvoeren, complexiteit van algoritmen en algoritmische problemen. Aan het eind van de cursus leert de student dat er algoritmische problemen zijn die niet algoritmisch zijn op te lossen. 1.3 Voorkennis Als voorkennis wordt niet anders verondersteld dan de verplichte stof uit het profiel Natuur en Gezondheid in de tweede fase van het voortgezet onderwijs. In het bijzonder zal enige vertrouwdheid met onderwerpen uit het wiskunde-programma en enkele onderdelen van het natuurkunde-programma nodig zijn. 1.4 Haskell Centraal in de cursus staat het begrip algoritme. Allerlei zaken die met dit begrip te maken hebben passeren de revue. Om al deze aspecten handen en voeten te geven, wordt de functionele taal Haskell ingezet. Het is expliciet niet de bedoeling dat de cursus verwordt tot een cursus Programmeren in Haskell. Alleen die zaken worden aangereikt die nodig zijn om de behandelde onderwerpen te verwerken: functies, parameters, recursie, lijsten, datastructuren. 1.5 Einddoelen de student weet en kan omschrijven wat een algoritme is; de student kan (eenvoudige) algoritmen noteren in de functionele taal Haskell; de student kent de automatenmodellen Eindige Automaat en Turingmachine; de student kan bij een informele beschrijving een grafische voorstelling maken van een Eindige Automaat of een Turingmachine; de student kent het begrip (worst case tijd-)complexiteit van een algoritme; de student kan voor (eenvoudige) gevallen een (orde-)schatting geven van de complexiteit van een algoritme en deze schatting beargumenteren; 1

14 de student kent het begrip complexiteit van een algoritmisch probleem; de student kent de complexiteitsklassen P, NP en NPC; de student kan beargumenteren dat een probleem van nondeterministische tijdcomplexiteit is; de student kent het begrip reductie en weet dit in te zetten om in (zeer eenvoudige gevallen) de NP-volledigheid van een algoritmisch probleem aan te tonen. 2 Werkvormen 2.1 Hoorcollege Tijdens de hoorcolleges wordt de leerstof gepresenteerd. De behandeling loopt grotendeels parallel aan hoofdstukken uit het leerboek Harel: Algorithmics, the Spirit of Computing. 2.2 Werkcollege Tijdens het werkcollege krijgen de deelnemers de gelegenheid om onder begeleiding van een docent de leerstof te verwerken aan de hand van min of meer elementaire oefeningen. Aspecten van de behandelde onderwerpen worden concreet gemaakt, veelal door middel van problemen die moeten worden uitgewerkt in de functionele taal Haskell. 2.3 Practicum Daar waar het werkcollege bedoeld is om elementaire vaardigheden te ontwikkelen is het practicum bedoeld om de diverse vaardigheden te integreren en toe te passen in iets complexere probleemstellingen. Verder zal de gevonden oplossing moeten worden gepresenteerd in een (kort) verslag. 3 Literatuur Het boek Harell: Algorithmics, the spirit of computing biedt achtergrondinformatie bij de op college behandelde onderwerpen. Daarnaast is er een bundeltje waarin voldoende over Haskell wordt uitgelegd om de opgaven te kunnen doen. Dit bundeltje bevat ook de opdrachten voor werkcollege en practicum. 4 Collegeschema Er wordt uitgegaan van vier maal drie kwartier hoorcollege per week, één werkcollegezitting van tweemaal drie kwartier en één practicumsessie van twee klokuren per week. 2

15 0 Hoorcollege-1 Hoorcollege-2 Werkcollege 1 digitaal electronische poorten; elementaire functies in Haskell data: representatie en interpretatie digitaal electronische schakelingen (doorrekenen, ontwerpen); elementaire functies in Haskell 2 data: overdracht (foutdetectie en -correctie); lijsten in Haskell datastructuren; bomen in Haskell data: representatie en interpretatie, foutdetectie en -correctie; lijsten in Haskell 3 algoritmische methoden (verdeel en heers; greedy; dynamisch programmeren; exhaustive search) efficiëntie en complexiteit van algoritmen datastructuren; algoritmische methoden; bomen in Haskell 4 talen en grammatica s automaten: Turingmachines efficiëntie en complexiteit van algoritmen 5 automaten: eindige automaten correctheid van algoritmen talen en grammatica s; Turingmachines; eindige automaten 6 complexiteit van algoritmische problemen complexiteit van algoritmische problemen: complexiteitsklassen P, NP, NPC efficientie en complexiteit van algoritmen 7 beslisbaarheid (Halting Problem) probabilistische methoden complexiteit van algoritmische problemen; beslisbaarheid 3

16 Modelleren 1, November 9, Voorstel Invulling Modelleren 1 (Wiskunde A) Opmerkingen (Jos Roerdink, Gert Vegter, Michael Wilkinson) 1. Dit vak vormt één geheel met het vak Modelleren 2 (Wiskunde B). 2. Vergeleken met het huidige Wiskunde A zijn de gewone differentiaalvergelijkingen doorgeschoven naar Modelleren 2 (Wiskunde B). 3. Over de precieze invulling van de wiskundestof moet nog verder worden gesproken met Wiskunde. 4. Over dit gehele vak moet nog overleg plaatsvinden met KI i.v.m. het gemeenschappelijk eerste semester. 5. Een goede projectorganisatie is essentieel. Aan te bevelen is een informaticadocent de coördinatie in handen te geven voor beide vakken Modelleren 1 en 2 (overleg met wiskundedocenten, overleg met studentassistenten, samenhang bewaken, enz.). 6. Te overwegen is elke groep studenten door twee studentassistenten te laten begeleiden, één van wiskunde en één van informatica. Max. 5 groepjes per tweetal studentassistenten. 1 Positionering van het vak Periode 1.2, omvang 5 EC. Voorkennis: VWO Wiskunde 2 Doelstelling De algemene doelstelling van het vak Modelleren-1&2 is ervaring opdoen met het wiskundig modelleren, analyseren, implementeren en interpreteren van een (informeel beschreven) proces uit natuur- of levenswetenschap, economie, enz.; het vergroten van de hierbij benodigde wiskundige kennis; het verkrijgen van vaardigheid in het gebruiken van deze kennis voor het analyseren van wiskundige modellen; en het verkrijgen van vaardigheid in het hanteren van bijbehorende software-tools. Belangrijke elementen hierbij zijn het plaatsen van de benodigde wiskunde in een duidelijke probleemcontext en een combinatie van werkvormen zoals traditionele hoorcolleges en projecten. Er wordt veel zelfwerkzaamheid van de student verwacht. - Eén van de belangrijkste doelen van de in Modelleren-1 aangeboden wiskunde is om de VWO-ervaring met functies van één variabele op te rekken naar (vector)functies van meerdere variabelen. Voor de analyse van deze functies speelt de lineaire algebra een belangrijke rol, waaruit een aantal onderwerpen wordt behandeld. Verder worden de reële getallen uitgebreid naar de complexe getallen en zullen enkele eenvoudige functies hierop geïntroduceerd worden, o.a. de complexe e-macht. 3 Eindtermen Vaardigheid in het doordringen tot de kern van een informeel gespecificeerd (fysich, economisch, biologisch) proces

17 Modelleren 1, November 9, Vaardigheid in het kiezen van een geschikt wiskundig formalisme en/of model voor het betreffende proces Vaardigheid in opsporen en verwerken van relevante literatuur op het gebied van het betreffende proces Kennis opdoen van de analyse van (vector)functies van meerdere variabelen, het rekenen met complexe getallen en elementaire lineaire algebra Vaardigheid in de toepassing van de behandelde wiskundestof bij het analyseren van een eenvoudig wiskundig model Vaardigheid in het vertalen van een eenvoudig wiskundig model naar een computerimplementatie of simulatie Vaardigheid in gebruiken van tools zoals Matlab en Mathematica bij de implementatie en analyse van het betreffende probleem Vaardigheid in het interpreteren en analyseren van de resultaten in termen van het oorspronkelijke proces Vaardigheid in het samenwerken met medestudenten in projecten Vaardigheid in het schriftelijk en mondeling presenteren van de resultaten van projecten 4 Onderwijsvormen Een mengvorm van hoorcollege, werkcollege, en project. Zelfwerkzaamheid totaal xx uur. 5 Onderwerpen De onderwerpen bij het klein project worden zo gekozen dat de benodigde wiskundekennis op VWO-niveau ligt. Bij het groot project zijn de onderwerpen iets geavanceerder, waarbij de benodigde wiskunde tijdens de cursus wordt opgebouwd. De lijst van projectonderwerpen kan jaarlijks variëren. Mogelijke onderwerpen: mechanische systemen (slinger, snaar), populatiedynamica (roofdier-prooi systemen, ecosysteem-modellen), elektrische circuits, chemische reacties, speltheorie. Onderwerpen uit de wiskunde die aan bod komen: Uit boek, secties: vectoren, vectorfuncties en krommen: (niet scalar triple product ), complexe getallen: 12.1, 12.2, 12.6 (niet ëntire function ) lineaire algebra: , 7.1, 7.2, 7.5 functies van meerdere variabelen: 8.8, 8.9, 9.3 Uit dictaat, secties: limieten, differentieren, integreren: Taylorontwikkeling: 1.9 functies van meerdere variabelen, extrema, lineaire benaderingen: 5

18 Modelleren 1, November 9, Weekschema week 1-2 week 3-8 week 9-10 inleidend college (doelstelling, voorbeelden, richtlijnen). projectgroepen maken (tweetallen). Klein project modelleren programmeren analyseren. Oplossingen in matlab uitwerken twee werkcolleges waarin VWO-wiskunde (limieten,differentieren en integreren) wordt opgehaald. Groot project modelleren programmeren analyseren. Parallel hieraan de wiskundestof, omvang lineair aflopend naar eind van projectperiode. Tussenrapportages. Toetsperiode. Wiskunde via individueel tentamen; project via eindverslag en mondelinge presentatie (per tweetal). 6 Toetsing Het eindcijfer is het gemiddelde van het cijfer voor de projecten en het cijfer voor het schriftelijk tentamen. 7 Literatuur De cursus wordt gegeven aan de hand van: 1. E. Kreyszig: Advanced Engineering Mathematics (8th ed.), New York: John Wiley and Sons Ltd (1999) 2. R. Verstappen: Wiskunde 1 (dictaat). 3. Studiewijzer met informatie over de werkwijze bij de projecten, onderwerpen, literatuur, enz.

19 Architectuur en Netwerken Let op: een 4 punts variant van dit vak is deel van het TBK-IT curriculum. 0.1 Positionering van het vak Periode 1.4., studielast 5 ects. 0.2 Doelstelling en eindtermen Het goed doorgronden van de werking, opbouw en implementatie van een computer, alsmede een netwerk van computers. Het leren werken met, een groot aantal geheel verschillende, abstractieniveau s bij de structurering van dergelijke complexe systemen. 0.3 Voorkennis Logica, Discrete structuren : boolese algebra, normaalvormen, dualiteit. Oriëntatie informatica: eindige automaat. Imperatief programmeren. 0.4 Onderwerpen Uitgaande van de elementaire bouwstenen uit digitale techniek worden de machines gebouwd die onze programma s uit kunnen voeren. De behandeling is bottom-up, gebruik makend van de gebruikelijke structurering in abstractieniveau s zoals het 7-laags referentie model van het ISO. In het architectuurdeel komen aan de orde: Mechanisch rekenen, digitale techniek, overzicht computer architecturen. Processor, control unit, datapad, microprogrammering. Pipelining, (branch) cacheing, meerdere functionele eenheden, speculatieve executie. Machinetaalprogramma s: instructies, adresseringsmethoden, procedure mechanisme. Excepties, supervisor mode, memory managment unit. In het netwerkdeel behandelen we alleen onderste netwerklagen tot aan de transportlaag: het kale Internet. De afronding van het netwerkgedeelte gebeurt in het vak NetComputing. OSI referentie model, protocollen. 1

20 Fysieke laag: communicatie capaciteit, transmissie media, (mobiele) telefoonsysteem. Datalink laag: fouten controle, flow control, sliding window protocollen. Medium access sublaag: switches. MAC protocollen, ethernet (wireless) LAN s, Netwerk laag: routerings algoritmen, congestie controle, Quality of Service, internetwerking, het Internet. Transport laag: elementaire transport protocollen: TCP, UDP. 0.5 Literatuur Tanenbaum, Structured Computer Organization (5), Prentice Hall, Tanenbaum, Computer Networks (4), Prentice Hall, Werkvormen Hoorcollege 3 uren, verroosterd practicum 2 uren, practicum 3 uren, zelfwerkzaamheid (totaal) 80 uur 0.7 Toetsing Schriftelijk tentamen en practicum verslagen. 2

21 Modelleren 2, November 9, Voorstel Invulling Modelleren 2 (Wiskunde B) Opmerkingen (Jos Roerdink, Gert Vegter, Michael Wilkinson) 1. Dit vak vormt één geheel met het vak Modelleren 1 (Wiskunde A). 2. Vergeleken met het huidige Wiskunde B is de inleiding in de gewone differentiaalvergelijkingen uit het huidige Wiskunde A opgenomen, en is een aantal onderwerpen uit de vectoranalyse (zoals Stelling van Green) geschrapt. 3. Over de precieze invulling van de wiskundestof moet nog verder worden gesproken met Wiskunde. 4. Een goede projectorganisatie is essentieel. Aan te bevelen is een informaticadocent de coördinatie in handen te geven voor beide vakken Modelleren 1 en 2 (overleg met wiskundedocenten, overleg met studentassistenten, samenhang bewaken, enz.). 5. Te overwegen is elke groep studenten door twee studentassistenten te laten begeleiden, één van wiskunde en één van informatica. Max. 5 groepjes per tweetal studentassistenten. 1 Positionering van het vak Periode 1.4, omvang 5 EC. Voorkennis: Modelleren 1 (Wiskunde A) 2 Doelstelling De algemene doelstelling van het vak Modelleren-1&2 is ervaring opdoen met het wiskundig modelleren, analyseren, implementeren en interpreteren van een (informeel beschreven) proces uit natuur- of levenswetenschap, economie, enz.; het vergroten van de hierbij benodigde wiskundige kennis; het verkrijgen van vaardigheid in het gebruiken van deze kennis voor het analyseren van wiskundige modellen; en het verkrijgen van vaardigheid in het hanteren van bijbehorende software-tools. Belangrijke elementen hierbij zijn het plaatsen van de benodigde wiskunde in een duidelijke probleemcontext en een combinatie van werkvormen zoals traditionele hoorcolleges en projecten. Er wordt veel zelfwerkzaamheid van de student verwacht. De in Modelleren-2 aangeboden wiskunde gaat over differentiaalvergelijkingen, reeksen, vectoranalyse, partiele differentiaalvergelijken en iteratieve methoden. Bij de differentiaalvergelijkingen komen aan de orde: richtingsveld, scheiden van variabelen, exacte differentiaal, lineaire differentiaalvergelijkingen, superpositie, beginwaardeprobleem, randwaardeprobleem, tweede-orde differentiaalvergelijkingen met constante coëfficiënten, harmonische oscillator, stelsels differentiaalvergelijkingen, fasevlak, kritieke punten. Bij reeksen staan de begrippen convergentie/divergentie, machtreeks en Fourierreeks centraal. Bij de vectoranalyse draait het om begrippen als gradiënt, potentiaal, niveau-oppervlak, parametriseren van oppervlakken. Daarnaast worden lijnintegralen behandeld, hierbij komen de begrippen arbeid, potentiaal, afhankelijkheid van integratie-weg, exacte differentiaalaan de orde. Tenslotte volgt een inleiding tot iteratieve methoden voor het oplossen van vergelijkingen (o.a. de Newton-methode) en differentiaalvergelijkingen (Picard-iteratie).

22 Modelleren 2, November 9, Eindtermen Vaardigheid in het doordringen tot de kern van een informeel gespecificeerd eenvoudig (fysich, economisch, biologisch) proces Vaardigheid in het kiezen van een geschikt wiskundig formalisme en/of model voor het betreffende proces Vaardigheid in opsporen en verwerken van relevante literatuur op het gebied van het betreffende proces Kennis opdoen van de analyse van differentiaalvergelijkingen, reeksen, vectoranalyse, partiele differentiaalvergelijken en iteratieve methoden Vaardigheid in de toepassing van de behandelde wiskundestof bij het analyseren van een wiskundig model Vaardigheid in het vertalen van een wiskundig model naar een computerimplementatie of simulatie Vaardigheid in gebruiken van tools zoals Matlab en Mathematica bij de implementatie en analyse van het betreffende probleem Vaardigheid in het interpreteren en analyseren van de resultaten in termen van het oorspronkelijke proces Vaardigheid in het samenwerken met medestudenten in projecten Vaardigheid in het schriftelijk en mondeling presenteren van de resultaten van projecten 4 Onderwijsvormen Een mengvorm van hoorcollege, werkcollege, en project. Zelfwerkzaamheid totaal xx uur. 5 Onderwerpen De onderwerpen bij het project worden zo gekozen dat ze aansluiten bij de wiskundekennis op het niveau van Modelleren 1 en de nieuwe wiskunde die tijdens deze cursus wordt opgebouwd. De lijst van projectonderwerpen kan jaarlijks variëren. Mogelijke onderwerpen: mechanische systemen (meerdere deeltjes, gekoppelde oscillatoren), populatiedynamica (roofdier-prooi systemen, ecosysteem-modellen), economische modellen, diffusieprocessen, warmtegeleiding, stromingen, speltheorie. De wiskundestof betreft de volgende onderwerpen uit het cursusboek: gewone differentiaalvergelijkingen: , , 2.5, 2.7 2de-orde differentiaalvergelijkingen: 2.8, 2.9, 2.11, 2.12 stelsels differentiaalvergelijkingen: 3.0 t/m 3.4 reeksen: 14.1, 4.1, 4.2, 10.1 t/m 10.4 vector-analyse: 8.4, 8.9, 8.10, 9.1, 9.2 iteratieve methoden: 17.1, 17.2, 18.3, 1.9

23 Modelleren 2, November 9, Weekschema week 1 week 2-8 week 9-10 inleidend college (doelstelling, voorbeelden, richtlijnen). projectgroepen maken (tweetallen). 1e hoorcollege wiskunde. Project modelleren programmeren analyseren. Parallel hieraan de wiskundestof, omvang lineair aflopend naar eind van projectperiode. Tussenrapportages. Toetsperiode. Wiskunde via individueel tentamen; project via eindverslag en mondelinge presentatie (per tweetal). 6 Toetsing Het eindcijfer is het gemiddelde van het cijfer voor het projecten en het cijfer van het schriftelijk tentamen. 7 Literatuur De cursus wordt gegeven aan de hand van: 1. E. Kreyszig: Advanced Engineering Mathematics (8th ed.), New York: John Wiley and Sons Ltd (1999) 2. Studiewijzer met informatie over de werkwijze bij het project, onderwerpen, literatuur, enz.

24 Objectgeorienteerd Programmeren A 1 Inleiding 1.1 Omschrijving (Harm Bakker, Wim Hesselink, Rudy Moddemeijer) Samen met het voorafgaande vak Imperatief Programmeren en het volgende vak Objectgeoriënteerd Programmeren B vormt dit vak de brede basiscursus imperatief en objectgeoriënteerd programmeren. In Imperatief Programmeren zijn objecten alleen ter sprake gekomen als mechanisme om bij elkaar horende data (samen met operatoren hierop) te clusteren. In deze cursus ligt de nadruk meer op de objectgeoriënteerde aspecten van java: overerving, grafische userinterfaces, threads. Daarnaast is er aandacht voor het exceptiemechanisme als gereedschap om de robuustheid van software te vergroten. 2 Doelstelling De bedoeling van dit vak is de student in te wijden in objectgeorienteerde technieken, ondersteund door de faciliteiten die de taal java biedt. Het objectgeoriënteerd ontwerpen valt buiten de scope van deze cursus. 2.1 Plaats in het curriculum Periode 1.3; omvang 5 EC. 3 Voorkennis De student wordt verondersteld een programmeervaardigheid te hebben die overeenkomt met het eindniveau van het vak Imperatief Programmeren. 4 Einddoelen De student is in staat om in UML-notatie gegeven klassehiërarchieën te interpreteren en om te zetten in java. De student kent de java-begrippen klasseuitbreiding, abstracte klasse en interface en kan deze op adequate wijze gebruiken bij het implementeren van een klassestructuur. De student kent het begrip overriding en kan dit effectief gebruiken. De student kent de betekenis van de modifiers final, static, public, private en protected, en gebruikt ze op correcte wijze in de code. De student is in staat om gebruikmakend van een (klein) aantal faciliteiten uit de Swingbibliotheek een eenvoudige grafische userinterface te implementeren. De student heeft weet van een aantal java klassen voor collecties en kan met behulp van de documentatie bij een gegeven probleem een passende keus maken voor een van deze klassen. 1

25 De student kent het begrip exceptie en kent de manier waarop in java excepties worden afgehandeld. De student kent de manier waarop in java invoer en uitvoer wordt afgehandeld, in het bijzonder hoe invoer uit en uitvoer naar bestanden wordt gerealiseerd. De student kent het begrip thread en weet hoe hij dit mechanisme in java-programma s kan inzetten. De student kent de begrippen lock en synchronisatie. 5 Werkvormen 5.1 Hoorcollege Tijdens de hoorcolleges worden systematisch constructies uit de taal java gepresenteerd, steeds geïnpireerd vanuit een probleemstelling. 5.2 Werkcollege Tijdens het werkcollege krijgen de deelnemers de gelegenheid om onder begeleiding van een docent de leerstof te verwerken aan de hand van min of meer elementaire oefeningen. 5.3 Practicum Daar waar het werkcollege bedoeld is om elementaire vaardigheden te ontwikkelen is het practicum bedoeld om de diverse vaardigheden te integreren en toe te passen in iets complexere probleemstellingen. Het practicum wordt uitgevoerd in tweetallen. De uitwerkingen worden door een electronisch controle-systeem aan een aantal tests onderworpen. Uitwerkingen die niet door dit systeem worden geaccepteerd worden als niet-gemaakt beschouwd. Geaccepteerde oplossingen worden van commentaar voorzien. Verder zal bij een aantal problemen de gevonden oplossing moeten worden gepresenteerd in een (kort) verslag. 5.4 Zelfwerkzaamheid Per week in de collegeperiode 7 uur met daarna 30 uur voor tentamenvoorbereiding. 6 Literatuur Ira Pohl/ Charlie McDowell: Java by Dissection Addison-Wesley (2001) ISBN Collegeschema Er wordt uitgegaan van één hoorcollege van twee uur, één werkcollegezitting van twee uur en één practicumsessie van twee klokuren per week. 2

26 week onderwerpen 1 Overerving: klasse-uitbreidingen 2 Overerving: abstracte klassen en interfaces 3 Eenvoudige GUIs met Swing 4 Toepassing objecten: dynamische datastructuren (gelinkte lijsten en binaire bomen) 5 Java klassen voor collecties 6 Exceptiemechanisme in java ; Input en output 7 Threads; synchronisatie; wederzijdse uitsluiting 8 Toetsing Elke practicumopgave moet vóór het verstrijken van de aangegeven deadline zijn ingeleverd. Het ontbreken van één of meer uitwerkingen leidt tot uitsluiting van het tentamen. Bij een aantal opgaven moeten de studenten (in tweetallen) een schriftelijk verslag maken; dit verslag wordt besproken met en beoordeeld door een van de begeleiders. De cursus wordt afgesloten met een schriftelijk tentamen. De eindbeoordeling wordt gevormd door een gewogen gemiddelde van de gegeven beoordelingen (30% practicum, 70% tentamen). 9 Terzijde Gezien de inhoud van de vakken valt het te overwegen de naamgeving aan te passen. Objectgeoriënteerd programmeren A zou dan Objectgeoriënteerd programmeren kunnen heten en Objectgeoriënteerd programmeren B zou dan Objectgeoriënteerd ontwerpen kunnen worden. In bovenstaand voorstel worden alleen simpele grafische userinterfaces gebouwd. Komen GUI-builders in OOPB aan de orde? Doet OOPB ook iets aan tools m.b.t. UML? 3

27 voorstel voor invulling van het vak Discrete Structuren Gerard Renardel 8 november 2005 Dit is een voorstel voor invulling van het vak Discrete Structuren, ten behoeve van het herontwerp van de Major van de bacheloropleiding Informatica. Positionering 1e jaar, 2e semester, 5 EC. Voorkennis: Logica (1e jaar, 1e semester). Doelstelling Doel van deze cursus is de student bekend en vertrouwd te maken met een aantal basisbegrippen uit de discrete wiskunde die gebruikt worden om op abstract niveau de werking van computers en programmatuur te beschrijven en te begrijpen. Speciale nadruk wordt gelegd op wiskundige bewijzen, als correcte redeneermethode over wiskundige begrippen en uitspraken. Eindtermen De student heeft kennis van en inzicht in een aantal begrippen uit de verzamelingenleer en de discrete wiskunde: verzameling, functie, relatie, kardinaliteit, gehele en rationale getallen, graaf, boom, ordening, Boole-algebra; kan bewijzen opstellen van eenvoudige eigenschappen van deze begrippen; is bekend met diverse bewijsvormen, zoals bewijs uit het ongerijmde en bewijs met volledige inductie; kan eenvoudige recurrente betrekkingen oplossen, bv. de rij van Fibonacci; heeft inzicht in het verband tussen de propositielogica en de Boole-algebra, en kan beide toepassen bij het analyseren en ontwerpen van eenvoudige logische netwerken. 1

28 Onderwerpen Elementaire getaltheorie: deelbaarheid, priemgetallen, ggd, kgv. Elementaire verzamelingenleer: verzameling-notatie, doorsnede, vereniging, complement, verband met propositionele connectieven, cartesisch product, eindige kardinaliteit, paradox van Russell, relaties, functies (injectief, surjectief, bijectief). Oneindigheid: definitie van gelijkmachtigheid en aftelbaarheid, aftelbaarheid van de verzameling der rationale getallen, diagonaalmethode van Cantor. Relaties: eigenschappen (reflexief, symmetrisch, transitief, antisymmetrisch, lineair, functioneel), equivalentierelaties, equivalentieklassen, partities, partiële ordeningen, grootste/kleinste/maximaal/minimaal element, kleinste bovengrens, grootste benedengrens. Wiskundige bewijzen: rol van logische redeneerprincipes, bewijzen uit het ongerijmde (irrationaliteit van 2, oneindigheid van het aantal priemgetallen), bewijzen met volledige inductie. Recurrente betrekkingen: oplossen van lineaire rcurrenties van diepte 2. Grafen: knopen en kanten, gericht en ongericht, paden, samenhang, graad, ingraad, uitgraad, isomorfie, Eulerpaden, bomen, opspannende bomen. Boole-algebra s: atomen, Boole se expressies, logische netwerken. Onderwijsvormen Per week 4 uur hoorcollege en 4 uur werkcollege. Toetsing Schriftelijk tentamen. Literatuur Kenneth A. Ross & Charles R.B. Wright, Discrete Mathematics (of een vergelijkbaar leerboek) Aanvullende syllabus 2

29 ProgrammaCorrectheid (Harm Bakker, Wim Hesselink, Rudy Moddemeijer) 1 Inleiding 1.1 Omschrijving In de cursus ProgrammaCorrectheid maakt de student kennis met een aantal technieken waarmee de correctheid van programmafragmenten op formele manier kan worden aangetoond. Uitgaande van de ervaring die de student in voorlopende programmeervakken heeft opgedaan, worden bewijsregels geformuleerd bij het keuze-statement en het herhalings-statement. Deze bewijsregels worden vervolgens toegepast bij het hand in hand ontwikkelen van programmafragmenten samen met hun annotatie. 1.2 Doelstelling Van grote stukken software is eenvoudig vast te stellen dat ze correct zijn. Geregeld echter zijn er situaties waarin het lastig is in te zien dat een programmafragment aan zijn specificatie voldoet of waarin de correctheid zo belangrijk is, dat niet vertrouwd kan worden op informele overwegingen. Deze cursus heeft tot doel de student voldoende gereedschap aan te reiken om, op momenten dat dat nodig is, de correctheid van een programmafragment formeel vast te stellen. Om te komen tot een formeel correctheidsbewijs van een programmafragment is het nodig de specificatie in een formele taal te noteren. In deze cursus is de formele specificatie veelal gegeven; op een aantal plaatsen wordt van de student gevraagd om bij een informele beschrijving een formele specificatie te ontwerpen. 1.3 Plaats in het curriculum Periode 1.4; omvang 5 EC. 1.4 Voorkennis De student wordt verondersteld een vaardigheid te hebben in het programmeren in een imperatieve programmeertaal, overeenkomend met het eindniveau van het vak Imperatief Programmeren. Daarnaast zal de student vaardigheid moeten hebben in het opstellen en manipuleren van logische expressies, overeenkomend met het eindniveau van het vak Logica. 1.5 Einddoelen De student kent de bewijsregel voor de toekenning en de compositie en kan deze toepassen; De student kent de bewijsregel voor het keuze-statement (IF) en kan deze toepassen; De student kent de bewijsregel voor het herhalingsstatement (WHILE) en weet deze in te zetten om op systematische wijze een herhalingsprogramma af te leiden; 1

30 De student is in staat om één van de heuristieken toe te passen om bij gegeven pre- en postconditie een adequate invariant af te leiden; De student kent de winkelhaak/slope search - methode en kan deze techniek toepassen; De student kan bij het berekenen van recurrente betrekkingen vaststellen welke hulpinformatie aan de invariant moet worden toegevoegd. 2 Werkvormen 2.1 Hoorcollege Tijdens het hoorcollege worden, uitgaande van aanwezige programmeerkennis, bewijsregels afgeleid. Aan de hand van voorbeelden wordt duidelijk gemaakt hoe deze bewijsregels functioneren bij het ontwikkelen van geannoteerde programmafragmenten. 2.2 Werkcollege Tijdens het werkcollege krijgen de deelnemers de gelegenheid om onder begeleiding van een docent de leerstof te verwerken aan de hand van oefeningen. 2.3 Inleveropgaven Bij dit vak is het zorgvuldig noteren van een programmafragment met annotatie een dusdanig belangrijk aspect, dat studenten geregeld feedback moeten krijgen op hun manier van presenteren. Daartoe dienen de inleveropgaven: elke week is er de mogelijkheid de uitwerking van een opgave ter beoordeling in te leveren. De beoordelingen van deze uitwerkingen tellen licht mee in de eindbeoordeling van het vak. 2.4 Zelfwerkzaamheid In de collegeperiode 7 uur per week met een reserve van 40 uur voor tentamenvoorbereiding. 3 Literatuur Dictaat Wim. H. Hesselink: Programmacorrectheid en programmaderivatie. 4 Collegeschema Er wordt uitgegaan van eerst vier weken met vier uur hoorcollege en twee uur werkcollege per week. In de resterende weken zijn er twee uur hoorcollege en vier uur werkcollege per week. 2

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dystra Sietse Achterop Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 12 februari 2008 INLEIDING Discrete Structuren Wee1: Inleiding Onderwerpen

Nadere informatie

Bijlage bacheloropleiding Informatica

Bijlage bacheloropleiding Informatica Bijlage bacheloropleiding Informatica 2011-2012 Bijlage I Eindtermen van de bacheloropleiding (artikel 1.3) De bachelor Informatica: a. kennis en inzicht a1. heeft kennis van en inzicht in de belangrijkste

Nadere informatie

faculteit wiskunde en natuurwetenschappen Bijlagen bachelopleiding Informatica

faculteit wiskunde en natuurwetenschappen Bijlagen bachelopleiding Informatica en natuurwetenschappen Bijlagen bachelopleiding Informatica 1 6 Bijlage I Eindtermen van de bacheloropleiding (artikel 1.3) De bachelor Informatica: a. kennis en inzicht a1. heeft kennis van en inzicht

Nadere informatie

Curriculum Informatica 2003/04

Curriculum Informatica 2003/04 Curriculum Informatica 2003/04 Curriculumcommissie Informatica 18 juni 2003 Inleiding, toelichting De voornaamste veranderingen ten opzicht van het curriculum 2002/03 staan hieronder aangeduid. Nieuwe

Nadere informatie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie 9 februari 2009 INLEIDING

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie   9 februari 2009 INLEIDING Discrete Structuren Piter Dystra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 9 februari 2009 INLEIDING Discrete Structuren Wee1: Inleiding Onderwerpen Elementaire

Nadere informatie

Studiewijzer BACHELOR KUNSTMATIGE INTELLIGENTIE EXTRA KEUZENVAK VAK: C++ PROGRAMMEERMETHODEN

Studiewijzer BACHELOR KUNSTMATIGE INTELLIGENTIE EXTRA KEUZENVAK VAK: C++ PROGRAMMEERMETHODEN Studiewijzer BACHELOR KUNSTMATIGE INTELLIGENTIE VAK: C++ PROGRAMMEERMETHODEN EXTRA KEUZENVAK Semester, periode : 2 e semester, periode 4 en 5 Coördinator(en) : Arnoud Visser en Bas Terwijn Docent(en) :

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

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

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

Vakbeschrijvingen Servicevakken Informatica. Curriculumcommissie Informatica October 10, 2003

Vakbeschrijvingen Servicevakken Informatica. Curriculumcommissie Informatica October 10, 2003 Vakbeschrijvingen Servicevakken Informatica Curriculumcommissie Informatica October 10, 2003 1 Vakcode: INTSR-03 Vak: APPLIED SYMBOLIC COMPUTING Kwartaal: 4 Bedoeld voor: Scientific Computing and Imaging

Nadere informatie

Programma Bachelor- en Masteropleiding Informatica

Programma Bachelor- en Masteropleiding Informatica Programma Bachelor- en Masteropleiding Informatica 2008-2009 Curriculumcommissie Auteur: Jos Roerdink Laatst herzien: 26 juni 2008 Inhoudsopgave 1 Inleiding 1 2 Flexibele bachelor 1 2.1 Achtergrond........................................

Nadere informatie

Studiewijzer. Bachelor Informatica. Inleiding Programmeren Studiejaar en semester: jaar 1, semester 1 (blok 1)

Studiewijzer. Bachelor Informatica. Inleiding Programmeren Studiejaar en semester: jaar 1, semester 1 (blok 1) Studiewijzer Bachelor Informatica Vak: Inleiding Programmeren Studiejaar en semester: jaar 1, semester 1 (blok 1) Coördinator: J. Lagerberg Docenten: R. Poss en J. Lagerberg Studielast: 6 EC Studiegidsnummer:

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

Getallensystemen, verzamelingen en relaties

Getallensystemen, verzamelingen en relaties Hoofdstuk 1 Getallensystemen, verzamelingen en relaties 1.1 Getallensystemen 1.1.1 De natuurlijke getallen N = {0, 1, 2, 3,...} N 0 = {1, 2, 3,...} 1.1.2 De gehele getallen Z = {..., 4, 3, 2, 1, 0, 1,

Nadere informatie

Introductie tot de cursus

Introductie tot de cursus Introductie tot de cursus 1 Plaats en functie van de cursus 7 1.1 Positie in de opleiding 7 1.2 Functie 7 2 Cursusmateriaal 8 2.1 Tekstboek 8 2.2 Werkboek 8 2.3 Software 9 2.4 Cursussite 9 3 Planning 10

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

Logica voor Informatica

Logica voor Informatica Logica voor Informatica 13 Programma verificatie Wouter Swierstra University of Utrecht 1 Programmeertalen en logica Bij logische programmeertalen hebben we gezien dat we rechstreeks met (een fragment

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 Inleiding 7 2 Voorkennis 7 3 Het cursusmateriaal 7 4 Structuur, symbolen en taalgebruik 8 5 De cursus bestuderen 9 6 Studiebegeleiding 10 7 Huiswerkopgaven 10 8 Het tentamen

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

Bijlage bacheloropleiding Informatica 2012-2013

Bijlage bacheloropleiding Informatica 2012-2013 Bijlage bacheloropleiding Informatica 2012-2013 Bijlage I Eindtermen van de bacheloropleiding (artikel 1.3) De bachelor Informatica: a. kennis en inzicht a1. heeft kennis van en inzicht in de belangrijkste

Nadere informatie

Bijlagen gentie. Bijlage. Bijlage. Bijlage - - vakgebied. Educatie en. Major van. Minor van

Bijlagen gentie. Bijlage. Bijlage. Bijlage - - vakgebied. Educatie en. Major van. Minor van n bacheloropleiding Kunstmatige Intellig gentie 2011-2012 I Eindtermen van de bacheloropleiding Met de opleiding wordt beoogd: - inhoudelijke kennis, vaardigheid en inzicht op het gebied van Kunstmatige

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

Lineaire algebra en vectorcalculus

Lineaire algebra en vectorcalculus Lineaire algebra en vectorcalculus dr. G.R. Pellikaan Studiewijzer voor het studiejaar 2013/2014 College 2DN60 Contents 1 Algemeen 2 2 Inhoud van het vak 2 3 Leerdoelen 3 4 Berekening tijdsplanning 3 5

Nadere informatie

BSc Kunstmatige Intelligentie. : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : semester 1, periode 2

BSc Kunstmatige Intelligentie. : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : semester 1, periode 2 Studiewijzer BACHELOR KUNSTMATIGE INTELLIGENTIE Vak : Opleiding : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : 2015-2016 semester 1, periode 2 Coördinator(en) : dr. Maarten van Someren

Nadere informatie

Inhoud introductie. Introductie tot de cursus

Inhoud introductie. Introductie tot de cursus Inhoud introductie Introductie tot de cursus 1 Functie en plaats van de cursus 7 1.1 Voorkennis 7 1.2 Leerdoelen 7 2 Opbouw van de cursus 8 2.1 Cursusbestanddelen 8 2.2 Nummering en studielast van de leereenheden

Nadere informatie

Lineaire Algebra voor E (VKO)

Lineaire Algebra voor E (VKO) Lineaire Algebra voor E (VKO) dr. G.R. Pellikaan Studiewijzer voor het studiejaar 2006/2007 College 2DE01 Faculteit Wiskunde en Informatica, Capaciteitsgroep Wiskunde, Leerstoelgebied Coderingstheorie

Nadere informatie

(On)Doenlijke problemen

(On)Doenlijke problemen Fundamentele Informatica In3 005 Deel 2 College 1 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie Technologie en Systemen Overzicht Inleiding - Relatie Deel 1 en Deel 2 - Doenlijke

Nadere informatie

Vernieuwing Bacheloropleidingen Informatica en Informatiekunde

Vernieuwing Bacheloropleidingen Informatica en Informatiekunde Vernieuwing Bacheloropleidingen Informatica en Informatiekunde Marko van Eekelen, Remko Helms, Evert van de Vrie TouW Informatica symposium 21 november 2015 Aanleiding vernieuwing Open Universiteit Ministerie

Nadere informatie

Opleidingsonderdelen Telecommunicatie Bachelor Informatica. C. Blondia

Opleidingsonderdelen Telecommunicatie Bachelor Informatica. C. Blondia Opleidingsonderdelen Telecommunicatie Bachelor Informatica C. Blondia Overzicht Ba Informatica Verplichte vakken: Computernetwerken (1 Ba 2 Ba) Telecommunicatiesystemen (3 Ba) Keuzevakken Netwerktoepassingen

Nadere informatie

volgens het Major-Minor Model

volgens het Major-Minor Model Rijksuniversiteit Groningen Faculteit der Wiskunde en Natuurwetenschappen Wiskunde en Informatica Vakbeschrijvingen voor de BACHELOROPLEIDING INFORMATICA RuG volgens het Major-Minor Model Curriculumcommissie

Nadere informatie

Practicumhandleiding. (versie 2010)

Practicumhandleiding. (versie 2010) (versie 2010) Belangrijk! In deze handleiding treft u alle informatie aan die nodig is voor de uitvoering van het practicum. Behalve de organisatie van het practicum zelf en een korte beschrijving van

Nadere informatie

Praktische informatie m.b.t. College Lineaire Algebra en Beeldverwerking Bachelor Informatica en Economie 2 e jaar Voorjaar semester 2013 Docent:

Praktische informatie m.b.t. College Lineaire Algebra en Beeldverwerking Bachelor Informatica en Economie 2 e jaar Voorjaar semester 2013 Docent: Praktische informatie m.b.t. College Lineaire Algebra en Beeldverwerking Bachelor Informatica en Economie 2 e jaar Voorjaar semester 2013 Docent: D.P. Huijsmans LIACS Universiteit Leiden College Lineaire

Nadere informatie

Bijlagen bacheloropleiding Kunstmatige Intelligentie 2012-2013

Bijlagen bacheloropleiding Kunstmatige Intelligentie 2012-2013 Bijlagen bacheloropleiding Kunstmatige Intelligentie 2012-2013 Bijlage I Eindtermen van de bacheloropleiding Met de opleiding wordt beoogd: - inhoudelijke kennis, vaardigheid en inzicht op het gebied van

Nadere informatie

Bijlagen bacheloropleiding Kunstmatige Intelligentie

Bijlagen bacheloropleiding Kunstmatige Intelligentie Bijlagen bacheloropleiding Kunstmatige Intelligentie 2010-2011 Bijlage I Eindtermen van de bacheloropleiding (artikel 1.3) Met de opleiding wordt beoogd: - inhoudelijke kennis, vaardigheid en inzicht op

Nadere informatie

Werkdocument Major-Minor Informatica

Werkdocument Major-Minor Informatica Werkdocument Major-Minor Informatica Wim Hesselink, Jan Jongejan, Jos Roerdink Laatst gewijzigd: 18 oktober 2005 Inhoudsopgave 1 Inleiding 1 2 ACM/IEEE Computing Curricula 2 2.1 ACM/IEEE Computing Curricula

Nadere informatie

Programmeren met Java

Programmeren met Java Modulehandleiding voor Programmeren met Java PRO1 Progress code : PRO1 Schooljaar : 2012 2013 Docenten : R.van den Ham / U. Van Heesch Module omvang : 6 credits, 168 studiebelastingsuren Doel Inleiding

Nadere informatie

vwo A deel 4 13 Mathematische statistiek 14 Algebraïsche vaardigheden 15 Toetsen van hypothesen 16 Toepassingen van de differentiaalrekening

vwo A deel 4 13 Mathematische statistiek 14 Algebraïsche vaardigheden 15 Toetsen van hypothesen 16 Toepassingen van de differentiaalrekening vwo A deel 4 13 Mathematische statistiek 13.1 Kansberekeningen 13.2 Kansmodellen 13.3 De normale verdeling 13.4 De n -wet 13.5 Discrete en continue verdelingen 13.6 Diagnostische toets 14 Algebraïsche

Nadere informatie

Studiewijzer Digitale Systeemengineering , versie 1.7, , J.E.J. op den Brouw

Studiewijzer Digitale Systeemengineering , versie 1.7, , J.E.J. op den Brouw 2017/2018 Elektrotechniek Semester 1.2 Studiewijzer Digitale Systeemengineering 2 (E DIGSE2 13 ) 3 studiepunten Verantwoordelijk docent: Jesse op den Brouw J.E.J.opdenBrouw@hhs.nl Overige docent(en): Wasif

Nadere informatie

Studiewijzer Inleiding Digitale Techniek, versie 1.6, , J.E.J. op den Brouw

Studiewijzer Inleiding Digitale Techniek, versie 1.6, , J.E.J. op den Brouw 2018/2019 Elektrotechniek Semester 1.1 Studiewijzer Inleiding Digitale Techniek (E-INLDIG-13 ) 3 studiepunten Verantwoordelijk docent: Jesse op den Brouw J.E.J.opdenBrouw@hhs.nl Overige docent(en): Ben

Nadere informatie

Inhoud introductie. Introductie tot de cursus

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

Nadere informatie

Introductie tot de cursus

Introductie tot de cursus Introductie tot de cursus 1 Inleiding 7 2 Het cursusmateriaal 7 3 Structuur, symbolen en taalgebruik 8 4 Voorkennis 9 5 De cursus bestuderen 9 6 Studiebegeleiding 10 7 Het tentamen 11 Introductie tot de

Nadere informatie

Bijlagen Bacheloropleiding Kunstmatige Intelligentie. Bijlage I Eindtermen van de bacheloropleiding

Bijlagen Bacheloropleiding Kunstmatige Intelligentie. Bijlage I Eindtermen van de bacheloropleiding voor Bijlagen Bacheloropleiding Kunstmatige Intelligentie Bijlage I Eindtermen van de bacheloropleiding Met de opleiding wordt beoogd: - inhoudelijke kennis, vaardigheid en inzicht op het gebied van Kunstmatige

Nadere informatie

Referentieniveaus uitgelegd. 1S - rekenen Vaardigheden referentieniveau 1S rekenen. 1F - rekenen Vaardigheden referentieniveau 1F rekenen

Referentieniveaus uitgelegd. 1S - rekenen Vaardigheden referentieniveau 1S rekenen. 1F - rekenen Vaardigheden referentieniveau 1F rekenen Referentieniveaus uitgelegd De beschrijvingen zijn gebaseerd op het Referentiekader taal en rekenen'. In 'Referentieniveaus uitgelegd' zijn de niveaus voor de verschillende sectoren goed zichtbaar. Door

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

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

RuG-Informatica-cursus Discrete Structuren, versie 2009/2010

RuG-Informatica-cursus Discrete Structuren, versie 2009/2010 RuG-Informatica-cursus Discrete Structuren, versie 2009/2010 Handout 5A Jan Terlouw maandag 8 maart 2010 1 Algemeen over DS in deze week Nadere belichting van stof van week 4 (mede i.v.m. toets). Bij het

Nadere informatie

Helden van de wiskunde: L.E.J. Brouwer Brouwers visie vanuit een logica-informatica perspectief

Helden van de wiskunde: L.E.J. Brouwer Brouwers visie vanuit een logica-informatica perspectief Helden van de wiskunde: L.E.J. Brouwer Brouwers visie vanuit een logica-informatica perspectief Herman Geuvers Radboud Universiteit Nijmegen Technische Universiteit Eindhoven 1 Helden van de wiskunde:

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep CW KAHO Sint-Lieven Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be

Nadere informatie

: Afstudeerproject BSc KI : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : semester 2, periode 5 en 6

: Afstudeerproject BSc KI : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : semester 2, periode 5 en 6 Studiewijzer BACHELOR OPLEIDING KUNSTMATIGE INTELLIGENTIE Vak : Afstudeerproject BSc KI Opleiding : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : 2015-2016 semester 2, periode 5 en

Nadere informatie

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Uitwerking tentamen Analyse van Algoritmen, 29 januari Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4

Nadere informatie

LANDSEXAMEN VWO Het examenprogramma Het examenprogramma voor het commissie-examen Wiskunde D bestaat uit de volgende (sub)domeinen:

LANDSEXAMEN VWO Het examenprogramma Het examenprogramma voor het commissie-examen Wiskunde D bestaat uit de volgende (sub)domeinen: LANDSEXAMEN VWO 2017-2018 Examenprogramma WISKUNDE D (V.W.O. ) (nieuw programma) 1 Het eindexamen Wiskunde D kent slechts het commissie-examen. Er is voor wiskunde D dus geen centraal schriftelijk examen.

Nadere informatie

Praktische Numerieke Wiskunde

Praktische Numerieke Wiskunde Wiskunde, Utrecht Praktische Numerieke Wiskunde Gerard Sleijpen Paul Zegeling Department of Mathematics http://www.math.uu.nl/people/sleijpen Gerard Sleijpen Kamer 504, WG Tel: 030-2531732 sleijpen@math.uu.nl

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 Uitgangspunten, plaats en globale doelstelling van de cursus 5 2 Inhoud van de cursus 5 3 De structuur van het schriftelijk materiaal 6 4 Het bestuderen van de cursus

Nadere informatie

Studiehandleiding Basiswiskunde cursus

Studiehandleiding Basiswiskunde cursus Studiehandleiding Basiswiskunde cursus 2008 2009 Materiaal Bij dit college heb je nodig: Het boek Basisboek wiskunde van Jan van de Craats en Rob Bosch Isbn: 90 430 1156 8 De syllabus Aanvulling basiscursus

Nadere informatie

Formeel Denken 2014 Uitwerkingen Tentamen

Formeel Denken 2014 Uitwerkingen Tentamen Formeel Denken 2014 Uitwerkingen Tentamen (29/01/15) 1. Benader de betekenis van de volgende Nederlandse zin zo goed mogelijk (6 punten) door een formule van de propositielogica: Als het regent word ik

Nadere informatie

Programmeren. Inleiding

Programmeren. Inleiding Programmeren Inleiding STAPPEN IN DE ONTWIKKELING VAN EEN PROGRAMMA 1. Probleem 1. Probleem Ideaal gewicht berekenen Wortel van een vierkantsvergelijking berekenen Schaakspel spelen Boekhouding doen 2.

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

Modulen voor Calculus- en Analysevakken

Modulen voor Calculus- en Analysevakken Modulen voor Calculus- en Analysevakken Versie juni 2005 Deze indeling in modulen is zoveel mogelijk onafhankelijk van enig leerboek. Echter, om de invulling ervan concreet te maken is er aangegeven waar

Nadere informatie

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen.

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen. WIS14 1 14 Grafen 14.1 Grafen Gerichte grafen Voor een verzameling V is een binaire relatie op V een verzameling geordende paren van elementen van V. Voorbeeld: een binaire relatie op N is de relatie KleinerDan,

Nadere informatie

Logica voor Informatica

Logica voor Informatica Logica voor Informatica 10 Predikatenlogica Wouter Swierstra University of Utrecht 1 Vorige keer Syntax van predikatenlogica Alfabet Termen Welgevormde formulas (wff) 2 Alfabet van de predikatenlogica

Nadere informatie

Bachelorproject (15 EC), BSK. Docent: MSc, Drs. C. Nagtegaal

Bachelorproject (15 EC), BSK. Docent: MSc, Drs. C. Nagtegaal Vakbeschrijvingen derde jaar EBM: In het derde jaar volg je enkele verdiepende vakken, schrijf je de bachelorscriptie en heb je een vrije keuzeruimte. Je kunt deze ruimte invullen met keuzevakken (o.a.

Nadere informatie

Ontwerp van Algoritmen: opgaven weken 3 en 4

Ontwerp van Algoritmen: opgaven weken 3 en 4 0 Ontwerp van Algoritmen: opgaven weken 3 en 4 Voor alle volgende opgaven over programmaatjes geldt de spelregel: formuleer altijd eerst alle bewijsverplichtingen. selectie 45. (tail distribution)(prima

Nadere informatie

Studiewijzer Calculus 2 voor Bouwkunde (2DB90), cursus 2011/2012

Studiewijzer Calculus 2 voor Bouwkunde (2DB90), cursus 2011/2012 Studiewijzer Calculus 2 voor Bouwkunde (2DB90), cursus 2011/2012 Inleiding In de cursus Calculus 2 voor Bouwkunde (2DB90) wordt evenals in de cursus Calculus 1 gebruikt het boek: Calculus, Early Transcendental

Nadere informatie

Programmeren in Java 2

Programmeren in Java 2 / CMI Programmeren in Java 2 Tinpro01-2 Aantal studieunten: 2 ects Modulebeheerder: Wessel Oele Goedgekeurd door: (namens toetscommissie) Datum: Tinpro01-2 12 november 2015 Inhoudsopgave 1 Algemene omschrijving

Nadere informatie

Je hebt twee uur de tijd voor het oplossen van de vraagstukken. µkw uitwerkingen. 12 juni 2015

Je hebt twee uur de tijd voor het oplossen van de vraagstukken. µkw uitwerkingen. 12 juni 2015 Je hebt twee uur de tijd voor het oplossen van de vraagstukken. Elk vraagstuk is maximaal 10 punten waard. Begin elke opgave op een nieuw vel papier. µkw uitwerkingen 12 juni 2015 Vraagstuk 1. We kunnen

Nadere informatie

Ter Leering ende Vermaeck

Ter Leering ende Vermaeck Ter Leering ende Vermaeck 15 december 2011 1 Caleidoscoop 1. Geef een relatie op Z die niet reflexief of symmetrisch is, maar wel transitief. 2. Geef een relatie op Z die niet symmetrisch is, maar wel

Nadere informatie

Mededelingen. TI1300: Redeneren en Logica. Metavariabelen Logica, p Minder connectieven nodig

Mededelingen. TI1300: Redeneren en Logica. Metavariabelen Logica, p Minder connectieven nodig Mededelingen TI1300: Redeneren en Logica College 5: Semantiek van de Propositielogica Tomas Klos Algoritmiek Groep Tip: Als ik je vraag de recursieve definitie van een functie over PROP op te schrijven,

Nadere informatie

Vernieuwing Bacheloropleidingen Informatica en Informatiekunde

Vernieuwing Bacheloropleidingen Informatica en Informatiekunde Vernieuwing Bacheloropleidingen Informatica en Informatiekunde Tanja Vos, Remko Helms, Janine Voncken, Evert van de Vrie TouW Informatica symposium 19 november 2016 Nieuwe koers De Open Universiteit wil

Nadere informatie

Algoritmiek. 2 februari Introductie

Algoritmiek. 2 februari Introductie College 1 Algoritmiek 2 februari 2017 Introductie 1 Introductie -1- docent: Rudy van Vliet rvvliet@liacs.nl assistent werkcollege: Bart van Strien bartbes@gmail.com website: http://www.liacs.leidenuniv.nl/~vlietrvan1/algoritmiek/

Nadere informatie

Processoren. Marc Seutter & David N. Jansen 12 November 2013

Processoren. Marc Seutter & David N. Jansen 12 November 2013 Processoren Marc Seutter & David N. Jansen 12 November 2013 Leerdoel opbouw van de hardware in een computer je construeert een (eenvoudige) processor je schrijft een (kort) assembly-programma je kunt uitleggen:

Nadere informatie

Oefening 2.2. Welke van de volgende beweringen zijn waar?

Oefening 2.2. Welke van de volgende beweringen zijn waar? Oefeningen op hoofdstuk 2 Verzamelingenleer 2.1 Verzamelingen Oefening 2.1. Beschouw A = {1, {1}, {2}}. Welke van de volgende beweringen zijn waar? Beschouw nu A = {1, 2, {2}}, zelfde vraag. a. 1 A c.

Nadere informatie

Hoorcollege 1 datavisualisatie 21-11-12

Hoorcollege 1 datavisualisatie 21-11-12 Hoorcollege 1 21-11-12 docenten! http://vimeo.com/31244010#at=10 hoorcollege 1 introductie HVA CMD V2 21 november 2012!! justus sturkenboom! j.p.sturkenboom@hva.nl! yuri westplat! y.westplat@hva.nl! vandaag

Nadere informatie

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk. HOOFDSTUK 3 3.1 Stapsgewijs programmeren In de vorige hoofdstukken zijn programmeertalen beschreven die imperatief zijn. is het stapsgewijs in code omschrijven wat een programma moet doen, net als een

Nadere informatie

rh276a 0 We breiden nu bovenstaand programmafragment uit door assignments toe te voegen aan een nieuwe variabele m, aldus:

rh276a 0 We breiden nu bovenstaand programmafragment uit door assignments toe te voegen aan een nieuwe variabele m, aldus: rh276a 0 Een paar praktische stellinkjes 0 Standaardeindiging stelling (standaardeindiging 0) : Het volgende programmafragment eindigt, heeft als repetitie-invariant 0 n n N en als variante functie N n

Nadere informatie

Java. Basissyllabus. Egon Pas

Java. Basissyllabus. Egon Pas Java Basissyllabus Egon Pas 2011 BeanPole bvba Gasmeterlaan 92-9000 Gent BTW BE 472.902.516 Tel: + 32 9 224 42 17 Fax: + 32 9 223 62 88 www.beanpole.be info@beanpole.be 1 Programmeren 1.1 Hoe werkt een

Nadere informatie

Grafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel.

Grafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel. Grafen Grafen Een graaf bestaat uit een verzameling punten (ook wel knopen, of in het engels vertices genoemd) en een verzameling kanten (edges) of pijlen (arcs), waarbij de kanten en pijlen tussen twee

Nadere informatie

CURSUSBESCHRIJVING Deel 1

CURSUSBESCHRIJVING Deel 1 CURSUSBESCHRIJVING Deel 1 Cursuscode(s) Opleiding Cursusnaam Cursusnaam Engels : PABFMT14X : Pabo : Gecijferdheid 7, Factoren, Machten en Talstelsels : [vertaling via BB] Studiepunten : 1 Categorie Cursusbeheerder

Nadere informatie

Scientific Computing

Scientific Computing WISB356, Utrecht, 10 september 2012 Scientific Computing Gerard Sleijpen Rob Bisseling Alessandro Sbrizzi Department of Mathematics http://www.staff.science.uu.nl/ sleij101/ Docenten Gerard Sleijpen WG

Nadere informatie

In Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen.

In Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen. Leerlijn programmeren In Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen. Deze leerlijn is opgebouwd aan de

Nadere informatie

Voortgezet Prog. voor KI

Voortgezet Prog. voor KI Voortgezet Prog. voor KI Docent: Michael Wilkinson IWI 142 tel. 050-3638140 (secr. 3633939) Frank Brokken RC 352 tel. 050-3633688 Voorkennis: Inleiding Programmeren voor KI (nieuwe stijl) Stof: Practicum

Nadere informatie

Eindtermen Lineaire Algebra voor E vor VKO (2DE01)

Eindtermen Lineaire Algebra voor E vor VKO (2DE01) Eindtermen Lineaire Algebra voor E vor VKO (2DE01) dr. G.R. Pellikaan 1 Voorkennis Middelbare school stof van wiskunde en natuurkunde. Eerste gedeelte (Blok A) van Lineaire Algebra voor E (2DE04). 2 Globale

Nadere informatie

Het toelatingsonderzoek, bedoeld in art van de wet, heeft betrekking op de volgende vakken op VWO-niveau: Wiskunde A of B en Engels.

Het toelatingsonderzoek, bedoeld in art van de wet, heeft betrekking op de volgende vakken op VWO-niveau: Wiskunde A of B en Engels. Opleidingsspecifieke deel OER, 2012-2013 BA Kunstmatige intelligentie Artikel Tekst 2.3 Colloquium doctum Het toelatingsonderzoek, bedoeld in art. 7.29 van de wet, heeft betrekking op de volgende vakken

Nadere informatie

Python (gem=1,86) Java (gem=1,57) Enquete cursus informatica 1e bachelors oefeningen beter aansluiten bij project?

Python (gem=1,86) Java (gem=1,57) Enquete cursus informatica 1e bachelors oefeningen beter aansluiten bij project? Enquete cursus informatica 1e bachelors 216-217 Python (gem=1,86) Java (gem=1,7) 3 3 2 2 1 1 3 2 1-1 -2-3 3 2 1-1 -2-3 2 Combinatie python va (gem=1,6) 1 Hoe is de overgang python2va 1 1 3 2 1-1 -2-3 3

Nadere informatie

Inleiding programmeren

Inleiding programmeren Inleiding programmeren Natuurkunde, jaar 1 - september 2018 Kelly Veerman, Vera Schild, Madelon Geurts, Tom Konijn, Martijn Stegeman & Ivo van Vulpen studie natuurkunde Quantummechanica, (algemene) relativiteitstheorie,...

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

PTA VWO wiskunde B 1518

PTA VWO wiskunde B 1518 PTA VWO wiskunde B 1518 Inleiding Bij het vak wiskunde B leren leerlingen parate kennis en vaardigheden aan om daarmee wiskundige denkactiviteiten te ontplooien en te ontwikkelen. Met dit wiskundig denkvermogen

Nadere informatie

Onderwijsbehoeften: - Korte instructie - Afhankelijk van de resultaten Test jezelf toevoegen Toepassing en Verdieping

Onderwijsbehoeften: - Korte instructie - Afhankelijk van de resultaten Test jezelf toevoegen Toepassing en Verdieping Verdiepend Basisarrange ment Naam leerlingen Groep BBL 1 Wiskunde Leertijd; 5 keer per week 45 minuten werken aan de basisdoelen. - 5 keer per week 45 minuten basisdoelen toepassen in verdiepende contexten.

Nadere informatie

RuG-Informatica-cursus Discrete Structuren, versie 2009/2010

RuG-Informatica-cursus Discrete Structuren, versie 2009/2010 RuG-Informatica-cursus Discrete Structuren, versie 2009/2010 Handout 1 Jan Terlouw maandag 8 februari 2010 1 Algemene gegevens over deze cursus DS. Docenten. Jan Terlouw (hoorcollege) en Piter Dykstra

Nadere informatie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie Hoofdstuk 5 Recursion I N T R O D U C T I E Veel methoden die we op een datastructuur aan kunnen roepen, zullen op een recursieve wijze geïmplementeerd worden. Recursie is een techniek waarbij een vraagstuk

Nadere informatie

Domein A: Vaardigheden

Domein A: Vaardigheden Examenprogramma Wiskunde A havo Het eindexamen bestaat uit het centraal examen en het schoolexamen. Het examenprogramma bestaat uit de volgende domeinen: Domein A Vaardigheden Domein B Algebra en tellen

Nadere informatie

Introductie tot de cursus

Introductie tot de cursus 1 Plaats en functie van de cursus Software engineering is het vakgebied dat zich bezighoudt met alle aspecten van het doelmatig produceren van hoogwaardige software die vanwege de omvang of complexiteit

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 2 september 2007 voor deeltijdstudenten Kop van Zuid Rotterdam, 3 juni 2007 Even voorstellen Naam: Wessel Oele(31) Docent bij opleiding technische informatica Kamer: I210 (tweede verdieping, links de gang

Nadere informatie

Officiële uitgave van het Koninkrijk der Nederlanden sinds 1814.

Officiële uitgave van het Koninkrijk der Nederlanden sinds 1814. STAATSCOURANT Officiële uitgave van het Koninkrijk der Nederlanden sinds 1814. Nr. 7228 14 maart 2014 Regeling van de Staatssecretaris van Onderwijs, Cultuur en Wetenschap van 22 februari 2014, nr. VO/599178,

Nadere informatie

Eigenschap (Principe van welordening) Elke niet-lege deelverzameling V N bevat een kleinste element.

Eigenschap (Principe van welordening) Elke niet-lege deelverzameling V N bevat een kleinste element. Hoofdstuk 2 De regels van het spel 2.1 De gehele getallen Grof gezegd kunnen we de (elementaire) getaltheorie omschrijven als de wiskunde van de getallen 1, 2, 3, 4,... die we ook de natuurlijke getallen

Nadere informatie

Datastructuren en algoritmen voor CKI

Datastructuren en algoritmen voor CKI Datastructuren en algoritmen voor CKI Jeroen Bransen 1 2 september 2015 1 met dank aan Hans Bodlaender en Gerard Tel Organisatie Website Vakwebsite: http://www.cs.uu.nl/docs/vakken/ki2v12009/ Bevat alle

Nadere informatie

Programmeren in C++ (deel 1)

Programmeren in C++ (deel 1) FHT&L MODULE BESCHRIJVING Programmeren in C++ (deel 1) PRO4 Samenstelling: Cees van Tilborg, Thijs Dorssers Datum: september 2011 Versie: 1h Titel: Programmeren in C++ Identificatie Progresscode: PRO4

Nadere informatie

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017 Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.

Nadere informatie

PTA VWO wiskunde A 1518

PTA VWO wiskunde A 1518 PTA VWO wiskunde A 1518 Inleiding Wiskunde A is wiskunde waarin vooral gewerkt wordt vanuit realistische contexten. Vaak is het lastig om de wiskundige inhoud uit de context te halen en daar wordt dan

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

Onderwijs- en Examenregeling van de opleiding Informatica aan de Universiteit Utrecht

Onderwijs- en Examenregeling van de opleiding Informatica aan de Universiteit Utrecht Onderwijs- en Examenregeling van de opleiding Informatica aan de Universiteit Utrecht vastgesteld door de Faculteitsraad op 23 juni 1998 Artikel 1 Artikel 2 Artikel 3 Artikel 4 Artikel 5 Toepasselijkheid

Nadere informatie