Het Aaronson-orakel: een interactieve les in menselijke voorspelbaarheid
Het verhaal
Twee machines in een gang bij Bell Labs
Dit experiment is zeventig jaar oud en werd oorspronkelijk gebouwd met relais voordat het als software werd geschreven.
Rond 1951 bouwde David Hagelbarger bij Bell Telephone Laboratories in Murray Hill, New Jersey, een machine om het spel 'matching pennies' tegen zijn collega's te spelen. Bij dit spel kiezen twee spelers in het geheim kop of munt; de ene wint als de keuzes overeenkomen, de andere als ze verschillen. Tegen iemand die werkelijk onvoorspelbaar is, is dit niet meer dan een toss. Hagelbarger noemde zijn machine SEER (SEquence Extrapolating Robot).
SEER maakte geen diepgaand model van de tegenstander. De machine hield drie feiten bij over de laatste twee rondes: of hij de ronde vóór de vorige had gewonnen of verloren, of hij hetzelfde of anders had gespeeld, en of hij de vorige ronde had gewonnen of verloren. Deze drie ja-of-nee-vragen creëren acht mogelijke situaties. Voor elk van deze acht situaties onthield de machine of het zinvol was geweest om hetzelfde te blijven spelen. Dit werd bijgehouden op een kleine omkeerbare teller die stopte bij plus en min drie. Hagelbarger beschreef deze begrenzing met de woorden dat de stops "de machine in feite doen vergeten wat oude geschiedenis is."
De geheugencode van SEER:
- Acht situaties (gebaseerd op drie ja/nee feiten).
- Acht tellers die elk stoppen bij ±3.
Claude Shannon, die in dezelfde gang werkte, merkte dit op en bouwde zijn eigen versie. In zijn memorandum van 18 maart 1953 geeft hij Hagelbarger de eer en maakt hij een vergelijking die precies uitlegt wat voor soort machine dit is:
"Deze machine is een enigszins vereenvoudigd model van een machine ontworpen door D. W. Hagelbarger. Hij speelt in essentie het oude spel 'matching pennies' of 'oneven en even'. Dit spel is vanuit speltheoretisch oogpunt besproken door von Neumann en Morgenstern, en vanuit psychologisch oogpunt door Edgar Allan Poe in 'The Purloined Letter'. Vreemd genoeg is de machine meer gericht op de speelmethode van Poe dan op die van von Neumann."
— Shannon, A Mind-Reading (?) Machine, 1953
Dat is de kern van het idee. De speltheorie leert dat de correcte manier om 'matching pennies' te spelen is om een mentale munt te werpen en echt willekeurig te zijn; dan kan geen enkele tegenstander je op de lange termijn verslaan. Poe's detective doet echter iets anders: hij bestudeert zijn tegenstander en raadt wat voor persoon bepaalde keuzes zou maken. Shannon bouwde de detective, omdat de detective wint — niet tegen een ideale speler, maar tegen een menselijke speler.
Shannons machine zocht naar patronen en ging ervan uit dat de speler die patronen opnieuw zou volgen zodra dezelfde situatie zich voordeed. Wanneer de machine een patroon niet minstens twee keer had gezien, bewoog hij willekeurig. Deze willekeur werd gegenereerd door een commutator die ongeveer tien keer per seconde draaide, waarbij de waarde werd afgelezen op het moment dat de gebruiker op de knop drukte. De onvoorspelbaarheid werd dus geput uit de jitter in de timing van de gebruiker zelf.
De verslaanbaarheid van de machine
Wat opvalt aan Shannons memo is dat hij de machine niet oververkocht. Hij berekende hoe makkelijk de machine te verslaan was en publiceerde de methode:
"Een mathematische analyse van de strategie die in deze machine wordt gebruikt, laat zien dat hij kan worden verslagen door het best mogelijke spel in een ratio van 3:1. Hiervoor is het noodzakelijk om de inhoud van alle geheugencellen in de machine bij te houden. [...] Het is extreem moeilijk om dit programma mentaal uit te voeren vanwege de hoeveelheid benodigd geheugen en berekeningen."
— Shannon, 1953
De machine is dus niet onverslaanbaar. Op papier is hij in drie van de vier gevallen te verslaan. Het probleem is dat een mens deze methode niet in zijn hoofd kan uitvoeren tijdens het spelen. Die kloof tussen wat in principe mogelijk is en wat een persoon daadwerkelijk kan doen op het moment zelf, is het centrale thema van dit experiment.
De strijd tussen machines
Onvermijdelijk ontstond de vraag welke machine beter was. Hagelbarger legde vast wat er gebeurde:
"Na veel discussie werd een scheidsrechter-machine gebouwd die de twee machines met elkaar verbond, waarna ze enkele duizenden spellen mochten spelen. De wendbaarheid van de kleine machine triomfeerde, en hij versloeg de grotere machine met ongeveer 55-45."
— Hagelbarger, 1956
De simpelere machine van Shannon, gebouwd met ongeveer de helft minder relais, versloeg de complexere machine. In 2020 heeft een groep in Sibiu beide machines in software opnieuw geïmplementeerd. Over games van honderd beurten won de machine van Shannon met 55,8 tegen 44,2. Een zestig jaar oud stuk laboratoriumfolklore, bevestigd door software.
De machine van Shannon bestaat nog steeds. William Poundstone bezocht hem in de opslag van het MIT Museum. Hij speelde niet, omdat de machine een definitieve score toonde: Speler 3507. Machine 5010. Over alle mensen die ooit tegen de machine zaten, won de machine ongeveer 59% van de tijd.
Vijftig jaar later: de versie van Scott Aaronson
De moderne versie van dit experiment komt van Scott Aaronson, die het schreef voor een cursus aan Berkeley. Hij beschrijft dit in Quantum Computing Since Democritus:
"Ik schreef een simpel programmaatje waarmee mensen 'f' of 'd' konden typen en dat voorspelde welke toets ze vervolgens zouden indrukken. Het is eigenlijk heel eenvoudig om een programma te schrijven dat in ongeveer 70% van de gevallen de juiste voorspelling doet. De meeste mensen weten niet echt hoe ze willekeurig moeten typen. Ze wisselen te veel af enzo. [...] Ik kon mijn eigen programma niet eens verslaan, terwijl ik precies wist hoe het werkte. Ik daagde mensen uit en het programma behaalde voorspellingspercentages tussen de 70% en 80%. Daarna vonden we één student die het programma precies 50% van de tijd voorspelde. Toen we hem naar zijn geheim vroegen, antwoordde hij dat hij 'gewoon zijn vrije wil gebruikte'."
— Aaronson, Quantum Computing Since Democritus, Lecture 18
Twee zaken zijn hier cruciaal: ten eerste kon Aaronson zijn eigen programma niet verslaan, ondanks kennis van de broncode (net zoals Shannon bij zijn relais). Ten tweede is er de student, wiens methode later het kernpunt van de discussie wordt.
Vergelijking van de drie machines
| Kenmerk | Hagelbarger (1951) | Shannon (1953) | Deze versie (Aaronson-stijl) |
|---|---|---|---|
| Waar hij op let | Of hij won, en of hij herhaalde | Of hij won, en of jij herhaalde | Alleen wat jij indrukte |
| Geheugendiepte | Twee rondes | Twee rondes | Vijf toetsaanslagen |
| Aantal situaties | 8 | 8 | 63 |
| Vergeten | Bewust (counters stoppen bij ±3) | Geen | Geen |
| Bij onzekerheid | Speelt willekeurig | Commutator (timing van toetsaanslag) | Verkort de vraag, dan een muntworp |
Hoe het werkt in begrijpelijke taal
Er zit geen psychologisch model of theorie over vrije wil in dit programma. Het houdt simpelweg een notitieboekje bij.
Elke keer dat je een toets indrukt, schrijft het programma op wat je vlak daarvoor had ingedrukt en wat je daarna indrukte. Dit gebeurt gelijktijdig voor zes verschillende lengtes. Stel dat je laatste vijf aanslagen F, D, D, F, F waren en je drukt vervolgens op D. Het notitieboekje krijgt zes nieuwe vermeldingen:
- Na
FDDFFdrukte je opD. - Na
DDFFdrukte je opD. - Na
DFFdrukte je opD. - Na
FFdrukte je opD. - Na
Fdrukte je opD. - Zonder context drukte je op
D.
Om je volgende aanslag te voorspellen, leest de machine het notitieboekje achterstevoren. Hij kijkt naar je laatste vijf aanslagen en vraagt: "Heb ik deze exacte reeks eerder gezien, en zo ja, wat deed je toen?"
Als de reeks minstens twee keer is voorgekomen en je deed niet beide dingen even vaak, dan kiest de machine de optie die je het vaakst koos. Als de reeks nieuw is, slechts één keer is voorgekomen, of als de resultaten precies gelijk zijn, dan verkort de machine de vraag: "Wat gebeurde er na de laatste vier aanslagen? De laatste drie? Twee? Één?" Als dit allemaal niet werkt, volgt er een muntworp.
Deze "terugval" (backoff) is het enige slimme aan het programma. Een lange reeks is zeer specifiek en geeft veel informatie wanneer hij van toepassing is. Maar in het begin van een sessie heb je nog niet veel reeksen van vijf aanslagen geproduceerd; een enkele observatie is daar vaak toeval. Een kortere reeks is vager, maar vaker onderbouwd. Het programma verkiest de langste reeks die het vaak genoeg heeft gezien om erop te vertrouwen.
De machine is dus niet intelligent en leest je niet. Hij stelt herhaaldelijk één vraag: "De vorige keer dat het er zo uitzag, wat deed je toen?"
De technische werking: n-gram frequentiemodellen
De correcte naam voor dit "notitieboekje" is een n-gram frequentiemodel. Een n-gram is simpelweg een reeks van n symbolen. In dit geval zijn de symbolen de twee toetsen, wat betekent dat er $2^5 = 32$ mogelijke reeksen van vijf zijn, 16 van vier, enzovoort, tot aan de lege reeks (het totaal aantal aanslagen).
Stel dat $c$ een reeks aanslagen is (de context) en $N(c, F)$ het aantal keren is dat je $F$ indrukte direct na die reeks. De voorspellingsregel is: kies de langste context $c$ die overeenkomt met je recente aanslagen, zodanig dat:
- $N(c, F) + N(c, D) \geq 2$ en
- $N(c, F) \neq N(c, D)$
De machine antwoordt met de waarde van $F$ of $D$ die het grootst is. Als geen enkele context aan deze eisen voldoet, wordt er willekeurig gekozen. Het terugvallen op een kortere context wordt backoff genoemd, een standaardmethode in statistische taalmodellering.
De drempelwaarde van twee observaties is essentieel. Zonder deze drempel zou een reeks die één keer is gezien (1–0) voorrang krijgen op een context van twee aanslagen die veertig keer is gezien (30–10), puur omdat de eerste reeks langer is. Dit is een klassiek voorbeeld van een sparse-data failure.
De code
Het volledige programma bestaat uit slechts enkele tientallen regels JavaScript. Het bevat twee hoofdfuncties:
record: schrijft één aanslag in elke contextlengte tegelijk.predict: loopt van de langste naar de kortste context en geeft de eerste terug die hij vertrouwt.
Er is geen trainingsfase en geen vooraf vastgesteld model; de machine begint elke sessie zonder kennis en bouwt zijn database tijdens het spelen op.
Wat dit zegt over ons
Waarom je verliest
Een programma dat zo klein is, zou dit in principe niet moeten kunnen. Het wint vanwege een menselijke eigenschap die al decennia wordt gemeten.
Het produceren van een reeks zonder patroon wordt Random Sequence Generation (RSG) genoemd. Onderzoek in de experimentele psychologie toont consequent aan dat mensen slechte randomiseerders zijn. De meest voorkomende fout is de alternatie-bias (alternation bias): de neiging om herhalingen te vermijden. Wanneer mensen gevraagd wordt om willekeurig te zijn, wisselen ze te vaak af en herhalen ze te weinig. Een eerlijke munt produceert vaker reeksen van vijf identieke worpen dan mensen acceptabel vinden, waardoor mensen die een munt imiteren deze reeksen onbewust wegsnijden.
Dit wijst op een complex, verborgen systeem van regels met geheugen in het menselijk brein. Het orakel is geen algemene gedachtenlezer, maar een apparaat dat specifiek is gevormd om dit defect in menselijke willekeur te exploiteren.
De bias werkt ook in de andere richting: mensen geloven dat veel afwisseling er willekeuriger uitziet dan het is. Bij het beoordelen van binaire sequenties waarderen mensen sequenties met een afwisselingspercentage van 0,6 tot 0,8 als het meest willekeurig, terwijl de werkelijke waarde bij een eerlijke munt 0,5 is. We genereren dus foutief en we beoordelen ook foutief, beide in dezelfde richting.
Het effect van de instructie
Interessant is dat de instructie zelf nadelig kan zijn. Onderzoek suggereert dat wanneer willekeur niet expliciet wordt gevraagd, maar een impliciete vereiste is (zoals in een competitief spel als matching pennies), de willekeur hoger ligt. Het bewust proberen willekeurig te zijn maakt je voorspelbaarder dan wanneer je simpelweg probeert een tegenstander te verslaan.
De herwedstrijd: kun je het verslaan?
Zelfs als je de broncode kent en weet hoe het algoritme werkt, is het nog steeds moeilijk om te winnen. Dat komt omdat het algoritme niet het moeilijke deel is; het genereren van de reeks is dat. Het begrijpen van een bias van buitenaf schakelt die bias van binnenuit niet uit.
De methoden die wel werken, hebben één ding gemeen: ze halen de beslissing uit het eigen hoofd. Dit kan door:
- De score te negeren of onzichtbaar te maken.
- Bewust keuzes te herhalen die het instinct zou willen afwisselen.
- Cijfers af te lezen van een externe bron.
- Een regel in het hoofd te gebruiken die eenvoudig is om te berekenen, maar moeilijk te detecteren.
Dit brengt ons terug bij de student van Aaronson die zei dat hij "gewoon zijn vrije wil gebruikte". Wat hij ook deed, het was een methode om een keuze te maken die buiten zijn eigen reflexen en gewoonten lag. Dat is een nuttigere beschrijving van vrije wil: niet de afwezigheid van een oorzaak, maar het vermogen om de beslissing over te dragen aan iets anders dan je reflexen.
Bronnen
- Claude E. Shannon, "A Mind-Reading (?) Machine," Bell Laboratories Memorandum, 18 maart 1953.
- D. W. Hagelbarger, "SEER, A SEquence Extrapolating Robot," IRE Transactions on Electronic Computers, EC-5(1), 1956.
- Macarie Breazu et al., "On Hagelbarger's and Shannon's matching pennies playing machines," International Journal of Advanced Statistics and IT&C for Economics and Life Sciences, 2020.
- William Poundstone, "How I Beat the Mind-Reading Machine," 30 juli 2015.
- Scott Aaronson, Quantum Computing Since Democritus, Cambridge University Press, 2013, Hoofdstuk 18 ("Free Will").
- Nick Merrill, implementatie van het Aaronson-orakel (repository).
- Maja Guseva et al., "Instruction effects on randomness in sequence generation," Frontiers in Psychology, 14:1113654, 2023.
- Marc-Andre Schulz et al., "Analysing humanly generated random number sequences: A pattern-based approach," PLOS ONE 7(7): e41531, 2012.
- Giorgio Gronchi et al., "Modeling the overalternating bias with an asymmetric entropy measure," Frontiers in Psychology, 7:1027, 2016.
- Stian Reimers et al., "Perceptions of randomness in binary sequences: Normative, heuristic, or both?" Cognition, 172, 2018.
Groetjes,