Snake - Artificial intelligence of the Snake game.

  •        186

This project focuses on the artificial intelligence of the Snake game. The snake's goal is to eat the food continuously and fill the map with its bodies ASAP. The old version of this project is written in C++. Now it has been rewritten using Python for a user-friendly GUI and the simplicity in the implementations of algorithms. Requirements: Python 3.5+ with Tkinter installed.



Related Projects

easyAI - Python artificial intelligence framework for games

  •    Python

EasyAI (full documentation here) is a pure-Python artificial intelligence framework for two-players abstract games such as Tic Tac Toe, Connect 4, Reversi, etc. It makes it easy to define the mechanisms of a game, and play against the computer or solve the game. Under the hood, the AI is a Negamax algorithm with alpha-beta pruning and transposition tables as described on Wikipedia. Additionnally you will need to install Numpy to be able to run some of the examples.

Snake Game xna 2.0

  •    CSharp

Open Source Snake Game with Demo .

In Browser Snake Game With Raphael.js and ASP MVC 3


Fun with Raphael.js , jQuery and plain Js on top of ASP MVC 3. Building the classic Snake Game.


  •    C++

OpenSnake is an open source snake game (a clone of the classic snake game). The snake of it is continuous. The GUI of it is implemented using wxWidgets.

Sammy the Snake

  •    CSharp

Sammy the Snake is a demo Zune game made for an article on Microsoft's Coding4Fun blog. Sammy the Snake and the article were written by Nick Gravelyn ([url:]) All artwork provided by George Clingerman ([url:])

Mosaic Snake 3D

  •    CSharp

A clone of the popular Snake game for Windows 8. It contains a simple 3D engine based on SharpDX and is completely written in C# and Xaml.

JavaScript-Snake - The game of Snake written in JavaScript.

  •    Javascript

This is a DOM-based game of Snake that I wrote in JavaScript a few years back. The comments are formatted a little strange because at the time I was playing around with YUI Doc.

3DSnakeAR - Well known game Snake written in Swift using ARKit.

  •    Swift

Well known game Snake in Augmented Reality. Written in Swift using ARKit. App demonstrates ARKit and plane detection. Content is generated with SceneKit. Just open in Xcode 9 and run on device.

AI-Programmer - Using artificial intelligence and genetic algorithms to automatically write programs

  •    CSharp

Read the research paper BF-Programmer: A Counterintuitive Approach to Autonomously Building Simplistic Programs Using Genetic Algorithms. AI-Programmer is an experiment with using artificial intelligence and genetic algorithms to automatically generate programs. Successfully created programs by the AI include: hello world, hello , addition, subtraction, reversing a string, fibonnaci sequence, 99 bottles of beer on the wall, and more. It's getting smarter. In short, it's an AI genetic algorithm implementation with self modifying code.

opencog - A framework for integrated Artificial Intelligence & Artificial General Intelligence (AGI)

  •    Scheme

OpenCog is a framework for developing AI systems, especially appropriate for integrative multi-algorithm systems, and artificial general intelligence systems. Though much work remains to be done, it currently contains a functional core framework, and a number of cognitive agents at varying levels of completion, some already displaying interesting and useful functionalities alone and in combination. With the exception of MOSES and the CogServer, all of the above are in active development, are half-baked, poorly documented, mis-designed, subject to experimentation, and generally in need of love an attention. This is where experimentation and integration are taking place, and, like any laboratory, things are a bit fluid and chaotic.

nupic - Numenta Platform for Intelligent Computing is an implementation of Hierarchical Temporal Memory (HTM), a theory of intelligence based strictly on the neuroscience of the neocortex

  •    Python

The Numenta Platform for Intelligent Computing (NuPIC) is a machine intelligence platform that implements the HTM learning algorithms. HTM is a detailed computational theory of the neocortex. At the core of HTM are time-based continuous learning algorithms that store and recall spatial and temporal patterns. NuPIC is suited to a variety of problems, particularly anomaly detection and prediction of streaming data sources. For more information, see or the NuPIC Forum. For usage guides, quick starts, and API documentation, see

SnakeFusion - Using the genetic algorithm and neural networks I trained up 5 snakes who will then fuse to become the ultimate snake, this is how I did it

  •    Processing

