Bana för den högst presterande individen från det bästa loppet. Grön:optimal bana; blå:faktisk bana. Båda börjar vid (0, 0). Kredit:Inden &Jost.
Evolutionära algoritmer (EA) är utformade för att replikera beteendet och utvecklingen av biologiska organismer samtidigt som de löser datorproblem. På senare år har många forskare har utvecklat EA:er och använt dem för att ta itu med en mängd olika optimeringsuppgifter.
Tidigare studier har också utforskat användningen av dessa algoritmer för att lära sig topologin och anslutningsvikterna för neurala nätverk som driver robotar eller virtuella agenter. När den tillämpas i dessa sammanhang, EA kan ha många fördelar, till exempel förbättra prestandan för artificiell intelligens (AI) agenter och förbättra vår nuvarande förståelse av biologiska system.
Än så länge, dock, verkliga evolutionära robotapplikationer har varit få, med väldigt få studier som lyckas producera komplexa beteenden med hjälp av EA. Forskare vid Nottingham Trent University och Max Planck Institute of Mathematics in the Sciences har nyligen utvecklat ett nytt tillvägagångssätt för att utveckla neurala nätverk med en ihållande linjär tillväxt i komplexiteten i deras beteende.
"Om vi vill ha en varaktig linjär tillväxt av komplexitet under evolutionen, vi måste säkerställa att egenskaperna hos den miljö där evolutionen äger rum, inklusive populationsstrukturen och egenskaperna hos de neurala nätverk som är relevanta för de tillämpade mutationsoperatörerna, förbli konstant i genomsnitt över evolutionär tid, ", förklarade forskarna i sin uppsats. "Frysa gamla nätverksstrukturer är en metod som hjälper till att uppnå detta, men som de undersökningar som presenteras här kommer att visa, det är inte tillräckligt i sig och inte ens den stora bidragsgivaren till att uppnå målet."
I deras studie, forskarna fokuserade på en uppgift där en robotagent måste följa en fördefinierad bana på ett oändligt 2D-plan så länge som möjligt, som de refererar till som "banan efter uppgiften." I deras version av denna uppgift, agenten fick ingen information via sina sensorer om var den skulle placeras. Om det är för långt från banan, dock, agenten "dör". I detta sammanhang, evolution bör tillåta agenten att anpassa sig till denna uppgift och lära sig att följa banan med hjälp av öppen loop-kontroll.
För att uppnå en linjär tillväxt i komplexiteten i agentens evolutionära beteenden när han utför denna uppgift, forskarna lade till fyra nyckelfunktioner till standardmetoder för att utveckla neurala nätverk. Väsentligen, de frös nätverkets tidigare utvecklade struktur, samtidigt som man lägger till tidsmässiga ställningar, en homogen överföringsfunktion för utgångsnoder och mutationer som skapar nya vägar till utgångar.
Samtidigt som att lägga till mutationer i nätverken och ändra överföringsfunktionerna för utgångar ledde till viss förbättring av prestanda, de fann att den mest betydande förbättringen var förknippad med användningen av byggnadsställningar. Detta tyder på att vanliga neurala nätverk inte är särskilt bra på att producera beteenden som varierar över tiden på ett sätt som är lättillgängligt av evolutionen.
I deras tidning, forskarna föreslår att neurala nätverk förstärkta av byggnadsställningar kan vara en gångbar lösning för att uppnå allt mer komplexa beteenden och evolution i neurala nätverk. I framtiden, det tillvägagångssätt som de presenterade skulle kunna informera om utvecklingen av nya verktyg för att utveckla neurala nätverk för robotstyrning och andra uppgifter.
"Övergripande, utvecklad komplexitet är upp till två storleksordningar över den som uppnås med standardmetoder i de experiment vi rapporterade, med den huvudsakliga begränsande faktorn för ytterligare tillväxt är den tillgängliga körtiden, " skrev forskarna i sin tidning. "Därför, den uppsättning metoder som föreslås här lovar att vara ett användbart tillägg till olika nuvarande neuroevolutionsmetoder."
© 2019 Science X Network