Introductie Onderzoeksmethoden. `Om informatica onderzoek te doen, moet je goed kunnen programmeren. Na dit college. Informatica/Game-technologie

Vergelijkbare documenten
Local search. Han Hoogeveen CGN A februari, 2009

Local search. Han Hoogeveen. 21 november, 2011

Optimalisering en Complexiteit, College 2. Han Hoogeveen, Utrecht University

Hoe doe ik een onderzoeksproject. Hans Bodlaender Marjan vd Akker

Hoe doe ik een onderzoeksproject

Onderzoeksmethoden: Statistiek 1

Optimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University

Benaderingsalgoritmen

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.

Universiteit Utrecht Faculteit Wiskunde en Informatica. Examen Optimalisering op maandag 18 april 2005, uur.

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Modelleren van roosterwensen

Non satis scire WP 4 Pilot opzet peer feedback. Aanleiding

TW2020 Optimalisering

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

Discrete Wiskunde, College 12. Han Hoogeveen, Utrecht University

Optimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University

TW2020 Optimalisering

PWS project VWO t/m 31 maart Naam:

l e x e voor alle e E

HET ZOEKEN VAN WETENSCHAPPELIJKE LITERATUUR. Hans Bodlaender

Overzicht. Inleiding. Toepassingen. Verwante problemen. Modellering. Exacte oplosmethode: B&B. Insertie heuristieken. Local Search

Vandaag. Onderzoeksmethoden: Statistiek 3. Recap 2. Recap 1. Recap Centrale limietstelling T-verdeling Toetsen van hypotheses

Tentamen combinatorische optimalisatie Tijd:

TW2020 Optimalisering

Het profielwerkstuk (092018)

TW2020 Optimalisering

TW2020 Optimalisering

In deze les. Het experiment. Hoe bereid je het voor? Een beetje wetenschapsfilosofie. Literatuuronderzoek (1) Het onderwerp.

Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013

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

Praktische zaken INFOB3SO

Deze presentatie. Gebruik bronnen. Wat voor bronnen? ZOEKEN VAN WETENSCHAPPELIJKE LITERATUUR

Kortste Paden. Algoritmiek

Informatica en Gametechnologie

Optimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University

Activiteit 9. Modderstad Minimaal Opspannende Bomen. Samenvatting. Kerndoelen. Leeftijd. Vaardigheden. Materialen

Kortste Paden. Algoritmiek

Gametechnologie algemene presentatie

Happy Aging Research. Module D&R LvR

Vandaag. Onderzoeksmethoden: Statistiek 4. Recap: Hypothese toetsen. Recap: One-sample t-toets

Heuristieken en benaderingsalgoritmen. Algoritmiek

6 7 NORM= het niveau waarop het vak volgens de doelstelling van het onderwijsprogramma wordt afgesloten 8 9 Excellent

TW2020 Optimalisering

Infosessie Bachelorproef. 18 mei 2016 Luc De Raedt en Dirk Nuyens

Elfde college complexiteit. 23 april NP-volledigheid III

(On)Doenlijke problemen

Automaten & Complexiteit (X )

De eiersaladekit. Project in samenwerking met de Johma en TYF. BGI: Klas 3. Een smakelijk project! Versie

BOL OPLEIDINGEN MAATSCHAPPELIJKE ZORG AVENTUS APELDOORN / DEVENTER STUDIEWIJZER

Masterproef Geneesmiddelenontwikkeling

2WO12: Optimalisering in Netwerken

B.Sc. Informatica Module 4: Data & Informatie

Met welk werk kunnen kinderen uit groep 5-6 thuiskomen en hoe kunt u uw kind thuis helpen?

mevrouw drs. D. van der Wagen Rechtsvinding van straf- en procesrecht Beschrijving en doel van dit beroepsproduct

TW2020 Optimalisering

Communicatie voor juristen. mevrouw drs. D. van der Wagen. Communicatie voor juristen. Beschrijving en doel van dit beroepsproduct

Vandaag. Onderzoeksmethoden: Statistiek 2. Basisbegrippen. Theoretische kansverdelingen

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Examen Datastructuren en Algoritmen II

Opdracht Stop kindersekstoerisme

Overzicht. Inleiding. Modellering. Insertie heuristieken. Voorbeeld: CVV. Local Search. Meta heuristieken. Vehicle Routing Problem 1

Optimalisering/Besliskunde 1. College 1 6 september, 2012

Examen Datastructuren en Algoritmen II

Praktische Numerieke Wiskunde

Stoeien met Statistiek

Fundamentele. Informatica 1. Eerste college: introductie

Minimum Spanning Tree

Optimalisering/Besliskunde 1. College 1 3 september, 2014

Opdracht Weg met seksuele uitbuiting van kinderen in toerisme

Algoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens

Minor Toegepaste Psychologie

Examen Datastructuren en Algoritmen II

Optimalisering/Besliskunde 1. College 1 2 september, 2015

Twaalfde college complexiteit. 11 mei Overzicht, MST

Vandaag. Onderzoeksmethoden: Statistiek 4. Recap: Hypothese toetsen. Recap: One-sample t-toets

Transport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen

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

Sociologie Vrije Universiteit Amsterdam - Faculteit der Sociale Wetenschappen - P Sociologie

MEDMEC01 Q1 JAAR 1. THEMA: het creatieve proces MODULEWIJZER Mediaencreativiteit.pbwiki.com VAKGROEP MEDIA EN CREATIVITEIT

Sectorwerkstuk. Kandinsky College. locatie Sint Jorisschool

Info-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens

Tentamen IN3105. Complexiteitstheorie. 16 april 2012, uur

Hoofdstuk 17: Approximation Algorithms

Wetenschapscommunicatie Informatica: doelstelling, opdrachten, proces, beoordeling en deadlines.

Minimum Opspannende Bomen. Algoritmiek

Universiteit Utrecht Departement Informatica. Examen Optimalisering op dinsdag 29 januari 2019, uur.

Masterproef oktober 2009

Fundamentele Informatica

Masterproef Geneesmiddelenontwikkeling

Belevingsonderzoek hoorcollege. BOZ HOND Week 1.1

Studiehadleiding. Opleiding: hbo-masteropleiding Islamitische Geestelijke Verzorging

Rooster Zie roosterinformatie op het web.

Game en Software Project

Bestuurskunde Vrije Universiteit Amsterdam - Faculteit der Sociale Wetenschappen - P Bestuurskunde

Handleiding notariële bachelorscriptie

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

AOS docentonderzoek. Rapporteren en presenteren

Fundamentele. Informatica 1. Eerste college: -introductie -verzamelingen I

Chronotherm Thermostaat Modulation

Transcriptie:

Na dit college Weet je het doel is van het vak Weet je wat je moet gaan doen bij het vak Introductie Onderzoeksmethoden 1 Heb je kennis gemaakt met de projectonderwerpen 2 Informatica/Game-technologie Onderzoeksmethoden bij voorkeur in derde jaar `Om informatica onderzoek te doen, moet je goed kunnen programmeren Hoorcolleges Werkcolleges Marjan van den Akker Dirk Thierens Hans Bodlaender Silja Renooij Peter de Waal Arno Kamphuis Marjan van den Akker 3 4

