Algoritmen Om Naar Te Leven

De Computerwetenschap Van Menselijke Beslissingen door op in Lees Voer

Vrij naar Brian Christian en Tom Griffiths

Stel je voor dat je op zoek bent naar een appartement in San Francisco, misschien wel de meest angstaanjagende Amerikaanse stad om dat te doen. De bloeiende technologiesector en strenge bestemmingsplannen die nieuwbouw beperken, hebben ertoe geleid dat de stad net zo duur is geworden als New York, en volgens velen zelfs concurrerender. Nieuwe aanbiedingen verschijnen en verdwijnen binnen enkele minuten, open huizen worden overspoeld en vaak belanden de sleutels in handen van degene die de verhuurder als eerste fysiek een borgcheque kan opdringen.

Zo'n woeste markt laat weinig ruimte over voor het soort feitenonderzoek en overleg dat theoretisch gezien het doen en laten van de rationele consument zou moeten kenmerken. In tegenstelling tot bijvoorbeeld een klant van een winkelcentrum of een online shopper, die opties kan vergelijken voordat hij een beslissing neemt, moet de potentiële San Francisco-ganger direct een keuze maken: je kunt het appartement nemen waar je op dit moment naar kijkt en alle andere laten liggen, of je kunt weggaan en nooit meer terugkomen.

Laten we voor de eenvoud even aannemen dat je alleen maar je kans op het beste beschikbare appartement wilt maximaliseren. Je doel is om de twee Scylla-en-Charybdis-spijtgevoelens van de "ontsnapte" en de "steen die niet is omgedraaid" tot het absolute minimum te beperken. Je loopt meteen tegen een dilemma aan: hoe weet je dat een appartement inderdaad het beste is als je geen basislijn hebt om het te beoordelen? En hoe stel je die basislijn vast als je niet naar een aantal appartementen kijkt (en ze verliest)? Hoe meer informatie je verzamelt, hoe beter je weet wat de juiste kans is als je die ziet, maar hoe waarschijnlijker het is dat je hem al voorbij hebt laten gaan.

Dus wat doe je? Hoe neem je een weloverwogen beslissing als het informeren zelf de uitkomst in gevaar brengt? Het is een wrede situatie, die grenst aan een paradox.

Wanneer ze met dit soort problemen worden geconfronteerd, zullen de meeste mensen intuïtief zeggen dat er een soort balans nodig is tussen kijken en springen - dat je naar genoeg appartementen moet kijken om een standaard te kunnen vaststellen en dan moet nemen wat aan de standaard voldoet die je hebt vastgesteld. Dit idee van balans is in feite precies correct. Wat de meeste mensen niet met zekerheid zeggen, is wat die balans is. Gelukkig is er een antwoord.

Zevenendertig procent.

Als je de beste kansen wilt hebben om het beste appartement te krijgen, besteed dan 37% van je zoektocht naar een appartement (elf dagen, als je jezelf een maand hebt gegeven voor de zoektocht) aan het vrijblijvend verkennen van opties. Laat je chequeboek thuis; je bent alleen maar aan het kalibreren. Maar wees na dat punt bereid om je onmiddellijk te committeren - met aanbetaling en al - aan de allereerste plek die je ziet die alles overtreft wat je al hebt gezien. Dit is niet zomaar een intuïtief bevredigend compromis tussen kijken en springen. Het is de aantoonbaar optimale oplossing.

We weten dit omdat het vinden van een appartement tot een klasse van wiskundige problemen behoort die bekend staan als "optimale stop"-problemen. De 37%-regel definieert een eenvoudige reeks stappen - wat computerwetenschappers een "algoritme" noemen - voor het oplossen van deze problemen. En zoals blijkt, is het zoeken naar een appartement slechts een van de manieren waarop optimaal stoppen de kop opsteekt in het dagelijks leven. Het vastleggen of opgeven van een reeks opties is een structuur die steeds weer in het leven verschijnt, in enigszins verschillende gedaantes. Hoe vaak moet je een rondje om het blok rijden voordat je een parkeerplaats oprijdt? Hoe ver moet je je geluk beproeven met een riskante zakelijke onderneming voordat je het geld opneemt? Hoe lang moet je wachten op een beter bod op dat huis of die auto?

Dezelfde uitdaging doet zich ook voor in een nog gespannenere setting: daten. Optimaal stoppen is de wetenschap van seriële monogamie.

