IPON

ICT gebaseerd Platform voor Onderwijs

in de Numerieke wiskunde

een STIHO project van de vierde ronde met als partners

Universiteit Gent, K.U.Leuven en Universiteit Antwerpen (U.I.A)

http://allserv.rug.ac.be/~hvdevyve/start/Ipon.html

Prof. dr. Marnix Van Daele (Universiteit Gent)
Vakgroep Toegepaste Wiskunde en Informatica
Krijgslaan 281, S9 9000 Gent
email : Marnix.VanDaele @ rug.ac.be
tel. 09/264 48 09
fax. 09/264 49 95

Prof. dr. Adhemar Bultheel (K.U.Leuven)
K.U.Leuven
Departement Computerwetenschappen
Celestijnenlaan200 A
3001 Heverlee
e-mail : Adhemar.Bultheel @ cs.kuleuven.be
tel. 016/327 540
fax. 016/327 996
Prof. dr. Annie Cuyt (U.I.A)
Universiteit Antwerpen
Departement Wiskunde en Informatica
Universiteitsplein 1
2610 Antwerpen-Wilrijk
e-mail : Annie.Cuyt @ uia.ua.ac.be
Tel. 03/820 24 07
Fax. 03/820 24 21

Oorsprong van het project IPON

De beginsituatie is als volgt : binnen de Universiteit Gent, de K.U.Leuven en de U.I.A. zijn verschillende groepen in het domein van de numerieke wiskunde aan het werk om lesmateriaal klaar te stomen: Universiteit Gent : ILONA (Interactieve LeerOmgeving voor Numerieke Analyse) K.U.Leuven : VISNUE (Visualisatie van Numerieke Experimenten) U.I.A. : Arithmetic Explorer

De drie projecten hebben door hun ontwerpers een profiel aangemeten gekregen dat in de eerste plaats geschikt is voor de eigen instelling, m.a.w. voldoet aan de behoeften van de lesgevers die direct met het project zijn verbonden met hun specifieke cursussen voor hun specifieke studenten. In eerste instantie ging het om de volgende (voornamelijk) kandidatuurscursussen, later werden ook licentiecursussen beoogd.

Universiteit Gent

K.U.Leuven

U.I.A.

Overleg tussen de verschillende groepen leert dat een gezamenlijk platform voor deze drie invalshoeken wenselijk is. Dit leidt tot het project IPON.

Initiële doelstellingen van het IPON-project

IPON staat voor ICT gebaseerd Platform voor Onderwijs in de Numerieke wiskunde. Met dit project beogen de drie partner-instellingen vanuit de eigen reeds opgestarte projecten te komen tot een optimale omgeving waarin traditionele onderwerpen vanuit verschillende oogpunten kunnen benaderd worden.

In de projectaanvraag werden de volgende doelstellingen vooropgesteld (zie p.1 uit de projectaanvraag)

Het platform dat we voor ogen hebben is een multimediale omgeving waarin o.a. een aantal hulpmiddelen worden aangeboden zoals :

Het project beoogt veel meer dan alleen maar het in elektronische vorm beschikbaar stellen van het studiemateriaal : we willen een totaal vernieuwde aanpak om het onderwijs in de numerieke wiskunde te sturen in de richting van begeleide zelfstudie waarbij het aanleren van de wetenschappelijke discipline in het vakgebied, uitgaande van toepassingsgerichte voorbeelden wordt aangeleerd. De eigenlijke inhoud van de vakken wordt daardoor grotendeels ondergeschikt aan de vorm en het leerproces van de student staat daarbij centraal. De ICT die voorgesteld wordt lijkt ons het meest efficiënte en aangewezen middel om dit doel te bereiken.

Op pagina 5 gaat dit verder met

Al het voorgaande denken we te kunnen oplossen in het IPON project. We beogen dus vooral

Resultaten van het project

In deze paragraaf willen we een inventarisatie maken van de leerstof die in IPON is opgenomen. Hierbij zullen we de verschillende componenten beschrijven die in het systeem zijn opgenomen. Elke component komt grosso modo overeen met een bijdrage van een partnerinterstelling. Tevens zullen we stilstaan bij de wijze hoe die informatie beschikbaar is gesteld, m.a.w. ingebed is het systeem. Ook wordt (waar nodig) toegelicht wat eventueel niet gerealiseerd werd of welke onverwachte resultaten geboekt zijn.

Universiteit Gent : Ilona