Hoe zet je zelf zo n test op? Welke vraag wil ik beantwoorden? Wat zijn criteria? Hoe te testen? Welke PC s precies? 5 6 Resultaat: gebruiksgemak op schaal 1 (slecht) -5 (zeer goed) DellXS HPOpt Dhr A 1 1 Mw B 4 5 Dhr C 3 4 Mw D 3 5 Mw E 5 4 Mag ik nu zeggen: HPOpt is gebruikervriendelijker? Vrouwen kunnen beter met computers omgaan dan mannen? Gebruik Statistiek (heb je wel een grotere tabel nodig) Informatica onderzoek vaak met computerprogramma s `Als het computerprogramma goed werkt, is het onderzoek ook af. 7 8

Wat leer je bij onderzoeksmethoden: Wat leer je bij onderzoeksmethoden (2): Onderzoeksvaardigheden voor informatica anders dan software ontwikkeling Onderzoek opzetten op een wetenschappelijke manier: onderzoeksvragen formuleren, Experimenten opzetten en uitvoeren met behulp van statistische methoden Rapporteren Presenteren onderzoeksplan maken Literatuur verzamelen Ook Kennis over werkwijze binnen wetenschap en universiteit 9 10 Week Hoorcollege Werkcollege Hoorcollege. En hoe leer je dat: Werkcollege statistiek en toets statistiek. Flitspresentatie Literatuurstudie en hierover: Voordracht houden Paper schrijven Researchproject. 6 9-11: Introductie (MvdA) 11-13: Presenteren (HB) 7 9-11: Opzet van onderzoeksproject(hb) 11-13: Literatuur, plagiaat (HB) 8 9-11: Statistiek 1 (MvdA) 11-13: Schrijven + Latex (HB) Flitspresentatie 9 9-11: Statistiek 2 (MvdA) 11-13: werkcollege statistiek (MvdA, PdW) 10 9-11: Statistiek 3 (MvdA) 11-13: werkcollege statistiek (MvdA, PdW) 12 9-11: Tentamen statistiek 11-13: Filosofie van de wetenschap (Peter de Waal) 13 9-11: Het wetenschappelijk bedrijf (Peter de Waal) 11-13: Tussenpresentaties project 13-.. : Voordrachten 14 WOENSDAG (!) : Voordrachten 15 9-17: Voordrachten 16 Eindpresentaties project 11 12

Materiaal Flitsvoordracht College-slides Documentatie op website Aanbevolen boek: Carel van Wijk. Toetsende statistiek: basistechnieken. Coutino, 2008. ISBN 978 90 6283 172 2. Leerdoel Wennen aan spreken en luisteren Introductie KORT! Betoog opbouwen, scheiden feiten en mening Houding ten opzichte van publiek, discussie Eigen onderwerp, bijv. uit nieuws Maximaal 2 slides: powerpoint, beamer, 2 minuten: samenvatting + eigen mening Iedereen: vrijdag 17 februari 13 14 Paper en onderzoeksvoordracht Paper Individueel Kies je 3 favoriete onderwerpen uit de lijst op de webpagina en mail deze voor ma 13 feb 13.15 naar H.L.Bodlaender@uu.nl Er is een INCA-lijst en GameTech-lijst, maar je mag alles kiezen. Ander onderwerp kan: overleg ma 13 februari in de ochtend met Hans Bodlaender Je krijgt ma 13 feb onderwerp toegewezen. Ma 13 feb wordt groepsindeling gemaakt Over onderzoeksonderwerp Voldoet aan de vormeisen van een wetenschappelijk paper. Is geschreven in de Engelse taal. Is geschreven in LaTeX, waarbij je gebruikt maakt van de article-stijl met de opties 12pnt en a4paper. Heeft een omvang van minstens 8 bladzijden, exclusief illustraties, inclusief referenties Heeft een omvang van maximaal 12 bladzijden Heeft minstens 7 relevante referenties, dit zijn echte publicaties, geen wikipedia of websites. Je paper moet uiterlijk 8 maart 17.00 uur worden ingeleverd. Dit is aan het begin van de periode dus, begin op tijd!!!! 15 16

Voordracht Research projecten Over onderzoeksonderwerp 25 minuten Wordt gereviewed door mede-studenten Wordt besproken in de groep Wordt beoordeeld op presentatievaardigheden en inhoud Pizza koeriers (INCA/GameTech) Force-directed graph drawing (INCA en GameTech) Gebruikerservaringen in een snel speelbare game (GameTech/INCA) Elk project kan zowel door INCA als GameTech studenten worden uitgevoerd Programmeerwerk moet beperkt zijn, de uitvoering van het onderzoek is van belang 17 18 Pizza-koeriers in Manhattan Route planning Voor 18.00 uur besteld! Zo snel mogelijk bezorgd (na 18.00 uur) Gegeven: Centraal depot Locatie klanten: gegeven door (x,y)-coördinaat. Manhattan afstand: d((x,y),(u,z))= x-u + y-z 4 Bezorgers Vind een efficient bezorgplan Zelfde probleem bij: Depot 19 20

Routeplanning Wens om een goed routeplan te bepalen Elke bezorger evenveel werk.. Veel methoden We bekijken een bepaalde methode in dit project. Die methode laat nog veel keuzes open, instellen parameters, Eventueel verschillende bezorgscenarios, zoals brommers of bestelbusjes, mogelijkehid tot spoed 21 22 Grafen Toepassingen van grafen Grafen G=(V,E) V is verzameling knopen ( nodes, vertices ) E is verzameling kanten ( edges ) Een kant is een verzameling van twee verschillende knopen V={1,2,3} E={ {1,2}, {2,3}} 2 1 3 Grafen als model voor o.a.: Wegennetwerken Linkstructuur van website Vriendschapsrelaties uit sociaal netwerk Klassediagram van object georienteerd programma Etc. etc. 23 24

Tekenen van grafen Games: gebruikerservaringen Wens om een graaf te tekenen op het platte vlak zodat mooi duidelijk Veel methoden We bekijken in dit project het force-directed graph drawing algoritme. Die methode laat nog veel keuzes open, instellen parameters. Force-directed methoden toegepast binnen Geografische informatie systemen Computer vision Motion planning Open opdracht Kies een snel-speelbare game of groepje snel speelbare games: Internet game bijv tower defence,.. Game uit introductie-project Vereist proefpersonen 25 26 Mogelijke onderzoeksvragen Stappen in het project Is er verschil in succes tussen verschillende groepen, bijv INCA vs GameTech, jong vs oud, Is er verschil in waardering tussen verschillende groepen, bijv INCA vs GameTech, jong vs oud, Kosten level steeds meer tijd of minder tijd? Verschil in succes afh. van tijdstip in de week, tijdstip van de dag? Vergelijking verschillende `paltforms : PC vs mobiele telefoon.. 1. Onderzoeksvraag en plan (24 februari) 2. Tussenresultaten (30 maart presentatie en 2 april verslag) 3. Eindresultaten (18 april verslag en 20 april presentatie) Houdt het programmeerwerk beperkt Project in groepjes van 3 of 4. 27 28

