Netwerk-georiënteerd computergebruik lijkt het nieuwe toverwoord. Daarbij versmelten hardware, communicatie, gebruik en inhoud. Dit model zal steeds hogere eisen stellen aan de gebruiker, ondermeer door de toenemende complexiteit van de techniek en de groeiende informatiestroom. Dat maakt het nodig om meer en meer taken op het gebied van computergebruik te delegeren. Een belangrijke rol daarbij spelen ‘intelligente agents’, die bijvoorbeeld inzetbaar zijn om uit diverse bronnen informatie te zoeken, op te halen en te filteren.
Wie het World Wide Web opgaat, zal vroeg of laat terechtkomen bij één van de zoekmachines, zoals Yahoo! of Alta Vista. Je geeft één of meer trefwoorden op, al dan niet in combinatie met logische operatoren, en binnen de kortste keren krijg je een overzicht van vindplaatsen op www die verband houden met de gezochte informatie. Zoekmachines kunnen deze service verlenen dankzij een enorme database met samenvattingen van en verwijzingen naar miljoenen www-pagina’s.
Hoe komen de zoekmachines aan hun gegevens en hoe houden ze die actueel? Eén ding staat vast: het is nauwelijks voorstelbaar dat dit het werk kan zijn van de mens alleen, hoeveel menskracht men ook bereid is in te zetten om de miljoenen www-sites af te schuimen. Het verzamelen en actualiseren van de gegevens is veeleer het werk van softwarehulpmiddelen die onder verscheidene benamingen bekend staan: softwarerobots (of kortweg: bots), spiders, crawlers enzovoort. Al deze programma’s laten zich uiteindelijk samenvatten onder de noemer intelligente agents.
Het verschijnsel intelligente agents is zo nieuw dat er zelfs onder deskundigen nauwelijks nog een eensluidende definitie bestaat. De meest algemene en toch wel treffende omschrijving luidt: intelligente agents zijn software-entiteiten die bepaalde handelingen verrichten ten behoeve van een gebruiker of een ander programma met een zekere mate van zelfstandigheid en autonomie, waarbij ze tevens een zekere mate van kennis of voorstelling van de doelen of verlangens van de gebruiker hanteren. Intelligente agents onderscheiden zich vooral van ‘gewone’ programma’s doordat ze ‘een zekere mate van kennis of voorstelling van de doelen of verlangens van de gebruiker hanteren’. Daaraan mag de agent dan ook het predikaat intelligent ontlenen.
Futuristische visie
Die enigszins abstracte definitie vergt enige toelichting. Waarin bestaat bijvoorbeeld het ‘agentschap’ van de intelligente agent? Een belangrijk kenmerk is dat de intelligente agent de belangen behartigt van de opdrachtgever (mens of ander programma), rekening houdend met de wensen en verlangens van die opdrachtgever, zonder dat deze de werkzaamheden rechtstreeks en deterministisch hoeft te controleren. De opdrachtgever delegeert bepaalde taken aan de intelligente agent, die deze vervolgens met een zekere mate van zelfstandigheid uitvoert. Daarbij kan hij interacties aangaan met onder meer gegevens, applicaties, (netwerk-) diensten en uiteindelijk zelfs andere agents.
Waaruit bestaat de intelligentie van de intelligente agents? Allereerst moet de agent in staat zijn de wensen en doelen van de gebruiker, al dan niet geformuleerd in natuurlijke taal, correct te interpreteren. Een verdergaande verfijning van dit principe houdt in dat de intelligente agent zich al doende leert aan te passen aan zijn omgeving, zowel wat betreft de doelstellingen van de gebruiker als op het punt van de resources die de agent ter beschikking staan. In de meest geavanceerde vorm is zo’n systeem in staat om onafhankelijk van de gebruiker nieuwe concepten te ontdekken en verbanden te leggen, en om deze, als het ware vooruitlopend op de wensen van de gebruiker, te onderzoeken. Centraal daarbij staat het autonome leer- en aanpassingsvermogen van de intelligente agent.
In de meest futuristische visie op intelligente agents is er zelfs sprake van dat deze zo te programmeren zijn dat ze zich voortplanten analoog aan Darwins evolutietheorie. Daarbij gaan succesvolle (‘sterke’) agents samenwerken om nog sterkere exemplaren van hun soort te vormen, terwijl minder behulpzame, dus ‘zwakkere’, broeders uiteindelijk een zachte dood sterven.
Het nieuwe toverwoord
Een dergelijke ontwikkeling komt niet uit de lucht vallen. We zijn nog maar net bekomen van de overstap naar de client/server-technologie en het volgende model komt alweer om de hoek kijken: netwerk-georiënteerd computergebruik lijkt het nieuwe toverwoord te worden. In dit model versmelten hardware, communicatie, gebruik en inhoud tot één begrip – tot iets wat we voortaan ‘de computer’ zouden kunnen noemen. Tekenen van die ontwikkeling zijn bijvoorbeeld intranetten en de NC (Network Computer).
Zo’n model zal steeds hogere eisen stellen, niet alleen aan de techniek, maar vooral ook aan de gebruiker. De complexiteit van de techniek waarmee de gebruiker moet omgaan neemt zienderogen toe. Met de steeds snellere toegang tot meer en meer informatie bereiken we op een gegeven moment de grenzen van wat gebruikers redelijkerwijs en efficiënt kunnen verwerken. Het gevaar van information overload is geenszins denkbeeldig; het ongebreidelde Internetgebruik is daar nu al een voorbode van.
Als het gevolg van de dalende hardwareprijzen zal bovendien een groeiend aantal mensen toetreden tot de groep computergebruikers die de vereiste achtergrond en ervaring in het omgaan met de technologie in beginsel missen. Voeg daarbij de reeds ingezette en nog te verwachten stijging van het mobiele computergebruik, en we hebben een uitdaging die de knappe koppen zeker de komende tien jaar zal bezighouden.
Voorlopers
Om de problemen in verband met deze trends het hoofd te bieden, zullen we genoodzaakt zijn taken en werkzaamheden op het gebied van computergebruik in toenemende mate te delegeren. Eén van de mogelijkheden is het inzetten van software die we kunnen belasten met het zoeken, ophalen en filteren van informatie uit diverse bronnen. Dat lijkt op het eerste gezicht niets nieuws onder de zon, want zoiets is al in verschillende gedaantes beschikbaar.
Interessanter wordt het als we denken aan programmatuur die in staat is de mens/machine-interactie een persoonlijker gezicht te geven, bij voorkeur afgestemd op de wensen en noden van de individuele gebruiker. We kunnen er zelfs nog een schepje bovenop doen en denken aan software die bepaalde taken uitvoert ten behoeve van de gebruiker, of deze daarbij nu aanwezig is of niet, en die daarvoor niet meer rechtstreeks bestuurd hoeft te worden (wel ge- maar niet bestuurd).
Via deze omtrekkende beweging komen de intelligente agents weer in beeld. Voorlopers van deze species zijn overigens al zichtbaar in sommige applicatieprogramma’s en besturingssystemen, bijvoorbeeld de Systeemagent van Windows95. In de meeste gevallen zijn het echter nog niet meer dan voorlopers. Ze zijn weliswaar in staat om bepaalde handelingen op vooraf vastgestelde tijden uit te voeren, maar van intelligentie in de zin van de gehanteerde definitie van intelligente agents is daarbij niet of nauwelijks sprake.
Automatische piloot
Als softwareprodukt is de intelligente agent een in een hogere programmeertaal vervaardigd programma. Veel toepassingen van intelligente agents liggen tegenwoordig op het gebied van (grote) netwerken, omdat het daarbij bijna altijd gaat om uitermate omvangrijke informatiestromen of zeer uitgebreide en complexe verbindingsstructuren, die voor de mens nauwelijks nog te overzien zijn. Populair is op dit moment vooral de programmeertaal Java, die Internet en andere omvangrijke netwerkstructuren op het lijf geschreven is.
Een webrobot zoals de zoekmachines gebruiken voor het verzamelen van gegevens voor hun database is in feite niets anders dan een www-browser met een ingebouwde intelligente agent als automatische piloot. De webrobot wordt door de opdrachtgever het Web opgestuurd om in eerste instantie een pagina op te halen en deze te onderzoeken op de aanwezigheid van verwijzingen (links) naar andere www-pagina’s. De webrobot extraheert de adressen (URL’s) van de aanwezige links, springt ernaartoe en vandaar weer naar andere verwijzingen.
Met dit simpele recursieve navigatie-algoritme, dat zich in principe tot in het oneindige herhaalt, kan de webrobot binnen zeer korte tijd enorme afstanden in cyberspace overbruggen en gaandeweg de meest uiteenlopende informatie vergaren. De webrobot van de Alta Vista-zoekmachine bijvoorbeeld kan op deze wijze tot ongeveer 2,5 miljoen www-pagina’s per dag verwerken.
Reële bedreiging
Wie heeft het er niet over: Internet dreigt aan zijn eigen succes ten onder te gaan. Met de exponentieel groeiende populariteit nemen ook de wachttijden op bijvoorbeeld het Web zo schrikbarend toe dat het door velen reeds is omgedoopt in world wide wait. Wat gekscherend klinkt, lijkt niettemin een reële bedreiging.
De oplossing voor deze problematiek kan blijkbaar niet alleen gezocht worden in de verbetering van de hardware. Snellere communicatieverbindingen met behulp van digitale telefoonlijnen, betere modems en dergelijke zullen maar ten dele in de groeiende vraag kunnen voorzien. Er moet ook een omzwaai plaatsvinden in de richting van een efficiënter gebruik van de informatietechnologie.
Intelligente agents kunnen daar een belangrijk steentje aan bijdragen. Een www-browser met een intelligente agent aan boord zou het individuele Internetgebruik tot een minimum kunnen beperken. Deze kan immers veel sneller de benodigde informatie van de verschillende sites binnenhalen dan een mens met behulp van muis en leesbril ooit zou kunnen. Bovendien zou zo’n browser-agent ondermeer gemakkelijk kunnen leren (nationale) piektijden op Internet te vermijden en om vooral dan in actie te komen wanneer snelle toegang gewaarborgd is.
Techniek verfijnen
Intelligente agents zijn inmiddels – al dan niet experimenteel – op tal van gebieden actief. De voornaamste praktische toepassingen liggen op dit moment op de volgende terreinen: systeem- en netwerkbeheer, elektronische post en berichtenverkeer, informatiebeheer en -verwerking, mobiel en werkgroep-computergebruik, elektronisch zakendoen, en zelfadapterende gebruikersinterfaces.
Over veel van deze eerste-generatie produkten kan men nog twisten: plukken we hier nu werkelijk de vruchten van tientallen jaren onderzoek naar toepassingen op het gebied van kunstmatige intelligentie, of gaat het eerder om een slimmer gebruik van de bestaande databasetechnologieën? Zoals zo vaak bij innovaties is consensus op dit punt nog ver te zoeken.
De ideale intelligente agent is er een die kan leren om zo te denken, zo te handelen en zich zo te gedragen als we zelf zouden doen. Voordat zo’n produkt beschikbaar komt, is er nog een lange weg te gaan, al claimen sommige producenten dat ze hard op weg zijn naar dit ultieme doel. Neem de www-site Firefly (http://www.ffly.com), een op zich niet al te boeiend forum over film en hedendaagse muziek, waarin de agenttechnologie reeds in vergaande mate is geïntegreerd. Agents volgen de gedragingen en antwoorden van bezoekers op de voet in een poging om patronen te herkennen en daarop beslissingen te baseren. Bij elk volgend bezoek kan de gebruiker zich dan bijvoorbeeld door zo’n agent een top-10 van CD’s laten voorschotelen, afgestemd op (volgens de agent) de persoonlijke smaak en voorkeur van de gebruiker. Wat op het eerste gezicht een aardigheidje lijkt, is in feite een uitermate geschikte speeltuin voor agent-makers en -onderzoekers om spelenderwijs ervaring op te doen en de techniek verder te verfijnen.
Ethisch en moreel
Er zijn overigens al besprekingen gaande om de Firefly-technologie te integreren in de Yahoo!-zoekmachine. Met behulp van die technologie zou de zoekmachine veronderstellingen kunnen maken op basis van de verzamelde kennis over de gebruiker, met het doel zoekopdrachten gerichter en specifieker te vervullen. De browser-giganten, zoals Netscape Communications, zijn uitermate geïnteresseerd in de vooruitgang op dit gebied.
Een belangrijk aspect van de ontwikkelingen op het gebied van agenttechnologie is de wenselijkheid vanuit ethisch en moreel oogpunt (privacy). Big Brother uit 1984 zou zich uiteindelijk als intelligente agent kunnen ontpoppen. Ook vanuit dit oogpunt is het zinvol en noodzakelijk die ontwikkelingen op de voet te blijven volgen. De voorspelling luidt namelijk dat intelligente agents in de loop van de komende tien jaar een vast bestanddeel zullen worden van bijna elke software-applicatie. Dit betekent dat ze zullen doordringen tot nog veel meer toepassings- en leefgebieden.
Jochen Lehmann is ruim vijftien jaar werkzaam in de automatisering, ondermeer in zijn bedrijf RAM-Productions.
Literatuur
Gilbert D., M. Aparicio, B. Atkinson e.a.: The role of intelligent agents in the information infrastructure. [http://www.raleigh..ibm.com/iag/iagptc2.html]
Higgins, K.J.: Your agent is calling. Communications Week, 5 augustus 1996. [http://techweb.cmp.com/cw/080596/622close.htm]
Higgins, K.J.: How agents work. Communications Week, 5 augustus 1996. [http://techweb.cmp.com/cw/080596/622closb2.htm]
Janca, P.C., D. Gilbert, M. Aparicio e.a.: Practical design of intelligent agent systems. Juni 1996. [http://www.raleigh.ibm.com/iag/iagwp1.html]
Prosise, J.: Crawling the web, A guide to robots, spiders, and other shadowy denizens of the web. PC Magazine 1996, 15/13, 277.
WWW-sites
Interessante WWW-sites met betrekking tot intelligente agents zijn: http://www.botspot.com/main.html; http://info.webcrawler.com/mak/projects/robots/robots.html; http://www.raleigh.ibm.com/iag/iaghome.html; en http://activist.gpl.ibm.com:81/.