Genetisk algoritm programmerare får funktioner

[Kory] har skrivit genetiska algoritmer i några månader nu. Detta i sig är inte något unikt eller exceptionellt, förutom vad han får dessa genetiska algoritmer att göra. [Kory] har använt genetiska algoritmer för att skriva program i Brainfuck. Ja, det är en datorprogrammering en dator. Var tacksam Skynet är 18 år sent.

När vi först såg [Kory] s arbete, hade han programmerat en dator att skriva och driva sina egna program i Brainfuck. Även om namnet på språket [Kory] valde kan använda något arbete, är det faktiskt det perfekta språket för datorgenererade program. Med endast åtta kommandon, var och en bestående av ett enda tecken, minskar det kraftigt överhuvudet av vad någon genetisk algoritm måste producera och vad en fitnessfunktion måste utvärdera.

Det fanns en brist till [Kory]: s första ansträngningar: funktioner. Det är relativt enkelt att få ett program för att säga Hello World, men att göra något komplext, kommer du att behöva något som ett makro eller en funktion. Brainfuck, det är den enklaste formen, stöder inte funktioner. Detta kastar en skiftnyckel i [Kory ]s plan för att få sin datorprogrammeringsdator att växa smartare och komma över lokala minima i sina genetiska algoritmer.

Lösningen på detta problem var skapandet av en ny dialekt av Brainfuck [Kory] kallar BrainPlus. Detta tar de bästa delarna av Extended Brainfuck och lägger till ett kommando som i princip tjänar som ett brott uttalande.

Med detta kan [Kory] s självprogrammeringsdator utveckla mer komplexa program. Redan har det skapat ett program för att generera de första numren av Fibonacci-sekvensen. Det går bara upp till 233 eftersom 255 är det maximala värdet för en byte, och programmet i sig tog sju timmar att generera. Det fungerar dock. Andra program som genereras med de nya BrainPlus-funktionerna inkluderar att recitera 99 flaskor på väggen och ett program som multipliker två värden.

Även om [Kory] s dator spenderar länge för att generera dessa program, ges tillräckligt med tid, det är verkligen inte mycket det här programmet kan inte göra. Brainfuck, och [Kory] s hjärnplus, är Turing Complete, så det med tanke på oändligt minne och tid kan det beräkna någonting. Med det nya tillägget av funktioner kan det beräkna något snabbare.

All kod för [Kyle] s GA är tillgänglig på GitHub.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

PlayStation introducerar nu titlar som exponeras i läckt skärmdump [bild]

Nu när PlayStation 4 har sina fötter under spelvärldens bord börjar intresset vända sig mot PlayStation nu. Spelströmningstjänsten som syftar till att ta med framträdande titlar från PlayStation 3 samt

7 skäl till varför du borde installera iOS 11 -uppdatering idag

Här är 7 stora skäl till varför du borde installera iOS 11 -uppdatering idag på din kompatibla iPhone, iPad eller iPod Touch -enhet. Sitter du på staketet omkring iOS 11?

Elon Musk tror att Tesla kan vara värt mer än både Apple såväl som Aramco Integrated

Tesla VD Elon Musk säger att hans verksamhet snart kan vara värd mer än Apple. Nyheten kommer när verksamheten förbereder sig för att driva med en återköp av återköp på