Abstract
In een zin samengevat gaat dit proefschrift over formele technieken die gebruikt kunnen
worden bij het modelleren van menselijk gedrag. Met behulp van zo'n modellering kan
niet alleen precies gekeken worden waardoor bepaald gedrag veroorzaakt wordt, maar
ook kan gewenst gedrag formeel beschreven worden. Dit formeel beschrijven, of formeel
speciceren, kan belangrijk zijn om
... read more
het gedrag van entiteiten die geacht worden zich min
of meer menselijk te gedragen precies vast te leggen. Voorbeelden van dit soort entiteiten
zijn robots als Archie (de man van staal), maar ook software die computerprogramma's
een menselijk interface geeft en de levensechte karakters die optreden in een virtual
reality omgeving. Entiteiten die een menselijk gedrag (dienen te) vertonen worden vaak
aangeduid met de Engelse term agent, afkomstig uit het Latijn, hetgeen in essentie
niets meer betekent dan `handelende entiteit'. Aangezien een pakkende Nederlandse
vertaling van deze term ontbreekt (het Van Dale Groot Woordenboek Engels-Nederlands
suggereert `handelend persoon' en het in de Nederlandse vertaling van de titel gebruikte
`actoren' is het ook niet helemaal) zullen we in de rest van deze samenvatting de Engelse
termen `agent' en `agents' gebruiken, waarbij voor het gemak aangenomen wordt dat
agents mannelijk zijn.
De laatste jaren wordt er zeer veel onderzoek gedaan naar agents, zowel op theoretisch
als op praktisch niveau. Ondanks het feit dat er veel mensen bezig zijn met agents (of
misschien juist wel doordat er zoveel mensen mee bezig zijn), bestaat er geen overeen-
stemming over wat nu precies onder een agent verstaan moet worden. Soms wordt een
algorithme beschouwd als een agent, bij object-geori?enteerd programmeren wordt een
object wel eens gezien als een agent, terwijl agents vaak ook gezien worden als robots
die zich als mensen gedragen. In dit proefschrift verstaan we onder een agent iedere
entiteit die de mogelijkheid heeft bepaalde acties uit te voeren, de beschikking heeft over
bepaalde informatie en redenen heeft om zich op een bepaalde manier te gedragen. Vaak
zullen agents ook nog rationeel zijn in hun gedragingen, tot op zekere hoogte autonoom
195?196 Samenvatting
zijn, en in staat zijn informatie te verwerven en die te gebruiken om hun gedrag aan te
passen. De modellering van dit soort agents vormt het onderwerp van dit proefschrift.
Zoals reeds eerder opgemerkt zijn modelleertechnieken op tenminste twee manieren
nuttig en bruikbaar. Enerzijds kunnen ze gebruikt worden om geconstateerd gedrag te
analyseren, anderzijds zijn ze te gebruiken om gewenst gedrag vast te leggen. Beide
aspecten zijn belangrijk bij de toepassing van formele technieken voor agents. Zo zijn er
gevallen bekend waar met behulp van formele technieken de oorzaak is opgespoord die er
voor zorgde dat bepaalde software agents zich afwijkend en ongewenst gedroegen. Daar-
naast worden agents vaak toegepast in omgevingen waar het noodzakelijk is zekerheid
omtrent hun gedrag te verkrijgen. Voorbeelden hiervan zijn toepassingen van agents in
systemen die luchtverkeersleiders assisteren. Het gebruik van formele technieken in de
specicatie van deze agents kan zorgen voor absolute zekerheid omtrent hun gedrag in
alle mogelijke omstandigheden.
De formele systemen die in dit proefschrift gebruikt worden zijn gebaseerd op mo-
dale logica's. Oorspronkelijk zijn deze logica's door Leibniz voorgesteld om lososche
begrippen als `noodzakelijkheid' en `mogelijkheid' te representeren. Met name na de
introductie van de mogelijke-werelden semantiek door Kripke worden modale logica's
gebruikt om een breed scala van begrippen, zowel uit de losoe als uit de informa-
tica, te modelleren. In dit proefschrift worden bestaande modale logica's op een nieuwe
wijze gecombineerd, en worden daarnaast verscheidene uitbreidingen van deze logica's
voorgesteld.
In hoofdstuk 3 deni?eren we het eerste, meest eenvoudige, formele systeem. In dit
systeem is het mogelijk de kennis en vaardigheden van agents te modelleren, de resultaten
van de acties die ze mogelijk uitvoeren, en het al dan niet hebben van de gelegenheid om
een actie uit te voeren. Hierbij zien we kennis als ware informatie, die verder zo is dat een
agent zich zowel bewust is van de dingen die hij weet als van de dingen die hij niet weet.
Als een agent bijvoorbeeld weet dat 174306 even is maar niet weet of het deelbaar is door
417, dan is 174306 niet alleen inderdaad even maar weet de agent ook dat hij dit weet
terwijl hij ook weet dat hij niet weet of het deelbaar is door 417. Alles wat veroorzaakt
wordt door het uitvoeren van een actie wordt beschouwd als een deel van het resultaat
van die actie. Het is bijvoorbeeld zo dat een resultaat van het verbranden van een brief
is dat er rook ontstaat, maar ook dat er papier omgezet wordt in as. De combinatie van
vaardigheid en gelegenheid bepaalt welke acties voor een agent praktisch (on)mogelijk
zijn. De vaardigheden van een agent bepalen welke acties binnen zijn capaciteiten liggen;
of de agent de gelegenheid heeft om die acties ook uit te voeren is afhankelijk van externe
omstandigheden. Een voorbeeld dat het verschil en het verband tussen vaardigheid en
gelegenheid duidelijk maakt betreft een leeuw in een dierentuin. Deze leeuw heeft zeer
waarschijnlijk wel de vaardigheid een zebra te verscheuren, maar zal (zo is te hopen voor
de zebra) niet de gelegenheid daarvoor krijgen. Om kennis, vaardigheden, gelegenheden?197
en resultaten te modelleren, combineren we epistemische logica, de modale logica van
kennis, met dynamische logica, de modale logica van actie, waaraan een extra component
toegevoegd is welke de vaardigheden van agents representeert.
In hoofdstuk 4 breiden we het basissysteem zo uit dat het mogelijk wordt acties te
modelleren waarvan voor uitvoering nog niet vaststaat waar ze precies uit zullen bestaan.
Dit soort acties wordt niet-deterministisch genoemd. Een standaard voorbeeld van een
niet-deterministische actie is `post de brief of verbrand hem'. Als alleen maar bekend
is dat een agent deze actie gaat uitvoeren is nog niet duidelijk of de brief gepost of
verbrand gaat worden. Hierbij is het van belang waardoor bepaald wordt hoe een niet-
deterministische actie uitgevoerd dient teworden, en met name of de agent die de actie
uitvoert enige invloed op deze keuze uit kan oefenen. In hoofdstuk 4 onderscheiden
we twee soorten niet-deterministische acties die verschillen met betrekking tot degene
die de keuze maakt: in het ene geval wordt de keuze door de agent gemaakt, in het
andere geval wordt de keuze toegeschreven aan een externe omgeving waarop de agent
geen invloed heeft. Voor een software interface agent zou deze externe omgeving een
gebruiker kunnen zijn: het is mogelijk dat bepaalde acties die de agent dient uit te
voeren vanuit het oogpunt van de agent niet-deterministisch zijn, waarbij de keuze bij
de gebruiker ligt. Het blijkt dat standaard benaderingen die voorgesteld zijn voor het
representeren van niet-determinisme niet bruikbaar zijn voor onze doeleinden; als gevolg
hiervan zijn de benaderingen die wij voorstellen dan ook niet erg standaard.
In hoofdstuk 5 beschouwen we agents die zich bezighouden met allerlei aspecten
van informatie en informatie-beheer. Deze agents kunnen bijvoorbeeld de elektronische
post van een gebruiker beheren, of hem/haar begeleiden bij zoektochten op het internet.
De informatie-beherende agents die wij beschouwen, beschikken naast kennis nog over
zwakkere vormen van informatie. Ook hebben ze de mogelijkheid bepaalde acties uit te
voeren die gericht zijn op het verwerven of overdragen van informatie. Zo kunnen de
agents informatie verwerven door observaties en door het voor waar aannemen van be-
paalde waarschijnlijke | maar net niet helemaal zekere | beweringen. Beweringen van
dit soort worden defaults genoemd. Het bekendste voorbeeld van een default gaat over
de vogel Tweety. Zolang er niets meer over Tweety bekend is dan dat het een vogel is, kan
bij default aangenomen worden dat Tweety vliegt. Nieuwe informatie, bijvoorbeeld dat
Tweety een pingu?n is, of een gebraden eend, kan ervoor zorgen dat de default-conclusie
dat Tweety vliegt weer ingetrokken moet worden. Via communicatie kan informatie
overgedragen worden aan andere agents. De betrouwbaarheid van informatie hangt af
van de manier waarop die verkregen wordt. In het algemeen is het zo dat informatie
afkomstig uit observaties als het meest betrouwbaar beschouwd wordt, dat informatie
verkregen uit communicatie iets minder betrouwbaar is, en dat het aannemen bij default
tot de minst betrouwbare informatie leidt. In een agent die zijn gebruiker begeleidt bij
zoektochten op het internet zijn veel van deze aspecten van informatie-beheer zichtbaar.?198 Samenvatting
Deze agent observeert het gedrag van de gebruiker, vult dat eventueel aan met informatie
die verkregen is via communicatie met andere agents of is aangenomen bij default, en
doet aan de hand daarvan bepaalde suggesties aan de gebruiker die hij begeleidt. Zo
zou hij bij default kunnen concluderen dat een bepaald bericht op het internet, waarvan
het bestaan hem door een andere agent is medegedeeld, interessant isvoor de gebruiker,
omdat de agent eerder geconstateerd heeft dat de gebruiker in het algemeen interesse
heeft voor berichten van dit soort. Mocht de agent nu expliciet te horen krijgen dat de
gebruiker niet ge?nteresseerd is, dan zal hij zijn default-conclusie intrekken. Er zijn twee
opmerkelijke aspecten zichtbaar in onze modellering van informatie-beherende agents.
Het eerste aspect betreft een uitbreiding van de standaard mogelijke-werelden seman-
tiek die ons toestaat gradaties in de betrouwbaarheid van informatie te onderscheiden.
Daarnaast stellen we een uitbreiding voor van de standaard interpretatie van acties zo-
als die gebruikt wordt in dynamische logica, de modale logica van actie. In onze meer
algemene interpretatie kunnen we op elegante wijze de acties modelleren die observaties,
communicatie en het maken van default-aannamen representeren.
Hoofdstuk 6 bevat een modellering van de drijfveren of motieven van agents. Deze
drijfveren maken duidelijk wat een agent beweegt om zich op een bepaalde manier te
gedragen. In het algemeen stellen wij dat agents gedreven zijn om hun onvervulde wensen
te vervullen, waarbij een wens een of ander primitief verlangen is. Aanhangers van
Aristoteles kunnen bij dit primitief verlangen denken aan het najagen van kennis, terwijl
die van Freud waarschijnlijk het Lust-prinzip voor ogen zal staan. Omdat agents rationeel
zijn, zullen ze zich niet zonder meer tot doel stellen ieder onvervulde wens te vervullen
maar zich beperken tot die onvervulde wensen die in principe vervulbaar zijn. Als een
agent zich eenmaal een doel gesteld heeft, kan hij besluiten zich tot het ondernemen van
een bepaalde actie te committeren, dat wil zeggen dat de agent met zichzelf afspreekt,
of aan zichzelf belooft, dat hij de actie uit zal gaan voeren. Voorwaarde hierbij is dat de
agent weet dat uitvoering van deze actie inderdaad tot vervulling van zijn doel zal leiden.
Afspraken tot het ondernemen van bepaalde acties worden genoteerd in de agenda van
de agent. Op ieder moment is een agent aan zichzelf verplicht de acties uit te voeren
die in zijn agenda staan. Als nu op een bepaald moment een agent tot de ontdekking
komt dat een actie waartoe hij zich gecommitteerd heeft niet langer meer uitvoerbaar is
of geen enkel doel meer dient, kan de agent besluiten zijn aan zichzelf gedane belofte tot
uitvoering van de actie te verbreken. Als gevolg hiervan worden eventueel nog resterende
afspraken die op deze belofte betrekking hebben uit de agenda van de agent verwijderd.
In het laatste hoofdstuk vatten we de bijdragen van dit proefschrift nog eens kort
samen, geven we eenvoorbeeld van een specicatie van een software agent, en beschouwen
we mogelijkheden voor vervolgonderzoek.
show less