Informatica 2e semester

Maat: px
Weergave met pagina beginnen:

Download "Informatica 2e semester"

Transcriptie

1 Informatica 2 e semester: les 7 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei

2 Is er een machine die even slim of zelfs slimmer is als de mens!?

3 HAL Film 1968

4 Computer HAL

5 Vandaag 1. Puzzel: herhaling & vervolg 2. Spel: minimax 3. Non-zero sum game 4. Leren 5. Deel III: slimme algoritmen versus intelligentie

6 Herhaling

7 Oplossingsmethoden p. 31 Type 1: De oplossing kan berekend worden met een formule (analytisch). Type 2: Je kunt de oplossing gericht zoeken of construeren (rechttoe-rechtaan). Type 3: Je gaat alle mogelijke actiesequenties af om een oplossing te vinden. Type 4: Door slimme keuzes (heuristieken) te maken, kan je verschillende actiesequenties uitsluiten. Type 5: Je leert al doende welke de juiste keuzes zijn. Jan Lemeire Pag. 7 / 94

8 p. 33 Doorploeteren zoekboom = Brute-force search 2 mogelijkheden: depth-first : a-b-e-j-k-c-f-g-l-m-n-d-h-o-p-i-q = backtracking breadth-first: a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q

9 Domme rekenkracht Brute force: puur rekenen Niet echt intelligent Echter: zoekruimte wordt snel te groot! 10 stappen > mogelijke sequenties 6x6 puzzel > 100 stappen > mogelijke sequenties Kunnen we gerichter zoeken? Jan Lemeire Pag. 9 / 94

10 Oplossingsmethoden p. 31 Type 1: De oplossing kan berekend worden met een formule (analytisch). Type 2: Je kunt de oplossing gericht zoeken of construeren (rechttoe-rechtaan). Type 3: Je gaat alle mogelijke actiesequenties af om een oplossing te vinden. Type 4: Door slimme keuzes (heuristieken) te maken, kan je verschillende actiesequenties uitsluiten. Type 5: Je leert al doende welke de juiste keuzes zijn. Jan Lemeire Pag. 10 / 94

11 Gericht zoeken: greedy search p. 36 Kies actie die oplossing korter bij brengt Gebaseerd op een score Puzzel: Manhattan-afstand van stukje tot eindpositie Sommeren over alle stukjes Jan Lemeire Pag. 11 / 94

12 OK

13 stukje 2 & 3 verwisselen in beginpositie NOK in de toekomst kijken noodzakelijk Idee student Ruben Pauwels (examen juni 2016): greedy search combineren met backtracking: als je vast zit, keer je terug op je stappen en neemt het tweede-beste pad.

14 Slimme algoritmen vervolg

15 Onvolledig in cursus Best-first search Idee student Ruben Pauwels (examen juni 2016): greedy search combineren met backtracking: als je vast zit, keer je terug op je stappen en neemt het tweede-beste pad. Dus: sorteren op score, in een lijst de open nodes bijhouden Open nodes = tot waar je gekomen bent in de verschillende takken die je al bekeken hebt PriorityQueue gebruiken: sorteert de elementen volgens score (ascending/opklimmend: laagste eerste) Implementatie = breadthfirst, maar dan PriorityQueue ipv FIFOQueue Jan Lemeire Pag. 15 / 94