Er werden applets ontwikkeld rond de volgende onderwerpen :
Deze applets zijn opgenomen in een html-structuur. Hierbinnen kunnen de applets opgeroepen worden als illustratie bij de opgenomen teksten of om opdrachten uit te voeren en/of vragen te beantwoorden. Een van de voornaamste redenen om voor deze structuur te opteren is het feit dat we een universeel beschikbaar pakket kunnen aanbieden zonder licentieproblemen. Andere alternatieven (zoals bijvoorbeeld het product MathVieuw) werden onderzocht maar ongeschikt bevonden.

ILONA bezit twee interfaces : een eerste (die verborgen is) voor de lesgever, een tweede (die publiek toegankelijk is) voor gebruikers. Lesgevers stellen cursussen samen aan de hand van het beschikbare materiaal (teksten en applets). Dat materiaal is gegroepeerd in hoofdstukken en de lesgever kan selecteren welke hoofdstukken hij in welke volgorde wenst op te nemen. Hij kan dus de leerstof selecteren volgens zijn eigen behoefte en hij heeft ten allen tijde de mogelijkheid om de structuur van de leerstof te wijzigen.
Rond elk thema kunnen vragen of opdrachten toegevoegd worden. Bevatten de vragen formules, dan kunnen deze worden ingegeven in een TeX-syntax. Het pakket TechExplorer (hiervoor moet een plug-in geïnstalleerd worden, maar de introductory version is gratis downloadbaar vanaf de IBM site) staat in voor de conversie. Gebruikers kiezen een cursus en zien in de linkerkolom de inhoudstafel van de cursus en in de rechterkolom teksten rond het uitgekozen onderwerp. Vanuit deze tekst kan een applet opgeroepen worden. Vragen en/of opdrachten worden opgeroepen vanaf vraagtekens uit de linkerkolom. De vragen worden gesteld in multiple choice vorm en het antwoord op een vraag kan door de student gecontroleerd worden : groen betekent juist, rood betekent fout. De keuze van TechExplorer betekende een grote stap vooruit in het gebruikscomfort voor de lesgever. Toen we nog niet van het bestaan van dit product afwisten, was het een zware klus om teksten te integreren in de omgeving : voor elke formule moest een aparte gif file geconstrueerd worden, hetgeen een zeer arbeidsintensieve klus was. Bovendien had dit het heel vervelende effect dat, als een tekst gewijzigd werd, heel veel werk opnieuw moest uitgevoerd worden. Met de huidige software is dat probleem van de baan : cursusteksten kunnen, in principe, zomaar geïntegreerd worden.

In de huidige implementatie heeft de docent geen zicht op de gegeven antwoorden. In de toekomst zou het wenselijk kunnen zijn dat gegeven antwoorden in een database terecht komen zodat statistieken kunnen opgemaakt worden die de kwaliteit en het niveau van de vraag bepalen. Dat deze faciliteit voorlopig nog niet uitgewerkt werd heeft alles te maken met de manier waarop de leertool gebruikt wordt. Zoals verder in dit verslag wordt aangegeven appreciëren de studenten het product opmerkelijk meer als we het als illustratiemateriaal en niet als oefenmateriaal aanbieden.

Oorspronkelijk hadden we een ruimer aanbod aan informatie voor ogen : naast applets hadden we ook maple-worksheets op het oog. Ondertussen hebben we aan de universiteit echter een licentie matlab beschikbaar en denken we aan een uitbreiding in deze richting. Deze informatie zal in de toekomst zeker nog toegevoegd worden.

Tot nu toe werd ILONA tweemaal voorgesteld aan het publiek door M. Van Daele op studiedagen :

Verder is ILONA ook opgenomen in de links van het Usolv-it project : http://www.kulak.ac.be/facult/wet/wiskunde/ooi/

Hoewel het pakket universeel toegankelijk is, kan het (om snelheidsredenen) wenselijk zijn het pakket lokaal te installeren. Daarom gebeurt de verspreiding van het ILONA pakket naar studenten toe ook via CD-rom.

K.U.Leuven : VISNUE

Volgende elementen zijn voorhanden:

Een vragentrommel voor een elektronische communicatie tussen studenten en docenten/assistenten. De vragen kunnen 24 uur per dag gesteld worden door de studenten. Ze vullen daartoe een webformulier in en de vraag wordt automatisch aan de gegevensbank toegevoegd. Er is een mailing-lijst van docenten en assistenten die verwittigd worden als er een nieuwe vraag is binnengekomen. De assistenten of de docent geeft zo vlug als mogelijk een antwoord. De student (indien hij/zij de vraag niet anoniem gesteld heft) wordt via email verwittigd als er een antwoord is op zijn/haar vraag en de vraag+antwoord wordt voor iedereen zichtbaar. De student heeft ook de mogelijkheid om te zoeken in de gegevensbank van de reeds gestelde vragen zodat hij/zij kan nagaan of er reeds vroeger op zijn/haar vraag een antwoord gegeven is.

