ID.nl logo
Golly: spelen met dode en levende pixels
© Flow 37
Huis

Golly: spelen met dode en levende pixels

Een paar simpele regels wekken pixels tot leven. Achter het principe van deze zogeheten cellulaire automaten gaat een hele wereld schuil. Golly laat je er zelf mee spelen.

In dit artikel laten we je zien wat de regels van GoL zo bijzonder maken:

  • Je kunt er asymmetrie mee creëren
  • Er ontstaan patronen door
  • Eenvoudige regels leiden tot grote complexiteit (Wolfram)

Ook interessant: Wat zijn fractals en hoe zien we ze terug in de IT?

Neem een raster met vakjes die aan of uit kunnen staan. Bedenk een paar regels die de toestand van elk vakje bepalen aan de hand van de status van zijn buren en voilà: je hebt een cellulaire automaat gebouwd.

Cellulaire automaten werden in de jaren 40 van de vorige eeuw bedacht door onder andere John von Neumann (die mede aan de wieg stond van de digitale computer). Ze kregen pas in de jaren 70 wat meer (wetenschappelijke) belangstelling toen John Horton Conway een stel regels bedacht die al snel bekend werden onder de naam Game of Life (GoL). De termen ‘aan’ en ‘uit’ worden daarbij vervangen door ‘levend’ en ‘dood’.

Zodra computers grafische mogelijkheden boden, verschenen er programmaatjes waarmee iedereen zelf met GoL kon spelen. Tegenwoordig is Golly hét programma waarmee dat kan. Er bestaat inmiddels zelfs een online versie die heel veel meer sets met regels kent dan alleen het klassieke GoL.

 Golly

Download Golly via deze webpagina. Naast downloadlinks voor Windows, Linux, macOS, iOS en Android is er een link naar de webversie die dezelfde kunstjes kent als de desktop-en mobiele versies.

Standaard gebruikt het programma de regels van GoL die worden aangeduid met de cryptische code B3/S23 (in het statusvak bovenin bij Rule). De B3 hierin zegt dat een dode cel in de volgende ronde tot leven komt als hij drie levende buren heeft (de B staat dan ook voor ‘born’ oftewel geboren worden). De S23 zegt dat een levende cel blijft leven als hij 2 of 3 levende buren heeft (S staat voor ‘survive’ oftewel overleven). Met die twee bepalingen liggen alle andere mogelijkheden ook vast. Heeft een levende cel bijvoorbeeld 0, 1, 4 of meer levende buren, dan voldoet hij niet aan S23 en overleeft hij dus niet.

Experiment

Gewapend met deze kennis is het tijd om eens te kijken wat de regels van GoL nu zo bijzonder maakt. Klik daarvoor op het woord Move achter Cursor en kies in plaats daarvan Draw. Je kunt nu vakjes in het raster wit kleuren, wat betekent dat je ze aanzet, oftewel tot leven wekt. Zoals je ziet heeft het raster dikkere lijnen voor blokken van 10x10 vakjes. Binnen zo’n groot vierkant zetten we de buitenste vakjes aan.

Boven het raster zie je de nodige pictogrammen en met de derde daarvan (+) laat je de regels van GoL één keer op het patroon los. Alle vakjes van het oorspronkelijke vierkant blijven leven omdat ze allemaal twee levende buren hebben. Allerlei vakjes binnen en buiten het vierkant komen tot leven omdat ze drie levende buren hebben.

In het statusvenster bovenin zie je Generation 1. Klik nog enkele keren op + totdat het patroon niet meer verandert. De teller staat dan op 10, zodat stap 9 het laatste unieke patroon was.

Het startpatroon waarop we de regels van GoL gaan loslaten.

Stapje terug

Tussen de pictogrammen zie je ook een gebogen pijl naar links. Dit is de Undo-knop (een functie die je ook in het menu Edit vindt). Klik net zo lang op Undo tot het oorspronkelijke vierkant terug is.

