De universiteit: niet alleen een plek voor onderzoek, ook een opleidingsfabriek. Wie zijn de vormers van de nieuwe generatie academici? Kennislink neemt de proef op de som en gaat terug naar de collegebanken. Vandaag bij Arnold Meijster, docent kunstmatige intelligentie aan de Rijksuniversiteit van Groningen: “Een college moet geen cabaretvoorstelling worden, maar een beetje show mag wel. Het komt de aandacht en interactie in de zaal ten goede.”
“Een oude legende spreekt over een Indische tempel waar drie palen staan en 64 gouden schijven liggen. Samen vormen zij een puzzel. Ook zijn er Brahmaanse priesters, die deze schijven aan het verplaatsen zijn van paal naar paal. Ze doen dit niet zomaar, want op het moment dat zij deze puzzel voltooien, zal de wereld eindigen…”
Ik bevind me in de collegebanken bij dr. Arnold Meijster, die het vak imperatief programmeren verzorgt. Studenten kunstmatige intelligentie zetten hier hun eerste stappen in het beheersen van de computertaal C.
Met humor en een goedgemutste grijns op zijn gezicht vertelt Meijster over recursion (recursie): een nieuwe manier om probleemoplossend programmeren te benaderen. “De truc is om voorgeschotelde problemen uit te drukken in een makkelijkere versie van zichzelf.” Het klinkt mij vrij vaag in de oren, maar gelukkig is Meijster dat met me eens en volgt het voorbeeld van de Brahmaanse priesters.
De toren van Hanoi
De legende van de Brahmaanse priesters die een puzzel oplossen om het einde van de wereld dichterbij te brengen, gaat over ‘De Toren van Hanoi’. Gelukkig voor de wereld is het een flinke opgave om de puzzel op te lossen. De situatie en regels zijn als volgt: alle schijven liggen, van groot naar klein, op één van de drie palen. Samen vormen zij dus een toren. De bedoeling is om de toren naar één van de twee andere palen te verplaatsen. Er mag één schijf per keer verplaatst worden, en daarnaast mag een schijf nooit op een kleinere schijf liggen. Aangezien elke schijf in grootte verschilt, is dit een erg moeilijk –en vooral traag– proces.
Om de puzzel te vergemakkelijken, verlaagt Meijster het aantal schijven om te beginnen van 64 naar 4. De bedoeling is om de toren te verplaatsen van paal 1 naar paal 2. Hij legt uit hoe de oplossing door middel van recursie is te vinden.
Fout
Het eerste doel is om de onderste schijf van paal 1 naar paal 2 te krijgen. “Hoe gaan we dat doen?” vraagt Meijster. Verschillende vingers gaan de lucht in en het antwoord dat ik zelf ook had bedacht, wordt gegeven. Nog voordat de student de eerste zin van zijn verhaal afmaakt, kapt Meijster hem af: “Fout”, klinkt het enigszins treiterend door de zaal. Nu durft niemand meer te antwoorden, dus Meijster laat het antwoord zien. “We verplaatsen gewoon alle drie de schijven in één keer naar paal 3, en dan de onderste naar paal 2. Simpel.”
Je hoort iedereen haast hardop denken: “Maar dat mag toch helemaal niet?” En dat klopt ook. Meijster laat niet de oplossing zien maar een eerste stap om de oplossing te vinden via recursie. Deze zet (de bovenste stapel staat op paal 3 en de onderste schijf verplaatst van paal 1 naar paal 2) zal ergens als tussenstap voorkomen. Meijster hoeft nu alleen nog op te lossen hoe hij drie schijven op de juiste manier een paal verschuift. Door steeds dit soort stapjes te nemen, deel je het probleem op in deelproblemen die je achteraf in elkaar kunt schuiven tot de volledige oplossing.
Overigens: als de toren uit 64 schijven bestaat en de priesters verplaatsen één schijf per seconde, dan zou het 585 miljard jaar duren voordat de wereld eindigt. “Maak je dus maar geen zorgen, en leer maar wel voor jullie tentamen”, voegt Meijster half grappend toe.
Kunstmatige intelligentie
Meijster legt zijn studenten uit hoe ze recursie kunnen gebruiken in hun codes en hoe het gebruikt kan worden in kunstmatige-intelligentie-toepassingen. De toren van Hanoi is vooral het voorbeeld om te laten zien hoe je instructies voor een oplossing in computertaal kunt opschrijven. Als de studenten het voor de Toren van Hanoi snappen, kunnen ze het ook op andere problemen (leren) toepassen. Meijster haalt nog verschillende toepassingen aan, zoals het oplossen van sudoku’s en schaakspelen. Het enthousiasme straalt nu echt van sommige studenten af, want dat zijn dé vormen van kunstmatige intelligentie die iedereen tegenwoordig zo gaaf vindt.
Het is te merken dat Meijster de kneepjes van zijn vak kent. het is goed te begrijpen dat hij een aantal jaar geleden verkozen is tot beste docent van zijn faculteit. Sterker nog, tot nu toe mag hij elk jaar rekenen op een nominatie, vertelt hij na afloop van het college.
Meijster bekleedt een vrij unieke positie aan de universiteit van Groningen. Hij geeft les, maar doet daarnaast geen onderzoek. Sterker nog, hij mag niet eens onderzoek doen. Groningen hanteert een, in Meijsters ogen, discutabel beleid: wetenschappers moeten minimaal twee jaar in het buitenland werkzaam geweest zijn, willen ze in aanmerking komen om onderzoek te doen. Dit om een internationaal netwerk intact te houden.
Dat kan volgens Meijster echter ook prima zonder fysiek in het buitenland te zijn geweest. “Ik voel er niet veel voor om twee jaar tegen mijn zin in het buitenland te gaan zitten, alleen maar om aan een vinkje te voldoen.” Het is dat hij zo goed les kan geven, anders was hij zonder pardon de laan uitgestuurd, iets wat vroegere collegae wel overkomen is. Het onderwijs lijdt daaronder, vindt Meijster. “Carrière maken als docent zit er niet meer in, omdat onderzoek belangrijker wordt gevonden.”
Van jongs af aan heeft de wereld van de informatica Meijster getrokken. Op de middelbare school leerde hij zichzelf programmeren en won hij met een van zijn creaties de derde prijs in een grote landelijke wedstrijd. De liefde voor het lesgeven kwam pas later aan het licht. Na het afronden van zijn studie en promotie kwam hij terecht bij het CIT in Groningen (Centrum voor InformatieTechnologie), waar hij aan supercomputers werkte. Toen begon Meijster met lesgeven, eerst op een laag pitje. Dat beviel echter zo goed dat het inmiddels al zijn tijd in beslag neemt, en hij achthonderd studenten verschillende aspecten van de informatica bijbrengt. Het pitje brandt harder dan ooit.