De oefeningen worden met volledig uitgewerkte opgaven en doelstellingen on-line beschikbaar gesteld. De studenten kunnen zich dus tegen de oefenzittingen voorbereiden. Voor meerdere oefeningen zijn er zittingen in computerklassen georganiseerd. Die oefeningen kunnen dan via een webformulier ingediend worden. De ingediende antwoorden worden elektronisch verwerkt en globaal nagekeken. Een globale bespreking van de antwoorden wordt dan on-line gezet zodat de studenten feedback krijgen over de door hen ingediende antwoorden. Voor het indienen en verwerken van de oefeningen werden een aantal cgi-bin scripts geschreven in dit project.

Er is een nieuwsgroep aangemaakt waarop de studenten zich kunnen inschrijven. Het is de bedoeling dat in deze nieuwsgroep discussies zouden gevoerd worden over de leerstof door de studenten onderling. In principe is de nieuwsgroep niet gemodereerd. Hiervoor is gebruik gemaakt van een bestaande systeem om nieuwsgroepen te creëren en om met een browser als netscape de "threads" te laten organiseren.

Er is een vrij beschikbaar navigatie-script gebruikt om het on-line materiaal van de cursus te doorlopen. Naast het frame met de eigenlijke informatie wordt een frame met de inhoudstafel gegenereerd. Op die manier zal de student op elk moment weten waar hij zich in de webstructuur bevindt. Het gevaar bestaat immers dat na een aantal links aangeklikt te hebben, de student het overzicht verliest. De inhoudstafel kan, indien gewenst, als een afzonderlijk venster worden geopend. Dit laat toe een beter overzicht te krijgen omdat een groter venster beschikbaar is voor het eigenlijke informatieve gedeelte.

In het overzicht zijn een aantal links opgenomen die verwijzen naar extra informatie over hoe de student matlab en maple kan installeren, een aantal extra links naar externe sites die interessant zijn voor een cursus numerieke wiskunde, links naar numerieke software die beschikbaar is op externe websites of naar commerciele software producenten, numerieke nieuwsgroepen of nieuwsbrieven, etc. Daardoor kan de student contact hebben met de professionele numerieke leefwereld, of terugvallen op deze links als hij/zij later een numeriek probleem moet oplossen in zijn/haar eindwerk of zelfs in het beroepsleven en daarvoor op bestaande software wil terugvallen.

Er is een toetssysteem gerealiseerd. Hierdoor kan de student zichzelf testen door een aantal random vragen laten genereren uit een databank. De student kan daarbij kiezen uit hoofdstukken van de cursus en een moeilijkheidsgraad opgeven. Als de vragen beantwoord zijn en ingediend worden krijgt hij/zij feedback met het juiste antwoord. De student kan dit op naam of anoniem indienen. De behaalde scores worden bijgehouden in een tabel. Per vraag kan de docent aflezen hoe dikwijls de vraag werd beantwoord en wat de gemiddelde score is. Er zijn 5 soorten vragen mogelijk die door de docent kunnen ingevoerd worden:

  1. Word question: Hier wordt een woord als antwoord verwacht. Het woord moet natuurlijk correct gespeld zijn. De score bij zo een vraag is 0 of 10.
  2. Numerical question: Bij dit type wordt er een getal verwacht waarop een procentuele afwijking toegelaten is, die eventueel nul kan zijn. Dit is ook een alles of niets vraag, dus met een score 0 of 10.
  3. Fill-in question: Hier worden een aantal getallen of woorden verwacht. Per correct onderdeel krijgt de student (10/het aantal onderdelen) punten. Voor een verkeerd antwoord worden er geen punten afgetrokken. Voorlopig worden geen getallen na de komma aanvaard. Ook leidende nullen en spaties worden als fout aangerekend. Eventueel moet men een gebroken getal als een breuk opgeven (bv. 0.5 als ½).
  4. Radiobutton question: Bij dit type vraag is er maar 1 correct antwoordalternatief. Voor een goed antwoord krijg je 10 punten, voor een slecht antwoord worden er (10/aantal foutieve alternatieven) punten afgetrokken zodat gokken weinig zinvol wordt. Een open antwoord is mogelijk zolang er niets geselecteerd wordt.
  5. Multiple-choice question: Bij dit type vraag zijn er 1 of meerdere juiste alternatieven mogelijk. Per goed deelantwoord worden er (10/aantal juiste alternatieven) punten verdiend. Per foutief antwoord worden er (10/aantal foutieve alternatieve) punten verloren.
