Kennisbank

REGAL: hoe AI-systemen leren om hun eigen bouwstenen te hergebruiken

Bijgewerkt: 4 augustus 2026 · 6 min leestijd

Stel je een timmerman voor die telkens een nieuwe kast maakt. In plaats van elke keer opnieuw te beginnen, bewaart een ervaren vakman de mallen en sjablonen die hij vaak nodig heeft: een mal voor een lade, een sjabloon voor een scharnierboring. Bij de volgende opdracht pakt hij die mal er gewoon bij, in plaats van hem opnieuw te tekenen en uit te zagen. Dat scheelt tijd en voorkomt fouten.

REGAL is een onderzoeksmethode uit de kunstmatige intelligentie die iets vergelijkbaars doet, maar dan met stukjes programmeercode. Het is een manier om een taalmodel — het soort AI-systeem achter chatbots zoals ChatGPT — zelf een verzameling herbruikbare 'bouwstenen' te laten opbouwen terwijl het problemen oplost. In plaats van het model opnieuw te trainen (een dure en tijdrovende operatie), krijgt het een groeiende gereedschapskist van eerder bedachte oplossingen die het steeds opnieuw kan inzetten. De naam staat voor Refactoring for Generalizable Abstraction Learning, ofwel: code herschrijven om algemeen toepasbare bouwstenen te ontdekken.

Wat is het precies?

Om REGAL te begrijpen, helpt het om te weten hoe taalmodellen tegenwoordig vaak problemen oplossen: niet door direct een antwoord te geven, maar door er een klein programmaatje voor te schrijven. Bijvoorbeeld: om een tekening te maken met eenvoudige tekencommando's (zoals 'ga vooruit, draai 90 graden'), of om een datumberekening te doen, schrijft het model code in een eenvoudige, speciaal daarvoor gemaakte programmeertaal — een zogeheten domain-specific language (DSL), een taaltje dat is toegespitst op één soort taak.

Normaal gesproken schrijft een taalmodel voor elke nieuwe opdracht een programma helemaal opnieuw, zonder te onthouden wat het eerder al had bedacht. REGAL voegt daar een extra stap aan toe. Nadat het model een aantal van dit soort taken heeft opgelost, kijkt het — met een apart verzoek aan zichzelf — terug naar al die geschreven programma's en zoekt naar terugkerende patronen: stukjes code die in meerdere oplossingen bijna hetzelfde zijn. Zulke stukjes worden losgeknipt tot een apart, herbruikbaar functieblok. Dat is in de reguliere software-ontwikkeling een bekend principe, vaak samengevat met de regel 'don't repeat yourself' (herhaal jezelf niet); REGAL laat de AI dit automatisch op zichzelf toepassen.

Elke nieuwe bouwsteen wordt vervolgens getest: lost hij, gebruikt in bestaande of nieuwe opgaven, de taak nog steeds correct op? Alleen bouwstenen die daadwerkelijk helpen, belanden in een groeiende 'bibliotheek van abstracties'. Bouwstenen die niets toevoegen of fouten veroorzaken, worden weer weggegooid. Bij de volgende, vergelijkbare taak kan het model putten uit die bibliotheek, waardoor het nieuwe programma's korter, overzichtelijker en vaak ook nauwkeuriger worden — het model bouwt voort op onderdelen die al bewezen hebben te werken, in plaats van steeds opnieuw het wiel uit te vinden.

Wat wil men ermee bereiken?

Het achterliggende doel is dat AI-systemen die met code werken — zogenoemde programma-gestuurde agents, AI's die problemen oplossen door zelf code te schrijven en uit te voeren — na verloop van tijd beter worden zonder dat daarvoor het onderliggende taalmodel opnieuw getraind hoeft te worden. Hertrainen van grote taalmodellen kost enorm veel rekenkracht, data en geld; een groeiende, extern opgeslagen bibliotheek van bouwstenen is veel goedkoper en sneller aan te passen.

Onderzoekers hopen daarnaast op drie concrete voordelen. Ten eerste: kortere en beter leesbare programma's, wat het ook makkelijker maakt voor mensen om te controleren wat de AI eigenlijk doet. Ten tweede: minder fouten, omdat hergebruikte bouwstenen al eerder getest zijn. Ten derde: overdraagbaarheid — een bouwsteen die geleerd is bij het oplossen van het ene type probleem, kan soms ook nuttig blijken bij een verwant probleem.