Waar je met + één stapje vooruit gaat, pas je met de Afspeelknop de regels continu toe. Je ziet de veranderingen nu snel gaan. Klik op de Pauzeknop als het beeld niet meer verandert en vervolgens op Undo. Zoals je ziet, ga je nu met één klik terug naar de begintoestand.

Heeft een experiment (veel) meer generaties, dan kun je het afspelen ook versnellen en vertragen met de knoppen Faster (>>) en Slower (<<). Daarbij verandert bovenin de waarde Step met een factor 10, dus van 1 naar 10 naar 100 enzovoort. Zo kun je in combinatie met de knop Advance by step size (naast de +) met grotere sprongen door een experiment gaan. Met een klik op het pictogram =1 zet je de stapgrootte weer op 1.

Asymmetrisch

Kijk je naar de veranderende patronen in ons eerste experiment, dan zal niet meteen duidelijk zijn waarom de regel B3/S23 met leven wordt geassocieerd. Dat verandert wanneer we binnen het witte vierkant een paar extra vakjes wit kleuren om zo een asymmetrisch patroon te maken.

Klik je na het aanpassen van het patroon op de afspeelknop, dan vertonen de opeenvolgende generaties een veel chaotischer gedrag. Het lijkt van een afstand een beetje op bacteriën onder een microscoop.

Een asymmetrisch patroon vertoont veel interessanter en complexer gedrag.

Om zicht op alle veranderingen te houden, zetten we een vinkje bij Auto Fit. Al snel zal de actie zich uitbreiden tot buiten het venster en dankzij Auto Fit zoomt Golly automatisch uit zodra dat gebeurt.

Na ruim 800 generaties zijn drie vormpjes ontstaan die zich in een rechte lijn weg lijken te bewegen, terwijl in het midden meerdere figuurtjes overblijven die ofwel stabiel zijn ofwel een herhalend patroon vormen.

Haal het vinkje bij Auto Fit weer weg en zet de cursor op Move. Zoom vervolgens in op deze figuurtjes met het vergrootglas-pictogram om dit duidelijker te zien.

Er bestaan allerlei stabiele patronen.

Patronen

De patronen die in het laatste voorbeeld ontstaan, komen heel vaak voor. Zo vaak dat ze al snel namen kregen. Zo heten drie blokjes op een rij die telkens wisselen tussen horizontaal en verticaal een Blinker (knipperlicht). Deze behoren tot een grote categorie die Oscillators heet. De meeste leden van die groep oscilleren met twee stappen per periode, zoals de Blinker, maar er zijn ook vormen die pas na meer stappen naar hun begintoestand terugkeren.

De vormpjes die zich voortbewegen heten Gliders (zweefvliegtuigen) en zij zijn een voorbeeld van een vorm uit de grotere categorie Spaceships (ruimteschepen).

Aanvankelijk dacht men dat patronen ofwel zouden stabiliseren ofwel zouden uitsterven. Er werden echter uiteindelijk vormen gevonden die eindeloos konden blijven groeien. Als voorbeeld noemen we het patroon 1111 1111 0111 1100 0111 0000 0011 1111 1011 111. Hierbij staat elke 1 voor een witte cel en elke 0 voor een zwarte (de spaties dienen slechts voor de leesbaarheid). Dit startpatroon groeit diagonaal in twee richtingen waarbij het een spoor van digitale kruimeltjes achterlaat.

Over kruimeltjes gesproken ...

Opruimen doe je met een kruimeldief
Dit simpele patroon van korte lijntjes ...
… leidt tot ongelimiteerde groei.

Turingmachine

Al in de late jaren 30 van de vorige eeuw bedacht de Britse wiskundige Alan Turing – ook al zo’n pionier binnen de informatica – een denkbeeldige computer die we tegenwoordig turingmachine noemen. Een turingmachine kan worden beschreven aan de hand van een aantal simpele regels en leent zich daardoor goed voor (wiskundige) analyse van de vraag of probleem X überhaupt door een computer (hoe krachtig ook) kan worden opgelost. De turingmachine bleek vele verschillende gedaanten te kunnen aannemen en één daarvan waren de regels van GoL! Dat betekent dat je in theorie elk computerprogramma zou kunnen coderen als patroon van vakjes in combinatie met deze regels.