16 Code breadth-first => best-first niet in cursus public static <Zet> boolean breadthfirst bestfirst (ZoekNode<Zet> startnode){ PriorityQueue FIFOQueue<ZoekNode<Zet>> opennodes = new FIFOQueue<ZoekNode<Zet>>(1000); PriorityQueue opennodes.add(startnode); while(!opennodes.isempty()){ ZoekNode<Zet> node = opennodes.get(); poll() } List<Zet> zetten = node.possiblemoves(); for(zet zet: zetten ){ ZoekNode<Zet> child = node.clone(); //copy!! child.move(zet); if (child.issolution()){ System.out.println("Oplossing gevonden!"); return true; } opennodes.add(child); } } return false; // geen oplossing gevonden

17 A-star: voorbeeld Foutief in cursus Robot moet weg vinden (rood -> groen) g-score = afstand vanaf start h-score = afstand tot doel Staat niet vermeld Laagste scores (g-score + h-score) worden eerst bekeken: hierop sorteren met PriorityQueue Alles is hetzelfde als best-first, enkel dat g-score wordt toegevoegd Staat niet vermeld

18 A-star Net als bij breadth-first houden we een lijst bij van open nodes, maar nu een priorityqueue (en niet een FIFOqueue) waarbij de elementen gesorteerd worden naargelang hun score Iteratief worden de nodes met laagste score eerst behandeld Jan Lemeire Pag. 18 / 94

19 Code breadth-first => astar public static <Zet> boolean breadthfirst astar (ZoekNode<Zet> startnode){ PriorityQueue FIFOQueue<ZoekNode<Zet>> opennodes = new FIFOQueue<ZoekNode<Zet>>(1000); PriorityQueue opennodes.add(startnode); while(!opennodes.isempty()){ ZoekNode<Zet> node = opennodes.get(); poll() } List<Zet> zetten = node.possiblemoves(); for(zet zet: zetten ){ ZoekNode<Zet> child = node.clone(); //copy!! child.move(zet); if (child.issolution()){ System.out.println("Oplossing gevonden!"); return true; } opennodes.add(child); } } return false; // geen oplossing gevonden

20 p. 38 Score-optimalisatie Iteratief tot oplossing: Zoekboom uitwerken tot een zekere diepte (horizon), vervolgens hoogste score selecteren Stapje zetten en opnieuw de zoekboom uitwerken tot de horizon (dus 1 stapje verder) Jan Lemeire Pag. 20 / 94

21 Score-optimalisatie Boom van 4 diep: 3 RIGHT LEFT UP UP UP LEFT RIGHT LEFT UP RIGHT UP DOWN UP DOWN UP LEFT UP LEFT RIGHT UP RIGHT RIGHT RIGHT LEFT LEFT 5 DOWN DOWN Jan Lemeire Pag. 21 / 94

22 Score-optimalisatie stap 2 Boom uitwerken vanaf Met diepte 4 komen we er niet NOK Wat is noodzakelijke horizon om oplossing te bereiken? Jan Lemeire Pag. 22 / 94

23 Score in zoekruimte Probleem: terechtkomen in lokaal maximum Jan Lemeire Pag. 23 / 94

24 p. 40 Fitness landscape Biologische evolutie van soorten Fitheid: bepaald door zijn aangepastheid aan de omgeving Natuurlijke selectie Verandering bouw en het gedrag door genetische mutaties Evolutie van soorten Klimmen en sprongen door het fitness landscape elke stabiele soort op een bergtopje zit Evolutie nabootsen: genetisch algoritme Jan Lemeire Pag. 24 / 94

25 Genetisch algoritme Initële populatie Sommige individuën muteren Enkel de besten overleven Jan Lemeire Pag. 25 / 94

26 p. 41 Verdere verbeteringen puzzelalgoritme a) Leren (type 5): zie later b) puzzel rij-per-rij afwerken. Behalve de laatste twee rijen, die tegelijkertijd aanpakken Beperkte horizon OK c) Regels opstellen Type 1 probleem Jan Lemeire Pag. 26 / 94

27 Hoe generiek programmeren? niet te kennen, optioneel als vervangvraag

28 Generieke implementatie Via abstractie is het algoritme algemeen bruikbaar Code + uitleg staat op website Java package zoeken Niet te kennen Optioneel: als vervangvraag (in de plaats van een andere vraag) interface Node { boolean isoplossing(); List<Zet> volgendezetten(); void doezet(zet zet); void ontdoezet(zet zet); Node clone(); } interface Zet{ } Jan Lemeire Pag. 28 / 94

29 Uitdaging: algemene oplossing onafhankelijk van het specifieke probleem dat je wenst op te lossen! Wat moet je weten om de boom aan te maken? Je moet de mogelijke acties kennen. Met de actie kom je in een nieuwe situatie, je bereikt een nieuwe toestand. Je wilt ook weten of je de gevraagde eindsituatie bereikt hebt. Allemaal operaties op de toestand Jan Lemeire Pag. 29 / 94

30 Document op website Probleemspecifieke code Link tussen algoritme en probleem gegeven door interface

31 NP-complete problemen

32 NP-compleet: p. 42 traveling salesman problem Meest efficiënte volgorde om alle steden af te lopen? 15! = mogelijke volgorden Jan Lemeire Pag. 32 / 94

33 NP-compleet Klasse van problemen Voor optimale oplossing: exponentiele zoektijd Zoekruimte = t d (t: aantal takken per node, d: diepte) je moet bijna alle mogelijkheden afgaan wil je zeker zijn de beste oplossing te vinden. Er bestaan geen grote shortcuts! Jan Lemeire Pag. 33 / 94

34 Een goede oplossing Maar niet te bewijzen dat optimaal zie Jan Lemeire Pag. 34 / 94

35 Spel

36 p. 43 Spel Je speelt tegen een tegenstander, hebt een aantal acties ter beschikking, speelt om beurten en er is een einddoel of eindscore bepaald. Of varianten hierop. Zero-sum game: iemand wint andere verliest Jan Lemeire Pag. 36 / 94

37 OXO: uitrekenbaar X begint possible games Zonder symmetrieen: Winst voor X: Winst voor O: Gelijkspel: Jan Lemeire Pag. 37 / 94

38 Schaken Evaluatiefunctie (score) 1. Waarde van de stukken 2. Positie van de koning 3. Controle over het middenveld (de 4 middelste vakjes) 4. Positie van de pionnen Bijvoorbeeld, of ze aaneensluitend gepositioneerd zijn 5. Positie van de stukken bijvoorbeeld, hoeveel de bewegingsvrijheid van elk stuk Jan Lemeire Pag. 38 / 94

39 Zoekboom met scores Wit & zwart spelen om beurten Score te maximaliseren door wit Wat moet wit doen: links of rechts? 4 White plays 5 6 Black plays White plays Black plays Jan Lemeire Pag. 39 / 94

40 Greedy search Wit kiest voor rechts, zwart voor links, wit voor links en zwart voor links Eindscore = 2 ( is laagste van de hele boom!) 4 White plays 5 6 Black plays White plays Black plays Jan Lemeire Pag. 40 / 94

41 Twee zetten vooruit denken Wit kiest nog steeds voor rechts, want zwart kiest dan voor links => score van 5. Als wit voor links koos zou zwart voor links kiezen => score van 3. Zwart kiest voor links, want daar kan wit slechts 7 behalen. Vervolgens kiest wit voor rechts want zwart kan daar slechts een score van 3 behalen. 4 White plays 5 6 Black plays White plays Black plays Jan Lemeire Pag. 41 / 94

42 p. 46 Minimax: wat doet zwart? Kiest zet die score minimaliseert White plays Enkel score van de laagste nodes is van belang!!! Black plays White plays Black plays MIN Jan Lemeire Pag. 42 / 94

43 Minimax: wat doet wit? Kiest zet die score maximaliseert White plays Black plays White plays MAX Black plays MIN Jan Lemeire Pag. 43 / 94

44 Minimax: zwart White plays Black plays MIN 6 White plays MAX 6 4 Black plays MIN Jan Lemeire Pag. 44 / 94

45 Minimax: wit beslist Links geeft score 6 (met horizon van 4) 6 White plays MAX Black plays MIN White plays MAX Black plays MIN Jan Lemeire Pag. 45 / 94

46 Snoeien van de boom Pruning Alfa-beta pruning: als tegenstander beschikt over een succesvolle actiesequentie => geen zin om dit deel verder te bekijken Voor sommige situaties dieper gaan Regels die hierover beslissen Jan Lemeire Pag. 46 / 94

47 Computer wint van Mens 1997: IBM s Deep Blue verslaat wereldkampioen Gary Kasparov Nadien enkele revanches van de mens, verschillende gelijke spelen, maar nu wordt geaccepteerd dat de computer sterker is Computerschaak Brute-force search: veel rekenen, weinig redeneren Evalueert 200 millioen posities per seconde Niet goed in strategisch denken Jan Lemeire Pag. 47 / 94

48 Is dit Artificiële Intelligentie? p. 47 Betwijfel het Jan Lemeire, An Alternative Approach for Playing Complex Games like Chess, Annual machine learning conference of Belgium and The Netherlands (BeneLearn 2008), Spa, Belgium zie mijn homepage Idee: opportuniteit (patronen) checken of einddoel gehaald kan worden enkel branches nagaan die relevant zijn? Gericht zoeken in boom mogelijk Jan Lemeire Pag. 48 / 94

49 Opportuniteit: vork Opportuniteit geslaagd Jan Lemeire Pag. 49 / 94

50 We bekijken enkel relevante zetten die invloed kunnen hebben (pruning) Opportuniteit: vork Opportuniteit teniet gedaan Jan Lemeire Pag. 50 / 94

51 Moeilijkheid: patronen We bekijken enkel relevante zetten die invloed kunnen hebben (pruning) Wat zijn de relevante zetten? Hoe herkennen we ze? Patronen definiëren/herkennen Jan Lemeire Pag. 51 / 94

52 Go Strategisch-tactisch bordspel waarbij mens nog steeds wint van computer Regel: als vijandelijke stukken zijn ingesloten Weg Hier: wit stukje op A plaatsen Jan Lemeire Pag. 52 / 94

53 16 maart 2016 AlphaGo defeats Lee Sedol 4 1 in Google DeepMind Challenge Match Jan Lemeire Pag. 53 / 94

54 Non-zero sum games

55 p. 48 Prisoner s dillema Henry & Dave beschuldigd van misdrijf Rechter roept hen apart bij zich en vraagt hen of de ander schuldig is Antwoord bepaalt straf: Henry zegt over Dave Dave zegt over Henry Jan Lemeire Pag. 55 / 94

56 Iterative Prisoner s dillema Samenwerken of bedriegen? Iteratief toepassen Op termijn speelt vertrouwen mee Cf vertrouwen op het internet om iets te kopen van een vreemde De basis van de speltheorie (game theory) in economie Er is een win-win situatie (samenwerking)! Jan Lemeire Pag. 56 / 94

57 Jan Lemeire Pag. 57 / 94

58 Loopgrachtenoorlog Resulteerde in bestanden tussen de soldaten van beide kanten Van akkoorden over eetpauzes tot afspraken over (ongevaarlijke) schietuurtjes om de officieren te plezieren (doen alsof er echt gevochten werd) Iterative prisoner s dilemma!! Je kan het bestand schenden en de ander bij verrassing aanvallen Maar op lange termijn heb je meer baat bij samenwerking De legerstaf moest maatregelen nemen om deze natuurlijke evolutie tegen te gaan Jan Lemeire Pag. 58 / 94

59 Iterative Prisoner s dillema Samenwerken of bedriegen? Wat is beste strategie? Toernooien worden gespeeld Elk duel bestaat uit 100 opeenvolgende beslissingen Winnaar: oog-om-oog, tand-om-tand Laatste zet tegenstander Volgende zet Samenwerking Verraad Verraad Samenwerking Jan Lemeire Pag. 59 / 94

60 Leren

61 Oplossingsmethoden Type 1: De oplossing kan berekend worden met een formule (analytisch). Type 2: Je kunt de oplossing gericht zoeken of construeren (rechttoe-rechtaan). Type 3: Je gaat alle mogelijke actiesequenties af om een oplossing te vinden. Type 4: Door slimme keuzes (heuristieken) te maken, kan je verschillende actiesequenties uitsluiten. Type 5: Je leert al doende welke de juiste keuzes zijn. Jan Lemeire Pag. 61 / 94

62 Een computer van Google DeepMind heft zichzelf 49 spelletjes op de klassieke Atari 2600-console aangeleerd, en spelt nu even goed of beter dan een mens. Kinderspel? Allerminst. Misschien is het zelfs een doorbraak in artificiële intelligentie. De Standaard 26 februari 2015

63 p. 49 Leren: de theorie Te definiëren de mogelijke toestanden de mogelijke acties de beloning/straf Strategie Staat -> actie State space staat 1 staat 2 staat 3 staat 4 State space staat 1 staat 2 staat 3 staat 4 Action space actie 1 actie 2 actie 3 Action space actie 1 actie 2 actie 3 Jan Lemeire Pag. 63 / 94

64 Reinforcement learning Matrix van gewichten bijhouden Gewicht geeft effectiviteit van actie aan actie 1 actie 2 actie 3 staat 1 staat 2 staat 3 staat Initieel: alle gewichten gelijk Exploratiefase: acties worden willekeurig gekozen Later: keuze ~ gewicht (P(actie) ~ gewicht) Exploitatiefase: actie met grootste gewicht kiezen goed om soms andere acties te kiezen, want het spel kan dynamisch veranderen Jan Lemeire Pag. 64 / 94

65 Reinforcement learning: update Als winst/verlies, de laatste acties belonen/afstraffen eventueel met forgetting factor : kleinere aanpassing voor oudere acties staat 2 actie 1 staat 3 actie 1 staat 1 actie 2 staat 1 actie 3 staat Winst 10 Jan Lemeire Pag. 65 / 94

66 Iterative Prisoner s Dilemma Reinforcement learning Gebaseerd op n laatste zetten n=2: 16 mogelijkheden Gewicht voor de volgende zet aanpassen als tegenstander het omgekeerde doet Leidt dit tot een goede strategie?? Laatste zetten S/S S/V S/S S/S S/S V/V S/S V/S Als tegenstander Verraad Samenwerking Volgende zet Samenwerking Verraad % +5% +5% -5% Jan Lemeire Pag. 66 / 94

67 Mijn masterproef De evolutie naar coöperatie Egoistische robotjes leren samenwerken omdat het hun wederzijds voordeel oplevert (win-win) Mijn onderzoek: onder welke voorwaarden ontstaat er coöperatie? Jan Lemeire Pag. 67 / 94

68 Jan Lemeire Pag. 68 / 94

69 p. 51 Blad-steen-schaar Laatste zet bl bl bl - st bl - sc st bl st - st st - sc sc bl sc - st sc - sc blad Volgende zet steen schaar Enkel laatste zet beschouwen: 9x3 gewichten Jan Lemeire Pag. 69 / 94

70 Patroon gebruiken Laatste zet winst verlies gelijk verander Volgende zet blijf random Slechts 9 gewichten te leren Jan Lemeire Pag. 70 / 94

71 p. 52 Minimax: Leren van evaluatiefunctie Net zoals bij de schuifpuzzel kunnen we onmogelijk voor elke situatie de beste actie leren Wel mogelijk: Aanpassen van parameters met behulp van feedback (winst of verlies) Voorbeeld: gewichten van de score-functie, aangezien deze uit meerdere delen bestaat. Zoals evaluatiefunctie van schaken Jan Lemeire Pag. 71 / 94

72 Probleem: explosie van staten Stel: voor elke toestand (staat) willen we beste zet leren Schuifpuzzel: 9! mogelijke configuraties Schaken: nog groter Te veel mogelijkheden om voor elke toestand de beste actie te leren (mapping van staat op actie)! Mogelijke oplossing: abstracte regels gebruiken Als X, doe actie Y X: eigenschap van staat geldt dus voor meerdere staten! Leren van relevantie van regels (zie scorefunctie) Jan Lemeire Pag. 72 / 94

73 Hoofdstuk 9: Artificiële intelligentie Jan Lemeire Pag. 73 / 94

74 Waarmaken van Leibniz s droom (9) Artificiële intelligentie (8) Communicatie & internet (7) Operating system (6) Computatietheorie & Software (5) Efficiënt productieproces (4) Hardware architectuur Elektronica: (2) relais -schakeling, (3)geheugen (1) Digitaal & binair (0) Het idee Informatica deel III: technologie, historiek en economische aspecten

75 Artificiële Intelligentie, de grote uitdaging

76 Is er een machine die even slim of zelfs slimmer is als de mens!? Volgende vragen kunnen beantwoorden: Wat is volgens u intelligentie? Is de huidige computer al intelligent? Al goed op weg? En in de toekomst?

77 Wanneer spreken we over intelligentie? Er is verschil tussen slimme algoritmen en intelligentie! Type A: Patronen herkennen Type B: Symbolisch = tekens die een betekenis (semantiek) hebben begrijpen is noodzakelijk voor intelligentie

78 AI: Type (A) toepassingen Stemherkenning Wat je zegt lukt redelijk momenteel maar herkennen wie spreekt, kan computer niet Spreken met de computer, zullen we het ooit? willen we het? Objectherkenning Vbn: security, gezichtsherkenning in facebook, verkeersbordherkenning, nummerplaatherkenning bij ingang VUB Echter moeilijk bij slecht weer, donkerte, Spel: patronen bepalen strategie/tactiek Computer = brute force, niet met gebruiken van patronen Al mooie resultaten worden behaald. Maar robots kunnen nog niet voetballen ofzo

79 Automatische verkeersbordherkenning in de auto

80 INPUT OUTPUT Verkeersbordherkenning Met een neuraal netwerk (gebaseerd op hoe hersens werken) OUTPUT: Code van verkeersbord Zo n neuraal netwerk is ook de basis van deep learning, de nieuwste hype en basis van Google s intelligente systemen. De gewichten van het hele network worden geleerd, ook de diepste lagen.

81 Een computer van Google DeepMind heft zichzelf 49 spelletjes op de klassieke Atari 2600-console aangeleerd, en spelt nu even goed of beter dan een mens. Kinderspel? Allerminst. Misschien is het zelfs een doorbraak in artificiele intelligentie. De Standaard 26 februari 2015

82 AI: type (B) toepassingen Google search Ask Jeeves: je kan vragen stellen Vertalingen: hoe goed/slecht is Google Translate? Consumentenprofiel adhv historische gegevens Grootwarenhuizen Facebook, google: aangepaste reclama Recent: gebruik in USA om politieke voorkeur te beïnvloeden Is dit intelligent??

83 Wanneer spreken we over intelligentie? Er is een verschil tussen slimme algoritmen en intelligentie! Veel van wat we intelligent noemen is in feite slechts gebaseerd op een goed doordacht algoritme Het leeralgoritme van Google Deepmind heeft veel tijd nodig om te leren en kan de resultaten niet extrapoleren van 1 spel naar een ander. Intelligentie heeft, volgens mij, te maken met begrijpen

84 Wat is intelligentie? Informatie Redeneren Begrijpen Wikipedia: abstract thought, understanding, selfawareness, communication, reasoning, learning, having emotional knowledge, retaining, planning, and problem solving. Taal (noodzakelijk?) Verschil tussen slimme algoritmen en intelligentie! Er is nog geen eenduidige definitie van intelligentie! Jan Lemeire Pag. 87 / 94

85 Turing Test (1950) 'Can machines think? Artificiële intelligentie Kunnen we verschil maken tussen mens en computer? Computer Mens Alan Turing Omdat er geen duidelijke definitie bestaat over wat intelligentie inhoudt en wij als mens prototype zijn van intelligentie, bedacht Turing een test. Door vragen te stellen tracht je te ontdekken of er achter het scherm een computer of mens bevindt. Als we geen verschil meer kunnen maken, kunnen we de computer intelligent noemen. Jan Lemeire Pag. 88 / 94

86 Turing test Je kan je intelligent programma opladen dollar als je programma slaagt voor de Turing test Communiceer je met een computer of met een mens?

87 Turing test for bots The idea is to evaluate how we can make game bots, which are Non-Player Characters (NPCs) controlled by AI algorithms, appear as human as possible. Unreal Tournament 2004 (results) tournament against one another and about an equal number of humans tag opponents as human or bot.

88 Jan Lemeire Pag. 91 / 94

89 1990 Piet Vroon (professor pshycholigie ugent) Drie soorten hersens Instinct (Hersenstam/hypothalamus - reptielenherses) Conditionering (Limbisch systeem - zoogdierenbrein) Intelligentie (Neocortex meest recente hersens) Evolutie van de mens 1 miljoen jaar geleden: evolutionaire sprong (vuur werktuigen) jaar geleden: finale evolutionaire sprong (taal?) Geest is federatie van delen Daden gevolg van combinatie 3 hersens

90 Volgens mij Met een graduele verbetering van de huidige technieken komen we er niet Echte ontdekking moet nog gebeuren Hoe we informatie opslaan/verwerken/gebruiken Natuurlijke taal? Wie is het genie die dit gaat ontdekken? Mijn drijfveer om informatica te gaan doen

91 Conclusie voor ingenieur Er is gespecialiseerd onderzoek naar A.I. Maar meestal is engineering nog noodzakelijk Meestal zijn simpele, slimme oplossingen even goed Zware A.I.-technieken nog weinig in gebruik, nog niet voor meteen Gebruik je intelligentie en ingenioziteit om adequate oplossing te vinden Helen Greiner (2015): in de AI worden we om de 5 jaar heen en weer geslingerd tussen het idee dat de technologie op het punt staat de wereld te veroveren, en de totale teleurstelling

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Informatica les 6 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica deel II & III februari mei 2015 1 Is er een machine die even slim of zelfs

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 7 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2019 1 Is er een machine die even

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 6 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2017 1 Is er een machine die even

Nadere informatie

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Informatica les 6 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2016 1 Is er een machine die even slim of zelfs

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

Informatica 2e semester

Informatica 2e semester Informatica Les 6 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2018 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 6 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

Nadere informatie

Informatica. Deel II & III: les 5. Basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei Parallel Systems: Introduction

Informatica. Deel II & III: les 5. Basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei Parallel Systems: Introduction Informatica Deel II & III: les 5 Basis- & slimme algoritmen Jan Lemeire Informatica deel II & III februari mei 2016 Parallel Systems: Introduction Oefening Iets met een functie public class IetsMetFunctie

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 8 Software & binaire bomen Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Non-zero sum games 2. Leren 3. Deel III: slimme algoritmen versus intelligentie

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 5 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2017 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

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

Informatica. les 7. Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen

Informatica. les 7. Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen Informatica les 7 Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen Jan Lemeire Informatica deel II & III februari mei 2014 Parallel Systems: Introduction Is er een

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

Informatica. Deel II&III: les 7. AI linked lists - chips. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Informatica. Deel II&III: les 7. AI linked lists - chips. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction Informatica Deel II&III: les 7 AI linked lists - chips Jan Lemeire Informatica deel II februari mei 2015 Parallel Systems: Introduction Hoofdstuk 9: Artificiële intelligentie Jan Lemeire Pag. 2 / 77 Waarmaken

Nadere informatie

Uitwerking tentamen Algoritmiek 9 juni :00 17:00

Uitwerking tentamen Algoritmiek 9 juni :00 17:00 Uitwerking tentamen Algoritmiek 9 juni 2015 14:00 17:00 1. Clobber a. Toestanden: m x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal O gelijk aan het aantal X of er is hooguit één

Nadere informatie

Informatica. Deel II & III: les 5. Von Neumann, basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei 2015

Informatica. Deel II & III: les 5. Von Neumann, basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei 2015 Informatica Deel II & III: les 5 Von Neumann, basis- & slimme algoritmen Jan Lemeire Informatica deel II & III februari mei 2015 Parallel Systems: Introduction Institute for Advanced Studies, New Jersey,

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

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

Tentamen Kunstmatige Intelligentie (INFOB2KI)

Tentamen Kunstmatige Intelligentie (INFOB2KI) Tentamen Kunstmatige Intelligentie (INFOB2KI) 12 december 2014 8:30-10:30 Vooraf Mobiele telefoons en dergelijke dienen uitgeschakeld te zijn. Het eerste deel van het tentamen bestaat uit 8 multiple-choice

Nadere informatie

Opgave 2 ( = 12 ptn.)

Opgave 2 ( = 12 ptn.) Deel II Opgave 1 (4 + 2 + 6 = 12 ptn.) a) Beschouw bovenstaande game tree waarin cirkels je eigen zet representeren en vierkanten die van je tegenstander. Welke waarde van de evaluatiefunctie komt uiteindelijk

