Hej allihopa, tack för intresset hittills. Här är en förklaring av vad vi har gjort Sammanfattning: Detta är PPO plus levande neuroner i en sluten krets. Policyn "talar" via stimulans, cellerna "svarar" via toppar, och värdefunktionen ger en överraskningssignal som jag matar tillbaka via stimulering så policyn kan kommunicera hur bra eller dålig en handling var. Före DOOM fanns Pong, som byggde på handgjorda kartor. I en liten miljö kan du manuellt definiera vad feedback betyder och hålla det konsekvent. När miljön blir mer komplex blir handgjorda signaler svårare och inkonsekventa. Antalet sammanhang där en signal måste betyda samma sak exploderar, och du börjar återuppfinna invarians för hand. DOOM är 3D och kompositoriskt. Promenad + sväng + skjut kan ske samtidigt. Rätt kartläggning kan inte vara en hög med regler, så jag behövde en generator av signaler som förblir sammanhängande när beteendet förändras. Det är därför jag använde PPO. Topparna är icke-deriverbara, och PPO:s värdefunktion ger oss ett sätt att objektivt definiera en kombinerad "överraskning" för policyn och cellerna för att omvandla den till ett online-feedbackspråk. Policyn ger inte direkt "gå vidare" eller "skjut." Policyn ger stimulans. Cellerna svarar med taggar. Dessa taggar är det som väljer spelets handling, via en linjär avläsning. Utöver det ger värdefunktionen dig en onlineuppskattning av avkastningen, vilket låter dig beräkna överraskning som förutsägelsefel. Baserat på denna åtgärdsöverraskning justerar vi frekvens och amplitud därefter för våra olika återkopplingsscheman. Till exempel, om en handling var positiv och värdefunktionen sa "hög överraskning", minskar vi frekvensen av den positiva handlingens återkoppling för den handlingen, vilket gör handlingarna mer "förutsägbara" vilket cellerna föredrar.