Wolfram

In de jaren 80 experimenteerde de Brits-Amerikaanse natuurkundige en ondernemer Stephen Wolfram (maker van Wolfram Alpha) met regels die nog simpeler waren dan GoL, namelijk in één dimensie in plaats van twee. Dit systeem geeft voor cellen op een lijn aan hoe ze veranderen op basis van de toestand van hun buren links en rechts. Zelfs een van die regels bleek dusdanig complex gedrag te vertonen dat je er elk mogelijk computerprogramma in zou kunnen nabootsen.

Ook dit systeem vind je terug in Golly. Daarvoor kies je in het menu Control voor Set Rule. Geef als regel W110 (de regels van Wolfram zijn op deze manier genummerd en Golly kent alleen de belangrijkste) en klik op OK.

Kleur nu wat vakjes op één regel wit en klik op de afspeelknop. Als je Auto Fit hebt aangevinkt, dan zoomt Golly zelf uit en zie je een zeer complex en onvoorspelbaar patroon ontstaan.

Zelfs een ééndimensionale cellulaire automaat kan een computer nabootsen.

Complexiteit

Als het voorbeeld van Wolframs regel W110 iets duidelijk maakt, dan is het wel dat zeer eenvoudige regels tot grote complexiteit kunnen leiden. In de ruim vijftig jaar dat mensen met GoL spelen, zijn er dan ook heel wat boeiende ontdekkingen gedaan. Een aantal daarvan vind je in het menu links dat vol staat met voorbeelden waarmee je zelf kunt spelen.

Klik bijvoorbeeld op de driehoekjes bij Life en Guns en vervolgens op golly-ticker.rle. Klik op de Afspeelknop en omwille van de snelheid ook één keer op Faster. Je ziet dan hoe de vorm rechts als een lichtkrant continu het woord Golly produceert dat vervolgens door de vorm links wordt opgeslokt.

Tussen de voorbeelden in de groep Life vind je nog heel wat meer opmerkelijks. Zo bevat de categorie Methusalahs overwegend simpele patronen die gedurende duizenden generaties chaotische activiteit blijven vertonen en vind je in Signal-Circuitry patronen die aan computerprogramma’s doen denken.

De aanduiding rle dat je telkens ziet, is overigens de bestandsextensie van Golly en als je zelf iets interessants hebt gemaakt, dan kun je dat via File / Save Pattern in dit formaat opslaan.

Een startpatroon dat de naam ‘Golly’ produceert als lichtkrant.

Toestand

De regels van GoL zijn van alle cellulaire automaten verreweg het meest bestudeerd en er is dan ook het meest over bekend. Een van de redenen dat GoL zich redelijk gemakkelijk laat analyseren, is dat elke cel maar twee toestanden kent: aan of uit. Je kunt de mogelijkheden van cellulaire automaten drastisch uitbreiden en een van de manieren om dat te doen, is via meer dan twee toestanden per cel. Voorbeelden daarvan vind je in het menu met patronen (Patterns) links onder Generations. Zo gebruikt het voorbeeld MeteorGuns.mcl een set regels waarbij elke cel acht toestanden kan hebben.

Meer toestanden per cel zorgt uiteraard voor veel meer nieuwe mogelijkheden.

Een andere manier om de regels uit te breiden, is door niet alleen te kijken naar directe buren, maar ook naar cellen verder weg. Voorbeelden daarvan vind je in de rubriek Larger than Life. Zo laat liquid-methuseblob-soup.rle je heel goed zien dat dit soort regels tot veel soepeler bewegingen kunnen leiden.

In Help / Algorithms vind je nog meer mogelijkheden en lees je hoe je zelf regels definieert.

Als ook verder verwijderde cellen van invloed zijn, worden bewegingen vloeiender.
Watch on YouTube
▼ Volgende artikel
Waar voor je geld: 5x betaalbaar funcooken met je hele gezin
© ID.nl
Huis

Waar voor je geld: 5x betaalbaar funcooken met je hele gezin