De student kan ook een e-mail sturen naar het didactisch team als hij dit zou wensen. Hij/zij kan ook (indien die voorzien is) een hint opvragen per vraag. Een formularium en uitleg over het systeem is permanent beschikbaar.
De opgaven kunnen volledig in latex ingegeven worden. Een aantal commando's zijn voorzien voor het ingeven van de meta-informatie. Verder wordt deze tekst verwerkt tot een aantal xml bestanden waaruit dan dynamisch een html pagina gegenereerd wordt die door de student kan bekeken worden in zijn/haar browser zonder dat daarbij een speciale plug-in moet geïnstalleerd worden.

Er wordt momenteel gewerkt aan een kalendersysteem dat gedurende het tweede semester van het academiejaar 2001-2002 zal in gebruik genomen worden. Dit zal de student toelaten om per dag op te vragen welke taken er moeten uitgevoerd worden of welke stukken zouden moeten gekend zijn. Er kan ook een weekoverzicht gevraagd worden enz. Dit heeft twee bedoelingen: Ten eerste hebben we gemerkt aan de log-files van de web-pagina's dat de activiteit van de studenten zich concentreerde in een aantal weken die erop wezen dat de studenten het systeem niet gebruiken op de manier dat het bedoeld is. Ze blokken voor een examen, maar "onderhouden" de stof niet tijdens het jaar. De bedoeling is echter dat ze door tijdens het jaar te experimenteren met de aangeboden middelen en programma's, ze eigenlijk de stof verwerken tijdens het jaar zodat een zware "blokperiode" overbodig wordt. Dit wordt gedeeltelijk opgevangen door het invoeren van een semestersysteem in het academiejaar 2000-2001 aan de K.U.Leuven. Het kalendersysteeem moet de student helpen om niet "achterop" te geraken en zijn stof bij te houden. Ten tweede is het de bedoeling dat nu op alle activiteiten die van de student verwacht worden dat de docent daar een tijdsduur op plakt. Dit moet voorkomen dat door een overaanbod aan informatie, er te veel van de student verwacht wordt. De docent zou op deze manier moeten komen tot een realistische schatting van de tijd die de student besteedt aan het verwerken van de leerstof. Een en ander zal nog verder uitgewerkt worden in een tweede ooi project gefinancierd door de K.U.Leuven (VISNUE-TWEE = Visualisatie van Numerieke Experimenten - Toets en Werkomgeving met Evaluatie, lopend over de periode 2001-2003).

De illustraties die tijdens de les worden gegeven zijn allemaal beschikbaar op het web. In de loop van het project zijn de cursussen numerieke wiskunde in de K.U.Leuven omgewerkt van een aantal meer theoretische vakken naar heel praktische vakken waar voortdurend de toepassingen en de uitwerkingen op de computer worden geplaatst naast de theorie. Het examen is geëvolueerd van een gesloten boek examen waar stellingen en theoretische oefeningen werden gevraagd naar een open boek examen waar gevraagd wordt naar de interpretatie van computerresultaten en -grafieken. Dit heeft alles te maken met de illustraties en toepassingen die tijdens de lessen worden gegeven. De student kan maple en matlab gebruiken die tegen een minimale kostprijs worden ter beschikking gesteld, of de programma's kunnen gebruikt worden op de pc-klassen van de K.U.Leuven.
Voor alle onderdelen van de cursus zijn on-line teksten beschikbaar met de uitwerking van de toepassing of het numerieke probleem. Daarbij worden programma's in matlab, maple worksheets en/of applets beschikbaar gesteld. Het is de bedoeling dat de student experimenteel en met behulp van de theorie uit de cursus een aantal vragen over die toepassing kan beantwoorden. Deze vragen zijn ook in de stijl van de examenvragen.

Zo zijn er zijn nu naast teksten met opgaven ook applets, maple-worksheets en matlab-codes beschikbaar voor