Nadere informatie

Tentamen Kunstmatige Intelligentie (INFOB2KI)

Tentamen Kunstmatige Intelligentie (INFOB2KI) Tentamen Kunstmatige Intelligentie (INFOB2KI) 30 januari 2014 10:30-12:30 Vooraf Mobiele telefoons dienen uitgeschakeld te zijn. Het tentamen bestaat uit 7 opgaven; in totaal kunnen er 100 punten behaald

Nadere informatie

Intelligente Spelen. Pieter Spronck. TouW Informatica Symposium, Open Universiteit, Universiteit van Tilburg

Intelligente Spelen. Pieter Spronck. TouW Informatica Symposium, Open Universiteit, Universiteit van Tilburg Intelligente Spelen Pieter Spronck Open Universiteit, Universiteit van Tilburg TouW Informatica Symposium, 13-11-2010 Wat is kunstmatige intelligentie? Kunstmatige intelligentie Kunstmatige intelligentie

Nadere informatie

Informatica. Deel II: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Informatica. Deel II: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction Informatica Deel II: les 2 Leibniz - erven - digitaal Jan Lemeire Informatica deel II februari mei 2013 Parallel Systems: Introduction Leibniz 1646 1716 Jan Lemeire Pag. 2 / 48 Calculemus! Berechnen wir!

