Opdracht en onderwerpen

Voor het Introductieproject Informatica werk je in groepjes van ongeveer 6 personen, doorgaans uit dezelfde tutorgroep, samen aan een opdracht. De bedoeling van het project is het ontwikkelen van een applicatie/product, of een duidelijk afgebakend deel daarvan. In meer detail komt het project op het volgende neer:

  1. Kies gefundeerd een onderwerp.
  2. Analyseer en beschrijf het probleem dat je op wilt lossen. Geef hierbij aan aan wat voor eisen (requirements) je zou willen dat het product voldoet. Beschrijf tevens hoe je je applicatie gaat bouwen en de bouwstenen die je nodig hebt.
  3. Implementeer je oplossing en test het uitgebreid, zowel wat betreft correctheid als wat betreft functionaliteit. Zorg voor een werkend product!
  4. Maak een webpagina en flyer waarop je je project presenteert.
  5. Maak een voordracht over het werk waarin alle bovengenoemde aspecten aan bod komen.
  6. Schrijf een verslag over het project.
  7. Maak een CD/DVD waarop de definitieve versies van alle deliverables staan.

Hieronder staat een lijst met mogelijke onderwerpen waaruit gekozen kan worden. Merk op dat de beschrijvingen niet bindend zijn en je een grote vrijheid hebt bij de uitwerking ervan; wees dus creatief en ambitieus! Uiteraard mogen ook eigen ideeën of varianten uitgewerkt worden, na overleg met de begeleider.

Zodra je deel uitmaakt van een projectgroep, geef je zo snel mogelijk een top-3 van voorkeuren voor opdrachten door aan zowel je tutor als de coordinator van het project. De meeste opdrachten kunnen een beperkt aantal keer gekozen worden. Bij het toekennen van de opdrachten zal ook een begeleider toegekend worden.

Je hebt behoorlijk wat vrijheid om je eigen invulling aan onderstaande opdrachten te geven, maar jullie kunnen ook een geheel eigen idee aandragen. Overleg hiervoor wel goed met je begeleider. Onderstaande link geeft wellicht nog wat inspiratie:

  1. Eigen idee
  2. MyMap: kortste-pad kaart
  3. Weet wat je eet
  4. Sport: wie speelt er tegen wie?
  5. Verkiezingsuitslagen
  6. Simulatie van een processor
  7. Shopping assistent
  8. 3D-illustraties
  9. Stoplichtsimulatie
  10. Logische puzzels
  11. De Taalkist: leren over grammatica
  12. Fanatiek geocachen
  13. College: waar en wanneer?
  14. Schiphol: welk vliegtuig waar?
  15. NS: materieeltoewijzing

1. Eigen idee