Eenvoudige algoritmen bieden niet alleen oplossingen voor het zoeken naar een appartement, maar voor alle situaties in het leven waarin we worden geconfronteerd met de vraag van optimaal stoppen. Mensen worstelen elke dag met deze problemen, hoewel dichters ongetwijfeld meer inkt hebben verspild aan de beproevingen van het hofmaken dan aan parkeren, en ze doen dat met, in sommige gevallen, aanzienlijke angst. Maar de angst is onnodig. Wiskundig gezien zijn dit in ieder geval opgeloste problemen.

Elke gehaaste huurder, bestuurder en aanbidder die je om je heen ziet tijdens een typische week, is in feite het wiel opnieuw aan het uitvinden. Ze hebben geen therapeut nodig; ze hebben een algoritme nodig. De therapeut vertelt ze om de juiste, comfortabele balans te vinden tussen impulsiviteit en overdenken.

Het algoritme vertelt ze dat de balans zevenendertig procent is.

Er is een specifieke reeks problemen waarmee alle mensen worden geconfronteerd, problemen die een direct gevolg zijn van het feit dat ons leven zich afspeelt in een eindige ruimte en tijd. Wat moeten we doen en ongedaan laten, in een dag of in een decennium? In welke mate van rommel moeten we ons aanpassen, en hoeveel orde is overdreven? Welke balans tussen nieuwe ervaringen en favoriete ervaringen zorgt voor het meest vervullende leven?

Dit lijken misschien problemen die uniek zijn voor mensen; een eeuw lang hebben computerwetenschappers geworsteld met, en in veel gevallen opgelost, de equivalenten van deze alledaagse dilemma's. Hoe moet een processor zijn "aandacht" toewijzen om alles uit te voeren wat de gebruiker van hem vraagt, met de minimale overhead en in de kortst mogelijke tijd? Wanneer moet hij schakelen tussen verschillende taken en hoeveel taken moet hij in de eerste plaats uitvoeren? Wat is de beste manier om zijn beperkte geheugenbronnen te gebruiken? Moet hij meer gegevens verzamelen of een actie ondernemen op basis van de gegevens die hij al heeft? De dag grijpen is misschien een uitdaging voor mensen, maar computers om ons heen grijpen milliseconden met gemak. En we kunnen veel leren van hoe ze dat doen.

Praten over algoritmen voor mensenlevens lijkt misschien een vreemde tegenstelling. Voor veel mensen roept het woord "algoritme" de mysterieuze en ondoorgrondelijke machinaties op van big data, grote overheden en grote bedrijven: steeds meer onderdeel van de infrastructuur van de moderne wereld, maar nauwelijks een bron van praktische wijsheid of begeleiding voor menselijke zaken. Maar een algoritme is slechts een eindige reeks stappen die worden gebruikt om een probleem op te lossen, en algoritmen zijn veel breder en veel ouder dan de computer. Lang voordat algoritmen ooit door machines werden gebruikt, werden ze door mensen gebruikt.