Nadere informatie

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST College 12 Twaalfde college complexiteit 11 mei 2012 Overzicht, MST 1 Agenda voor vandaag Minimum Opspannende Boom (minimum spanning tree) als voorbeeld van greedy algoritmen Overzicht: wat voor technieken

Nadere informatie

Zoekproblemen met tegenstanders. Zoekalgoritmen ( ) College 9: Zoeken met een tegenstander (I) Een zoekprobleem met een tegenstander

Zoekproblemen met tegenstanders. Zoekalgoritmen ( ) College 9: Zoeken met een tegenstander (I) Een zoekprobleem met een tegenstander Zoekproblemen met tegenstanders Zoekalgoritmen (29 2) College 9: Zoeken met een tegenstander (I) Dirk Thierens, Tekst: Linda van der Gaag Zoekproblemen met meer dan één partij worden gekenmerkt door interventies

Nadere informatie

Uitwerking tentamen Algoritmiek 9 juli :00 13:00

Uitwerking tentamen Algoritmiek 9 juli :00 13:00 Uitwerking tentamen Algoritmiek 9 juli 0 0:00 :00. (N,M)-game a. Toestanden: Een geheel getal g, waarvoor geldt g N én wie er aan de beurt is (Tristan of Isolde) b. c. Acties: Het noemen van een geheel