Er werd een uitvoerige studie gemaakt van de mogelijkheid om de cursus in te voeren in het ARIADNE systeem. Daarnaast zijn er ook andere systemen onderzocht die vrij beschikbaar waren. Er is besloten om de invoering in ARIADNE niet door te voeren. Daar zijn verschillende redenen voor. Ten eerste omdat hierdoor het product niet meer draagbaar zou zijn en enkel via ARIADNE bereikbaar. Het zou enkel kunnen gebruikt worden indien de student on-line het systeem raadpleegt. Op dit ogenblik kan op een beperkte opslagruimte het hele systeem door de student meegenomen worden zodat hij/zij het volledig onafhankelijk van het Internet (voor zover er geen gebruik gemaakt wordt van externe links natuurlijk) op zijn/haar eigen pc kan gebruiken. Ten tweede is door de K.U.Leuven een keuze gemaakt voor het leerplatform Blackboard dat over alle faculteiten zal gebruikt worden central ondersteund wordt in combinatie met het toetssysteem Question Mark Perception. Hierbij stellen zich dezelfde problemen als bij ARIADNE. Het geheel wordt opgenomen in een veel groter platform dat noodzakelijkerwijs on-line moet geraadpleegd worden, waardoor het niet meer als een geheel draagbaar wordt. Indien het leerplatform na evaluatie veralgemeend wordt en gebruikt wordt door alle of de meeste andere cursussen van de studenten is het aangewezen het gehele VISNUE platform aan te bieden via Blackboard. Dit kan in zijn geheel gebeuren en eventueel kan nagegaan worden of sommige elementen van VISNUE kunnen vervangen worden door de bestaande elementen van Blackboard (bv. kalendersysteem). Een eerste onderzoek laat uitschijnen dat het testsysteem van VISNUE veel meer mogelijkheden biedt wat het type vragen betreft en wat betreft het inbrengen van wiskundige formules en figuren. Een mogelijk alternatief is het systeem Usolv-IT dat ontwikkeld is aan de KULAK i.s.m. de Universiteit Gent, maar dat (op dit ogenblik) enkel meerkeuzevragen toelaat. Ten derde worden alle curricula in het kader van het Bachelor-Master systeem herzien en het zou wel eens kunnen dat de vakken numerieke wiskunde tot de helft van de huidige vorm herleid worden. Vermits de toekomst van de omvang voorlopig onzeker is wordt de concrete uitwerking en het eventueel overstappen naar een integratie met Blackboard nog even uitgesteld.

Het was ook een doelstelling van VISNUE om een integratie zowel horizontaal (tussen de cursussen van hetzelfde jaar) en vertikaal (tussen vervolgcursussen numerieke wiskunde van de volgende jaren) te bevorderen. Daarin zijn we grotendeels geslaagd. De voorbeelden zijn gekozen uit de onderwerpen die in andere cursussen aan bod komen. Applets over gelijkmatige continuïteit, Schoedinger vergelijking, warmtevergelijking, en over een slingerprobleem zijn ontwikkeld in samenwerking met cursussen analyse, natuurkunde, en mechanica. Er is vraag vanuit andere cursussen om problemen die daar niet meer analytisch oplosbaar zijn te behandelen in de cursus numerieke wiskunde. Anderzijds kunnen de toepassingen van de basistechnieken in partiële differentiaalvergelijkingen, oplossen van grote stelsels, enz. de link leggen met vervolgvakken waarbij meer gevorderde numerieke technieken aangeleerd worden.

VISNUE werd voorgesteld op de POC (permanente onderwijscomissie) van de kandidaturen burgerlijk ingenieur (K.U.Leuven), op de departementsraad van het departement computerwetenschappen (K.U.Leuven). Er is een artikel verschenen in de Campuskrant (de krant van de K.U.Leuven).
Bovenal staat het hele systeem on-line zo dat het vanover de hele wereld kan geraadpleegd worden. Er komen bijvoorbeeld vragen binnen in de vragentrommel die door Nederlandse of Vlaamse scholieren uit het middelbaar gesteld worden.
De verzameling applets die in VISNUE zijn aangemaakt staat beschikbaar bij de vrij beschikbare software van de onderzoeksgroep. Ze zijn aangemaakt zodanig dat door een eenvoudige klik de taal van de tekst kan aangepast worden van Nederlands naar Engels en omgekeerd.
De applets zijn ook beschikbaar gemaakt via het Usolv-IT systeem dat allerlei hulpmiddelen beschikbaar stelt voor cursussen wiskunde (en recentelijk ook andere vakken) in eerste jaren aan de universiteit.
Er zijn meerdere rapporten gemaakt in de marge van het project die beschikbaar gesteld zijn op het web.
Zie http://nalag.cs.kuleuven.be/research/ALpubs/
Het leerplatform werd overgenomen voor het aanmaken van een nieuwe cursus die in 2000-2001 voor het eerst gegeven werd aan de 2de kandidatuur natuurkunde. De aanpassing van het platform aan de nieuwe cursus gebeurde zonder een enkel probleem. Enkel de inhoud moest aangepast worden.
De realisatie van een CD die samen met de cursustekst zou verkocht worden is nog niet gerealiseerd. De redenen hiervoor zijn dat het hele systeem zo compact is dat het eenvoudig over het web kan gedownload worden. Eventueel kan het op 3 standaard floppies gecopieerd worden en zo overgebracht. Ten tweede is het voortbestaan van de cursus in zijn huidige vorm in het kader van de Bachelor-Master systemen nog onzeker, en daarom is de inspanning misschien niet erg renderend. Ten derde zal voor het tweede semester van het academiejaar 2001-2002 de teksten die nu op het web staan, op papier gezet worden en verkocht als bijlage bij de cursus. Dit om te voorkomen dat alle studenten afzonderlijk deze bladzijden zouden moeten gaan afdrukken.