Verzin zelf je opdracht. Bedenk bijvoorbeeld zelf een product gebaseerd op een van onderstaande ingrediënten:

  1. Computer Detective
  2. EHBO trainer
  3. Image stitching / panorama reconstructie
  4. Steganografie (data hiding) / digitaal watermerken
  5. ASCII-art generator
  6. Geotagging
  7. 2D `matrixcodes': de QR-tag is een populaire 2D barcode, maar er bestaan nog veel meer van dit type coderingen


2. MyMap: kortste-pad kaart

Eindproduct
Een programma dat gegeven een bepaald doel een kaart kan tekenen van een gebied van Nederland met daarin de kortste routes om op die plek te komen.

Inleiding
Elektronische routeplanners zijn een onderdeel van het dagelijks leven in de 21e eeuw; zij het in een toegewijd apparaat zoals een TomTom, een smartphone of online zoals Google Maps. De software maakt gebruik van gedetailleerde kaarten van de wereld en (varianten op) Dijkstra's algoritme om de kortste route tussen twee punten te bepalen. Edsger Dijkstra was een Nederlandse, wereldberoemde informaticus die ruim een halve eeuw geleden een slimme truc bedacht om kortste paden te zoeken in een graaf.

Toch is het soms fijn om met een interactieloos medium zoals een jpeg of een poster vooruit te kunnen. Het is natuurlijk onmogelijk om een kaart van een gebied te tekenen met alle mogelijke routes die je daarin kunt nemen, maar als je 1 doel kiest (of omgekeerd: een startpunt) kun je met datzelfde algoritme een zogenaamde kortste-pad-boom uitrekenen waarmee je in 1 statische afbeelding alle kortste routes naar dat punt kunt weergeven. Daarmee kun je bijvoorbeeld een kaart van Utrecht uitprinten met daarin de routes naar je kamer zodat je (zelfs zonder batterijen) niet de weg kwijt raakt, of op de website van je winkel de kortste route voor al je klanten in 1 klap laten zien.

Functionaliteit
In deze opdracht schrijf je een programma dat met een kaart van Nederland zo'n kortste-pad-boom op een mooie manier kan tekenen als de gebruiker een deelgebied en een doelpunt aangeeft. Dit kan (als de kaart klaarstaat) in een paar seconden.

De eerste uitdaging is het zoeken en verwerken van geschikte kaartgegevens en het implementeren van Dijkstra's algoritme. Er komt ook grafisch werk bij kijken: de resulterende kaart kan nogal ingewikkeld zijn, kun je het toch duidelijk houden? Misschien zelfs extra informatie weergeven zoals afstand tot het doel?

Maak een mooie interface voor de gebruiker: met de muis of via een adres of stel coordinaten zou het doel aangegeven kunnen worden. Exporteren naar jpeg, svg, pdf, filmpje? Vergeet daarbij ook de gebruikershandleiding niet! En je kunt TomTom en Google overtreffen door ook fiets- en/of wandelroutes goed te ondersteunen.

Sleutelwoorden
algoritmiek, grafen, Dijkstra's algoritme, kortste-pad-boom, Vector-graphics, xml-parsing

Links
http://bmander.github.com/graphserver/gallery.html
http://en.wikipedia.org/wiki/Dijkstra's_algorithm
http://www.openstreetmap.org/


3. Weet wat je eet

Eindproduct
Een programma dat de gebruiker ondersteunt bij zijn of haar dieet.

Inleiding
Vele mensen volgen een dieet, om verschillende redenen. Dit kan min of meer vrijwillig zijn om af te vallen, of in verband met te leveren sportprestaties. Het dieet kan echter ook opgelegd zijn in verband met ziekte (hartproblemen, diabetes,...) of met een voedselallergie (gluten, koemelk, noten,...). Je houden aan een dieet is enerzijds lastig omdat het vaak betekent dat je bepaalde dingen niet of in mindere mate mag eten. Anderzijds is het soms lastig te bepalen of je een product (nog) wel mag hebben.

Functionaliteit
Bepaal de doelgroep die je wilt ondersteunen bij hun dieet. Elk dieet heeft zo z'n vereisten en beperkingen. Je programma dient deze kennis te bezitten om de gebruiker te kunnen vertellen wat hij/zij wel of niet mag hebben. Denk bij een 'afval'-dieet bijvoorbeeld om de hoeveelheid ingenomen voedingswaarden: wat heeft een persoon al gegeten, wat mag hij/zij vandaag nog hebben, is dat vergelijkbaar met een koekje of een warme maaltijd? Denk aan het verschil tussen kilojoules en kilocaloriën. Voor voedselallergieën kan je bijvoorbeeld gebruik maken van de etiketteringsregels en databases met allergeen-vrije producten om zo van specifieke producten aan te geven of ze veilig of risicovol zijn. Wellicht kan je ook heuristieken definieren waarmee je de gebruiker kan waarschuwen. Laat je systeem ook uitleggen waarop het advies is gebaseerd. Kan je ook iets met barcodes? Kan je ook iets met logo's op het product? Kan je onderscheid maken tussen allergeen-arm en allegeen-vrij? Kan je het systeem aanpassen op de persoonlijke wensen en dieetrestricties van de gebruiker? Kan je nog een vertaalfunctionaliteit toevoegen zodat je systeem ook werkt voor producten met etiketten in het Frans, Duits, Engels of bijvoorbeel Spaans? Vergeet uiteraard de gebruikershandleiding niet!

Links
http://nos.nl/artikel/359247-allergieapp-wint-willie-wortel-wedstrijd.html
http://www.allergenenconsultancy.nl/nieuws.php?nid=128
http://www.allergenenconsultancy.nl/in/wetgeving
http://www.livaad.nl/
http://mens-en-gezondheid.infonu.nl/dieet/93870-dieten-via-apps.html


4. Sport: wie speelt er tegen wie?

Eindproduct
Een systeem voor de organisatie van sporttoernooien.

Inleiding
Het organiseren van een sporttoernooi is een hele klus. Hierbij wordt steeds meer gebruik gemaakt van computerondersteuning. Je kunt hierbij denken aan de organisatie en planning voorafgaand aan het toernooi. Het gaat dan om het inschrijven en indelen in poules van de teams en het maken en publiceren van een plezierig wedstrijdschema. Dit laatste omvat ook het toewijzen van wedstrijden aan velden, waarbij rekening gehouden moet worden met een beperkte capaciteit. Ook is operationele ondersteuning tijdens het toernooi gewenst. Dit gaat om het invoeren en verwerken van uitslagen en het presenteren van de eindstand.

We richten ons hierbij op een teamsport waarbij een toernooi wordt gespeeld in verschillende poules, bijvoorbeeld voetbal.

Functionaliteit
In deze opdracht maak je een systeem dat organisatoren van sporttoernooien ondersteunt. Het is van belang dat de invoer en uitvoer mooi, overzichtelijk en gebruikersvriendelijk zijn. Er moet een goede manier gevonden worden om schema te maken. Verschillende onderdelen van het systeem moeten goed op elkaar afgestemd zijn.

Vergeet de gebruikershandleiding niet!

Bijzonderheden
Er zijn gegevens beschikbaar van een schoolvoetbaltoernooi in de gemeente Bunnik, maar mogelijk kun je ook gegevens gebruiken van een toernooi waar je zelf aan hebt meegedaan.

Te raadplegen expert: Marjan van den Akker.


5. Uitslagen van de verkiezingen voor de Tweede Kamer

Om de vier jaar - soms wat vaker - worden in Nederland verkiezingen voor de Tweede Kamer gehouden. De berekening van de uitslag is altijd spannend. Partijen zitten 'op het randje', halen ze nu net wel of net niet een extra zetel? Belangrijke termen daarbij zijn kiesdrempel, kiesdeler, restzetel, lijstverbinding. Hoe gaat die berekening eigenlijk in zijn werk?
Daarnaast is zo'n uitslag voer voor analisten. Wie heeft gewonnen, wie verloren. Er worden fraaie graphics gemaakt om de verschuivingen in beeld te brengen.

In deze opdracht ga je software maken om de uitslag te berekenen. De berekening moet correct zijn, dat is conform de kieswet. De presentatie van de uitslagen kun je naar eigen inzicht invullen.
Bij de berekening kun je gebruik maken van de officiële uitslagen, zoals gepubliceerd door de kiesraad.

Links
De officiële site van de kiesraad Wikipedia over de Tweede Kamerverkiezingen/a>


6. Simulatie van een processor

De werking van een processor kun je in een verhaal uitleggen, maar een animatie werkt beter. Op internet was hiervoor altijd een leuke applet te vinden, de 4-bit democomputer, die de werking van een processor met 4-bits woorden (en dus 16 instructies) simuleert. Deze simulator was nog geschreven in Java1.0 en is inmiddels ter ziele.

In deze opdracht maak je een dergelijk simulator, die bij voorkeur op een internetpagina moet kunnen werken. Als voorbeeld kun je de oorspronkelijke 4-bit democomputer nemen, de antieke code en een handleiding is beschikbaar. De oorspronkelijke simulatie kan ook verbeterd worden, betere animatie, vertellen wat er gebeurt.

Nadere info bij Paul Bergervoet.

Links
4-bit demo computer


7. Je shopping assistent

Eindproduct
Een applicatie die o.a. boodschappenlijstjes genereert.

Inleiding
Ben je weer veel tijd kwijt geweest met het doen van boodschappen? Omdat je niet wist wat je precies nodig had? Omdat je drie keer de winkel rond moest, manoeuvrerend tussen volle karren, voordat je alles had? Een goede boodschappenlijst zou je hierbij kunnen helpen, mits de lijst eenvoudig op te stellen is, alles wat je nodig hebt erop staat, en in een handige volgorde.

Een gezin, maar ook een studentenhuis dat (deels) een gezamenlijk huishouden voert, heeft bij het boodschappen doen vaak te maken met een lijst producten die (bijna) altijd gekocht moeten worden, en daarnaast de incidentele producten. Hoe meer boodschappen er nodig zijn, hoe vervelender het wordt om dit zonder handige lijst te doen. Natuurlijk kan je een standaard lijstje op de computer zetten en die steeds uitprinten; of een iets geavanceerdere versie waarbij je alleen print wat je aanvinkt. Dit bespaart je schrijfwerk, maar is nog niet persé handig.

Uiteraard mag het 'shoppen' in bredere of andere context dan de dagelijkse boodschappen gezien worden!

Functionaliteit
Voor deze opdracht bouw je een applicatie die handige boodschappenlijsten genereert. Uiteraard moet de lijst exact de producten bevatten die je nodig hebt. Het samenstellen ervan moet eenvoudig gaan, dus bijvoorbeeld op basis van wekelijkse benodigdheden, benodigdheden bij een bepaald recept, aanwezige voorraden, etc., zonder alle mogelijke producten langs te hoeven lopen. Daarnaast moet het lijstje handig zijn in gebruik, dus producten zijn geordend op categorie, per winkel waar je ze wilt kopen, mogelijk zelfs met meest efficiënte route door de winkel. Je kan ook denken aan een mobiele app waarop je ook dingen van de lijst af kan schrappen, en dynamisch nieuwe lijsten kan genereren als onverhoopt producten uitverkocht zijn en je langs een andere winkel wilt.

Vergeet de gebruikershandleiding niet!

Links
http://www.ah.nl/appie


8. 3D-illustraties

Eindproduct
Een programma dat illustraties of filmpjes kan maken die de illusie van diepte geven.

Inleiding
Een aantal jaar geleden was er een populaire serie ''Magic Eye''-boeken die gevuld waren met zogenaamde autostereogrammen: twee dimensionele illustraties die ontworpen zijn om de illusie van diepte te geven als de kijker er op een specifieke manier doorheen staart. Vaak lukt het niet in een keer, maar een geoefend oog kan uiteindelijk het verborgen drie dimensionale object herkennen. Dit is een vorm van 3D-foto die alle kleurinformatie verliest maar interessant is omdat er geen enkel hulpmiddel nodig is (geen bril, geen speciaal scherm).

De truc is redelijk simpel: door te staren kun je het ene oog een ander beeld geven dan het andere. Door het herhalende patroon denken je hersenen dat je ogen toch naar hetzelfde punt kijken. Zo kun je een virtueel beeld maken dat achter het echte plaatje staat.

Functionaliteit
Met een depth map en een patroon moet je programma een autostereogram maken. Dit patroon kan random gegenereerd zijn, of uit echte plaatjes bestaan. Probeer de 3D-illusie zo sterk mogelijk te maken met geavanceerde technieken. Kun je je programma uitbreiden door ook animaties te maken?

Voor een ongetrainde kijker is het soms moeilijk te geloven dat er iets in de foto verborgen zit. Kun je ook een autostereogram decoderen? Of op z'n minst de illusie duidelijker maken? Dat is natuurlijk ook een prettige mogelijkheid voor bij demonstraties waar je niet de kans hebt om alle kijkers te laten wennen aan de manier van kijken.

Vergeet de gebruikershandleiding niet!

Sleutelwoorden
beeldverwerking, 3d modellen

Links
http://www.hidden-3d.com/how_to_view_stereogram.php
http://acidcow.com/pics/1694-autostereogram-100-pics.html
http://www.techmind.org/stereo/stech.html


9. Stoplichtsimulatie

Eindproduct
Een programma waarin strategieën voor de stoplichten van een stad kunnen worden gesimuleerd en geoptimaliseerd.

Inleiding
In de praktijk werken stoplichten verre van ideaal: natuurlijk is het fijn dat verkeersdeelnemers niet tegen elkaar botsen, maar vaak sta je eindeloos voor een rood licht te wachten terwijl er niemand is die je weg kruist. In werkelijkheid is het behoorlijk pittig om stoplichten goed te timen, het verkeer neemt een bepaalde golfbeweging aan door een complex samenspel van andere stoplichten en soms is het nodig de ene auto ergens iets langer te laten wachten zodat een grote groep medebestuurders niet hoeft te stoppen.

Als informaticus is soms moeilijk om niet te denken dat je het toch vast beter kunt.

Functionaliteit
In deze opdracht maak je een simulatieprogramma voor stoplichtstrategieen. Begin met een enkel kruispunt, en breid dat vervolgens uit naar een aantal opeenvolgende kruispunten, tot een kleine teststad. Bedenk verschillende mogelijke strategieen voor de stoplichten en laat de voor- en nadelen zien door te meten hoe efficient de verschillende stoplichtstrategieen werken.

Kan je programma ook verschillende verkeersstromen generene? Kan het het wegennetwerk van een gebied inlezen en daarop de kruispunten en verkeersstromen simuleren? Kan je de timing van stoplichten zo efficient maken voor je teststad dat je 'sims' geen reden hebben om te denken dat zij het beter kunnen? Natuurlijk hoort er ook een mooie grafische weergave bij.

Vergeet de gebruikershandleiding niet!

Bijzonderheden
In plaats van een simulatie van stoplicht strategieën, kan je bijvoorbeeld ook kiezen voor een lift simulatie van de liften in het BBL.

Sleutelwoorden
simulatie, grafen, optimalisering

Links
http://xkcd.com/277/


10. Logische puzzels

Eindproduct
Een programma dat spelers helpt bij het oplossen van verschillende logische puzzels.

Inleiding
Mensen lossen graag en vaak puzzels op. De laatste jaren zijn logische puzzels, veelal ontstaan in Japan, steeds populairder geworden: zo staan er dagelijks sudoku's in bijna alle kranten. Zulke puzzels kunnen mensen soms minuten kosten, en soms weken zoet houden. Computers kunnen meestal, mits goed geprogrammeerd, puzzels die mensen uitdaging bieden binnen een fractie van een seconde oplossen.

Verschillende puzzels vereisen verschillende aanpakken, maar de logische puzzels vertonen veel overeenkomsten in de manier van oplossen. Kan je ontdekken wat een mens precies doet bij het oplossen van een puzzel en dat dan programmeren? Of kan het slimmer? Kan je een basisalgoritme bedenken dat ten grondslag ligt aan de oplossing voor verschillende Japanse puzzels, zoals de Sudoku, de Hitori, de Kakuro, etc.?

Functionaliteit
Maak een programma dat als invoer een van de Japanse puzzels heeft en de speler helpt met het oplossen ervan. De speler moet dus zelf 'zetten' kunnen doen, maar moet ook om een hint kunnen vragen, of om een complete oplossing.

Kan je het systeem ook laten uitleggen waarom een gesuggereerde zet de juiste is, of waarom een gezette stap fout of niet zo slim is? Kun je je programma ook gebruiken om zelf puzzels te genereren? Probeer de basis onder alle puzzels zo gemeenschappelijk mogelijk te houden. Kan je deze basis ook gebruiken voor het oplossen van andersoortige logische puzzels, zoals het logigram?

Vergeet de gebruikershandleiding niet!

Sleutelwoorden
zoekalgoritmen, breadth-first-search, constraint satisfaction problems

Links
http://nl.wikipedia.org/wiki/Logigram
http://nl.puzzle-nonograms.com/
http://www.binairepuzzel.net/
http://www.hitoriconquest.com/help.html
http://www.kakurospelen.nl/page.php?page=2&titel=spelregels+kakuro
http://www.sudoku.name/rules/nl


11. De taalkist: een programma om te leren over grammatica

De Taalkistis educatieve software die begin jaren '90 van de vorige eeuw ontwikkeld is om leerlingen de basisbegrippen van grammatica bij te brengen.
Het programma kan zinnen genereren volgens een syntax, je kunt de syntax opbouwen door voorbeeldzinnen in te tikken en daarin aan te geven wat zinsdelen zijn.

De software is zwaar verouderd: DOS met menu's die je bedient met het toetsenbord. Het idee is nog steeds goed en kan met de huidige techniek veel mooier (grafisch) worden uitgebeeld.
De opdracht is om dat te doen, waarbij er behoorlijke vrijheid is om ideeën voor een mooie, moderne vormgeving in te brengen.

Deze opdracht is bijzonder in de zin dat er een externe opdrachtgever is. De oorspronkelijke ontwikkelaar, Jan Lepeltak, wil graag meewerken, met het doel de nieuwe software ook weer in het onderwijs in te zetten.

Links
Volgen. Al het oorspronkelijke materiaal is beschikbaar.


12. Fanatiek geocachen

Eindproduct
Een tool die de fanatieke geocacher helpt met het plannen van 'cache-routes' en het genereren van (foto)verslagen.

Inleiding
Geocaching is een spel waarbij GPS coördinaten gebruikt worden om ergens ter wereld een cache (schat) aan te duiden. De locaties van een cache wordt door de plaatser ervan op internet bekend gemaakt aan alle geocachers. In de schat is altijd een logboek aanwezig, waarin de vinder zijn naam achter kan laten. Het is ook de bedoeling dat de vinder op de website van de betreffende schat een bericht achter laat met eventueel een foto.

Een fanatieke geocacher zal bij ieder bezoek aan een stad of land willen weten of daar nog wat te vinden is. Tegenwoordig zijn er applicaties voor telefoons die op een kaart alle caches in de omgeving tonen.

Functionaliteit
Voor deze opdracht maak je een tool voor de fanatieke geocacher, waarmee een dagje geocaching zo goed mogelijk besteed wordt. Wat is de kortste route die de geocacher langs zoveel mogelijk caches leidt, of langs caches van een bepaald type? Kan je daarbij rekening houden met hoe er gereisd wordt (per auto, te voet), wat de maximale afstand is die afgelegd mag worden? Kan je het zo plannen dat je rond lunchtijd in de buurt van een eetcafe zit? Bedenk zelf wat een geocacher allemaal met zo'n tool zou willen.

Aan het eind van de reis wordt er een verslag gemaakt voor een website. Kan je gemaakte foto's automatisch koppelen aan de juiste cache, bijvoorbeeld door informatie die opgeslagen wordt door de digitale fotocamera (tijd van opname) te koppelen aan de GPS 'track' van waar je bent geweest en wanneer? Heb je meerdere foto's in de buurt van dezelfde cache gemaakt, kan je die dan clusteren? Kan je ze tonen op een kaart? Bedenk ook hiervoor wat een geocacher allemaal zou willen. Vergeet uiteraard de gebruikershandleiding niet!

Bijzonderheden
Deze opdracht is minder geschikt als niet één van jullie zelf aan geocaching doet.

Links
http://www.geocaching.nl


13. College: waar en wanneer?

Eindproduct
Een planningssysteem voor het toewijzen van zalen aan colleges.

Inleiding
De betafaculteit bestaat uit de departementen Informatica/Informatiekunde, Wiskunde, Natuurkunde, Biologie, Scheikunde en Farmacie. Voor het geven van hoor- en werkcolleges, practica, etc. heeft de betafaculteit de beschikking over een aantal gebouwen met daarin verschillende soorten collegezalen en practicumruimten met verschillende eigenschappen. Het is bekend welke colleges enz. moeten worden gegeven, en in het algemeen is ook bekend in welk timeslot (A, B, C, D, of een combinatie daarvan) dat moet gebeuren, maar de exacte tijden zijn nog onbekend. Het plannen van zalen en tijden gebeurt nu nog handmatig, maar dat is natuurlijk niet meer van deze tijd, en moet worden geautomatiseerd. Gelukkig kan daarvoor een beroep worden gedaan op een groep studenten Informatica.

Functionaliteit
Het systeem moet een zalen/tijden toewijzing kunnen bepalen en deze visueel kunnen presenteren. Verder moet het mogelijk zijn om snel een verandering door te kunnen rekenen. Verder moet het kunnen communiceren met alle relevante programma's.

Vergeet de gebruikershandleiding niet!

Bijzonderheden
Dit project is gebaseerd op een project dat recent is uitgevoerd door een informaticastudent. Er een gesprek worden geregeld met de persoon die nu de planning verzorgt.


14. Schiphol: welk vliegtuig waar?

Eindproduct
Een planningssysteem voor gate managers op een luchthaven.

Inleiding
Luchtvaartmaatschappijen willen hun vliegtuigen zoveel mogelijk laten vliegen. In de tijd dat een vliegtuig tussen twee vluchten door aan de grond staat moet er heel veel gebeuren, zoals tanken, schoonmaken, catering, in- en uitladen van bagage en laten in- en uitstappen van passagiers. Het vliegtuig staat dan aan een gate. Op Schiphol zijn er een kleine 100 gates. Niet elk vliegtuig mag een elke gate staan. Waar een vliegtuig mag staan wordt bijvoorbeeld bepaald door de grootte van het toestel en de herkomst en bestemming van de vlucht.

Gate assignment is het toewijzen van vliegtuigen aan gates en wordt uitgevoerd door gate planners. In dit project richten we ons op een systeem dat deze gate planners ondersteunt. Op een grote luchthaven is er een centrale database waar de geplande vertrek- en aankomsttijden van de vluchten in staan. Op basis van deze gegevens wordt een planning gemaakt. Gedurende de dag treden er heel veel verstoringen (meestal vertragingen) op waardoor de vertrek- en aankomsttijden veranderen. Dit heeft natuurlijk gevolgen voor de gate assignment.

Functionaliteit
Het systeem moet een gate assignment kunnen bepalen en deze visueel kunnen presenteren. Het gaat hier om een ''decision support'' systeem, dat wil zeggen dat het systeem een planning voorstelt en dat de planners kunnen aangeven of ze de oplossing accepteren of niet. In het laatste geval kan het systeem een alternatief voorstellen en/of kunnen de planners handmatig aanpassingen uitvoeren. Gebruikersvriendelijkheid is van groot belang.

Als er vluchttijden veranderen door verstoringen, moeten deze tijden in de planning doorgevoerd worden. Indien er hierdoor problemen ontstaan, moet het systeem de planning kunnen herberekenen. Het systeem moet ook visualiseren bij welke vluchten het probleem zich precies bevindt.

Vergeet de gebruikershandleiding niet!

Bijzonderheden
We baseren ons op de problematiek zoals deze speelt op Schiphol en er zijn gegevens van Schiphol beschikbaar. Vanwege het grote aantal vluchten en gates op Schiphol is het raadzaam om in dit project aan een kleinere (voorbeeld)luchthaven te werken.

Te raadplegen expert: Marjan van den Akker.


15. NS: materieeltoewijzing

Eindproduct
Een planningssysteem voor materieeltoewijzing bij de NS.

Inleiding
De NS vervoert dagelijks grote aantallen passagiers per trein door het hele land. Uiteraard is het hierbij van belang dat dit zowel comfortabel als efficiënt dient te gebeuren: het aantal passagiers dat moet staan mag niet te groot zijn, en er mag niet te veel materieel worden ingezet. Derhalve moet, uitgaande van een verwacht aantal reizigers, worden bepaald hoeveel, en wat voor, treinstellen er op ieder traject worden ingezet om de reizigers te vervoeren. Voor dat laatste wordt een beroep op jullie gedaan.

Het gaat bij deze opdracht om het bepalen van een goede materieelinzet op de lijn Den Helder - Nijmegen (Utrecht CS ligt ook op deze lijn). De NS gebruikt IC3's en IC4's op deze lijn. Het dienstrooster ligt vast, en er zijn verwachte passagiersaantallen bekend. Voor ieder traject tijdens iedere rit moet voor een gewone doordeweekse dag worden bepaald hoe de trein moet worden opgebouwd uit IC3's en IC4's. Hierbij moet natuurlijk rekening worden gehouden met de bestaande beperkingen.

Functionaliteit
De opdracht is opgebouwd uit de volgende drie delen:

  1. Modelvorming. Hierbij moet door middel van het stellen van gerichte vragen worden uitgezocht wat er allemaal van belang is, en hoe dat moet worden gemeten.
  2. Het bepalen van een goede oplossing.
  3. Het maken van een ontwerp van een systeem dat gebruikt kan worden om tot een herplanning te komen in geval van calamiteiten.

Vergeet de gebruikershandleiding niet!

Bijzonderheden
Te raadplegen expert: Han Hoogeveen. De gerichte vragen van deel 1 moeten aan hem worden gesteld.