Nadere informatie

Computationale Intelligentie Dirk Thierens

Computationale Intelligentie Dirk Thierens Computationale Intelligentie Dirk Thierens Organisatie Onderwijsvormen: Docent: Topic: Collegemateriaal: Boek: Beoordeling: hoorcollege, practicum, werkcollege Dirk Thierens Deel : Zoekalgoritmen Toets

Nadere informatie

Mijn project noemt Het Wari-spel. De doelgroep van mijn programma is iedereen die houdt van strategische spelen.

Mijn project noemt Het Wari-spel. De doelgroep van mijn programma is iedereen die houdt van strategische spelen. Voorstel project Mijn project noemt Het Wari-spel. De doelgroep van mijn programma is iedereen die houdt van strategische spelen. Het doel van mijn project is de spelers een ontspannende, plezierige en

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

Opgaven Kunstmatige Intelligentie 1 maart 2017

Opgaven Kunstmatige Intelligentie 1 maart 2017 Opgaven Kunstmatige Intelligentie 1 maart 2017 Opgave 1. a. Denkt een schaakprogramma? b. Denkt een (Nederlands-Engels) vertaalprogramma? c. Denkt een C ++ -compiler? d. Denkt Watson, the IBM-computer

Nadere informatie

- Denkt zoals een mens (activiteiten die we associëren met menselijk denken.)

