|
De kubus van Rubik oplossen met leren en zoeken naar diepe versterking
Abstract Hoofd Meer in het algemeen is een belangrijk doel van kunstmatige intelligentie het creëren van algoritmen die in staat zijn om te leren omgaan met verschillende omgevingen zonder te vertrouwen op domeinspecifieke menselijke kennis. De klassieke 3 × 3 × 3 Rubiks kubus is slechts één vertegenwoordiger van een grotere familie van mogelijke omgevingen die in grote lijnen de hierboven beschreven kenmerken delen, inclusief (1) kubussen met langere randen of hogere afmetingen (bijvoorbeeld 4 × 4 × 4 of 2 × 2 × 2 × 2), (2) schuifpuzzelpuzzels (bijvoorbeeld de 15 puzzel, 24 puzzel, 35 puzzel en 48 puzzel), (3) Lights Out en (4) Sokoban. Naarmate de omvang en afmetingen toenemen, neemt de complexiteit van de onderliggende combinatorische problemen snel toe. Bijvoorbeeld, terwijl het vinden van een optimale oplossing voor de puzzel van 15 op een moderne desktop minder dan een seconde duurt, kan het vinden van een optimale oplossing voor de puzzel van 24 dagen duren, en het vinden van een optimale oplossing voor de puzzel van 35 is over het algemeen onhandelbaar9. De bovengenoemde puzzels zijn niet alleen relevant als wiskundige spellen, maar ze kunnen ook worden gebruikt om planningsalgoritmen10 te testen en om te beoordelen hoe goed een machine learning-benadering kan generaliseren naar verschillende omgevingen. Bovendien, omdat de werking van de Rubiks kubus en andere combinatorische puzzels diep geworteld zijn in de groepentheorie, roepen deze puzzels ook bredere vragen op over de toepassing van machine learning-methoden op complexe symbolische systemen, waaronder wiskunde. Kortom, om al deze redenen vormt de Rubiks kubus interessante uitdagingen voor machine learning. Om deze uitdagingen het hoofd te bieden, hebben we DeepCubeA ontwikkeld, dat diep leren11,12 combineert met klassiek leren van bekrachtiging13 (geschatte waarde-iteratie14,15,16) en methoden voor het vinden van paden (gewogen A * zoeken17,18). DeepCubeA kan combinatorische puzzels oplossen, zoals de Rubiks kubus, 15 puzzel, 24 puzzel, 35 puzzel, 48 puzzel, Lights Out en Sokoban (Fig. 1). DeepCubeA werkt met behulp van geschatte waarde-iteratie om een diep neuraal netwerk (DNN) te trainen om een functie te benaderen die de kosten oplevert om het doel te bereiken (ook bekend als de cost-to-go-functie). Aangezien het onwaarschijnlijk is dat willekeurig spelen eindigt in de doeltoestand, traint DeepCubeA op toestanden die worden verkregen door te beginnen vanuit de doeltoestand en willekeurig zetten in omgekeerde richting te nemen. Na de training wordt de aangeleerde cost-to-go-functie gebruikt als een heuristiek om de puzzels op te lossen met behulp van een gewogen A * -zoekopdracht17,18,19.
|
| https://breinbrekers.be |
Veelgestelde vragen
Wat is DeepCubeA en hoe lost het de Rubik's kubus op?▼
DeepCubeA is een machine learning-benadering die diep leren combineert met reinforcement learning. Het trainen gebeurt door vanaf de opgelost toestand willekeurig zetten in omgekeerde richting te nemen, waarna een neuraal netwerk leert de kostenfunctie naar het doel in te schatten.
Hoe succesvol is DeepCubeA bij het oplossen van de Rubik's kubus?▼
DeepCubeA lost 100% van alle testconfiguraties op en vindt 60,3% van de tijd een kortste pad naar de doeltoestand. Dit is een significant resultaat omdat willekeurige zetten bijna nooit tot succes leiden.
Kan DeepCubeA ook andere puzzels oplossen behalve de Rubik's kubus?▼
Ja, DeepCubeA generaliseert goed naar andere combinatorische puzzels zoals de 15-puzzel, 24-puzzel, 35-puzzel, 48-puzzel, Lights Out en Sokoban zonder domeinspecifieke aanpassingen.
Waarom is de Rubik's kubus een interessante uitdaging voor kunstmatige intelligentie?▼
De kubus heeft een enorme toestandsruimte (4,3 × 10^19 toestanden) maar slechts één doeltoestand. Willekeurige zetten leiden zelden tot succes, waardoor het unieke machine learning-problemen oplevert voor planningsalgoritmen.
Wat is het voordeel van DeepCubeA boven eerdere machine learning-methoden?▼
DeepCubeA lost de kubus betrouwbaar op zonder afhankelijk te zijn van domeinspecifieke kennis, in tegenstelling tot eerdere machine learning-benaderingen. Het is ook flexibeler dan geheugenintensieve patroondatabases.














