Andersons hoek

Menselijke Code Van 2020 Versloeg Vibe-Gecodeerde Agents in Agente-Tests

mm
Voeg Unite.AI toe aan je voorkeursbronnen op Google
AI-generated image: a Victorian coach and horses winning formula 1 against modern race car competitors. gpt-image-1.

ChatGPT en andere vibe-coding-tools werden getest in bijna 40.000 wedstrijden – en verloren van code geschreven door een masterstudent voordat de uitvinding van Large Language Models.

 

In een nieuwe studie uit het VK hebben onderzoekers menselijke gecodeerde agents tegenover vibe-gecodeerde agents ontwikkeld met de nieuwste Large Language Models (LLM’s), zoals ChatGPT-5 en Claude, en ontdekt dat de agents die zonder de hulp van AI zijn gemaakt, de AI-gefaciliteerde versies gemakkelijk versloegen.

Beide sets van agents zijn ontwikkeld door verschillende generaties studenten van het Artificial Intelligence Laboratory van de Zwitserse Federale Technische Universiteit van Lausanne. De niet-AI-agents zijn ontwikkeld als onderdeel van een cursus in 2020, twee jaar voordat de invoering van ChatGPT en het begin van de LLM-revolutie, terwijl de nieuwe agents zijn ontwikkeld door huidige studenten, geholpen door de nieuwste en beste LLM’s die beschikbaar zijn.

Selfs met een oneerlijke wedstrijd, konden de vibe-gecodeerde oplossingen niet winnen, en de top vijf posities werden consistent bezet door ‘ruwe’ agents, met de meerderheid van de LLM-agents (33 van de 40) gemakkelijk verslagen door ‘zeer eenvoudige’ baseline-agents, over 38.304 uitdagingen in een toernooi, over een breed aantal variabelen en omstandigheden.

Het artikel zegt:

‘Ons werk toont aan dat, hoewel state-of-the-art LLM’s code kunnen genereren die draait (d.w.z. vrij van syntaxisfouten), de gegenereerde oplossing niet concurrerend is met menselijk ontworpen oplossingen op dimensies zoals strategisch plannen, optimalisatie of multi-agent competitie.

‘Dus, dit werk brengt deze nieuwe grens in codegeneratie naar voren en heeft als doel het ontwikkelen van benchmarks, datasets en open-source baselines die redenering-gedreven code-synthese benadrukken.’

De uitdaging die werd bedacht, was om creatief deel te nemen aan veilingen, over een variatie aan strategieën, en om de logistiek van het leveren van gewonnen artikelen aan de winnaars te regelen.

De auteurs merken op dat een aantal voordelen werd gegeven aan LLM’s, zoals het ingrijpen in hun code om hun prestaties te verbeteren – een voordeel dat niet werd toegestaan aan de code van 2020; zelfs met deze voordelen konden de LLM’s niet winnen:

‘[In] onze benchmark, zelfs als we een goede oplossing in-context blootstellen, kan de LLM deze nog steeds niet gebruiken.

‘Dit resultaat roept ook interessante toekomstige onderzoeksvragen op over de beperkingen van in-context leren en retrieval-versterkt probleemoplossen in complexe scenario’s.’

De LLM’s die in de test werden gebruikt, waren GPT-5 Thinking, Gemini 2.5 Pro, Claude Opus 4.1, en DeepSeek R1*.

Het nieuwe artikel heeft als titel Kunnen Vibe-Coding Graduate CS-Studenten Verslaan? Een LLM vs. Menselijke Coding Toernooi op Markt-Gedreven Strategisch Plannen, en komt van een auteur aan de Universiteit van Southampton en een andere aan de Universiteit van Oxford en het Alan Turing Institute. De benchmark zal, volgens de auteurs, kort worden vrijgegeven.

Methode

De auteurs merken op dat traditionele tests in deze sfeer zich richten op uitdagingen met duidelijk gedefinieerde binaire oplossingen (correct of onjuist), geverifieerd door unit tests. Ze beweren dat dit niet de ideale manier is om de beperkingen van LLM-gefaciliteerde code te onderzoeken, en hebben in plaats daarvan een complexere uitdagingsscenario bedacht, met meerdere interne benchmarks en mijlpalen, waarin overwinning mogelijk is, maar verre van eenvoudig:

Vergelijking van standaard, unit-test-gebaseerde benaderingen (boven), en het meer open-eindige uitdagingsscenario dat door de auteurs is bedacht (in blauw, onder). Bron [ https://arxiv.org/pdf/2511.20613 ]

Vergelijking van standaard, unit-test-gebaseerde benaderingen (boven), en het meer open-eindige uitdagingsscenario dat door de auteurs is bedacht (in blauw, onder). Bron

De Veiling, Ophalen en Bezorgprobleem (APDP) dat voor de studie van de auteurs werd gebruikt, was gedeeltelijk zelfgekozen, vanwege de beschikbaarheid van een corpus van studentenwerk van 2020 van de Zwitserse universiteit; werk dat was gericht op het creëren van geautomatiseerde agents voor de APDP-taak, voordat er enige mogelijkheid was om de ontwikkeling te ondersteunen met AI. Daarom was het relatief eenvoudig om moderne studenten op te dragen met dezelfde opdracht, maar met de beschikking over huidige tools.

De auteurs zochten naar manieren om populaire testkaders te vermijden, zoals HumanEval, BigCodeBench en WebDev Arena (onder andere), omdat deze klasse van testprocedures lijdt aan gegevensverontreiniging (d.w.z. gevallen waarin het systeem getraind kan zijn op testgegevens in plaats van een split te respecteren).

De APDP is een twee-fase logistiek probleem gebaseerd op omgekeerde veilingen en voertuigrouteplanning. In de eerste fase concurreren agents om leveringstaken te winnen door biedingen in te dienen voor hoeveel ze betaald zouden moeten krijgen om elke taak te voltooien. Te hoog bieden betekent het verlies van de taak; te laag bieden kan betekenen dat er geld verloren gaat.

In de tweede fase moet elke agent een efficiënt plan creëren om alleen de taken te voltooien die ze hebben gewonnen, door taken toe te wijzen aan voertuigen met verschillende capaciteiten en kosten, onder tijds- en bronbeperkingen:

In de APDP concurreren bedrijven in omgekeerde veilingen voor leveringstaken, en optimaliseren ze voertuigroutes om alleen de taken te voltooien die ze winnen, met als doel de winst te maximaliseren.

In de APDP concurreren bedrijven in omgekeerde veilingen voor leveringstaken, en optimaliseren ze voertuigroutes om alleen de taken te voltooien die ze winnen, met als doel de winst te maximaliseren.

Het doel is niet alleen om de taken te voltooien, maar om de totale winst te maximaliseren door te anticiperen welke bundels van taken het beste samen zullen werken, en door de strategieën van concurrerende agents te voorspellen die allemaal proberen hetzelfde te doen.

De APDP-benchmark verhoogt de moeilijkheid van codegeneratie-taken door strategisch plannen over een reeks van onderling afhankelijke veilingen in te voeren, waarbij elke bieding het landschap van toekomstige keuzes herschikt; en vereist dus dat agents redeneren, niet alleen over onmiddellijke kosten, maar over positionering, timing en langetermijngevolgen.

Het kernleveringsprobleem is NP-hard, d.w.z. geen algoritme kan betrouwbaar de beste oplossing vinden in een redelijke tijd als het aantal taken toeneemt. Dit maakt brute force een onwerkbaar benadering, en dwingt agents om precisie in te ruilen voor snelheid.

De Wedstrijd Is Aan

De auteurs hebben 40 LLM-gecodeerde agents vergeleken met 17 menselijk gecodeerde agents in een reeks van tête-à-tête-toernooien. Elk van de 12 toernooien gebruikte een andere combinatie van vier wegennetwerktopologieën, en bestond uit all-play-all koppelingen, waarbij agents elke andere tegenstander twee keer tegenkwamen: eenmaal als controle over twee bedrijven, met verschillende voertuigspecificaties.

Dit leverde 3.192 wedstrijden per toernooi op, in totaal 38.304 wedstrijden. In elke wedstrijd werden 50 leveringstaken geveild, gedefinieerd door hun ophaal- en afleverpunten en gewicht, en willekeurig getrokken over weglay-outs gemodelleerd naar Zwitserland, Frankrijk, Groot-Brittannië en Nederland:

Vereenvoudigde wegennetwerken gebruikt in het toernooi: Groot-Brittannië (boven links), Zwitserland (boven rechts), Nederland (onder links) en Frankrijk (onder rechts). Blauwe en rode vierkanten markeren ophaal- en leveringstaken. Gekleurde driehoeken laten de huidige posities van voertuigen van agents zien.

Vereenvoudigde wegennetwerken gebruikt in het toernooi: Groot-Brittannië (boven links), Zwitserland (boven rechts), Nederland (onder links) en Frankrijk (onder rechts). Blauwe en rode vierkanten markeren ophaal- en leveringstaken. Gekleurde driehoeken laten de huidige posities van voertuigen van agents zien.

Studenten-agents werden geselecteerd uit een toernooi van 2020. Acht kwamen uit de top-presteerders in een enkele eliminatie-finale, en vier meer werden gekozen voor hun sterke prestatie tegen de baseline-agents in tête-à-tête-wedstrijden.

De baseline-agents volgden vaste heuristieken. Naïef berekende de totale afstand en bood dienovereenkomstig, met behulp van slechts één voertuig en het negeren van batchverwerking; ExpCostFixedBid simuleerde 10 willekeurige taken, en bood de gemiddelde marginale kosten; Honest berekende de daadwerkelijke marginale kosten van het invoegen van de taak in de planning; ModelOpponent deed hetzelfde, maar voegde een schatting van de kosten van de tegenstander toe, en bood het maximum; en RiskSeeking combineerde een tijd-afnemende prioriteit met live-kostenraming en tegenstandermodellering – en bood opnieuw het hogere van de twee.

De evaluatie omvatte 40 LLM-gecodeerde agents die zijn gebouwd met (de eerder genoemde) GPT-5 Thinking, Claude Opus 4.1, Gemini 2.5 Pro en DeepSeek R1. Elk model werd geprompt met vijf verschillende strategieën, toegepast tweemaal per model.

Twee strategieën gebruikten statische prompts geschreven door verschillende auteurs, terwijl een derde de model vroeg om zelf te reflecteren en zijn eigen output te herzien; een andere betrof kritiek en herziening door een apart LLM. De laatste strategie gebruikte GPT-4 om een nieuwe prompt te synthetiseren door alle vier eerdere benaderingen te bekijken.

De basisprompt weerspiegelde de oorspronkelijke studentenopdracht, die de leveringsomgeving beschreef en het model instrueerde om te bieden en te plannen om de winst te maximaliseren, zonder te vertrouwen op methoden met hoge complexiteit.

Alle LLM-agents werden getest in zowel zelfspel als toernooi-instellingen totdat alle waarneembare bugs waren verholpen. Bugfixing werd autonoom afgehandeld door de LLM’s zelf, met prompts die foutinformatie bevatten.

Gemeenschappelijke LLM-fouten, zoals vermeld in het artikel, omvatten overtredingen van tijdlimieten, falen om toegewezen taken op te halen of te leveren, en schendingen van voertuigcapaciteitsbeperkingen – fouten die vaak voortkwamen uit het negeren van expliciete instructies, of uit defecte herplanningslogica:

‘Een ander veelvoorkomend probleem dat we vonden (vooral met Gemini, Claude en DeepSeek, en niet zozeer met GPT) is dat de LLM vaak consistent faalde om een fout op te lossen.

‘Bijvoorbeeld, een agent zou consistent tijdens de tijd limiet overschrijden, ondanks meerdere (bijv. 5 − 15) cycli van het LLM te prompten met de fout en de bijgewerkte versie van de code te ontvangen.

‘De enige oplossing die we voor dergelijke situaties vonden (waar het LLM herhaaldelijk faalt om dezelfde fout op te lossen) is om opnieuw te beginnen. Over het algemeen hebben we de noodzaak vastgesteld van aanzienlijke handmatige inspanning om foutvrije code te bereiken. We moesten aanzienlijk meer agents genereren om de 40 foutvrije agents te krijgen die we hebben geëvalueerd.’

De resultaten die hieronder worden weergegeven, samenvatten de uitkomsten van 12 dubbele ronde-robin-toernooien, die vier netwerktopologieën en drie toernooien per topologie omvatten, met in totaal bijna 40.000 wedstrijden:

Agent Avg #Wins / Toernooi SD #Wins / Toernooi Avg #Losses / Toernooi SD #Losses / Toernooi Totaal Wins Totaal Losses Winrate
Student 1 108.167 1.193 3.833 1.193 1298 46 0.9658
Student 2 104.917 2.539 7.083 2.539 1259 85 0.9368
Student 3 103.917 2.466 8.083 2.466 1247 97 0.9278
Student 4 103.25 1.815 8.75 1.815 1239 105 0.9219
Student 5 96.5 2.908 15.5 2.908 1158 186 0.8616
LLM(O, IR, 1) 95.417 2.314 16.583 2.314 1145 199 0.8519
LLM(O, A2, 1) 94.583 2.314 17.417 2.314 1135 209 0.8445
Student 6 93.167 1.899 18.833 1.899 1118 226 0.8318
Student 7 93.167 3.563 18.833 3.563 1118 226 0.8318
LLM(O, A1, 1) 86.083 3.029 25.917 3.029 1033 311 0.7686
LLM(O, GEN, 2) 84.083 6.947 27.917 6.947 1009 335 0.7507
LLM(O, CR, 2) 83.5 4.442 28.5 4.442 1002 342 0.7455
Student 8 83.417 4.122 28.583 4.122 1001 343 0.7448
RiskSeeking 82.417 3.343 29.583 3.343 989 355 0.7359
LLM(O, GEN, 1) 80.667 4.355 31.25 4.372 968 375 0.7208
ModelOpponent 80.583 3.26 31.417 3.26 967 377 0.7195
LLM(D, A1, 1) 79.417 3.965 32.583 3.965 953 391 0.7091
ExpCostFixedBid 77.167 4.951 34.833 4.951 926 418 0.689
LLM(O, IR, 2) 73.917 3.502 38 3.618 887 456 0.6605
LLM(O, A1, 2) 72.417 2.193 39.583 2.193 869 475 0.6466
LLM(G, A1, 2) 68.5 3.555 43.5 3.555 822 522 0.6116
LLM(A, GEN, 2) 67.917 2.968 44.083 2.968 815 529 0.6064
LLM(G, IR, 2) 65.917 2.314 46.083 2.314 791 553 0.5885
Student 9 64.167 11.044 47.833 11.044 770 574 0.5729
LLM(G, A1, 1) 64 4.243 47.917 4.316 768 575 0.5719
LLM(G, IR, 1) 60.333 3.725 51.667 3.725 724 620 0.5387
LLM(O, A2, 2) 59.333 4.499 52.667 4.499 712 632 0.5298
LLM(D, CR, 1) 55.083 6.694 56.833 6.59 661 682 0.4922
LLM(G, GEN, 2) 53.167 3.664 58.833 3.664 638 706 0.4747
LLM(D, GEN, 2) 52.083 9.06 59.917 9.06 625 719 0.465
Honest 50.583 3.848 61.417 3.848 607 737 0.4516
Student 10 48.833 2.98 63.167 2.98 586 758 0.436
LLM(D, IR, 1) 48.583 10.211 63.417 10.211 583 761 0.4338
LLM(A, A1, 1) 48 4.69 64 4.69 576 768 0.4286
LLM(G, A2, 1) 47.25 3.864 64.75 3.864 567 777 0.4219
LLM(A, CR, 1) 43.833 4.609 68.167 4.609 526 818 0.3914
LLM(A, A1, 2) 43.75 2.05 68.25 2.05 525 819 0.3906
Student 11 42.083 5.664 69.917 5.664 505 839 0.3757
LLM(A, IR, 1) 39.5 2.541 72.5 2.541 474 870 0.3527
Naive 36.75 1.712 75.25 1.712 441 903 0.3281
Student 12 36.333 1.775 75.667 1.775 436 908 0.3244
LLM(D, A2, 1) 33.917 2.193 78.083 2.193 407 937 0.3028
LLM(A, GEN, 1) 30.167 1.749 81.833 1.749 362 982 0.2693
LLM(D, A2, 2) 29.833 2.038 82.167 2.038 358 986 0.2664
LLM(G, A2, 2) 27 2.256 85 2.256 324 1020 0.2411
LLM(A, A2, 1) 26.333 0.985 85.667 0.985 316 1028 0.2351
LLM(O, CR, 1) 25 3.411 87 3.411 300 1044 0.2232
LLM(A, IR, 2) 24.333 8.542 87.667 8.542 292 1052 0.2173
LLM(A, A2, 2) 24 1.809 88 1.809 288 1056 0.2143
LLM(A, CR, 2) 23.333 1.557 88.667 1.557 280 1064 0.2083
LLM(D, GEN, 1) 22.5 1.784 89.5 1.784 270 1074 0.2009
LLM(D, A1, 2) 13.333 1.826 98.667 1.826 160 1184 0.119
LLM(G, CR, 1) 9.5 1.087 102.5 1.087 114 1230 0.0848
LLM(G, GEN, 1) 9.167 0.937 102.833 0.937 110 1234 0.0818
LLM(D, IR, 2) 7.75 0.622 104.25 0.622 93 1251 0.0692
LLM(G, CR, 2) 7.25 1.422 104.75 1.422 87 1257 0.0647
LLM(D, CR, 2) 5.667 0.985 106.333 0.985 68 1276 0.0506

Om context te geven, speelde elke agent 112 wedstrijden per toernooi, dus het maximale mogelijke gemiddelde voor winst of verlies per agent is 112. De standaarddeviatie (SD) weerspiegelt de variabiliteit over toernooien. Menselijk gecodeerde agents worden weergegeven in het vet. LLM-gecodeerde agents worden gelabeld met het model (O = GPT-5 Thinking, G = Gemini 2.5 Pro, A = Claude Opus 4.1, D = DeepSeek R1), gevolgd door een twee-letterige promptstrategiecode en een cijfer dat aangeeft of de agent de eerste of tweede is die met die prompt is gegenereerd. Bron

Met betrekking tot de resultaten die hierboven worden weergegeven, verklaren de auteurs:

‘LLM’s genereren geen verwachte/concurrerende code, zelfs niet in eenvoudigere varianten van het APDP-probleem (ondanks dat de code grotendeels vrij is van syntaxisfouten). Dit onderstreept het belang van redenering-gedreven code-evaluatiebenchmarks die verder gaan dan auto-complete en nieuwe zwakheden van LLM’s identificeren.’

‘Onze resultaten demonstreren een duidelijke superioriteit van menselijk gecodeerde agents: (i) De top 5 posities worden consistent bezet door studenten-agents, en (ii) de meerderheid van de LLM-agents (33 van de 40) wordt gemakkelijk verslagen door zeer eenvoudige baseline-agents (zoals de verwachte vaste biedprijs).

‘Belangrijk is dat we de studentencode niet hebben gedebugeerd (terwijl we de LLM-code grondig hebben getest en gedebugeerd, zowel in zelfspel als in toernooi-instellingen). Elke keer dat een studenten-agent crashte, gaven we automatisch de overwinning aan de LLM. Een groot aantal van deze crashes zou eenvoudig te verhelpen zijn (bijv. agents die tijdens de tijd limiet overschreden), dus studenten-agents zouden potentieel hoger kunnen scoren.’

Als een verdere experiment werd GPT-5 Thinking geprompt om de code van de best presterende menselijke agent, Student 1, te verbeteren; maar de nu LLM-gemodificeerde agent zakte vervolgens naar de tiende plaats, nu de slechtste van alle menselijke scores. In plaats van de oplossing te verbeteren, verslechterden de LLM’s de veranderingen met bijna 20%.

De auteurs concluderen:

‘[Onze] resultaten benadrukken belangrijke beperkingen van LLM-codegeneratie, met name hun beperkte redenerings- en planningscapaciteiten bij het genereren van . Moderne LLM's kunnen syntaxisfoutvrije code leveren die draait, maar dat is niet de benchmark die we moeten gebruiken om vooruitgang te meten naar geavanceerde algemene AI.'

Conclusie

De auteurs zelf merken op het einde van het artikel op dat vibe-coding mensen met alle technische achtergronden heeft geëmancipeerd, en karakteriseren de praktijk in een positief licht, als een gelijkmaker. Ze impliceren echter ook dat, omdat vibe-coding pas net is aangekomen, de grenzen ervan nog niet bekend zijn en mogelijk hoger zijn dan men realistisch kan verwachten.

Ze sluiten hun aanbod af door op te roepen tot een doelverschuiving 'van code die compileert naar code die concurreert'.

Een vraag die de gewone lezer van dit interessante nieuwe artikel kan hebben, is of de auteurs boven of onder hun gewicht slaan, aangezien de agente-taak in kwestie aanzienlijk complexer en ingewikkelder is dan het produceren van PowerShell-scripts en andere vormen van kleine functionaliteit en fixes waarvoor vibe-coding goed geschikt is.

 

* Let op dat het artikel voortdurend naar 'DeepThink R1' verwijst, wat niet bestaat, en slechts een handvol verwijzingen op internet oplevert (vermoedelijk van andere auteurs die 'DeepSeek R1' verkeerd hebben geschreven). Als dit mijn fout is, neem dan contact met me op via mijn profielgegevens, en ik zal het aanpassen.

Auteursbenadrukking, niet de mijne.

Eerst gepubliceerd op woensdag 26 november 2025. Aangepast 17:35 est voor opmaak.

Schrijver over machine learning, domeinspecialist in humane beeldsynthese. Voormalig hoofd van onderzoeksinhoud bij Metaphysic.ai, tot de opheffing ervan in DNEG's Brahma.ai.
Portfolio site: martinanderson.ai
Contact: [email protected]