Aanwezigheid is verplicht Aanwezigheid is verplicht bij alle colleges en werkcolleges Bij afwezigheid bij speciale omstandigheden: afmelden bij de werkcollegeleider 3 keer afwezig betekent extra taak 4 keer afwezig betekent gezakt voor het vak Geteld per sessie van 2 uur, hele dag afwezig telt als 2 keer, ook bij 3 of 4 sessies op die dag Veel te laat komen kan ook als afwezigheid worden geteld Onderdeel Cijferregeling Perc Minimum voor eindcijfer Paper 30 5 4 Voordracht 20 5 4 Toets statistiek 20 5 - Project 30 5 4 Minimum voor herkansing Je mag twee onderdelen herkansen Cijfer kan 1 punt worden bijgesteld op grond van participatie 29 30 Aanmelding is niet vrijblijvend Voortijdig stoppen ongewenst Onderzoeksmethoden is niet moeilijk maar meer werk dan een regulier vak. Dus werk gewoon door, maak het vak af, maar als je denkt echt geen tijd te hebben stop dan nu! Er is misschien een andere student die jouw onderwerp graag had willen hebben Je laat je projectteam in de steek Deelresultaten gaan verloren. Vak is docent-intensief: twee keer inschrijven = twee keer docent inplannen Onze flexibiliteit neemt af bij meerdere keren inschrijven 31 32