- Denkt zoals een mens (activiteiten die we associëren met menselijk denken.) Samenvatting door S. 942 woorden 19 maart 2017 4,8 6 keer beoordeeld Vak Informatica Hoofdstuk 1: Een entiteit is intelligent wanneer het: - Denkt zoals een mens (activiteiten die we associëren met menselijk

Nadere informatie

Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen

Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen De implementatie wordt kort besproken in 5.2.6 1. Programmatie Zoekalgoritme Definitie van boom: we hebben geen binaire boom met exact

Nadere informatie

Genetische algoritmen in Java met JGAP

Genetische algoritmen in Java met JGAP Genetische algoritmen in Java met JGAP Inleiding JGAP, uitgesproken als "jee-gep", is een framework voor het implementeren van genetische algoritmen en het gebruik ervan in Java. Genetische algoritmen

Nadere informatie

Tentamen Kunstmatige Intelligentie

Tentamen Kunstmatige Intelligentie Naam: Studentnr: Tentamen Kunstmatige Intelligentie Department of Information and Computing Sciences Opleiding Informatica Universiteit Utrecht Donderdag 2 februari 2012 08.30 10:30, EDUCA-ALFA Vooraf

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2014 2015, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Hoe gaan testrobots ons testers helpen? Robotica?

Hoe gaan testrobots ons testers helpen? Robotica? TestNet thema-avond 14 september 2017 Hoe gaan testrobots ons testers helpen? Kunnen testtools ook explorerend testen en resultaten beoordelen? Rik Marselis Sander Mol Robotica? 1 Hoe kunnen we met robotica

Nadere informatie

Een voorbeeld. Computationele Intelligentie Zoeken met een tegenstander. Een voorbeeld vervolg. Een zoekprobleem met een tegenstander

Een voorbeeld. Computationele Intelligentie Zoeken met een tegenstander. Een voorbeeld vervolg. Een zoekprobleem met een tegenstander Computationele Intelligentie Zoeken met een tegenstander Beschouw het boter-kaas-en-eieren spel: een probleemtoestand is een plaatsing van i kruisjes en j nulletjes in de vakjes van het raam, met i j en

Nadere informatie

Hoe gaan testrobots ons testers helpen?

Hoe gaan testrobots ons testers helpen? TestNet thema-avond 14 september 2017 Hoe gaan testrobots ons testers helpen? Kunnen testtools ook explorerend testen en resultaten beoordelen? Rik Marselis Sander Mol Robotica? Hoe kunnen we met robotica

Nadere informatie

Inleiding 2. 1 Spelregels Pünct 3

Inleiding 2. 1 Spelregels Pünct 3 Inhoudsopgave Inleiding 2 1 Spelregels Pünct 3 2 Werkwijze programma 6 2.1 Representatie bord 2.2 Representatie speelstukken 2.3 De stand van stukken op het bord 2.4 Controle of een (ver)plaatsing is toegestaan

Nadere informatie

Kunstmatige Intelligentie

Kunstmatige Intelligentie Kunstmatige Intelligentie Wat is kunstmatige intelligentie? Wat is de impact van artificial intelligence? Gaan we alle problemen hiermee oplossen? Coen Boot Industry Lead Education, Abecon Kunstmatige

Nadere informatie

Tiende college algoritmiek. 26 april Gretige algoritmen

Tiende college algoritmiek. 26 april Gretige algoritmen Algoritmiek 01/10 College 10 Tiende college algoritmiek april 01 Gretige algoritmen 1 Algoritmiek 01/10 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag

Nadere informatie

Elfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort

Elfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort Algoritmiek 018/Algoritme van Dijkstra Elfde college algoritmiek 18 mei 018 Algoritme van Dijkstra, Heap, Heapify & Heapsort 1 Algoritmiek 018/Algoritme van Dijkstra Uit college 10: Voorb. -1- A B C D

Nadere informatie

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra Algoritmiek 017/Gretige Algoritmen Tiende college algoritmiek 13/1 april 017 Gretige Algoritmen Algoritme van Dijkstra 1 Algoritmiek 017/Gretige Algoritmen Muntenprobleem Gegeven onbeperkt veel munten

Nadere informatie

8. Complexiteit van algoritmen:

8. Complexiteit van algoritmen: 8. Complexiteit van algoritmen: Voorbeeld: Een gevaarlijk spel 1 Spelboom voor het wespenspel 2 8.1 Complexiteit 4 8.2 NP-problemen 6 8.3 De oplossing 7 8.4 Een vuistregel 8 In dit hoofdstuk wordt het

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. week 11: november kosterswa/pm/ Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

Verslag Opdracht 4: Magische Vierkanten

Verslag Opdracht 4: Magische Vierkanten Verslag Opdracht 4: Magische Vierkanten Stefan Schrama, Evert Mouw, Universiteit Leiden 2007-08-14 Inhoudsopgave 1 Inleiding 2 2 Uitleg probleem 2 3 Theorie 2 4 Aanpak 2 5 Implementatie 4 6 Experimenten

Nadere informatie

Deeltentamen Kunstmatige Intelligentie

Deeltentamen Kunstmatige Intelligentie Deeltentamen Kunstmatige Intelligentie Department of Information and Computing Sciences Opleiding Informatiekunde Universiteit Utrecht Donderdag 15 december 2011 08.30 10:30, EDUCA-BETA Vooraf Mobiele

Nadere informatie

Programmeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:

Programmeren A. Genetisch Programma voor het Partitie Probleem. begeleiding: Programmeren A Genetisch Programma voor het Partitie Probleem begeleiding: Inleiding Het Partitie Probleem luidt als volgt: Gegeven een verzameling van n positieve integers, vindt twee disjuncte deelverzamelingen

Nadere informatie

extra oefening algoritmiek - antwoorden

extra oefening algoritmiek - antwoorden extra oefening algoritmiek - antwoorden opgave "Formule 1" Maak een programma dat de gebruiker drie getal A, B en C in laat voeren. De gebruiker zorgt ervoor dat er positieve gehele getallen worden ingevoerd.

Nadere informatie

Tree traversal. Bomen zijn overal. Ferd van Odenhoven. 15 november 2011

Tree traversal. Bomen zijn overal. Ferd van Odenhoven. 15 november 2011 15 november 2011 Tree traversal Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 15 november 2011 ODE/FHTBM Tree traversal 15 november 2011 1/22 1 ODE/FHTBM Tree

Nadere informatie

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 2 juni 2009, uur

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 2 juni 2009, uur Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 2 juni 2009, 10.00 13.00 uur Opgave 1. a. Een toestand wordt bepaald door: het aantal lucifers op tafel, het aantal lucifers in het bezit van Romeo,

Nadere informatie

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search Algoritmiek 2018/Toestand-actie-ruimte Vierde college algoritmiek 2 maart 2018 Toestand-actie-ruimte Exhaustive Search 1 Algoritmiek 2018/Toestand-actie-ruimte Kannen Voorbeeld 4: Kannenprobleem We hebben

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Transparanten bij het vak Inleiding Adaptieve Systemen: Evolutionary Computation. f(s max ) f(s) s

Transparanten bij het vak Inleiding Adaptieve Systemen: Evolutionary Computation. f(s max ) f(s) s Transparanten bij het vak Inleiding Adaptieve Systemen: Evolutionary Computation. M. Wiering f(s max ) f(s) s Evolutionary Computation (EC) Optimalisatie algoritmen geinspireerd door Darwin s evolutie

Nadere informatie

Ieder tweetal heeft nodig: Een kopie van de slagschipspelletjes: 1. 1A, 1B voor spel A, 2B voor spel A, 3B voor spel 3

Ieder tweetal heeft nodig: Een kopie van de slagschipspelletjes: 1. 1A, 1B voor spel A, 2B voor spel A, 3B voor spel 3 Activiteit 6 Slagschepen Zoekalgoritme Samenvatting Computers zijn vaak nodig om informatie te vinden in grote hoeveelheden data. Ze moeten een snelle en efficiënte manier ontwikkelen om dit te doen. Deze

Nadere informatie

Tiende college algoritmiek. 14 april Gretige algoritmen

Tiende college algoritmiek. 14 april Gretige algoritmen College 10 Tiende college algoritmiek 1 april 011 Gretige algoritmen 1 Greedy algorithms Greed = hebzucht Voor oplossen van optimalisatieproblemen Oplossing wordt stap voor stap opgebouwd In elke stap

Nadere informatie

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2014. Parallel Systems: Introduction

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2014. Parallel Systems: Introduction Informatica Deel II: les 1 Java versus Python Jan Lemeire Informatica deel II februari mei 2014 Parallel Systems: Introduction Arabidopsis (zandraket) Arabidopsis (zandraket) MMIQQA Multimodal Microscopic

Nadere informatie

Tiende college algoritmiek. 4 mei Gretige Algoritmen Algoritme van Dijkstra

Tiende college algoritmiek. 4 mei Gretige Algoritmen Algoritme van Dijkstra Tiende college algoritmiek mei 018 Gretige Algoritmen Algoritme van Dijkstra 1 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag van n (n 0) eurocent. Alle

Nadere informatie

Programmeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/ Programmeermethoden Recursie Walter Kosters week 11: 20 24 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Vierde programmeeropgave 1 De Grote getallen programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

Java Programma structuur

Java Programma structuur Java Programma structuur public class Bla // div. statements public static void main(string argv[]) // meer spul Voortgezet Prog. voor KI, week 4:11 november 2002 1 Lijsten Voorbeelden 2, 3, 5, 7, 13 Jan,

Nadere informatie

Modellen en Simulatie Speltheorie

Modellen en Simulatie Speltheorie Utrecht, 20 juni 2012 Modellen en Simulatie Speltheorie Gerard Sleijpen Department of Mathematics http://www.staff.science.uu.nl/ sleij101/ Program Optimaliseren Nul-som matrix spel Spel strategie Gemengde

Nadere informatie

Smart Vision! Van Neuroscience naar Deep Learning (en terug) Sander Bohté CWI Life Sciences VIA AwesomeIT, April 10th 2015

Smart Vision! Van Neuroscience naar Deep Learning (en terug) Sander Bohté CWI Life Sciences VIA AwesomeIT, April 10th 2015 Smart Vision! Van Neuroscience naar Deep Learning (en terug) Sander Bohté CWI Life Sciences VIA AwesomeIT, April 10th 2015 Deep Learning SIR EDMUND / 28 MAART 2015 Braaf, computer De Facebooks en Googles

Nadere informatie

Elke groep van 3 leerlingen heeft een 9 setje speelkaarten nodig: 2 t/m 10, bijvoorbeeld alle schoppen, of alle harten kaarten.

Elke groep van 3 leerlingen heeft een 9 setje speelkaarten nodig: 2 t/m 10, bijvoorbeeld alle schoppen, of alle harten kaarten. Versie 16 januari 2017 Sorteren unplugged Sorteren gebeurt heel veel. De namen van alle leerlingen in de klas staan vaak op alfabetische volgorde. De wedstrijden van een volleybal team staan op volgorde

Nadere informatie

NAAM: Programmeren 1 Examen 29/08/2012

NAAM: Programmeren 1 Examen 29/08/2012 Programmeren 29 augustus 202 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet je

Nadere informatie

Uitwerking tentamen Algoritmiek 10 juni :00 13:00

Uitwerking tentamen Algoritmiek 10 juni :00 13:00 Uitwerking tentamen Algoritmiek 10 juni 2014 10:00 13:00 1. Dominono s a. Toestanden: n x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal X gelijk aan het aantal O of hooguit één hoger.

Nadere informatie

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument Complexiteit 2017/05 College 5 Vijfde college complexiteit 21 februari 2017 Selectie Toernooimethode Adversary argument 1 Complexiteit 2017/05 Opgave 28 Gegeven twee oplopend gesorteerde even lange rijen

Nadere informatie

Kunstmatige Intelligentie (AI) Hoofdstuk van Russell/Norvig = [RN] Genetische algoritmen. voorjaar 2016 College 11, 3 mei 2016

Kunstmatige Intelligentie (AI) Hoofdstuk van Russell/Norvig = [RN] Genetische algoritmen. voorjaar 2016 College 11, 3 mei 2016 AI Kunstmatige Intelligentie (AI) Hoofdstuk 4.1.4 van Russell/Norvig = [RN] Genetische algoritmen voorjaar 2016 College 11, 3 mei 2016 www.liacs.leidenuniv.nl/ kosterswa/ai/ 1 Introductie Er zijn allerlei

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. 1. Verzamelingen:

Nadere informatie

Elementary Data Structures 3

Elementary Data Structures 3 Elementary Data Structures 3 Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 29 september 2014 ODE/FHTBM Elementary Data Structures 3 29 september 2014 1/14 Meer

Nadere informatie

Kunstmatige Intelligentie. Informatica en Informatiekunde

Kunstmatige Intelligentie. Informatica en Informatiekunde Kunstmatige Intelligentie Definitie Kunstmatige Intelligentie Kunstmatige intelligentie (KI) of artificiële intelligentie (AI) is de wetenschap die zich bezighoudt met het creëren van een artefact dat

Nadere informatie

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument Complexiteit 2019/04 College 4 Vierde college complexiteit 26 februari 2019 Beslissingsbomen en selectie Toernooimethode Adversary argument 1 Complexiteit 2019/04 Zoeken: samengevat Ongeordend lineair

Nadere informatie

Werkwinkel Permutatiepuzzels

Werkwinkel Permutatiepuzzels Werkwinkel Permutatiepuzzels Karsten Naert UGent Vakgroep Wiskunde 6 november 2013 1 / 33 Over mij... Assistent en doctoraatsstudent Taken: Onderzoek Onderwijs Dienstverlening Karsten.Naert@UGent.be http:

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

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/29764 holds various files of this Leiden University dissertation. Author: Takes, Frank Willem Title: Algorithms for analyzing and mining real-world graphs

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

Recapitulatie: Ongeïnformeerd zoeken. Zoekalgoritmen ( ) College 2: Ongeïnformeerd zoeken. Dynamische breadth-first search

Recapitulatie: Ongeïnformeerd zoeken. Zoekalgoritmen ( ) College 2: Ongeïnformeerd zoeken. Dynamische breadth-first search Recapitulatie: Ongeïnformeerd zoeken Zoekalgoritmen (009 00) College : Ongeïnformeerd zoeken Peter de Waal, Tekst: Linda van der Gaag een algoritme voor ongeïnformeerd zoeken doorzoekt de zoekruimte van

Nadere informatie

Tiende college algoritmiek. 2 mei Gretige algoritmen, Dijkstra

Tiende college algoritmiek. 2 mei Gretige algoritmen, Dijkstra College 10 Tiende college algoritmiek mei 013 Gretige algoritmen, Dijkstra 1 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag van n (n 0) eurocent. Alle

Nadere informatie

Games in een educatieve setting

Games in een educatieve setting Games in een educatieve setting workshop Inez Groen Ontwikkelen spellen Testen spellen Schrijven over spellen Doceren met/over spellen -> met een leerdoel! Maar eerst: wat is je favoriete game en waarom?

Nadere informatie

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur)

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur) Planning 1. Mini College 2. Introductiecursus Imperatief Programmeren 3. Crash and Compile (vanaf 17:00 uur) Geschiedinis van de Codemonkeys imperatief programmeren voor beginners Geschiedenis van de Codemonkey

