• Kennissystemen
2004
Kennissystemen | Items #1, 2004

Het is een rommeltje in het hoofd van de ontwerper. En dat hoort ook zo. Als alles zo mooi in regels was ingedeeld als in het hoofd van de boekhouder, dan leek elk ontwerp als vanzelf op dat van de dag ervoor. Voorspelbaarheid en controleerbaarheid zijn belangrijke kwaliteiten als het er op aan komt de Belastingdienst te vriend te houden. Ze houden daar niet van verrassingen.
De ontwerper denkt anders. Hij (of zij) wordt betaald om in het ongerijmde te denken. Niets is vast, alles staat ter discussie. Er is geen á priori werkwijze. Er zijn geen regels. Van de ontwerper wordt niet alleen verwacht een ontwerp te maken, maar ook om het ontwerpproces zelf te ontwerpen. Liefst elke keer weer opnieuw. Uniek en onverwacht.

Dat gaat goed zolang alles zich in het hoofd van de ontwerper afspeelt. Maar in welke situatie worden die gedachten weer compatible met de omgeving? Het kunnen selecteren en sturen van ogenschijnlijk chaotische processen is geen garantie voor een Goed Ontwerp. Eens moet er informatie worden uitgewisseld met de buitenwereld. Opdrachtgevers stellen dat op den duur zeer op prijs. Dus wie ontwerpt die interface?

Naarmate projecten groter worden is het antwoord op deze vraag steeds belangrijker. Niet alleen vanwege de toename van het aantal randvoorwaarden, maar – paradoxaal genoeg – vooral ook door de exponentiële toename van het aantal mogelijke ontwerpoplossingen waaruit de ultieme keuze moet worden gemaakt.

De “branche-factor”, de hoek die de takken van een beslis­boom maken, is maat­gevend voor de complexiteit van een probleem en de grootte van de oplossings­ruimte. Naar mate er per vertakking meer opties zijn is de hoek groter. De toegevoegde domein­kennis maakt het mogelijk om takken te verwijderen, zonder ze helemaal tot aan het eind te doorlopen.
Indien opdrachten groter en dus complexer worden, is de interactie tussen alle componenten zo groot, dat het werk niet meer met de rekenkracht van een enkel ontwerpershoofd kan worden uitgevoerd. Zo’n probleem kan alleen in teamverband worden opgelost. Traditioneel wordt dan een aantal ‘creatieven’ bij elkaar in een ruimte gezet. Na een tijdje levert dit hopelijk een aantal presenteerbare oplossingen op. Maar steeds vaker is de omvang van het op te lossen probleem dusdanig, dat ook een team van ontwerpers er niet meer naar behoren uitkomt.

Op het moment dat de invloed van details op een ontwerp te groot is, kan niet langer worden volstaan met een ontwerp dat in grote lijnen klopt. Dan is het tijd om de hulp in te roepen van kunstmatige kennissystemen. Of het nu om het ontwerpen of beschrijven van huisstijlen, steden, organisaties, formulieren, websites, bruggen, beurskoersen, het weer, interfaces, medische diagnoses, schaken, sociaal gedrag, of electronische schakelingen gaat, in al deze voorbeelden hebben de details doorslaggevende invloed op het verloop van het grote geheel. Chaostheorie, fractals en de combinatorische explosie van mogelijke opties maken dat een ontwerper niet meer in staat is om de consequentie van elke ontwerpbeslissing apart te beoordelen. Intuïtie is een gouden gereedschap, maar niet in alle gevallen toereikend.

Het ligt voor de hand om het ontwerpproces te ondersteunen met intelligente programmatuur. Maar helaas is dit op de meeste gebieden nog niet of nauwelijks doorgedrongen. De materie blijkt weerbarstiger dan software ontwikkelaars een aantal jaren geleden nog dachten.

De beloftes over kletsende applicaties en huishoudrobots zijn inmiddels naar beneden bijgesteld. Ook computers hebben last van de combinatorische explosie van mogelijkheden. Bij een spel met eenvoudige regels, zoals schaken, is het voor de snelste computer toch niet mogelijk om verder vooruit te rekenen dan een zet of zeven. Voor het volledig doorrekenen van een hele partij zal aantoonbaar in de levensduur van het heelal nooit voldoende rekenkracht aanwezig zijn. Dat vraagt dus om een intelligentie aanpak bij het ontwerpen van kunstmatige kennissystemen. En ook dat vergt dus een ontwerpproces.

Hoewel de doelen van wetenschappelijk onderzoek op het gebied van ‘artificial intelligence’ veel bescheidener zijn dan in de beginjaren, zijn de onderwerpen en ontwikkelingen niet minder interessant. Of het nu gaat over het besturen van liften (welke wordt naar een bepaalde etage gestuurd?), het berekenen van routes voor vrachtwagens, herkennen van DNA of het bewijzen van wiskundige stellingen, in alle gevallen is de ondersteunende software in staat om beslissingen te nemen die niet als zodanig van te voren waren ingebouwd.

Wel de principes en regels zijn geprogrammeerd, maar het grote aantal mogelijke uitkomsten maakt dat die niet van te voren alle kunnen worden bekeken. Het programma is dus in staat om zelfstandig te beslissen welke oplossingen het beste in een bepaalde context kunnen worden gebruikt.

Als we dergelijke beslissingen nu nog niet ‘ontwerpen’ noemen, dan komt dat alleen door de bescheiden schaal, het beperkte domein, waarop zo’n programma zich nu richt. Maar dat is alleen een kwestie van tijd. Op het moment dat we in praktische zin geen onderscheid meer kunnen maken tussen een ontwerpbeslissing die door een ontwerper is gemaakt of door een programma, zal de discussie er over stoppen. In praktijk zullen grenzen steeds meer vervagen. Het wordt onduidelijk wie op welke moment iets aan de oplossing heeft bijgedragen. Dat is nu al zo bij het werken in teamverband, met meerdere disciplines en specialismen van menselijke kennissystemen. Het resultaat is niet meer toe te schrijven aan één individuele ontwerper.