GSoC/GCI Archive
Google Summer of Code 2009

OpenCog sponsored by the Singularity Institute for Artificial Intelligence

Web Page:

Mailing List:

The Singularity Institute for Artificial Intelligence (SIAI) is a non-profit organization founded in 2000 to develop safe artificial intelligence software, and to raise awareness of both the dangers and potential benefits of artificial general intelligence technologies. The SIAI sponsors numerous research projects, both theoretical and applied, and structures applied research under the umbrella of The Open Cognition Project (OpenCog). OpenCog is software for the collaborative development of safe and beneficial Artificial General Intelligence, and aims to provide research scientists and software developers with a common platform to build and share artificial intelligence programs.


  • Distributed and Persistent AtomSpace I will be using a BigTable to create persistent storage for AtomTable. This will first require linking to the BigTable to implement a simple save/load API for Atom Handles. I will then use that implementation to provide just-in-time data persistence for AtomTable. That is, AtomTable will be modified to, in conjunction with the ECAN system, maintain in memory only those atoms which are currently most important. This will relegate the AtomTable into an AtomCache of the larger, persistent BigTable.
  • Extending MOSES to evolve Recurrent Neural Networks MOSES has outperformed GP on several tasks. Because RNNs are difficult to evolve for many of the reasons that program trees are difficult to evolve, extending MOSES for RNNs may result in an algorithm that is more effective than current GA + NN techniques. Doing so will require extensions to Combo and Reduct that will be applicable to continuous domains in general even if MOSES does not extend well to RNNs as anticipated.
  • Improved hBOA by integrating the BBHC and implement the simulated annealing algorithm MOSES is the cognitive plugin of Opencog Framework, and it plays an important role in the Opencog. The hBOA is used to generate the promising programs as optimal algorithm in MOSES. But it is not the optimal one in this context. Therefore, to improving the efficiency of the optimal algorithm in MOSES is very important and meaningful. The BBHC and simulated annealing algorithm are suitable to be integrated into the MOSES. These integration work would make MOSES better and smarter.
  • Integration of Language Comprehension with Virtual Agent Control in OpenCog OpenCog has recently been given the capability to control birtual dogs and humanoids in the RealXTend and Multiverse virtual worlds. OpenCog-control agents can learn new behaviors via imitation and reinforcement. OpenCog also has a language comprehension system (RelEx) associated with it. The project I propose is to integrate these components so that the OpenCog-controlled virtual agents can comprehend simple language pertaining to their environment.
  • Natural Language Generation using RelEx and the Link Parser The task of this project is to generate natural English sentence(s) using RelEx [1] and the Link Parser [2]. Ideally, when we input the RelEx relationships produced by applying RelEx to a sentence, the NL generation system will generate one or more natural, well-formed sentence(s), which have the same meaning as the original sentence.
  • Neurobiological data analysis in OpenBioMind OpenBioMind is an open-source port of BioMind, a software package for applying AI techniques to large databases of biological data. It is already a powerful tool for geneticists. However, it need not be limited to analyzing genetic datasets. Neurobiologists are also generating large datasets, available in databases such as the Allen Brain Atlas, GENSAT Project, Mouse Brain Library, and BrainMap. I propose to extend OpenBioMind to analyze these neurobiological data.
  • Python Interfaces For OpenCog Framework API My goal is to create an intuitive Python interface to the OpenCog framework via the creation of Python language bindings and interactive shell. The purpose of such interfaces is to ease programming for the OpenCog framework, accelerating the development A.I. . Once such interfaces are complete, they will allow one to easily write programs/applications that make use of the OpenCog framework using only the Python programming language, with no knowledge of C++ required.
  • Statistical Learning and Refinement of RelEx Graph Transformation Rules RelEx, a component of OpenCog, is a semantic relationship extractor. Each incoming sentence to RelEx is represented as a graph. The main engine of RelEx transforms this graph in an incremental fashion using the rules. The current graph transformation rules are hand-generated. Hand building such rules takes lot of man power, money and time. Here we present a plausible approach to learn and refine these rules automatically using corpus statistics.