In bredere zin past dit onderzoek in het streven naar 'zelfverbeterende' AI: systemen die, net als een mens die ervaring opbouwt in een vak, na verloop van tijd efficiënter worden binnen een bepaald taakgebied, puur door te leren van hun eigen eerdere oplossingen.

Voorbeelden uit de praktijk

REGAL is vooralsnog een academisch onderzoeksproject, getest op een aantal gestandaardiseerde taken die onderzoekers gebruiken om dit soort systemen met elkaar te vergelijken:

  • Tekenprogramma's genereren (LOGO-taken): het model moet met een eenvoudige tekentaal geometrische figuren en patronen tekenen, vergelijkbaar met de klassieke schoolprogrammeertaal Logo met het 'schildpad'-tekenprincipe.
  • Datumredenering: opgaven waarbij het model datums moet berekenen of vergelijken op basis van tekstuele aanwijzingen.
  • TextCraft: een taakomgeving geïnspireerd op het spel Minecraft, waarin een AI-agent stap voor stap voorwerpen moet 'craften' door de juiste combinatie van tussenstappen te vinden.

REGAL bouwt voort op eerder werk over zogeheten library learning (bibliotheekleren) voor AI. Een bekend voorbeeld is DreamCoder, een systeem van onderzoekers waaronder Kevin Ellis (destijds verbonden aan het Massachusetts Institute of Technology, MIT), dat rond 2020–2021 liet zien dat een AI-systeem zelf herbruikbare programmeeronderdelen kan ontdekken tijdens het oplossen van puzzels. Een recentere opvolger is LILO (Library Induction from Language Observations), van onder meer Gabriel Grand en collega's, gepresenteerd in 2023, dat taalmodellen combineert met klassieke programmasynthese om zulke bibliotheken sneller en met beter leesbare code op te bouwen. REGAL (Elias Stengel-Eskin, Archiki Prasad en Mohit Bansal, verbonden aan de University of North Carolina at Chapel Hill) borduurt hierop voort door het hele proces van 'herschrijven tot abstractie' explicieter te sturen via het taalmodel zelf.

Hoe ver is de techniek?

REGAL bevindt zich nadrukkelijk in de onderzoeksfase. Het werk is gepubliceerd als wetenschappelijk paper in 2024 en getest binnen gecontroleerde, relatief kleine taakomgevingen met een eigen, beperkte programmeertaal. In die omgevingen laten de resultaten zien dat programma's die zijn opgebouwd met behulp van de geleerde bibliotheek vaak korter zijn en vaker de juiste uitkomst geven dan wanneer het taalmodel telkens vanaf nul begint, en dat de aanpak op meerdere van dit soort taken beter of vergelijkbaar presteert dan eerdere bibliotheekleer-methodes zoals DreamCoder en LILO.

Er zitten wel duidelijke grenzen aan wat nu al werkt. De taken waarop REGAL is getest, gebruiken kleine, overzichtelijke programmeertaaltjes die speciaal voor het experiment zijn gemaakt. Het overstappen naar echte, algemene programmeertalen zoals Python of JavaScript — met duizenden bestaande functies en bibliotheken — is een veel grotere uitdaging, omdat de zoekruimte naar nuttige nieuwe bouwstenen dan enorm toeneemt. Ook is de validatiestap (elke kandidaat-bouwsteen testen) rekenkundig kostbaar, en een verkeerd gekozen abstractie kan de prestaties juist verslechteren in plaats van verbeteren. Er is, voor zover bekend, nog geen versie van REGAL die is opgenomen in veelgebruikte commerciële programmeerassistenten; het blijft vooralsnog een onderzoeksprototype waarmee wetenschappers een idee testen, niet een kant-en-klaar product.

Wie werken eraan?

REGAL zelf komt uit de onderzoeksgroep van Mohit Bansal aan de University of North Carolina at Chapel Hill (VS), met Elias Stengel-Eskin en Archiki Prasad als drijvende krachten achter het onderliggende werk. Het bredere onderzoeksveld rond 'library learning' en programmasynthese met AI wordt daarnaast gedragen door groepen aan onder meer het Massachusetts Institute of Technology (MIT, met werk als DreamCoder en LILO) en andere Amerikaanse universiteiten die zich bezighouden met de combinatie van taalmodellen en klassieke programmeertechnieken.

Grote commerciële AI-labs zoals OpenAI, Google DeepMind en Anthropic publiceren eigen onderzoek naar aanverwante thema's — AI-agents die zelfstandig code schrijven, uitvoeren en van fouten leren — maar REGAL als specifieke methode is op dit moment vooral universitair onderzoek en nog geen onderdeel van een commercieel product.

Verder lezen