Bij ID.nl zijn we dol op kwaliteitsproducten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we binnen een bepaald thema naar zulke deals. Wil je funcooken voor een aantrekkelijke prijs? We hebben vijf interessante apparaten voor je gespot die niet duurder zijn dan 190 euro.

Solis 5 in 1 tafelgrill (7910)

Zoek je een kwalitatief gourmetstel waarmee je jarenlang vooruit kunt? Dit luxe exemplaar van Solis voldoet aan alle eisen. Met de traploze regelaar aan de voorzijde kun je heel precies de gewenste temperatuur instellen. Bak vervolgens op de grillplaat de lekkerste hapjes gaar. Daarnaast kun je ook een van de vier bijgesloten miniwoks of (raclette)pannetjes gebruiken. Hiermee maak je bijvoorbeeld een kleine pannenkoek of pizza.

De werking is kinderlijk eenvoudig. Zodra je het kooktoestel inschakelt, gaat er eerst een rood lampje branden. Het gourmetstel is nu aan het opwarmen. Als het lampje groen kleurt, kan het eetfestijn beginnen. Is een gerecht zo heet dat je je mond kunt branden? Plaats het pannetje of de miniwok dan even in de koudzone onderin het toestel. Naast de eerder genoemde accessoires levert de fabrikant ook nog vier spatels mee.

Princess 162655 Black Steel Raclette

De betaalbare Princess 162655 Black Steel Raclette valt bij heel wat Kieskeurig.nl-testers goed in de smaak, want zij beoordelen dit gourmetstel met een 8,3 (gemiddeld cijfer). Verschillende reviewers vinden het prettig dat dit apparaat zich makkelijk laat schoonmaken. De losse onderdelen kunnen bovendien in de vaatwasser. Een ander pluspunt is dat het gourmetstel volgens diverse gebruikers snel opwarmt. Niet vreemd, gezien het respectabele vermogen van 1300 watt.

Het gourmetstel heeft een riant bakoppervlak van 44 × 25 centimeter. Dankzij de stevige anti-aanbaklaag heb je geen bakboter of olie nodig om te grillen. Het apparaat leent zich prima voor een ruim gezelschap, want de productdoos telt acht (raclette)pannetjes met een houten handvat en evenzoveel spatels. Via een draaiknop reguleer je nauwkeurig de temperatuur. Overigens vindt een enkele tester het netsnoer wat aan de korte kant.

Tefal WokParty Duo PY5828

Wie met een groepje gezellig wil wokken, kan dit leuke kooktoestel van Tefal eens uitproberen. Er zijn zes diepe pannen bijgesloten. Dankzij de gekleurde markering op het handvat weet iedereen precies welk pannetje van hem of haar is. De bakplaat bevat ronde uitsparingen, waardoor de boel niet gaat schuiven. Hierin kun je trouwens ook prima mini-pannenkoeken bakken. Speciaal daarvoor is er een handige gietlepel inbegrepen. Verder telt de verpakking zes spatels.

De WokParty Duo PY5828 heeft een zogeheten Thermo-spot. Hieraan zie je in hoeverre het kooktoestel op temperatuur is. Met een vermogen van duizend watt hoef je niet zo lang te wachten. Tefal levert een receptenboek mee, zodat je inspiratie kunt opdoen. Klaar met tafelen? Stop dan alle losse accessoires in de vaatwasser. Handig is dat je het netsnoer, de spatels en de gietlepel in de onderkant kunt opbergen.

Lees ook: Zo voorkom en verwijder je vieze luchtjes na het gourmetten

Emerio PO-113255.4

Pizzaliefhebbers opgelet! De binnenzijde van deze Emerio fungeert als een kleine oven. Op die manier kunnen maximaal zes personen hun eigen mini-pizza bakken. Met behulp van de bakspatel schuif je de lekkernij moeiteloos in de oven. Geen zin in pizza? In de zes bijgesloten pannetjes kun je allerlei andere gerechten klaarmaken. Bovendien bevindt zich bovenop een ronde grillplaat met een diameter van veertig centimeter. Daar kun je dus behoorlijk wat hapjes op kwijt!

