Simulatie als onderwijsleermiddel. Joost Kraaijeveld (0742724) Informatica, IBI009 Begeleider: Peter Lucas
Probleemstelling Is het mogelijk om de AORSL syntax en operationele semantiek uit te breiden zodat AORSL ook onderwijskundige probabilistisch besluit-theoretische simulaties ondersteunt?
Verantwoording Na iedere ramp kwam mr. Pieter van Vollenhoven van de Onderzoeksraad voor de Veiligheid langs in de media om de onvermijdelijke conclusie te trekken. Onvoldoende voorbereiding, onvoldoende geoefendheid, slechte incidentele besluitvorming en tekortschietende procedures bij de organisaties en medewerkers van de rampenbestrijding. Voor het opleiden, trainen en oefenen van functionarissen op uitvoerend niveau zijn vaak allerlei oplossingen voorhanden, variërend van reguliere opleidingen, trainingen en oefeningen tot zeer geavanceerde “in-theloop” simulatoren waarmee allerlei praktische situaties op vaak zeer realistische wijze worden nagebootst. Voor het opleiden, trainen en oefenen van bestuurders en managers bestaan echter minder mogelijkheden. En het zijn vaak de tekortkomingen op dit hogere niveau die zorgen voor de geconstateerde problemen bij de rampenbestrijding. Het voorbereiden op rampen en het opleiden, trainen en oefenen van de bestuurders en managers is erg complex en kostbaar. Waar bij op uitvoerend niveau de nadruk van het opleidingstraject zal liggen op psychomotorische vaardigheden in concrete situaties, ligt de nadruk op het leidinggevende niveau op complexe cognitieve procedurele vaardigheden in veel abstractere situaties. Naast de normale opleidingskundige aspecten van dergelijke opleidingen blijkt uit onderzoek dat zowel transfer als retentie van de opleiding, training en oefening van cognitieve procedurele taken problematisch zijn. Voor de transfer geldt dat er weinig verband lijkt te bestaan tussen de specifieke en algemene probleemoplossende methodes en de transfer van methode en feitelijke kennis tussen situaties. In specifieke situaties aangeleerde vaardigheden op het gebied van leren, denken en probleemoplossen blijken in de praktijk slecht of niet te generaliseren naar andere situaties, zelfs als de problemen isomorf zijn en slechts oppervlakkig verschillen. Dit verschijnsel treedt sterker op naarmate de taken discreter zijn (uiteenvallen in losse stappen). Er zijn twee belangrijke redenen waarom het gebrek aan transfer optreedt en die belangrijke implicaties hebben voor het trainen en oefenen. Op de eerste plaats blijkt dat het voor trainees moeilijk is om de trainingssituatie en de transfersituatie als isomorf te herkennen waardoor de trainees niet de juiste procedure hanteren. Op de tweede plaats blijkt dat, wellicht in het verlengde van herkenningsprobleem, ook het toepassen van kennis en vaardigheden sterk contextgevoelig te zijn. Dit betekent dat er in een trainingssituatie speciale en expliciete aandacht besteed moet worden aan zowel het isomorfisme als de contextgevoeligheid. De retentie wordt sterk bepaald door de mate van beheersing van de taak aan het einde van de training. Ook het onderhouden van de cognitieve vaardigheden is van belang. Voor cognitieve taken geldt dat in aanzienlijk sterkere mate dan voor motorische taken dat de taak performance voor cognitieve taken snel achteruit gaat, vooral als de vaardigheidstraining niet regelmatig herhaald wordt. Dit betekent dat veelvuldig oefenen in een trainingssituatie en regelmatig oefenen in de transfersituatie noodzakelijk zijn. Voor het opleidingstraject op het gebied van rampenbestrijding is dit problematisch. Vaak is er weinig of geen tijd beschikbaar voor een opleiding of training. Ook het oefenen vindt slechts incidenteel en meestal kleinschalig plaats. De trainees zijn slechts zelden tegelijk beschikbaar om te trainen en oefenen. Door het natuurlijke verloop in de diverse functies is telkens een groot percentage van de trainees ongeoefend wat betekent dat een training of oefening veelal inhoudt dat de nieuwkomers “bijgeoefend” moeten worden waarbij de geoefendheid van het gehele systeem niet wezenlijk op een hoger peil komt. Hoewel de meeste functionarissen in
hun dagelijks functioneren veel ervaring hebben met cognitieve procedurele taken is de transfer naar andere problemen gering. Bovendien is een de context van een ramp in het algemeen tamelijk verschillend van de context waarin zij hun normale werkzaamheden moeten vervullen. Deze problemen zouden kunnen worden opgelost door gebruik te maken van onderwijskundige computersimulaties. Door deze simulaties op daarvoor geschikte wijze in te richten kunnen veel, zo niet alle, van de hierboven geschetste problemen geheel of gedeeltelijk verholpen worden. Een intuïtieve manier om een dergelijke simulatie vorm te geven is gebruik te maken van “intelligent software agents” die met behulp van “probabilistic decision theoretic knowledge systems” hun taken uitvoeren in een “probabilistic discrete event simulation”. Hierbij worden de agents gemodelleerd naar de functionarissen met elk een eigen kennissysteem. Bij de kennissystemen worden de regels en procedures binnen het rampenbestrijdingssysteem als uitgangspunt genomen. Diezelfde regels en procedures vormen ook het uitgangspunt voor de executielogica van de simulatie. De gebeurtenissen in de simulatie worden afgehandeld op basis van de state van de simulatie en de logica van de kennissystemen. Hierdoor kan voorzien worden in een explain-systeem dat van willekeurige momenten kan laten zien welke regels door wie en hoe gebruikt zijn om te komen tot welk resultaat. Een dergelijk systeem kan gebruikt worden om de trainers en trainees te voorzien van concrete context gevoelige feedback.
Theoretisch kader Het uitgangspunt van het onderzoek wordt gevormd door opleidingskundige problemen waarvoor onderwijskundige simulaties een antwoord bieden. Het onderwerp van het onderzoek is de onderwijskundige simulatie als oplossing voor dat probleem.
Modellen Een model is een met een bepaalde doelstelling gemaakte beschrijving van een systeem uit de werkelijkheid. Welke onderdelen van dat systeem beschreven worden in /met een model hangt af die doelstelling. Een model is altijd een simplificatie van het echte systeem waarbij allerlei details weggelaten worden die er voor het uiteindelijke doel niet toe doen (abstractie). Als de relaties binnen een model simpel genoeg zijn, kan gebruik gemaakt worden van analytische methodes (algebra,analyse, statistiek en kansberekening) om het systeem te beschrijven/onderzoeken. Als de relaties complex zijn, dan zal veelal gebruik gemaakt moeten worden van simulatie. Simulaties zijn implementaties van de modellen. Bij een simulatie wordt gebruik gemaakt van een computer om een model in de tijd numeriek te evalueren en wordt daarover data verzameld die gebruikt worden om de karakteristieken van het systeem in te schatten. Modellen kunnen op verschillende dimensies onderscheiden worden. Ze kunnen continue of discreet zijn. In het eerste geval worden de waarden van de entiteiten (of variabelen) binnen het systeem voortdurend bepaald en wordt de toestand van de wereld dus continue doorgerekend. In het tweede geval wijzigen die entiteiten op bepaalde (discrete, en aftelbaar veel) tijdstippen in de tijd zich en verandert het systeem dus op die tijdstippen van state. Een model kan dynamisch en statisch gemodelleerd worden. Een statisch model is de staat van een systeem op een bepaald tijdstip of een model waarbij het concept van tijd geen rol speelt. Een dynamisch model beschrijft het gedrag van het systeem in de tijd. Tot slot kan een model deterministisch of probabilistische zijn. Als een model geen stochastische variabelen bevat is het model deterministisch. De meeste echte wereld modellen zijn evenwel probabilistisch. Een simulatie die een discreet, dynamisch en probabilistische model van de werkelijkheid geeft, wordt ook wel een “discrete event simulation” (DES) genoemd.
Simulatie Agent-gebaseerde simulatie is een redelijk nieuw paradigma dat daadwerkelijk gebruikt is op verschillende gebieden zoals biologie, economie en sociale wetenschappen. In een agentgebaseerde simulatie wordt een systeem gemodelleerd als een verband van samenwerkende agenten in hun wereld waarin zij met elkaar interacteren en hun wereld beïnvloeden. Deze agents hebben een geheugentoestand met daarin componenten als kennis, geloof, geheugen,
intenties en doelen. Door het gebruik van agenten is agent-gebaseerde simulatie minder abstract en heeft een grotere gelijkenis met de echte wereld omdat er expliciet geprobeerd wordt de individuele actoren in de echte wereld te modelleren als individuele agenten. “Agent-Object-Relation Simulation“ (AORS) is een agent-gebaseerde discrete-event simulatie architectuur met een hogere simulatietaal, een abstracte simulator architectuur en een executie model. De AOR simulatietaal (AORSL) is gedefinieerd in een abstracte syntax met behulp van een MOF/UML (meta)model. AORSL heeft een operationele semantiek in de vorm de abstracte simulator architectuur en executiemodel. De syntax is een op XML gebaseerde syntax die o.a. ondersteuning biedt aan code fragmenten en expressies. Er wordt gebruik gemaakt van regels om causaliteit en agent-gedrag te modelleren. AORSL ondersteunt op dit ogenblik geen “probabilistic decision theoretic knowledge system” technieken of methoden voor de definitie of executie van de simulatie maar is beperkt tot atomaire feiten en deterministische methoden met beperkte en elementaire random faciliteiten. In een recente publicatie zijn AORSL en SPARQL conceptueel geïntegreerd waardoor het mogelijk is een agent te bevragen over zijn “beliefs”. AORSL is een abstracte taal en die in verschillende programmeertalen te implementeren is. Op dit moment is er één deterministische AORSL implementatie in Java, AOR-JavaSim, beschikbaar. Java heeft geen expliciete ondersteuning voor “probabilistic decision theoretic knowledge system” technieken of methoden voor de definitie of executie van de simulatie. Hoewel het mogelijk is deze ondersteuning aan Java toe te voegen in de vorm van Java-bibliotheken is het ook mogelijk externe niet-Java programma's of bibliotheken te gebruiken. Er zijn met name een aantal Prolog-gebaseerde programma's die, in meer of mindere mate, delen van een “probabilistic decision theoretic knowledge system” implementeren dat gebruikt kan worden voor de definitie en executie van de simulatie. Voorbeelden hiervan zijn CP-logic in combinatie met ProbLog en AILog2. Van AILog2 is ook een Java implementatie. Van die implementatie is echter geen source code beschikbaar en de auteur blijkt niet geneigd op vragen over de beschikbaarheid van de code antwoord te geven. Voor AOR-JavaSim zijn verschillende werkende simulaties beschikbaar. Eén van de beschikbare simulaties is die voor de klassieke MIT beer game. Dit is een simulatie waarbij logistieke keten wordt gesimuleerd. Deze simulatie heeft (vrijwel) alle kenmerken van een onderwijskundige simulatie. Deze simulatie kan uitstekend gebruikt worden om de uitbreiding van AORSL te toetsen.
Ondersteunende technieken Standaarden voor modelleren De Object Management Group (OMG) is een consortium dat zich bezig houdt met ontwikkelen van standaarden op het gebied van gedistribueerde systemen. Lag de focus van de OMG initieel vooral op technische standaarden als Common Object Request Broker Architecture (CORBA) en Data Distribution Service (DDS) , tegenwoordig ligt de focus op Model Driven Architecture (MDA), een architectuur waarbij het gebruik van formele modellen tijdens het softwareontwikkelproces centraal staat. Voor het beschrijven en bewerken van die formele modellen heeft de OMG een grote hoeveelheid standaarden gepubliceerd die gebruikt zouden kunnen worden in dit onderzoek. De voor dit onderzoek belangrijkste onderdelen van MDA zijn: • MOF (Meta-Object Facility): een meta-modellering architectuur. • UML (Unified Modeling Language): een grafische modelleertaal. • OCL (Object Constraint Language): een declaratieve taal in aanvulling op MOF en daarmee UML. Er bstaat een uitbreding van de taal tot imperatieve taal.
Standaarden voor kennissystemen Het gebruik van kennissystemen om besluitvorming te ondersteunen is niet nieuw. Moderne kennissystemen maken gebruik van geavanceerde logica. Ook wordt er gebruik gemaakt van allerlei probabilistisch en besluit-theoretische methoden. Er zijn diverse technieken beschikbaar om kennis expliciet vast te leggen. De W3C heeft diverse standaarden gepubliceerd die
bruikbaar zijn bij het werken met kennissystemen. De voor dit onderzoek belangrijkste standaarden zijn het Resource Description Framework (RDF) dat een metadata data model is, de Web Ontology Language (OWL), een formele taal waarmee ontologieën kunnen worden vastgelegd, en SPARQL, een SQL-achtige taal, waarmee RDF structuren kunnen worden bevraagd.
Methode Het onderzoek zal uit drie delen bestaan waarvan de eerste twee delen in ieder geval worden uitgevoerd. De uitvoering van het derde deel is gedeeltelijk afhankelijk van de uiteindelijke beschikbaarheid van derde partij software. Voor een geheel eigen implementatie van de ontbrekende software is geen tijd beschikbaar. Het eerste gedeelte van het onderzoek is een uitbreiding op de AORSL syntax en operationele semantiek ontworpen zodat AORSL naast de huidige deterministische ook probabilistisch besluit-theoretische simulaties ondersteunt. Het tweede gedeelte van het onderzoek bestaat uit een evaluatie van de uitbreiding van AORSL met de MIT Beer Game als test scenario. Het derde gedeelte wordt, afhankelijk van de beschikbare tijd en externe software (en de functionaliteit daarvan), gevormd door een “proof of concept” implementatie in JavaSim van de uitbreiding van AORSL. Als uit het onderzoek blijkt dat de AORSL syntax en operationele semantiek niet uit te breiden zodat AORSL ook probabilistisch besluit-theoretische simulaties ondersteunt dan wordt een rapport opgeleverd waarin de (on)mogelijkheden beschreven worden en worden aanbevelingen voor oplossingen van deze problemen gegeven.
Planning Omdat de eerste fase van het onderzoek vertraging heeft ondervonden zijn de eerste vier data ineengeschoven. De urenverantwoording is als volgt: 9 ec, 28 uur per ec, 252 uur, 16 weken, 15.75 uur per week tussen week 8 en 26. Studielast overige vakken: 6ec voor Semantiek en Correctheid. Week 8 : Vrijdag 25 februari Opzet bachelorscriptie, onderzoeksvragen, onderzoeksplan Week 9 : Woensdag 2 maart Feedback voorlopig onderzoeksplan Week 13: Vrijdag 1 april Inleveren definitief onderzoeksplan Week 17 : Maandag 25 april Inleveren eerste versie scriptie. Initiële uitwerking van tenminste de uitbreiding AORSL syntax en operationele semantiek en een opzet voor de evaluatie op basis van de MIT beer game. Week 24 : Maandag 13 juni Inleveren tweede versie scriptie. Definitieve uitwerking van de uitbreiding AORSL syntax en operationele semantiek en evaluatie op basis van de MIT beer game. Indien mogelijk initiële uitwerking “proof of concept” JavaSim. Week 26 : Maandag 27 juni Deadline definitieve versie scriptie plus presentatie Week 26 : Dinsdag 28 juni - Vrijdag 1 juli Presentatiesessies
Literatuur Artikelen Kozen D.: Semantics of probabilistic programs, Journal of Computer and System Sciences, Volume 22, Issue 3, June 1981, Pages 328-350. Luin, van J, Tulba F., Wagner G.: Remodeling the Beer Game as an Agent-Object-Relationship Simulation, Proceedings of Workshop 2004: Agent-Based Simulation 5, Lisbon, Portugal, 3-5 May 2004, SCS European Publishing House, 2004. Nienhaus J., Ziegenbein A, Schoensleben P.: How human behaviour amplifies the bullwhip effect. A study based on the beer distribution game online. Production Planning & Control: The Management of Operations, 1366-5871, Volume 17, Issue 6, 2006, Pages 547 – 557 Romiszowski, A. The development of physical skills: Instruction in the psychomotor domain. In C.M. Reigeluth (Ed.), Instructional design theories and models. Volume II (pp. 457-481). 1999. Mahwah, N.J.: Lawrence Erlbaum. Wagner, G: AOR Modelling and Simulation – Towards a General Architecture for Agent-Based Discrete Event Simulation. In P. Giorgini et al. (Eds.): Agent-Oriented Information Systems, Springer-Verlag LNAI 3030, pp. 174–188, 2004.
Boeken Banks, J., Carson, J., Nelson, B.,Nicol, D., Discrete-event system simulation. 2005. Pearson Prentice Hall. Fujimoto, R. Parallel and Distributed Simulation Systems. 2000. Wiley. Law, A., Simulation Modeling and Analysis 4 edition. 2006. McGraw-Hill. Patrick, J. Training. Reasearch & Practice. 1992. Academic Press. Romiszowski, A.J. Designing Instructional Systems. 1981. Kogan Page. Stefik, M. Introduction to Knowledge Systems. 1995. Morgan Kaufmann Publishers. Tyszer, J., Object-oriented computer simulation of discrete-event systems. 1999, Kluwer Academic Publishers.