Nadere informatie

Workshop Permutatiepuzzels

Workshop Permutatiepuzzels Workshop Permutatiepuzzels Karsten Naert UGent Vakgroep Wiskunde January 26, 2012 Wiskunde is: Abstractie maken van de werkelijkheid Redeneren met deze abstracte gegevens (Zie ook: http://www.wiskunde.ugent.be/kiezen/wat.php)

Nadere informatie

Fischer Random (http://en.wikipedia.org/wiki/chess960)

Fischer Random (http://en.wikipedia.org/wiki/chess960) 1. Fischer random 2. Atoomschaak 3. Schietschaak 4. Cilinderschaak 5. Knokschaak 6. Blindschaken 7. Antischaak 8. Makruk 9. Muntschaak 10. Zuigschaak (req. Steff) 11. Moerasschaak (req. Roel) Varianten

Nadere informatie

Artificial Intelligence. Tijmen Blankevoort

Artificial Intelligence. Tijmen Blankevoort Artificial Intelligence Tijmen Blankevoort Een intelligente revolutie Live spraak vertaling (Skype 2015) Zelfrijdende auto s (Meerdere bedrijven) Jeopardy winst (IBM 2013) Professioneel Go (Google 2016)

Nadere informatie

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40 Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N

Nadere informatie

De regels van het spel

De regels van het spel Het bordspel hex De regels van het spel I Er zijn twee spelers, die om beurten een steen in één van de lege zeshoekjes plaatsen; De regels van het spel I Er zijn twee spelers, die om beurten een steen

Nadere informatie

Combinatorische Algoritmen: Binary Decision Diagrams, Deel III

Combinatorische Algoritmen: Binary Decision Diagrams, Deel III Combinatorische Algoritmen: Binary Decision Diagrams, Deel III Sjoerd van Egmond LIACS, Leiden University, The Netherlands svegmond@liacs.nl 2 juni 2010 Samenvatting Deze notitie beschrijft een nederlandse

Nadere informatie

Stelling. SAT is NP-compleet.

Stelling. SAT is NP-compleet. Het bewijs van de stelling van Cook Levin zoals gegeven in het boek van Sipser gebruikt niet-deterministische turing machines. Het is inderdaad mogelijk de klasse NP op een alternatieve wijze te definiëren

Nadere informatie

Game Usability. Les 3 jaar 2. Ontwerp doelstellingen en randvoorwaarden

Game Usability. Les 3 jaar 2. Ontwerp doelstellingen en randvoorwaarden Game Usability Les 3 jaar 2 Ontwerp doelstellingen en randvoorwaarden Wat gaan we doen? Herhaling vorige week Ontwerpdoelen en ontwerpdoelstellingen ISO Definition of Usability (9241-11) Usability is the

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

Testen met zelflerende en zelfexplorerende

Testen met zelflerende en zelfexplorerende Testen met zelflerende en zelfexplorerende testtools Door Rik Marselis en Sander Mol, maart 2017 Op welke manier gaat machine-intelligentie ons als testers in de toekomst verder helpen? Toen wij hier een

Nadere informatie

Volg de stappen hieronder en begin direct met het uitdagen van wedstrijden. Je zult zien hoe gemakkelijk, leuk en spannend het is.

Volg de stappen hieronder en begin direct met het uitdagen van wedstrijden. Je zult zien hoe gemakkelijk, leuk en spannend het is. HOE KAN IK ONLINE UITDAGEN? Volg de stappen hieronder en begin direct met het uitdagen van wedstrijden. Je zult zien hoe gemakkelijk, leuk en spannend het is. 0. PAS JE EMBLEEM EN KLEUREN AAN JE PERSOONLIJKE

Nadere informatie

Een topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin:

Een topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin: Java Les 2 Theorie Beslissingen Algemeen Net als in het dagelijks leven worden in software programma s beslissingen genomen, naast het toekennen van waarden aan variabelen zijn beslissingen één van de

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

INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN

INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN voorbeeldexamen NAAM :... OPMERKINGEN VOORAF Je krijgt 3 uur de tijd om de opdrachten voor dit examen uit te voeren. Verder werken aan je oplossing

Nadere informatie

Inhoud. AI Kaleidoscoop. Doel. Mededelingen. Mededelingen Doel Overzicht - onderwerpen Opgaven Samenvatting. Doel van werkcollege AI Kaleidoscoop

Inhoud. AI Kaleidoscoop. Doel. Mededelingen. Mededelingen Doel Overzicht - onderwerpen Opgaven Samenvatting. Doel van werkcollege AI Kaleidoscoop Inhoud AI Kaleidoscoop Werkcollege 1: AI Overzicht Mededelingen Doel Overzicht - onderwerpen Opgaven Samenvatting Radu Serban serbanr@cs.vu.nl Mededelingen Werkwijze: discussie, oefeningen met onlangs

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

Handleiding TRUEBITERS. Een digitaal spel om de waarheidstabellen van de propositielogica te oefenen. WISE onderzoeksgroep

Handleiding TRUEBITERS. Een digitaal spel om de waarheidstabellen van de propositielogica te oefenen. WISE onderzoeksgroep Handleiding TRUEBITERS Een digitaal spel om de waarheidstabellen van de propositielogica te oefenen WISE onderzoeksgroep November 2017 1 Inleiding TrueBiters is een digitaal spel ontwikkeld om studenten

Nadere informatie

Nascholing Algoritmisch Denken. Martin Bruggink Renske Smetsers

Nascholing Algoritmisch Denken. Martin Bruggink Renske Smetsers Nascholing Algoritmisch Denken Martin Bruggink Renske Smetsers Speerpunten bijeenkomst #2 Praktische bijeenkomst Hele ontwikkelcyclus doorlopen Algoritme ontwerpen Flowchart Code Reflectie Programma tweede

Nadere informatie

Datastructuren college 10

Datastructuren college 10 we hadden Backtracking verbetering i i Datastructuren college 0 0: : : 0: : : P r r r r r b r b r P r r r b r b r backtracking we hoeven vaak de kandidaat niet helemaal af te maken om hem te kunnen verwerpen

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

Machine Learning IBM Watson. Eindhoven, High Tech Campus, 13 juni 2017

Machine Learning IBM Watson. Eindhoven, High Tech Campus, 13 juni 2017 Machine Learning IBM Watson Eindhoven, High Tech Campus, 13 juni 2017 Industriële revoluties Geneeskunde zit hier! Artificial Intelligence (AI) Onderdeel van de computerwetenschappen dat als doel heeft

Nadere informatie