De bediening heeft weinig om het lijf, want de behuizing bevat alleen een aan-uitknop. Met een riant vermogen van 1500 watt worden de gerechten goed warm. De maximale oventemperatuur bedraagt dan ook 250 graden. Volgens de fabrikant houdt de koepelvormige behuizing de warmte in de (pizza)over beter vast. Diverse accessoires zijn vaatwasserbestendig, zodat je na afloop niet zoveel tijd kwijt bent aan schoonmaken.

Princess Dinner4All

Als je met een groepje gaat gourmetten, staat het kooktoestel voor sommige personen wellicht te ver weg. Daar heeft Princess iets op bedacht. Met de Dinner4All bedient iedereen zijn eigen bakplaat van 250 watt. Even een satéstokje of biefstukje omdraaien is dus zo gepiept. Is het hapje eenmaal gaar, dan schuif je het zo op je eigen bordje. Princess levert hiervoor vier aardewerken-borden mee.

Je sluit de centrale unit aan op netstroom, waarna je hierop maximaal vier individuele gourmetstellen kunt aansluiten. Vermenging van smaken is dus verleden tijd! Plaats op deze unit eventueel de inbegrepen serveerschaal. Zo kan iedereen zijn of haar favoriete hapjes pakken. Wil je weten hoe andere gebruikers dit slimme gourmetstel beoordelen? Lees dan eens deze reviews op Kieskeurig.nl. Dit kooktoestel is als alternatief ook met twee individuele bakplaten te koop.

▼ Volgende artikel
De top 5 beste wintersportgames
© Ubisoft
Huis

De top 5 beste wintersportgames

De Olympische Winterspelen gaan bijna van start, en het zien van al die atleten in de kou werkt op een bepaalde manier toch inspirerend. Terwijl je dus uitkijkt naar de volgende skivakantie (of juist liever thuisblijft om gebroken botten te voorkomen), kun je jouw wintersportdromen vervullen dankzij videogames. Hieronder staan vijf van de beste wintersportgames waarin je je helemaal kunt uitleven.

⛷️🏂 🪂 Steep

Platforms:PlayStation 4, Xbox One, pc

Een van de meest moderne en toegankelijke wintersportgames komt uit de stal van het Franse Ubisoft, dat in 2016 Steep uitbracht. De game combineert verschillende sporten zoals skiën, snowboarden, parachutespringen en… vliegen met jetpacks? Deze sporten doe je op de Mont Blanc, de hoogste berg in de Alpen - en Europa trouwens. De physics is wat Steep bijzonder maakt: het is een veel realistischere insteek dan bijvoorbeeld SSX.

In Steep beweeg je je al sleeënd en skiënd over deze berg, waar ondertussen ook allerlei andere spelers rondbewegen, wat een bijzonder gevoel van samenhorigheid geeft. Ook kun je dus in alle rust wintersporten met vrienden als een soort virtuele skivakantie. De game draait in principe om het onder de knie krijgen van de verschillende soorten wintersport om zo de 'Ultimate Legend' te worden, maar in alle rust genieten van de Alpen is net zo goed een optie.

Overigens is er ook een soort vervolg in de vorm van Riders Republic, een game die zich meer richt op zomersporten maar ook het snowboarden uit Steep uitstekend overneemt en verbetert.

Watch on YouTube

🏂 SSX 3

Platforms: GameCube, PlayStation 2, Xbox, GameBoy Advance

Wie aan wintersport in games denkt, komt waarschijnlijk zeer snel uit op de SSX-reeks. Het derde deel in die franchise is misschien wel de meest geliefde, vanwege de keiharde soundtrack, grote hoeveelheden complexe trucs die je kunt uitvoeren en een meeslepende, met vele collectables gevulde open wereld om in te snowboarden. De game kwam uit in 2003, en werd toentertijd ook sterk geprezen om de indrukwekkende physics en graphics.