Using the genetic algorithm and neural networks I trained up 5 snakes who will then fuse to become the ultimate snake, this is how I did it

mop(e) snake

  •    Python

mop(e) snake is a classic snake game which pits you against all the pain in the world. You can try the innovative one-finger control method, or stick with a more traditional style of play - it's up to you - just make sure you eat the pain!

graph - A mathematical graph/network library written in PHP

  •    PHP

This library is built around the concept of mathematical graph theory (i.e. it is not a charting library for drawing a graph of a function). In essence, a graph is a set of nodes with any number of connections in between. In graph theory, vertices (plural of vertex) are an abstract representation of these nodes, while connections are represented as edges. Edges may be either undirected ("two-way") or directed ("one-way", aka di-edges, arcs). Depending on how the edges are constructed, the whole graph can either be undirected, can be a directed graph (aka digraph) or be a mixed graph. Edges are also allowed to form loops (i.e. an edge from vertex A pointing to vertex A again). Also, multiple edges from vertex A to vertex B are supported as well (aka parallel edges), effectively forming a multigraph (aka pseudograph). And of course, any combination thereof is supported as well. While many authors try to differentiate between these core concepts, this library tries hard to not impose any artificial limitations or assumptions on your graphs.

CleverAlgorithms - An open source book that describes a large number of algorithmic techniques from the the fields of Biologically Inspired Computation, Computational Intelligence and Metaheuristics in a complete, consistent, and centralized manner such that they are accessible, usable, and understandable

  •    TeX

Clever Algorithms: Nature-Inspired Programming Recipes is an open source book that describes a large number of algorithmic techniques from the the fields of Biologically Inspired Computation, Computational Intelligence and Metaheuristics in a complete, consistent, and centralized manner such that they are accessible, usable, and understandable. This is a repository for the book project used during the development and ongoing maintenance of the books’ content. Implementing an Artificial Intelligence algorithm is difficult. Algorithm descriptions may be incomplete, inconsistent, and distributed across a number of papers, chapters and even websites. This can result in varied interpretations of algorithms, undue attrition of algorithms, and ultimately bad science. This book is an effort to address these issues by providing a handbook of algorithmic recipes drawn from the fields of Metaheuristics, Biologically Inspired Computation and Computational Intelligence, described in a complete, consistent, and centralized manner. These standardized descriptions were carefully designed to be accessible, usable, and understandable. Most of the algorithms described were originally inspired by biological and natural systems, such as the adaptive capabilities of genetic evolution and the acquired immune system, and the foraging behaviors of birds, bees, ants and bacteria. An encyclopedic algorithm reference, this book is intended for research scientists, engineers, students, and interested amateurs. Each algorithm description provides a working code example in the Ruby Programming Language.

Silverlight: Snake Snacks Game


This is the second game example in Shine Draw. Snake Snacks is the most famous mini game in mobile world. I am sure everyone has played it before. The logic of this game is very simple and it’s not that hard to implement as well.

OpenCog - Framework to build Artificial Intelligence Programs

  •    C++

The OpenCog Framework is a platform to build and share artificial intelligence programs. It includes components for procedural and declarative knowledge representation (AtomSpace), task scheduling (CogServer), AI algorithm containers (MindAgents), connectors to instant messaging and virtual world systems, and other components. MindAgents and other add-ons explore a wide variety of AI techniques including evolutionary program learning (MOSES), natural language processing, and others.

ruby-warrior - Game written in Ruby for learning Ruby and artificial intelligence.

  •    Ruby

This is a game designed to teach the Ruby language and artificial intelligence in a fun, interactive way. You play as a warrior climbing a tall tower to reach the precious Ruby at the top level. On each floor you need to write a Ruby script to instruct the warrior to battle enemies, rescue captives, and reach the stairs. You have some idea of what each floor contains, but you never know for certain what will happen. You must give the Warrior enough artificial intelligence up-front to find his own way.

snakeos - bootable x86 snake game in rust

  •    Rust

This is the game snake, bootable on a x86_64 CPU, written completely in rust. Its foundation is following the very interesting Writing an OS in Rust blog which I would recommend everybody who is interested in this kind of stuff. Use the Makefile to build the game. The only dependencies are podman and buildah which are used to setup the build environment.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.