Informatica in ons dagelijks leven: Routeplanner Gerard Tel (docent)
Wat is informatica? In vrijwel alles zit informatica mobiele telefoon, mp3-speler navigatiesysteem televisie, medische apparatuur Vrijwel niets werkt zonder Informatica logistiek (planning) entertainment (animaties) het internet Veel mensen realiseren zich niet hoe groot de rol van Informatica is in ons leven. Informatica zie overal in. Vandaar “Informatica Inside” (met een knipoog naar de leus Intel Inside). Vrijwel alle producten bevatten tegenwoordig processoren en veel software. Daarbij gaat het niet alleen om de logische producten zoals computers en mobiele telefoons, maar ook om auto’s, medische apparatuur en televisies. Een van onze oud studenten (Robert-Paul Berretty) werkt bij Philips aan het ontwikkelen van 3D televisies. Ook veel processen kunnen niet zonder Informatica. Denk hierbij bijvoorbeeld aan logistieke processen (planning bij de NS, Schiphol, goederenvervoer), financiële processen, de hele entertainment sector (niet allen games maar ook film, televisie, …) en het vergaren van informatie via internet. 2
Voorbeeld: Computer Games Zeer grote toepassingen Meest moderne informatica technieken Game Technologie is een van de richtingen van Informatica in Utrecht Computer games worden in deze sheets als voorbeeld gebruikt van grote softwaresystemen waar vrijwel alle aspecten van de Informatica een belangrijke rol in spelen. De games bedrijfstak groei in Nederland snel (zowel voor entertainment als voor training en onderwijs). Het linkerplaatje komt uit het spel De Blob dat door een team van studenten van ons en de Hogeschool voor de Kunsten Utrecht ontwikkeld is in het kader van hun studie. (Het was gemaakt in opdracht van de gemeente Utrecht om het nieuwe standscentrum in beeld te brengen.) De grote games uitgever THQ heeft de rechten opgekocht, het laten herontwikkelen, en het is recent uitgebracht voor de Nintendo Wii (zie rechterplaatje). De studenten hebben met het geld dat ze ermee verdient hebben een eigen game bedrijf (Ronimo) in Utrecht opgericht, met steun vanuit de instellingen. 3
Voorbeeld: Routeplanner Relatief eenvoudige toepassing Combinatie van moderne informatica en andere beta disciplines Grote Nederlandse invloed (Dijkstra, TomTom) 4
Wat zit er in? Miniatuur elektonica: processor, geheugen Nauwkeurige satelliet- ontvanger Trigonometrie (wiskunde) Kaarten Europa (1 miljoen nuttige punten) Aanraakscherm Batterij Bediening met pictogrammen en menu’s
Edsger Wybe Dijkstra (1930-2002) De eerste programmeur (in 1952!) Hij vond in 1959 uit hoe een computer routes kan uitrekenen Kortste Pad Algoritme van Dijkstra Punten en wegstukjes met afstand
Kortste weg (km) 20 6 12 3 4 3 6 4 2 2 4 8 Afrit 18 Afrit 19 Toms huis Toren Stadhuis Kasteel School Molen Zwembad 20 6 12 3 4 3 6 De kortste weg gaat via stadhuis, school en molen. Kort = 18 km Milieu = 22 km Snel = 29 km 4 2 2 4 8 7
Wat ziet de Computer? start = 0 [Edges] end = 8 0-1 3 [Nodes] 0-2 4 0 "Toms huis" 1.62 11.94 0-6 6 1 "Toren" 7.01 11.75 1-3 6 2 "Stadhuis" 5.38 15 1-2 2 3 "Kasteel" 12.4 11.82 4 "School" 15.19 14.81 5-8 4 5 "Molen" 18.11 12.96 6-7 20 … 7-8 3
Voorlopige schattingen Dijkstra’s rekenmethode gebruikt voorlopige schattingen die later definitief worden De beste route om bij een blauw punt te komen is bekend, de afstand staat erbij (definitief). De schatting van een punt (school): Langs welk blauw buurpunt kun je het beste op school komen? En hoe ver is dat? Pretpark Molen: 13 Startpunt: 0 Via de Molen: 13 + 7 = 20 Via het Kasteel: 15 + 3 = 18 Het pretpark is niet blauw! De schatting voor de school is 18 2 7 3 School: ?? Kasteel: 15
Dijkstra’s methode Maak eerst het beginpunt (Toms huis) blauw, met afstand 0 Welk punt heeft de laagste schatting? Maak het blauw De schatting wordt de afstand (definitief) Herhaal steeds stap 2 Je bent klaar als het eindpunt (zwembad) blauw is
Aan het werk met Wybe Aanmelden op PC people.cs.uu.nl/gerard/Wybe Memorystick: RoutePlanner/Wybe.exe
Stap voor stap Snelheidsschuif naar links Een stap per klik (op Play) Probeer te bedenken wat er gebeurt bij de volgende klik
Snelste Route Zet kaartenkiezer op Tom (Snelst) Wat zou de beste route zijn?
12 4½ 9 2¼ 6 4½ 9 6 3 3 6 12 Afrit 18 Afrit 19 Toms huis Toren Kasteel Stadhuis Kasteel School Molen Zwembad 12 4½ 9 2¼ 6 4½ 9 In de stad (stoplichten) 40km/u Buiten bebouwde kom (de drie wegen aan de afritten) 80km/u Snelweg 120km/u De snelste weg gaat via de snelweg Kort = 27 min Milieu = 19,5 min Snel = 16,75 min 6 3 3 6 12 14
Toms huis Afrit 18 Afrit 19 Toren Stadhuis Kasteel School Molen Zwembad 3000 900 1800 450 1200 900 1800 1200 In de stad 300 g/km Buiten bebouwde kom en snelweg 150 g/km (weinig schakelen en remmen/optrekken) De milieuvriendelijkste weg gaat via ‘afrit 18’ en de molen Kort = 5400 g Milieu = 3900 g Snel = 4350 g 600 600 1200 2400 15
Het moet nog beter! Hoeveel wegen zijn er in Nederland? Europa? Reken (bijna) alleen met snelwegen Kun je rekenen met éénrichtingswegen? Werkt het voor fietsen of wandelen anders?
Is het product af? Doorgaande ontwikkeling! Recente onderzoeksprojecten (Utrecht): Integratie van databestanden Welke wegen zijn feitelijk dezelfde? Dead reckoning Geen ontvangst? Koppel beweging aan kaart. Weg-representatie met cirkelbogen Verminder het aantal punten in je kaart
Interactie de manier van interactie heeft een belangrijke invloed op gebruik nieuwe technieken komen eraan: … Wii controller … gebaar herkenning … brein-machine interactie … Vakken Interaction Technology Beeldverwerking Minor: Informatiekunde De afgelopen jaren is er een sterke ontwikkeling in nieuwe vormen van interactie tussen gebruikers en de computer. Denk maar aan het gebruik van navigatieapparatuur als de TomTom: interessant vanwege de pathplanning èn de user interface Nieuwe ontwikkelingen zijn gebaarherkenning (waarbij er helemaal geen controller meer nodig is) en rechstreekse aansturing vanuit het brein. Dit alles heeft een technische component (bijvoorbeeld beeldherkenning) en een gebruikers component: wat is de beste interface voor een bepaalde toepassing. Je leert in de opleiding wat er komt kijken bij het bedenken van de juiste vorm van interactie en de daarvoor benodigde techniek. Wie zich er meer in kan verdiepen kan een minor informatiekunde doen. 18
Algoritmiek Gaat over het efficiënt uitvoeren van complexe berekeningen Welke keuze is optimaal Zoekruimte Wat kan wel, wat kan niet Hoe snel kan het Computers moeten efficiënt complexe problemen op kunnen lossen. Zeer efficiënte algoritmen zijn dan ook van essentieel belang. Je leert in de opleiding efficiënte data structuren voor het zoeken in verzamelingen gegevens en algoritmen om diverse problemen op te lossen. Vakken Datastructuren Algoritmiek Optimalisering en complexiteit 19
De laagste schatting? Dijkstra: “steeds alle punten bekijken” Erg veel werk voor grote kaart! Kies Rooster 2 en Mens-wachtrij Je moet steeds zelf de laagste schatting aanklikken Hoe kun je dit goed automatiseren?
De beste wachtrij
Geen richtingsgevoel Kies Klungelig (en boom-wachtrij) Wybe “ziet” slimme dingen niet
Negatieve kosten Kan dat wel? Kies Negatief gewicht Mens-wachtrij: kan wel
De Metro Open Metro (Naief) Van Zicin naar Haje: overstappen in Mustek en Muzeum Van Cerny Most naar Skalka: enkele overstap in Mustek is sneller! Algoritme aanpassen op overstapkosten? Kaart corrigeren voor overstapkosten? Open Metro (Splits)
Combinatorische routes Gewenst tussenpunt: Snelste route komt niet langs PIN Wat is de snelste route MET PIN? Snelste van huis -> PIN plus Snelste van PIN -> Zwembad Tussenpunt kost TWEE “normale” routeberekeningen
Zwembad Quest Tom heeft GELD en ZWEMBROEK nodig GELD halen bij PIN machine, 1 min Oma, heeft ook zwembroek, 33 min Vriend, 13 min ZWEMBROEK bij Huis, 22 min zoeken Oma, ook geld, 33 min Zeeman, 2 min, eerst GELD HOEVEEL mogelijke routes?
Quest als Routeprobleem Per locatie vier knopen: -, G, Z, GZ Start: [Toms Huis, -] Doel: [Zwembad, GZ] Ruilen of krijgen: “lokaal wegstukje” met tijd Quest is 1 normale routeberekening Netwerk wordt vier keer zo groot
Informatica Informatiekunde ontwerpen en bouwen van geautomatiseerde systemen verbeteren van de werking van computers en programmatuur Informatiekunde betekenis van ICT voor mens en maatschappij functioneren van mensen en organisaties ICT vanuit het perspectief van de gebruiker Verschil vaak aangeduid als * achter het scherm * voor het scherm Keuze : algemeen voor UU door algemene universiteit (ipv bijv technisch) heb je een breed aanbod aan opleidingen en dus vakken tevens een gemengde studentenpopulatie (dwz meisjes ;-) grootste keuzeruimte (landelijk!) door invulling profileringsruimte bij informatica ook keuze in de major specifiek voor informatica wat inhoud opleiding betreft: software project je kan nog een voorbeeld geven (NIBUD) verwijs naar poster met voorbeelden in InfoLounge dubbele major
Meer weten over informatica als studie? Een dagje studeren (aanmelden via UU-site) Bekijk de website van het departement Informatica: www.cs.uu.nl/education/ met alle details van vakken, docenten en achtergronden Richting Gametechnologie: www.gametechnologie.nl Informatica-techniek gericht op Games, simulatie, graphics. Leg nog eens de nadruk op de juiste student op juiste plek: dat is voor alle betrokkenen prettig.