U.I.A. : Arithmetic Explorer

In Arithmetic Explorer worden de bewerkingen niet uitgevoerd in de in de hardware beschikbare enkele en dubbele IEEE floating-point verzamelingen, maar in een door de gebruiker gedefinieerde verzameling van floating-point getallen. Door een kleine precisie en een beperkte exponent-grootte te kiezen, kunnen de studenten de verschillende berekeningen op bitniveau beter volgen en verstaan. Daardoor kan men beter ingaan op de verschillende onmiskenbare effecten van data en afrondingsfouten, cancellation, slecht-geconditioneerde problemen en numerieke instabiliteit, en hierdoor een betere feeling krijgen voor de problemen die kunnen optreden in de computer aritmetiek.

Typische oefeningen zijn het rekenen in beperkte getalverzamelingen: studenten kunnen op dit punt geen gebruik maken van hun zakrekenmachine of een gewoon commercieel pakket. Hier zijn ze aangewezen op pen en papier, met de Arithmetic Explorer als controlemiddel. Het zijn de ideale oefeningen om bepaalde concepten in te oefenen: door de parameters aan te passen, kunnen ze, achteraf, zelf controleren of ze het helemaal begrepen hebben. Op het examen wordt deze vaardigheid steeds getoetst.

Eens de studenten de basisconcepten onder de knie hebben, kunnen we "academische" voorbeelden aansnijden die niet meer passen binnen de kleine getalverzamelingen en ook niet eenvoudig meer met pen en papier zijn op te lossen. Hier biedt de omgeving een onmiskenbaar voordeel: het probleem kan stap per stap ontrafeld worden, met de eenvoud van een kleine pen en papier-oefening. Tijdens de lessen is het duidelijk dat de studenten deze vorm van visualisatie ten zeerste apprecieren.

Vermits de oefeningen voor de practica op voorhand elektronisch beschikbaar worden gesteld, worden de studenten ook aangemoedigd de oefeningen, indien mogelijk, met het programma voor te bereiden. Het is duidelijk dat deze aanpak een schot in de roos is: de correspondentie op de nieuwsgroepen bewijst het. De Arithmetic Explorer is bovendien, via het Internet, beschikbaar als linux en als Windows versie. Dit laat de studenten toe ook met het programma te werken op hun eigen computer. Het biedt het voordeel niet afhankelijk te zijn van een server waarop de software zou draaien.

Bij de implementatie van Arithmetic Explorer is er zorg gedragen dat de floating-point aritmetiek volledig conform is met de IEEE 754 en 854 standaard. Afgezien van het feit dat de gebruiker zelf de precisie en exponent vrij kan bepalen, zijn alle aspecten van de IEEE standaard geïmplementeerd: exacte afronding, denormals, signed zeroes en infinities, Not-a-Numbers en exception flags. Daardoor kunnen de studenten alle details van de floating-point aritmetiek ontdekken.

Buiten floating-point aritmetiek ondersteunt Arithmetic Explorer ook rationale aritmetiek en interval aritmetiek, waarbij de eindpunten voorgesteld worden in een door de gebruiker gedefinieerde verzameling van floating-point getallen. In de volgende maanden zal tevens een klasse voor complexe aritmetiek worden toegevoegd, die zoals de interval klasse, voortbouwt op de door de gebruiker gedefinieerde verzameling van floating-point getallen. Deze klasse biedt als vrijwel de enige in zijn soort exact afgeronde complexe basisbewerkingen aan. Verder zijn ook enkele complexe elementaire functies voorzien in verschillende rounding modes. Conversies van floating-point getallen naar complexe floating-point getallen, alsook de voorzieningen voor mixed-mode aritmetiek, zorgen voor een geïntegreerd geheel. Deze klasse laat de studenten toe om enkele problemen in verband met complexe uitdrukkingen beter te bestuderen.

De implementatie van de verschillende soorten aritmetiek in Arithmetic Explorer werd volledig gerealiseerd gebruikmakende van C++-klassen. Via operator overloading kan de gebruiker, bovenop het uitvoeren van eenvoudige bewerkingen binnen de grafische omgeving, ook C/C++-code compileren en uitvoeren rekening houdend met de gekozen precisie en exponent-grootte.