En nu Achtergrond pizza-koeriers: Traveling Salesman Problem (TSP) terug naar het echte werk Gegeven zijn N steden en hun onderlinge afstanden. Vind de kortste route waarbij je elke stad precies één keer bezoekt. 33 34 TSP is NP-lastig! N N! 2 2 5 120 10 3628800 15 1307674368000 25 15511210043330985984000000 NP-lastig!!!! P: op te lossen in polynomiaal aantal stapjes NP: alleen oplossing checken op feasibility polynomiaal, verder niet bewijsbaar beter dan alle oplossingen proberen. (niet-deterministisch polynomiaal) P vs NP is een van de $ 1 million Millenium Prize problems http://www.claymath.org/millennium/p_vs_np Pizza-koerier-probleem ook NP-lastig 35 36

En dan.heuristiek Lokale zoekmethoden Geen garanties voor optimum (kortste afstand) Wel goede oplossing in redelijke tijd Wij gaan kijken naar lokale zoekmethoden, in het bijzonder Simulated annealing Initialisatie: 0. Bepaal startoplossing x; dit is ook de beste oplossing tot nu toe Iteratie: 1. Zoek buur x van x door oplossing x iets te veranderen. 2. Als x geaccepteerd wordt dan x := x. 3. Indien nodig, update beste oplossing tot nu toe 4. Als niet aan stopcriterium is voldaan, ga naar 1. 37 38 Eenvoudig: Iteratieve verbetering Simulated annealing: accepteer verslechtering met bepaalde kans Iteratie: 1. Zoek buur x van x door oplossing x iets te veranderen. 2. Als x beter dan x dan x := x. 3. Als gedurende een aantal iteraties geen betere oplossing is gevonden, stop. Anders, ga naar 1. Iteratie: 1. Kies buur x uit de buurruimte van x 2. Als x beter dan x dan x := x (accepteer x ) Anders x := x met kans p = exp( ) T 3. Pas indien nodig control parameter T aan 4. Indien nodig, pas beste oplossing tot nu toe aan. 5. Als niet voldaan aan stopcriterium: Ga naar 1. 39 40

