Animal (videogioco)
Animal è un semplice videogioco per computer, puramente testuale, che simula il classico gioco per bambini "indovina l'animale": il computer cerca di indovinare l'animale pensato dal giocatore, facendogli delle domande a cui il giocatore deve rispondere sì o no. Risalente almeno ai primi anni '70, viene usato come un tipico esercizio o esempio di programmazione di un albero binario, definendolo anche con vari altri nomi come Animal Game, animal guessing game, Indovina l'animale[1].
Animal videogioco | |
---|---|
Piattaforma | PDP-11 |
Data di pubblicazione | 1973 |
Genere | Simulatore |
Origine | Stati Uniti |
Sviluppo | Arthur Luehrmann, Nathan Teichholtz |
Pubblicazione | Digital Equipment Corporation (prima edizione pubblica conosciuta) |
Design | Arthur Luehrmann |
Modalità di gioco | Giocatore singolo |
Periferiche di input | Tastiera |
Supporto | Codice sorgente cartaceo |
Modalità di gioco
modificaAll'inizio della partita il giocatore pensa a un animale, con l'obiettivo di trovarne uno che il computer non riesca a indovinare. Il computer pone una alla volta delle domande del tipo "Vive nell'acqua?", alle quali il giocatore deve rispondere sì o no. Quando, andando per esclusione, il computer conosce un solo animale che corrisponda alle risposte date, prova a indovinare: se l'animale è quello vince lui, altrimenti vince il giocatore.
Se vince il giocatore, gli viene chiesto di inserire qual era l'animale che ha pensato, e una nuova domanda che il computer potrà usare in futuro per identificarlo. In questo modo il computer impara dalle proprie sconfitte, realizzando una semplice forma di intelligenza artificiale, e le volte successive saprà indovinare anche il nuovo animale. Il programma inizialmente conosce soltanto due animali e una domanda da fare, ma dopo ogni partita salva su file i nuovi dati.
Esempio di esecuzione di un tipico Animal:
Vive nell'acqua? N Ha il pelo? S Ha le corna? S La risposta è "Mucca"? N Hai vinto! A quale animale stavi pensando? Cervo Inserisci una domanda per distinguere "Cervo" da "Mucca": Vive nei boschi Quale sarebbe la risposta per "Cervo"? S Vuoi giocare ancora?
Storia
modificaIl primo Animal di cui si conosca una pubblicazione ufficiale apparve nel libro 101 BASIC Computer Games del 1973, sotto forma di codice sorgente BASIC per PDP-11, accreditato a Nathan Teichholtz di Digital Equipment Corporation[2]. Nell'edizione 1978 di BASIC Computer Games si precisa però che Teichholtz ha solo adattato un programma originariamente sviluppato al Dartmouth College dal prof. Arthur Luehrmann[3].
L'informatico John Walker, che sarebbe poi divenuto una persona chiave della Autodesk, racconta di aver sviluppato nell'aprile 1974 su mainframe UNIVAC 1100 una versione potenziata di Animal da lui scherzosamente definita "il programma Animal che metterà fine a tutti i programmi Animal", il gioco era quindi un esercizio già molto diffuso. A questa versione è legato un episodio particolare: poiché il gioco era molto richiesto, nel 1975 Walker aggiunse una funzione che autocopiava il programma, senza farsi notare, in tutte le cartelle accessibili, con il risultato di diffonderlo rapidamente ben più di quanto si aspettasse. Venne visto come un episodio comico, ma sebbene innocuo, fu il primo esempio di trojan in libera diffusione, sul quale circolarono leggende metropolitane anche molti anni dopo[4].
Nel 1988 apparve 20q, un programma molto simile ad Animal ma più complesso e basato sulle reti neurali.
Note
modifica- ^ Esempi di usi didattici:
- Allen B. Downey, Jeffrey Elkner e Chris Meyers, 20.7 L'albero degli animali, in Pensare da informatico - Versione Python, traduzione di Alessandro Pocaterra.
- Algoritmi e strutture dati - Esercitazione in laboratorio del 16 maggio 2002 (DOC), Università di Roma "La Sapienza".
- (EN) Animal game - Test of binary trees (codice C++), Oregon State University.
- (EN) A Basic Tree Class and an Application, San Mateo County Community College District (archiviato dall'url originale il 9 settembre 2014).
- ^ (EN) 101 BASIC Computer Games (PDF), Digital Equipment Corporation, 1973 (ristampa 1975), pp. 17-18.
- ^ (EN) BASIC Computer Games (GIF), Creative Computing, 1978, pp. 4-5.
- ^ (EN) John Walker, The Animal Episode, su fourmilab.ch, 1996.
Bibliografia
modifica- (FR) Le jeu des animaux (JPG), in aBc informatique, n. 37, Atlas, 1984, pp. 732-733.
Collegamenti esterni
modifica- (EN) Animal Game - Frequently Asked Questions (versione online del gioco), su animalgame.com.