Tijdens het project werd de functionaliteit van Arithmetic Explorer sterk uitgebouwd. We bespreken hier achtereenvolgens de precompiler functionaliteit, de parser en de numerieke bibliotheek.

De precompiler laat toe om bestaande C/C++-code om te zetten naar code die gebruik maakt van de verschillende C++-klassen die aanwezig zijn in Arithmetic Explorer.

Hierdoor kunnen bestaande numerieke problemen geëvalueerd worden in floating-point aritmetiek met variabele precisie en basis en ook in rationale aritmetiek. Aangepaste interval algoritmes die beschikbaar zijn voor de standaard hardware types kunnen, na omzetting door de precompiler, eveneens in variabele precisie uitgevoerd worden. Als de resultaatintervallen te groot worden en dus weinig informatiedragend zijn, kan men, door het instellen van een grotere precisie, fijnere resultaatintervallen bekomen. De klassen uit de Arithmetic Explorer bibliotheek zorgen er ook voor dat nuttige informatie over uitzonderlijke bewerkingen die zijn opgetreden, kan uitgelezen worden via de exception flags.

De precompiler heeft een groot voordeel voor zowel de docent bij het uitwerken van illustraties als voor de student bij het oplossen van numerieke oefeningen: zij hebben geen voorkennis nodig over de klassen van Arithmetic Explorer om er gebruik van te kunnen maken. Dat maakt de overschakeling voor studenten en docenten gemakkelijker. Ook de omzetting van bestaande, professionele ontwikkelde, numeriek algoritmes zoals beschikbaar via GAMS (Guide to Available Mathematical Software http://gams.nist.gov) of Netlib (http://www.netlib.org) kan met de precompiler geautomatiseerd worden.

Voorlopig is de precompiler gericht op het omzetten van bestaande C/C++ code naar C++ code bestemd voor gebruik samen met de Arithmetic Explorer bibliotheek. De types single, double, long double worden hierbij omgezet naar aritmetische types uit de Arithmetic Explorer bibliotheek. Naar de toekomst toe, is het de bedoeling de precompiler meer generisch te maken. Zo zal het mogelijk worden om de omzetting van bestaande C/C++ types te specifiëren aan de hand van een configuratiebestand. Op die manier kan men experimenteren met verschillende numerieke bibliotheken, zonder de code waarin de eigenlijke berekening wordt gedaan, handmatig te moeten omzetten.

Naast de precompiler die toelaat eigen numerieke code uit te voeren in de aritmetiek naar keuze (rationaal of floating-point), is er nu ook een ingebouwde parser beschikbaar. Deze laat toe MATLAB-achtige scripts te schrijven in de Arithmetic Explorer waarbij eenzelfde script in verschillende gedaantes kan worden uitgevoerd: rationaal of floating-point met verschillende parameterinstellingen. . Op die manier kunnen studenten die vertrouwd zijn met MATLAB ook hun weg vinden in de Arithmetic Explorer omgeving. Ook dit is een mogelijkheid die studenten ten zeerste apprecieren!

Ter ondersteuning van de cursussen is eveneens een numerieke bibliotheek in de Arithmetic Explorer uitgebouwd, die de verschillende numerieke technieken bevat die in de cursus Wetenschappelijk Programmeren in eerste licentie Informatica aan bod komen. Deze bibliotheek bevat momenteel de volgende topics:

Deze bibliotheek wordt hoofdzakelijk gebruikt ter ondersteuning van de theorie, en zou studenten in staat moeten stellen op een snelle en eenvoudige manier kennis te maken met de verschillende numerieke technieken. Bij elke topic zijn enkele voorbeelden voorzien die de studenten kunnen evalueren, en waarop zij eventueel wijzigingen kunnen aanbrengen.

De student kan uit deze topics verschillende oplosstrategieën kiezen, waarop de omgeving dan een voorbeeldprogramma toont dat hij/zij kan evalueren en hierop eventuele wijzigingen aanbrengen.

Naast de reeds vermelde verwezenlijkingen, worden tegen het einde van het academiejaar ook nog toegevoegd: complexe aritmetiek (zie hierboven), polynomiale aritmetiek, vector- en matrixklassen. Daarnaast wordt ook een module ingebouwd om gevalideerde grafieken te bekomen van functievoorschriften. Een stand-alone versie van dit laatste is reeds beschikbaar. Ten slotte is op dit ogenblik, mee op vraag van de KU Leuven, een client-server versie van de Arithmetic Explorer in ontwikkeling. We bespreken kort een aantal van deze uitbreidingen.

De matrix en vector ondersteuning bestaat uit een aantal C++ klassen die dynamische allocatie en deallocatie van Arithmetic Explorer objecten in een matrix object toelaten.

We willen in de toekomst ook graphics-mogelijkheden inbouwen in Arithmetic Explorer. Commerciële pakketten zoals Mathematica, Maple en MATLAB beschikken over de mogelijkheid functies in allerlei vormen te visualiseren. In de realiteit blijkt dat de eindgebruiker niet blindelings mag vertrouwen op deze figuren. Dit is niet verbazingwekkend als men weet dat onderliggend aan de visualisatieprogramma's floating-point aritmetiek gebruikt wordt. Om hieraan tegemoet te komen is er samenwerking met een vierde team opgestart. Dit team heeft een toolbox voor gevalideerde graphics ontwikkeld. Deze toolbox zal in Arithmetic Explorer ingebouwd worden.

Door al deze functionaliteit te integreren in een programma, willen we niet concurreren met de bestaande commerciële pakketten, maar geven we de studenten wel de mogelijkheid om binnen 1 omgeving de stof te kunnen verwerken van meerdere cursussen. Het hele Arithmetic Explorer project was nog in zijn kinderschoenen bij de aanvang van het IPON project. In dat vroege stadium was het concept, omwille van zijn vernieuwende didactische aanpak, reeds interuniversitair gelauwerd (http://www.krellinst.org/UCES/awards/ugcsa97/). Nu, na deelname aan het IPON project, is bijzonder veel nieuwe functionaliteit toegevoegd en is Arithmetic Explorer tot een volwaardige didactische omgeving uitgegroeid. Omwille van de vele positieve reacties, zal een cursusboek geschreven worden dat hierop gebaseerd is.

Arithmetic Explorer werd op UIA voorgesteld aan het publiek op:

Opgedane ervaringen

In de volgende paragrafen zullen we enkele elementen aanhalen die we in de loop van het project opvielen. Ze konden er ons bijvoorbeeld toe aanzetten onze doelstellingen te herzien, onze doelgroep te verruimen, enz. Hierbij putten we uit ervaringen met eerste releases die ondersteund werden door (anonieme) evaluaties die gehouden werden op het einde van de lessencyclus.

De volgende aspecten zijn ons duidelijk opgevallen :

Tenslotte willen we ook nog enkele bedenkingen formuleren die we opgestoken hebben tijdens het "E-Learing event" ingericht door Cisco Systems in maart 2001 (New York en San Francisco).

Wereldwijd wordt enorm veel geld geïnvesteerd in e-learning, niet alleen door de academische wereld, maar ook door uitgeverijen of grote bedrijven in de prive-sector. Zij gaan er van uit dat de student binnenkort niet meer naar de universiteit komt, maar dat de universiteit (of een andere instelling) naar studenten toe zullen trekken met een aanbod aan "e-cursussen". Een belangrijke speler in deze markt is bijvoorbeeld Fathom, een organisatie die onstaan is uit de Columbia University, New York. Zij stellen wekelijks wereldwijd cursussen voor in allerlei vakgebieden. Willen onze universiteiten overleven, dan zullen we op dit gebied inspanningen moeten leveren. Verder gericht investeren in de ontwikkeling van sterke producten zal noodzakelijk zijn.

De samenwerking

Omwille van de brede waaier expertise die aanwezig is bij de drie partners, is het evident dat de verdere uitbreiding gebeurt op die plaats waar die expertise aanwezig is. Daarom ook werd geopteerd om verder te werken aan de uitbreiding van de al opgestarte projecten, maar dan wel op een dusdanige manier dat de drie afzonderlijke pakketten op elkaar afgestemd zijn en dat duidelijk sprake is van complementariteit. Op die manier zorgen we voor een multi-purpose bibliotheek. Voor de tot stand koming hiervan is kruisbestuiving een heel belangrijke factor. Concreet betekent deze kruisbestuiving dat ideeën die in het ene project al voorradig zijn (zoals bijvoorbeeld reeds beschikbare applets die aangepast worden voor een ander probleem, of het opzetten van een discussiegroep, een vragentrommel, enz.) gebruikt kunnen worden in de andere projecten. VISNUE heeft meerdere applets van ILONA geïntegreerd en de Leuvense groep wacht nog op een gepaste interface om ook Arithmetic Explorer te integreren. De vragentrommel in VISNUE zou in de toekomst ook uitgewisseld worden met ILONA en UIA. We stellen dat de samenwerking in dit opzicht voortreffelijk is verlopen.

De complementariteit kan geïllustreerd worden aan de hand van de volgende eenvoudige voorbeelden :

Financieel verslag

zie bijgeleverde tabellen