De open wereld van het spel is een soort aaneenschakeling van alle courses waar je op snowboardt. Daar kun je dus in op zichzelf staande races op rondscheuren en tegenstanders van hun bord af meppen, of op je eigen tempo trucs oefenen terwijl je jamt op nummers van onder andere de Black Eyed Peas. Als je nog een PlayStation 2, GameCube of originele Xbox hebt staan is dit het perfecte moment om weer met grandioze tricks te gooien. En mocht je die niet hebben, dan is de game backwards compatible op Xbox.

©Electronic Arts

⛷️🏂 🥌⛸️Mario and Sonic at the Olympic Winter Games

Platforms: Wii, DS

Ooit was de rivaliteit tussen Mario en Sonic zó groot dat er gehele marketingcampagnes vanuit de ontwikkelaars werden gevoerd - Sega does what Nintendon't bijvoorbeeld. Door de jaren heen is die storm gaan liggen, maar in de Mario and Sonic sport-spellen konden fans van beide kampen hun conflicten toch nog een beetje uitvechten. Je kunt namelijk zowel Mario- als Sonic-personages selecteren en deelnemen aan de Olympische Spelen.

In de game uit 2009 gaat het specifiek om de Winterspelen, dus onder de activiteiten vallen in dit deel onder andere sporten als skiën, bobsleeën en schaatsen. Daarbij maakten beide versies van het spel - op de Wii en DS - allebei op eigen manieren gebruik van motion controls of de touchscreen om deze spellen speelbaar te maken. Dat maakt een wintersportervaring die ook zonder de kleurrijke personages uniek is.

Watch on YouTube

⛷️Lonely Mountains: Snow Riders

Platforms:pc, Xbox Series, PlayStation 5

Skiën kan best een rustgevende bezigheid zijn, zeker met een mooi uitzicht en wanneer niemand zijn of haar botten breekt. In Lonely Mountains: Snow Riders komen beide van die aspecten naar voren, terwijl je steeds sierlijker naar de onderkant van een berg beweegt. Waar het juiste pad vinden aanvankelijk wellicht lastig lijkt, word je er na verloop van tijd handiger in, en een bijkomend voordeel is dat je bij een crash zelf geen botbreuken oploopt. Je blijft het gewoon proberen.

Jouw afdaling van de berg perfectioneren kun je in Snow Riders trouwens ook met een aantal vrienden doen - maximaal acht - en daarbij is het mogelijk om tegen elkaar te racen. Een fijne samenkomst van relaxatie en uitdaging, dus. Daarmee kom je wel in de sfeer voor de Winterspelen.

©Megagon Industries

⛷️🏂 🛷☃️Ski or Die

Platforms: Commodore 64, NES, MS-DOS, Amiga

We gaan nog even flink terug in de tijd, naar 1990. Toen kwam Ski or Die namelijk uit, dat weer bestond uit vijf verschillende minigames. Daaronder vallen halfpipe snowboarden, racen in een opblaasbare slee, twee versies van skiën, waarvan één draait om trucs en de ander om het afdalen van een berg zonder obstakels te raken, en als laatste: sneeuwbalgevechten.

We hebben in deze lijst al zoveel sneeuw gezien, en dit is de eerste keer dat de leukste bezigheid in de sneeuw naar voren komt. Deden ze toch goed in 1990. Misschien is het een idee om van sneeuwbalgevechten een Olympische sport te maken?

©Electronic Arts

Overige tips

Uiteraard zijn er nog meer wintersportgames die in mindere of meerdere mate nog steeds relevant zijn. Hieronder daarom nog een aantal overige tips voor games om in de stemming voor de Olympische Winterspelen te komen:

🏂 SSX: Tricky (PlayStation 2, Xbox, GameCube en Game Boy Advance)
🏂 Alto's Adventure (PlayStation 4, Xbox One, Switch, iOS, Android en pc)
🏂 1080 Snowboarding (Switch 2, Switch, Wii U, Wii en Nintendo 64)
🏂 Shaun White Snowboarding (PlayStation 3, Xbox 360, Wii, Nintendo DS, PSP en pc)
🏒 EA Sports NHL 26 (PlayStation 5, Xbox Series X en S)