The Player Project
The Player Project creates Free Software that enables research in robot and sensor systems. The Player robot server is a widely used robot control interface in the world. Its simulation backends, Stage and Gazebo, are also very widely used. Read more hot
Achilles is an evolution simulation based on Larry Yaeger's PolyWorld. It uses Hebbian neural networks, and an extremely simplified physical model that allows virtual organisms to interact freely in a simulated environment.
AIMLBot is a small, fast, standards-compliant yet easily customizable .NET DLL implementation of an AIML (Artificial Intelligence Markup Language) based chatter bot. It boasts cross-platform compatibility, a modular architecture, a simple and logical API, standards compliant AIML support with the option for extensions via custom tags, very small size (currently only 52k), and very fast performance (over 30,000 categories processed in under a second).
aiParts is a collection of Open Source C++ software parts that can be used to implement AI Patterns and other artificial intelligence techniques.
Aseba is an event-based robot framework that allows distributed control and efficient resources exploitation of multi-microcontroller mobile robots. It provides hardware modularity, better efficiency, and improved scalability by embedding a lightweight virtual machine in each microcontroller and providing an IDE to develop and debug the whole robot from a single place.
Backprop is for back-propagation and related algorithms including Quickprop, Delta-Bar-Delta and recurrent networks.
Blue's Neural Network Simulator (bnns) is a research tool for interactive training of artificial neural networks.
cddsolve is a double dummy bridge solver, implemented in ANSI c and licensed under the GPL. It utilizes alpha-beta pruning and minimax searching to find the number of tricks a given side can take under the assumption of optimal play.
The CellCV project is a C/C++ computer vision project that performs parallel elaboration of image sequences using the STI Cell Processor in order to achieve a speedup.
Charlemagne is a versatile genetic programming application which includes a command-line client and an interactive console mode. It features built in input-output mapping support, and is user-extensible for complex fitness evaluation in Python and Lisp.
CLARAty is a coupled layer architecture for robotic autonomy. CLARAty is a framework that promotes reusable robotic software. It was designed to support heterogeneous robotic platforms and integrate advanced robotic capabilities from multiple institutions. Consequently, its design had to be portable, modular, flexible, and extendible.
Critterding is a "Petri dish"-universe with a 3D view that demonstrates simple artificial intelligence by evolution. Critters start out with completely random brains, but will automatically start evolving into something with much better survival skills.
Crogai is an experiment to introduce some artificial intelligence in crowd behavior scenarios. This is an experimental project, a framework for research in this domain.
CTF is a multi-agent capture-the-flag framework designed for teaching artificial intelligence (AI) concepts to a large group of students.
DDLab is an interactive graphics program for researching discrete dynamical networks, relevant to the study of complexity, emergent phenomena, neural networks, and aspects of theoretical biology such as gene regulatory networks.
Emergent is a neural network simulator with a built-in scripting language which allows for the creation and analysis of complex, sophisticated models of the brain in the world.
ffnet is a fast and easy-to-use feed-forward neural network training solution for Python. You can use it to train, test, save, load, and use an artificial neural network with sigmoid activation functions. Any network connectivity without cycles is allowed (not only layered). Training can be performed with several optimization schemes, including genetic alorithm based optimization. There is access to exact partial derivatives of network outputs versus its inputs.
(commercial) FlexGA is a genetic algorithm toolbox, designed to help implement and explore evolutionary algorithms.
GAlib contains a set of C++ genetic algorithm objects. The library includes tools for using genetic algorithms to do optimization in any C++ program using any representation and genetic operators. The documentation includes an extensive overview of how to implement a genetic algorithm as well as examples illustrating customizations to the GAlib classes.
GALOPPS is a flexible, generic GA, in 'C'. It was based upon Goldberg's Simple Genetic Algorithm (SGA) architecture, in order to make it easier for users to learn to use and extend.
GEneral NEural SImulation System: a general purpose simulation platform which was developed to support the simulation of neural systems ranging from complex models of single neurons to simulations of large networks made up of more abstract neuronal components.
iqr is a simulation system for graphically designing and controlling large-scale neuronal models. Simulations can control real-world devices in real-time. It can be extended by new neuron and synapse types and custom interfaces to hardware.
Isabelle is a generic theorem prover, developed at the University of Cambridge. New logics are introduced by specifying their syntax and rules of inference; proof procedures can be expressed using tactics and tacticals.
jbpe is a back-propagation neural network editor / simulator.
langcore allow build semantic cores of different humans' and non humans' languages for text to generation and searches. Build cores of many languages and determine language of unknown text or type of file, or determination of unknown author.
Lightweight Neural Network
Lightweight Neural Network is a lightweight implementation of a neural network for use in C and C++ programs. It is intended for use in applications that just happen to need a simple neural network and do not want to use needlessly complex neural network libraries.
lilgp is a generic 'C' genetic programming tool.
The ManyEars project makes use of an array of microphones to perform sound source localization, tracking, and separation. It is designed to provide auditory capabilities to mobile robots, but it can equally be used for video conferencing or other applications. It is based on the FlowDesigner development environment.
MARIE is a robotic development and integration environment focused on software reusability and exploitation of already available APIs and middlewares frequently used in robotics.
mata is a general cellular automata/dynamata program written in C++.
Milk is a machine learning toolkit in Python. Its focus is on supervised classification. milk wraps libsvm in a Pythonic way (the models learned have weight arrays that are accessible from Python directly, the models are pickle()able, you can pass any Python function as a kernel, etc.).
Minion is a fast constraint solver. It can (try to) solve any problem which can be expressed as a list of variables and a list of constraints, for example, Sudoku. It has been used to solve problems with thousands of variables and constraints.
Modular Controller Architecture
Modular Controller Architecture is a modular, network transparent and realtime capable C/C++ framework for controlling robots and other kind of hardware. The main plattform is Linux/RTLinux, support for Win32 and Solaris also exists.
NASA Vision Workbench
The Vision Workbench has been used within NASA for a wide range of image processing tasks, including alignment and stitching of panoramic images, high-dynamic-range imaging, texture analysis and recognition, lunar and planetary map generation, and the production of 3D models from stereo image pairs. Read more
Euro-Fuzzy CLASSification: it is used for data analysis by neuro-fuzzy models. It can learn fuzzy rules and fuzzy sets by supervised learning.
NEFCON is a model for neuro-fuzzy control. It can learn fuzzy rules and fuzzy sets by reinforcement learning.
Neuro-Fuzzy Function Approximation: for approximating functions with fuzzy systems based on supervised learning.
NeuronC is a neural circuit simulation language that allows a user to construct a realistic biophysically-based model of a neural circuit (1 to 10,000 neurons) and simulate a physiology experiment on it. Recently updated (2006), the language is
now available as a fully-compiled API for C/C++ (gcc), allowing the full power of C++ classes to be applied.
NICO Toolkit is an artificial neural network toolkit designed and optimized for automatic speech recognition applications.
NICOLE is a theory or experiment that if a computer is given enough combinations of how words, phrases and sentences are related to one another, it could talk back to you.
Neural Network Fitting is a non-linear regression program based on multilayered neural network models.
OMNeT++ is a public-source, component-based, modular and open-architecture simulation environment with strong GUI support and an embeddable simulation kernel. Its primary application area is the simulation of communication networks and because of its generic and flexible architecture, it has been successfully used in other areas like the simulation of IT systems, queueing networks, hardware architectures and business processes as well.
Open RObot COntrol Software
Open RObot COntrol Software applies software patterns in C++ to achieve real-time execution of software components and provides an infrastructure to quickly integrate them in a real-time operating system such as RTAI or RTLinux, although it can be tested on normal Linux systems.
Pansophica is a Web search agent with unique neural net intelligence. Pansophica organizes and personalizes Web sites and searches. And, Pansophica makes it easier, quicker, and more fun to find Web documents than ever before.
peekabot is a versatile 3D visualization tool targeted at robotics researchers and developers. It's multi-platform, general purpose, easily extendable, scalable, and does not depend on any other frameworks to function. It also provides some functionality for interacting with your robots using the GUI. You can test your algorithms in both simulated and real environments. The only requirement is that the device can use TCP/IP.
Alife research platform to study the evolvability of different assembly-like computer languages. It's similar to Tierra and Avida but it's designed to be more general.
Polyworld is one of the earliest and one of the most sophisticated artificial worlds developed to study Artificial Life and Artificial Intelligence, using computational genetics, physiology, metabolism, neural networks, learning, vision, and behavior.
Presage (formerly Soothsayer) is an intelligent predictive text entry platform. Presage exploits redundant information embedded in natural languages to generate predictions. Presage's modular and pluggable architecture allows its language model to be extended and customized to utilize statistical, syntactic, and semantic information sources.
Python Robotics (Pyro) is a collection of classes. The goal of the project is to provide a programming environment for easily exploring advanced topics in artificial intelligence and robotics without having to worry about the low-level details of the underlying hardware. Read more
QSMM, the "QSMM State Machine Model", is a framework for development of non-deterministic intelligent state models and systems with spur-driven behavior. The framework is written in C programming language.
RebeccaAIML is an Object Oriented C++ chatter bot api/interpreter for AIML (Artificial Intelligence Markup Language) from the ALICE project. It includes comprehensive documentation and samples as well as showcases/teaches popular and recent C++ practices.
RoboCup Soccer Simulator
The RoboCup Soccer Simulator is a research and educational tool for multi-agent systems and artificial intelligence. It enables for two teams of 11 simulated autonomous robotic players to play soccer (football).
RobotFlow is a mobile robotics tookit based on the Overflow project. Overflow is a data-flow oriented architecture, similar to Simulink (Matlab) or Labview that is free (LGPL) and versatile. The visual programming interface provided in the Overflow project will help people to better visualize & understand what is really happening in the robot's control loops, sensors, actuators, by using graphical probes and debugging in real-time.
RWTH Mindstorms NXT Toolbox
RWTH Mindstorms NXT Toolbox controls LEGO Mindstorms NXT robots with MATLAB via a wireless Bluetooth connection
Sigel teaches virtual robots to walk in a physical 3D-simulation. It uses the method of "Genetic Programming" to evolve control programs for any robots that come into your mind, visualizes them using OpenGL and exports animations to Povray.
SimRobot is a 3-D kinematic robot simulator software package used for further research on autonomous robots.
Stuttgart Neural Network Simulator
SNNS (Stuttgart Neural Network Simulator) is a software simulator for neural networks on Unix workstations developed at the Institute for Parallel and Distributed High Performance Systems (IPVR) at the University of Stuttgart. The goal of the SNNS project is to create an efficient and flexible simulation environment for research on and application of neural nets.
Swarm Simulation Toolkitis a package for multi-agent simulation of complex systems.
TexLexAn allows you to drag and drop a document or a link to any Web page to analyze. The program will analyze the text, evaluate its readability, categorize the document, summarize it, and archive it.
Thinknowlogy is a program to derive the logic contained within text written in a natural language and to build a knowledge structure with it.
TinySoar is an implementation of the Soar artificial intelligence architecture that is intended to run on a memory-constrained device, like a robot.
tkCybernetics is a small graphical tool for rapidly setting up simulations of simple cybernetic systems. It was designed for didactic purpose but might be useful for the quick test of some circuit too.
URBI (Universal Real-time Behavior Interface) gives you a simple but powerful way to control any type of robot or complex system like a video game, using a convenient and easy-to-use scripting language that can be interfaced with several popular programming languages (such as C++, Java, and Matlab) and OSes. URBI is based on a client/server architecture, which give a great deal of flexibility. URBI includes powerful features such as parallel execution of commands, event programming, command tagging, and dynamic variables.
(commercial) Webots is a realistic mobile robots simulator. This software is intended for reseachers and teachers in the fields of Autonomous Agents, Computer Vision and Artificial Intelligence.
xNeoterics is a cellular automaton simulation containing agents with fixed-structure neural net brains that process input signals into responses allowing the agents to forage and interact in a changing environment of resources.
eXtensions for Scientific Computation: a language providing all features indispensible for modern numerical software development.