A Tit for Tat egy viszonylag egyszerű körversenyben verte el a mezőnyt, de voltak akik szívesen látták volna ennél bonyolultabb környezetben is a stratégiák összecsapását. Arra voltak kíváncsiak, hogy egy mesterséges evolúciós környezetben milyen stratégiák választódnának ki.
A Tit for Tat legmeglepőbb tulajdonsága az egyszerűsége volt. A stratéga csupán a másik játékos előző válaszán alapul. A stratégia képlete C:C, D:D ... amiben a C kooperációt jelent, a D defektálást, vagyis versengést.
Milyen egyéb stratégiák lehetnek még melyek csak a másik játékos előző válaszán alapulnak?
Kétféle lehetséges helyzet van, mindkettőre két lehetséges válasz ... 2x2 vagyis összesen 4 ilyen egyszerű stratégia létezik. Ebből az egyik a Tit for Tat, a maradék három pedig:
- C:D, D:D - aki mindenre versengéssel válaszol. Az ördög maga, neve All D.
- C:C, D:C - aki mindenre kooperálással válaszol. A kis naív, neve All C.
- C:D, D:C - aki mindenre az ellenkezőjét válaszolja. Ő a hülye stratégia, neve Fool.
Az egyik multiágenses egyetemi előadáson mesélt a tanár egy szimulációról, amiben ezeket a stratégiákat egymásnak eresztették egy evolúciós játékban ... vááá ... ezek szerint megnézhetjük, hogyan zabálja fel a Tit for Tat a többieket?! ... ááááá ... azt nem ... csak a táblára rajzolva magyarázott az előadó ... programnak se híre, se hamva ... még képet se láttunk belőle.
Reménykedtem benne, hogy a google egyszer majd kisegít, és találok a témához egy működi progit ... de nem ... Így a Valóság Vallása szolgáltatott tökéletes ürügyet, hogy végül magam írjam meg. Három estémbe került, de abszolút megérte.
Íme ő az:
View distance: 1 2 3
Strategies: TT AD AC FO BL WH
A játék:
- Minden 10x10 pixeles négyzet egy-egy játékos.
- Zöld: Tit for Tat (TT), Piros: All D (AD), Világoskék: All C (AC), Narancs: Fool (FO)
- Pontozás: C-C 3-3, C-D 0-5, D-D 1-1
- Minden játékosnak 8 szomszédja van. Az összes játékos minden szomszédjával játszik minden körben. A játékosok jegyzik hány kör óta játsszák az aktuális stratégiájukat, és ezalatt hány pontot gyűjtöttek.
Összes pont / körök száma = a játékos átlaga. - Szelekció: Learning period mennyiségű kör után, minden játékos megnézi, hogy környezetében ViewDistance távolságon belül melyik játékosnak van a legnagyobb pontátlaga. Ha ez az átlag nagyobb mint az aktuális játékos átlaga + Self respect, akkor a játékos lecseréli stratégiáját a sikeresebbére (reprodukció).
- Mutáció: Minden szelekciós kör után Freedom mennyiségű véletlenszerűen kiválasztott játékos, lecseréli stratégiáját egy véletlenszerűen választott stratégiára.
- Update: A többi beállítás, a Moves mező, a BL és a WH stratégia a következő két posztokban vannak megmagyarázva.
A Tit for Tat-et egyedül egyik stratégia se nyomja le. De ha több stratégia egyszerre vesz részt a játékban, már nem lesz olyan egyhangú az eredmény ... és ha a rendszer szabadságát is növeljük még ziláltabbá válik a helyzet ... Jó szórakozást! (a program nem hülyebiztos, bánjatok vele finoman)