Dynamische meetkunde op het WWW
- Samenvatting
- Dynamische meetkunde en onderwijs
- Meetkunde op het WWW
- Gebruikelijke ondersteuning van animaties
- Cabri-Java
- Toekomst
- Referenties
- Animaties
Samenvatting
De ontwikkeling van dynamische meetkunde in het onderwijs is van invloed op
veel educatieve pagina's op het Internet. Op die pagina's wordt nog weinig gebruik gemaakt
van technologie die het mogelijk maakt meetkundige figuren te onderzoeken via animaties.
Klassieke technieken voor animatie op het Web zijn vaak te beperkt of zijn moeilijk te
implementeren.
Binnen het Cabri-Java Project wordt het wellicht mogelijk Java applets te ontwikkelen die
gebruik maken van alle voordelen van dynamische meetkunde. Op dit moment wordt onderzocht
of het mogelijk is een Java applicatie te ontwikkelen waarbinnen het creëren en het
manipuleren van figuren mogelijk is.
Dynamische meetkunde en onderwijs
De ontwikkeling van de dynamische meetkunde staat in nauw verband met de
ontwikkeling van "directe manipulatie".
De dynamische meetkunde vindt in feite al enige tijd terug zijn oorsprong toen wiskundigen
als Clairault (XVIIIe eeuw) en enkele andere latere auteurs de gedachte
ontwikkelden delen van figuren te laten bewegen om daarmee meetkundige eigenschappen te
illustreren en stellingen te bewijzen.
Dynamische meetkunde met directe manipulatie is dikwijls geïmplementeerd in computer programma's om de gebruiker - leraar of leerling - de mogelijkheid te bieden intellectuele activiteiten te ontwikkelen gebaseerd op meetkundige kennis. Met andere woorden, de gebruiker wordt geplaatst in een "microwereld", op een manier die beschreven is door Seymour Papert in zijn befaamde boek "Mindstorms,Children, Computers, and Powerful Ideas" [ 1 ] (vergelijkbaar met de LOGO programmeeromgeving). In tegenstelling tot LOGO speelt in een microwereld die gebaseerd is op meetkunde (en meetkundige kennis), zoals dat het geval is in Cabri en Geometer's SketchPad, de wiskundige inhoud die onderwezen moet worden, een belangrijke rol. Door directe manipulatie kan de student zijn eigen constructies bouwen, daarbij gebruikmakend van de bij hem aanwezige meetkundige kennis en van representaties van meetkudinge objecten
Hoofdpunten van dergelijke dynamisch meetkundige omgevingen zijn
- een goed wiskundige fundering van de geïmplementeerde meetkunde
- een gebruiksvriendelijke interface waarbij onmiddellijke vertrouwdheid met het grootste deel van het greedschap kan worden verkregen
- een snelle terugkoppeling waarmee de gebruiker door door hem geconstrueerde object kan controleren.
Gedurende vele jaren hebben enkele schrijvers [ 2, 3, 4, 5 ] het belang aangegeven van directe betrokkenheid van de student bij het gebruik van constructie-software voor meetkundige objecten. Onderzoek met name rond het softwarepakket Cabri-géomètre [ 6 ] onderstreept de vooraanstaande rol van de persoonlijke inzet van de student. Daardoor kan deze zijn aandacht besteden aan het analyseren van de problemen die hem worden voorgelegd, op een active, dynamische manier. Cabri is niet alleen beschikbaar in verschillende talen op de Macintosh en andere platforms (zoals Windows 95), maar ook op grafische rekenmachines (zoals de TI-92, [ 7 ] ). Van het pakket zijn grote aantallen in gebruik; er zijn ook Cabri-werkgroepen, verspreid over de gehele wereld. Niet alleen het gebruik in de klas, maar ook bij zelf-studie heeft ertoe geleid, dat honderden gebruikers elkaar bij conferenties rondom deze software ontmoeten.
Het gereedschap voor dynamische meetkunde wordt ook op een vruchtbare manier gebruikt op andere terreinen van de wetenschap, zoals wiskundige ondersteuning bij modellen in de optica, electronica, mechanica, astronomie, ed..
Dit type gereedschap blijkt ook goed te kunne worden gebruikt door manueel gehandicapten, niet alleen op school-niveau (bij individueeel onderwijs), maar ook in de sfeer van "remedial teaching" en afstandsonderwijs (TéléCabri project [ 8 ], een project voor kinderen die opgenomen zijn in een ziekenhuis).
Meetkunde op het WWW
Van af het ontstaan van het WWW biedt het WWW een goede mogelijkheid aan
onderwijsgevenden om tot samenwerking te komen. Het is mogelijk cursussen, ed. uit te
wisselen en discussie te voeren over allerlei onderwijskundige onderwerpen. Er zijn
"maling-lists" opgezet, veel Web-pagina's bevatten informatie afkomstig uit alle
delen van de wereld, waarvan sommige heel bijzondere dynamische meetkunde
bevatten.
Andere onderwijs-experimenten waarbij het belangrijkste onderwijs-doel het ontwerpen
van websites door leerlingen is, vinden nog steeds plaats. In een dergelijke omgeving
nemen leerlingen actief deel aan het onderwijs-proces, waarbij ze samenwerken en
konktakten onderhouden met leerlingen in andere landen, aldus hun groeiende kennis met
elkaar delend.
Door deze, voor deze leerlingen, vaak nieuwe situatie, voelen sommige studenten in
vergelijking met de gebruikelijke onderwijs-omgeving, veel prettiger, zeker in een context
waar persoonlijk initiatief meer vereist is.
Ideeën om anderen te helpen die het niet zo goed doen op school, of die tijdelijke
problemen ondervinden (bijvorbeeld als ze in een ziekenhuis zijn opgenomen) leiden er vaak
toe, dat kinderen problemen en commentaar op het Web plaatsen, en ook uitwerkingen van
huiswerk (zie bijvoorbeeld de pagina's van het Cabri-Project [ 6 ])
of zelfs eigen ontworpen spelletjes.
Hoe nu verder om de voordelen van de dynamische meetkunde en het WWW te combineren?
De eerste mogelijkheid is het probleem in geschreven vorm te formuleren (eventueel
voorzien van scherm-afdrukken) en de oefeningen daarbij te laten uitvoeren met behulp van
software zoals Cabri-géomètre. Een nadeel van deze methodiek is dat er tijd (van
de leerlingen) verloren gaat bij het plaatsen van de benodigde meetkundige objecten op het
scherm, voordat hij in staat is het werkelijke probleem te doorgronden. De spel-kant van
het leerproces via het WWW gaat dan geheel verloren.
Een tweede mogelijkheid is directe overdracht van bestanden, afkomstig van de meekunde-software op het Web, te laten plaats vinden. Deze oplossing vereist wel enkele protocollen (zoals bijvoorbeeld MIME) voor die bestandsoverdracht. Daarbij dient het gebruik van de "browser" aan de leerling bekend te zijn, terwijl ook de Cabri-géomètre software op de client aanwezig moet zijn, en dit alles onder de voorwaarde, dat browser en de meetkunde-software tegelijk kunnen worden gebruikt. Als aan deze voorwaarden is voldaan, zal de student de mogelijkheden van de software volledig kunnen benutten. Echter, zijn eigen werk zal nog geen geïntegreerd deel uitmaken van de web-pagina, omdat telkens moet worden omgeschakeld van browser naar meetkunde-software, en omgekeerd (bivorbeeld om de instructies te lezen die op de web-pagina staan).
Aan beide hierboven aangegeven methoden kleeft dus het nadeel, dat er aan enkele voorwaarden moet worden voldaan voor een goed gebruik van de meetkunde-software op het WWW:
- Cabri-géomètre kan niet buiten een besturingssysteem als DOS, Windows of MacOS;
- de browser moet zo zijn geinstalleerd dat Cabri kan worden opgestart via de geladen Cabri-figuur of -macro;
- het gebruikte systeem moet zo krachtig zijn, dat beide software pakketten (bowser een Cabri) tegelijk kunnen worden gebruikt.
Tot een meer voldoening gevende oplossing is gevonden, kan natuurlijk een van beide
methodes worden gebruikt, zoals bijvoorbeeld op de site AbraCAdaBRI [ 10 ], die bereikbaar is via het Cabri-Project.
Maar alle beheerders van deze sites zouden graag over de mogelijkheid beschikken animaties
van meetkundige objecten direct op hun pagina's te plaatsen
Gebruikelijk ondersteuning van
animaties
In deze paragraaf gaan we kort in op de ondersteuning van dynamische
meetkunde op de website zelf.
QuickTime of AVI zijn formaten waarin animaties meestal
via een serie van beelden afkomstig uit een bepaald software pakket kunnen worden
opgenomen. Hoewel deze formaten op de verschillende platforms meer en meer gebruikt
worden, zijn er toch enkele beperkingen. Voor het gebruik van dynamische meetkunde blijkt
dat deze formaten eigenlijk ongeschikt zijn vanwege de grootte van de bestanden en de
daarmee gepaard gaande traagheid van weergeven (vooral bij langzame verbindingen).
Deze problematiek kan voor een deel worden omzeild door animaties op te nemen als
"animated Gifs". Deze methode wordt ondersteund door alle vandaag de dag
gebruikte brwosers. ER zijn enkele programma's beschikbaar waarmee een serie "screen
snapshots" acxhterelkaar kunnen worden "afgespeeld. Door het aantal kleuren in
de plaatjes te beperken (4 of 5 kleuren is vaak al genoeg) kan de bestandsgrootte vaak
kleiner gemaakt worden dan die van de overeenkomstige QuickTime of AVI bestanden. Op de
officiële Cabri-site staan enkele voorbeelden van deze animaties.
Deze animaties hebben echter een belangrijk nadeel: de student kan alleen maar passief
naar de beelden kijken; elke andere mogelijke betrokkenheid verdwijnt, en dat is een
belangrijke voorwaarde, zoals blijkt uit recent onderzoek op het gebied van onderwijs.
Hoe creeren we een echte interactie tussen de leerling en een animatie-figuur
op het Web?
Een eerste mogelijkheid wordt geboden door het gebruik van bekende programma's als Macromedia
Shockwave, waarmee een serie geanimeerde beelden kan worden gemaakt gebaseerd op een
interactief scenario. Het vrij gebruik van de Shockwave
"plugin" via de bowser biedt onmiddellijke integratie via het Web. Deze wijze
van integratie is toegepast op enkele pagina's van de site AbraCadaBRI [ 10 ], waarvan hieronder een scherm-afdruk.
Deze methode heeft echter enkele nadelen:
- de kosten van de software (Director, waarmee Shockwave animaties kunnen worden gemaakt) zijn voor de meeste scholen te hoog
- de tijd die in het maken van een goede animatie gaat zitten is vaak te lang (de auteur die animatie van het bovenstaande voorbeeld heeft gemaakt sprak alleen voor die animatie al over een hele dag)
- de interactiviteit stelt zulke zware eisen aan het systeem, dat er geen ruimte blijft voor onderzoek en het ontdekken van andere oplossingen
- de extra geheugenruimte die wordt opgeeist door de plugin maakt het ladenvan grote animaties soms onmogelijk.
Een andere oplossing ligt (mogelijk) in een speciale plugin die de Cabri-omgeving opbouwt bij het lezen van een Cabri-figuur op de webpagina. Een dergelijke prlugin heeft echter ook zijn pro's en contra's. Aan de ene kant is het de beste manier om Cabri via het Web mogelijk te maken, maar aan de andere kant is het noodzakelijk deze plugin te herschrijven voor elk bestaand of toekomstig systeem. Dit laatste punt gevoegd bij het feit, dat ook plugins moeten worden geladen voorafgaande aan het gebruik ervan, leidt ertoe dat ook deze mogelijkheid moet worden verworpen.
Cabri-Java
De uiteindelijk te kiezen oplossing is te vinden in het gebruik van Java. Aan deze keuze
liggen de volgende redenen ten grondslag:
- Java kent zogenoemd "multi-platform" ondersteuning via virtuele machines voor elke computer-architectuur
- er is een toenemende integratie tussen het Web en Java in de recentelijk verschenen browsers
- object-geöriënteerde programmering is bijzonder geschikt voor het verwezenlijken van animaties van meetkundige objecten
Het project Cabri-Java is bij de huidige stand van zaken biedt de mogelijkheid een applet
te genereren, waarmee een meetkundige figuur dynamisch kan worden bewogen, goed
aansluitend bij de handelingen die in Cabri zelf voor dat zelfde doel moeten worden
verricht. Daarbij worden echter nog wat problemen ondervonden die gelegen zijn in de Java
ontwikkelingsomgeving zelf (JDK 1.0.2). Het is bijvoorbeeld niet mogelijk de muis-cursor
te wijzigen in de standaard browsers; evenmin als het opreopen van menu's. Op grafisch
niveau is ook het gestippeld of dik weergeven van lijnen niet gepland, tenzij dat zelf
geprogrammeerd wordt, hetgeen echter niet efficient is in vergelijking met de eigen
methoden die bestaan voor elke architectuur.
Al deze zaken worden mogelijk opgelost via JDK 1.2 en de nieuwe standaard Java 2D API.
Is Java eenmaal gekozen, dan rest alleen de manier vast te leggen waarop de verschillende paramaters die een niet te ingewikkelde meetkundige figuur bepalen, worden overgedragen aan de applet zelf. Een mogelijkheid daarvoor is het beschrijven van alle objecten en hun eigenschappen met behulp van PARAM "tags" van de applet. Van deze methode wordt gebruik gemaakt bij twee andere Java projecten voor dynamische meetkunde [ 11, 12 ]. Maar het wordt al snel moeilijk deze gegevens (met de hand) te creëren, terwijl ook de bijhehorende HTML bestanden snel groot worden.
Daarom is ervoor gekozen de bestanden die door Cabri zelf worden gegenereerd, op de
server te plaatsen waardoor ze gelezen kunnen worden door de applet, daarbij slechts
gebruikmakend van één PARAM tag die verwijst naar de bestandsnaam en de plaats op de
server.
Het voordeel van deze oplossing is een eenvoudige manier om te publiceren. Echter, de
Cabri-software moet wel voorhanden zijn. Maar dat is geen werkelijk beperking voor
ontwikkelaars van websites die voor gebruik binnen het onderwijs zullen gaan dienen.
Hoe gaat het publiceren van een Cabri applet nu in zijn werk?
- Het is noodzakelijk de Java binary bestanden (.class) of een niet-gecomprimeerd archief bestand met deze binaries (.jar) op de webserver te plaatsen. Daarbij kan men, indien gewenst, ook verwijzen naar een andere server met deze bestanden via de parameter CODEBASE.
- Op de pagina zelf (binnen het HTML bestand) wordt de applet gegenereerd met een
beschrijving als in het volgende voorbeeld:
<APPLET CODE="CabriJava.class" WIDTH=600 HEIGHT=400 ARCHIVE="CabriJava.zip">
<PARAM name = "lang" value = "en">
<PARAM name = "file" value = "figures/demo/escher.fig">
</APPLET>
De "lang" parameter kan op dit monet alleen de waarden "fr" values voor de Franse boodschappen en "en" die in het Engels.
De "file" parameter geeft het pad aan (in het bovenstaande is dat relatief) naar de figuur op de server. - Andere "decoratie" tags kunnen worden toegevoegd, zoals tags voor de
achtergrond van de pagina:
<PARAM name = "background" value = "images/bg.gif">
<PARAM name = "bgcolor" value = "#F0F0A0">
<PARAM name = "border" value = "0">
In de huidige, voorlopige, versie van CabriJava is het nu mogelijk
figuren op het Web te plaatsen, waarbij de gebruiker de meetkundige figuren kan verplatsen
door met de muis-cursor te "slepen" (drag), waarbij de meetkundige
eigenschappen, die bij zijn toegekend tijdens het creëren van de figuur in Cabri,
gehandhaafd blijven.
Een demonstratie-pagina, waarop deze mogelijkheden kunnen worden bekeken, is beschikbaar
op de server van het Cabri-Java Project [ 13 ].
Hoewel nog niet alle mogelijkheden van de Cabri software geimplementeerd zijn (zaken als "Locus", "Conic", .. helaas nog niet) is er al een eerste onderwijskundig project gestart op de Mathematical Server van La Réunion [ 14 ].
Op dit moment wordt de sneilheid van CabriJava nadeling beïnvloed door de virtuele machines waarop de huidige browsers steunen. Maar een nieuwe generatie van van VM's (vitual machines) waarin JIT (Just-In-Time) compilatie-technieken zijn opgenomen, is in ontwikkeling; het verplaatsen van objecten is daardoor bijzonder goed mogelijk.
Toekomst
Naast het uitbouwen van de CabriJava applet met de meeste
mogelijkheden die de Cabri software biedt, ontwikkelt het project zich naar twee kanten:
- implementatie van "a priori" of "on action" animaties: Cabri heeft mogelijkheden om animaties uit te voeren door middel van een "animatie-veer", zoals te zien is in de hiernaast staande figuur. Maar het lijkt ook handig te zijn animaties te kunnen uitvoeren onmiddelllijk na het laden van de applet, dus zonder tussenkomst van de gebruiker. Om te kunnen aangeven welke type animatie moet worden uitgevoerd, kunnen via een aanvullende parameter aan de objecten van de applet berichten doorgeven worden, welke geschreven worden in een script-taal die reeds binnen Cabri zelf aanwezig is ten behoeve van de communicatie tussen Cabri-figuren zelf.
- ontwikkeling en realisering van een Java applicatie voor het construeren en manipuleren van Cabri-figuren: het equivalent van een "multi-platform" Cabri. Zelfs al zal dit programma nooit dezelfde gestroomlijn hebben als Cabri's eigen applicaties, toch zal deze goed bruikbaar zijn om figuren te construeren die gebruikt kunnen worden als CabriJava applet. Een tweede belang van een dergelijke applicatie is dat de kennis omtrent dynamische meetkunde kan worden verspreid over een breder terrein, en worden gebruikt bij vele toepassingen op allerlei webpagina's. Om een dergelijk applicatie voorzien van dezelfde gebruiersinterface te kunnen ontwikkelen zal gebruik gemaakt moetenworden van Java Foundations Classes defined by SUN [ 14 ].
- Papert, S.: "Mindstorms,Children, Computers, and Powerful Ideas" 1980 New-York
- Schneiderman, B.: "Direct Manipulation: a Step Beyond Programming Languages", IEEE Computer (16)8 57-69 1983
- Laborde, J.M.: "Des connaissances abstraites aux réalités artificielles, le concept de micromonde Cabri" dans Environnements Interactifs d'Apprentissage avec Ordinateurs, pp 29-41, Eyrolles Paris 1996
- Laborde, J.M. & Strasser, R.: "Cabri-Géomètre : A microworld of geometry for guided discovery learning", Zentrablatt für Didactik der Mathematik 5 p. 171-177, 1990
- Schumann, H.: "The design of microworlds in geometry based on a two-dimensoinal graphics system devised for second education", INT. J. MATH. EDUC. SCI. TECHNOL., 1993, VOL. 24, N°2, 231-250
- Official Cabri project site
http://www.cabri.com - Texas Instruments Cabri site
http://www.ti.com/calc/docs/cabri.htm - TeleCabri project site
http://www.cabri.net/TeleCabri/ - Desigaux, M.: Collège Jules Flandrin
http://www.cabri.net/TeleCabri/PassionRecherche/ - Martin, Y.: AbraCAdaBRI site
http://www.cabri.net/abracadabri/ - Jackiw, N.: JavaSketchPad site
http://mathforum.org/dynamic/java_gsp/ - Joyce, D.: Geometry applet site
http://aleph0.clarku.edu/~djoyce/java/Geometry/Geometry.html - Kuntz, G.: Cabri-java project 1997
http://www.cabri.net/cabrijava/ - Hakenholz, E.: First real experiment of Cabri-Java 1998
http://www.ac-reunion.fr/pedagogie/covincep/icosaweb/GeomJava/activite/Quatre/Docs/Pytha/Pytha.htm - Sun Microsystems: Java Foundations Classes
http://java.sun.com/products/jfc/
Animaties
Van de illustraties op deze pagina staan de onderstaande animaties, waarbij gebruik
gemaakt wordt van CabriJava, op deze website.
Bovenstaande is een Nederlandse bewerking van het artikel "Géométrie dynamique sur le Web" van Gilles Kuntz (Leibniz IMAG, Université de Grenoble, France), dat is ingezonden naar de INET'98 Conference (Genève, 22/7 - 24/7 1998)
Klik hier voor informatie op deze website over Cabri Geometry II.
[cabri_dgeom.htm] laatste wijziging op: 27-04-2002