Het woord "algoritme" komt van de naam van de Perzische wiskundige al-Khwãrizmī, auteur van een negende-eeuws boek over technieken om wiskunde met de hand te doen. (Zijn boek heette al-Jabr wa'l-Muqãbala, en de "al-jabr" in de titel geeft op zijn beurt de bron van ons woord "algebra".) De vroegst bekende wiskundige algoritmen zijn echter ouder dan al-Khwãrizmī's werk: een vierduizend jaar oude Sumerische kleitablet die bij Bagdad is gevonden, beschrijft een schema voor lange deling.

Maar algoritmen beperken zich niet alleen tot wiskunde. Wanneer je brood bakt volgens een recept, volg je een algoritme. Wanneer je een trui breit volgens een patroon, volg je een algoritme. Wanneer je een scherpe rand op een stuk vuursteen zet door een precieze reeks slagen uit te voeren met het uiteinde van een gewei - een belangrijke stap in het maken van fijne stenen werktuigen - volg je een algoritme. Algoritmen maken al sinds de steentijd deel uit van de menselijke technologie.

In dit boek onderzoeken we het idee van menselijk algoritmeontwerp - het zoeken naar betere oplossingen voor de uitdagingen die mensen elke dag tegenkomen. Het toepassen van de lens van computerwetenschappen op het dagelijks leven heeft gevolgen op vele schaalniveaus. Het biedt ons direct praktische, concrete suggesties voor het oplossen van specifieke problemen. Optimale stop vertelt ons wanneer we moeten kijken en wanneer we moeten springen. De afweging tussen verkennen en exploiteren vertelt ons hoe we de balans kunnen vinden tussen het proberen van nieuwe dingen en het genieten van onze favorieten. De sorteertheorie vertelt ons hoe (en of) we onze kantoren moeten inrichten. De cachingtheorie vertelt ons hoe we onze kasten moeten vullen. De planningstheorie vertelt ons hoe we onze tijd moeten vullen.

Op het volgende niveau geeft computerwetenschappen ons een vocabulaire om de diepere principes te begrijpen die in elk van deze domeinen een rol spelen. Zoals Carl Sagan het verwoordde: "Wetenschap is een manier van denken, veel meer dan een verzameling kennis." Zelfs in gevallen waarin het leven te rommelig is om een strikte numerieke analyse of een kant-en-klaar antwoord te verwachten, biedt het gebruik van intuïties en concepten die zijn afgestemd op de eenvoudigere vormen van deze problemen ons een manier om de belangrijkste kwesties te begrijpen en vooruitgang te boeken.

In het algemeen kan het kijken door de lens van computerwetenschappen ons leren over de aard van de menselijke geest, de betekenis van rationaliteit en de oudste vraag van allemaal: hoe te leven. Het onderzoeken van cognitie als een middel om de fundamenteel computationele problemen op te lossen die door onze omgeving worden gesteld, kan de manier waarop we over menselijke rationaliteit denken volledig veranderen.

Het idee dat het bestuderen van de interne werking van computers zou kunnen onthullen hoe te denken en te beslissen, wat te geloven en hoe te gedragen, kan veel mensen niet alleen als enorm beperkend, maar in feite ook als misleidend ervaren. Zelfs als computerwetenschappen iets te zeggen zouden hebben over hoe te denken en hoe te handelen, zouden we dan willen luisteren? We kijken naar de AI's en robots van sciencefiction, en het lijkt erop dat hun leven niet is wat iemand van ons zou willen leiden.

Dat komt deels doordat we, als we aan computers denken, denken aan koud mechanische, deterministische systemen: machines die rigide deductieve logica toepassen, beslissingen nemen door de opties uitputtend op te sommen en het exacte juiste antwoord te bedenken, hoe lang en hard ze ook moeten nadenken. De persoon die voor het eerst computers bedacht, had zoiets in gedachten. Alan Turing definieerde het begrip berekening door een analogie met een menselijke wiskundige die zorgvuldig de stappen van een lange berekening doorloopt en een onmiskenbaar juist antwoord oplevert.

Het zal je dus verbazen dat dit niet is wat moderne computers daadwerkelijk doen als ze voor een moeilijk probleem staan. Eenvoudige rekenkunde is natuurlijk niet bijzonder uitdagend voor een moderne computer. Het zijn eerder taken als converseren met mensen, een beschadigd bestand repareren of een spelletje winnen. Go—problemen waarbij de regels niet duidelijk zijn, een deel van de vereiste informatie ontbreekt of het vinden van precies het juiste antwoord zou vereisen dat een astronomisch aantal mogelijkheden in overweging wordt genomen—die nu de grootste uitdagingen vormen in de computerwetenschap. En de algoritmen die onderzoekers hebben ontwikkeld om de moeilijkste soorten problemen op te lossen, hebben computers weggehaald van een extreme afhankelijkheid van uitputtende berekeningen. In plaats daarvan vereist het aanpakken van taken in de echte wereld dat men zich op zijn gemak voelt met kans, tijd afweegt tegen nauwkeurigheid en benaderingen gebruikt.

Nu computers beter zijn afgestemd op problemen in de echte wereld, bieden ze niet alleen algoritmen die mensen kunnen lenen voor hun eigen leven, maar ook een betere standaard om de menselijke cognitie zelf mee te vergelijken. In de afgelopen tien of twintig jaar heeft de gedragseconomie een heel bijzonder verhaal verteld over mensen: dat we irrationeel en foutgevoelig zijn, grotendeels vanwege de buggy, idiosyncratische hardware van de hersenen. Dit zelfspottende verhaal is steeds bekender geworden, maar bepaalde vragen blijven lastig. Waarom zijn vierjarigen bijvoorbeeld nog steeds beter dan supercomputers van miljoenen dollars in een groot aantal cognitieve taken, waaronder zicht, taal en causaal redeneren?

De oplossingen voor alledaagse problemen die voortkomen uit computerwetenschappen vertellen een ander verhaal over de menselijke geest. Het leven zit vol problemen die, heel eenvoudig, moeilijk zijn. En de fouten die mensen maken, zeggen vaak meer over de intrinsieke moeilijkheden van het probleem dan over de feilbaarheid van menselijke hersenen. Algoritmisch nadenken over de wereld, leren over de fundamentele structuren van de problemen waarmee we worden geconfronteerd en over de eigenschappen van hun oplossingen, kan ons helpen zien hoe goed we eigenlijk zijn en de fouten die we maken beter begrijpen.

In feite blijken mensen consequent enkele van de moeilijkste gevallen van de problemen die door computerwetenschappers worden bestudeerd, te confronteren. Vaak moeten mensen beslissingen nemen terwijl ze omgaan met onzekerheid, tijdsbeperkingen, gedeeltelijke informatie en een snel veranderende wereld. In sommige van die gevallen heeft zelfs de meest geavanceerde computerwetenschap nog geen efficiënte, altijd-juiste algoritmen bedacht. Voor bepaalde situaties lijkt het erop dat dergelijke algoritmen helemaal niet bestaan.

Zelfs waar perfecte algoritmes niet zijn gevonden, heeft de strijd tussen generaties computerwetenschappers en de meest hardnekkige problemen in de echte wereld een reeks inzichten opgeleverd. Deze met moeite verworven voorschriften staan haaks op onze intuïties over rationaliteit en ze klinken totaal niet als de beperkte voorschriften van een wiskundige die de wereld in heldere, formele lijnen probeert te dwingen. Ze zeggen: Overweeg niet altijd al je opties. Ga niet per se voor de uitkomst die elke keer het beste lijkt. Maak af en toe een puinhoop. Reis licht. Laat dingen wachten. Vertrouw op je instincten en denk niet te lang na. Ontspan. Gooi een muntje op. Vergeef, maar vergeet niet. Wees trouw aan jezelf.

Leven volgens de wijsheid van de computerwetenschap klinkt uiteindelijk niet zo slecht. En in tegenstelling tot de meeste adviezen, wordt het ondersteund door bewijzen.

Net zoals het ontwerpen van algoritmen voor computers oorspronkelijk een onderwerp was dat in de kieren van de disciplines belandde - een vreemde hybride van wiskunde en techniek - zo is het ontwerpen van algoritmen voor mensen ook een onderwerp dat geen natuurlijke discipline heeft. Tegenwoordig put algoritmeontwerp niet alleen uit computerwetenschappen, wiskunde en techniek, maar ook uit verwante vakgebieden zoals statistiek en operationeel onderzoek. En als we bedenken hoe algoritmen die voor machines zijn ontworpen, zich verhouden tot de menselijke geest, moeten we ook kijken naar cognitieve wetenschap, psychologie, economie en meer.

Wij, uw auteurs, zijn bekend met dit interdisciplinaire gebied. Brian studeerde computerwetenschappen en filosofie voordat hij afstudeerde in Engels en een carrière op het kruispunt van de drie. Tom studeerde psychologie en statistiek voordat hij professor werd aan UC Berkeley, waar hij het grootste deel van zijn tijd besteedt aan het nadenken over de relatie tussen menselijke cognitie en berekening. Maar niemand kan een expert zijn in alle vakgebieden die relevant zijn voor het ontwerpen van betere algoritmen voor mensen. Dus als onderdeel van onze zoektocht naar algoritmen om naar te leven, spraken we met de mensen die een aantal van de beroemdste algoritmen van de afgelopen vijftig jaar bedachten. En we vroegen hen, een aantal van de slimste mensen ter wereld, hoe hun onderzoek de manier waarop ze hun eigen leven benaderden, beïnvloedde - van het vinden van hun partners tot het sorteren van hun sokken.

De volgende pagina's beginnen onze reis door een aantal van de grootste uitdagingen waarmee computers en menselijke geesten worden geconfronteerd: hoe je eindige ruimte, eindige tijd, beperkte aandacht, onbekende onbekenden, onvolledige informatie en een onvoorspelbare toekomst beheert; hoe je dat met gratie en vertrouwen doet; en hoe je dat doet in een gemeenschap met anderen die allemaal tegelijkertijd hetzelfde proberen te doen. We zullen leren over de fundamentele wiskundige structuur van deze uitdagingen en over hoe computers worden ontworpen - soms in strijd met wat we ons voorstellen — om er het beste van te maken. En we zullen leren over hoe de geest werkt, over zijn verschillende maar diep verwante manieren om dezelfde reeks problemen aan te pakken en met dezelfde beperkingen om te gaan. Uiteindelijk kunnen we niet alleen een reeks concrete inzichten krijgen voor de problemen om ons heen, niet alleen een nieuwe manier om de elegante structuren achter zelfs de meest harige menselijke dilemma's te zien, niet alleen een erkenning van de beproevingen van mensen en computers als diep verbonden, maar iets nog diepgaander: een nieuwe woordenschat voor de wereld om ons heen, en een kans om iets echt nieuws over onszelf te leren.

Koop het boek.