Voorbeelden methoden voor bepalen van buur 1. Kies random klant. Haal deze uit route en voeg deze op beste plaats in andere route toe. 2. Kies random klant. Haal deze uit route en voeg deze op willekeurige plaats in eigen route toe. 3. Kies random twee routes, en een willekeurige klant X uit de eerste route. X wordt verwisseld met een klant uit de tweede route. Kies hiervoor de beste mogelijkheid. 4. Kies random klant. Haal deze uit route en voeg deze in eigen of andere route toe. 5. Acceptatie verslechteringen Stel we minimaliseren kosten en de kosten van oplossing x worden gegeven door f(x). = f(x )-f(x) Altijd accepteren als < 0, als 0 accepteer met kans: p = exp ( - / T) T: controle parameter (temperatuur) Bij maximaliseren: = f(x)-f(x ) 41 42 Control parameter T Bepalen accepatie verslechtering Controle parameter T wordt kleiner in de loop van het algoritme. Bereken p Genereer random reëel getal x in [0;1] Accepteer verslechtering als x p Beginwaarde T: helft van verslechteringen dat wordt geaccepteerd Elke Q iteraties: T α T met α = 0.99 of 0.95 Vuistregel: Q ~ 8 * aantal buren van gegeven oplossing 43 44

Stopcriterium: vuistregels Startoplossing Maximaal aantal iteraties is voltooid (altijd gebruiken) Aantal geaccepteerde verslechteringen in serie iteraties is 1 à 2 % Beste oplossing wordt een tijd lang niet beter Random Eenvoudige vuistregel, bijv ga altijd naar dichtsbijzijnde klant 45 46 Vragen Tekenen van grafen Algoritme heeft veel keuzes open: waarden van parameters (methode om buren te bepalen, beginoplossing, etc.) Wat is een goede invulling van die keuzes? En wat bedoelen we met die vraag? Wens om een graaf te tekenen op het platte vlak zodat mooi duidelijk Veel methoden We bekijken een bepaalde methode in dit project. Die methode laat nog veel keuzes open 47 48

Tekening van graaf (met rechte lijnen) Iedere knoop heeft een x en een y coordinaat Elke kant is een rechte lijn tussen de twee knopen Lijnen kunnen kruisen Zelfde graaf, twee verschillende tekeningen Force directed Veren en magneten Inspiratie: natuurkundige wetten Iedere knoop wordt gezien als een magneet: knopen stoten elkaar af Iedere veer wordt gezien als een veer: kracht die veer naar juiste lengte wil trekken 49 50 Idee van methode Keuzes Elke knoop heeft een positie (xcoordinaat, y- coordinaat) Op elke knoop wordt een kracht uitgeoefend Hangt af van afstanden naar andere knopen en lengte van kanten met die knoop als een eindpunt Herhaal totdat tekening niet heel erg veranderd Voor elke knoop v reken kracht uit op v Verplaats v evenredig met de kracht op v Kies voor elke kant {u,v} in de graaf waardes: Stijfheid s uv Gewenste lengte l uv Kies voor elk paar knopen u en v De afstotende werking (repulsie) van u en v r uv Misschien wil je al die waarden hetzelfde nemen, misschien niet? 51 52

Kracht op knoop Krachten op knopen Noteer: d(u,v) = Euclidische afstand van u naar v x v : x-coordinaat van v y v : x-coordinaat van v Kracht op knoop v in x-richting Px(v): afstoten u:{u,v} E s uv x x d(u, v) v u uv ( d(u, v) l ) + ( x x ) uv u:u v r (d(u,v)) Soortgelijke formule voor Py(v) Staan ook in info op website. 3 v u aantrekken 53 54 Algoritme (schets) Vragen Maak een eerste locatie voor alle punten Herhaal totdat (stopcriterum geldt): Voor alle knopen v, bereken Px(v) en Py(v) Voor elke knoop v x v += c * Px(v) y v += c * Py(v) c is een kleine constante Algoritme heeft veel keuzes open: waarden van parameters (stijfheid, gewenste lengtes, repulsies, waarde van c, begintekening, stopcriterium) Wat is een goede invulling van die keuzes? En wat bedoelen we met die vraag? 55 56

En verder Mail uiterlijk ma 13 feb 9.00 naar H.L.Bodlaender@uu.nl: Informatica of gametechnologie 3 favoriete onderwerpen Voorkeur voor project Eventueel projectgroep Wij delen 13 feb de groepen in. Veel succes met het vak! 57