Friday, November 25, 2016

December 5 - 10: GoodAI team at NIPS 2016 in Barcelona

Today I’m writing to let you know that my colleagues and I will be attending the Neural Information Processing Systems conference (NIPS 2016) in Barcelona,  December 5 - 10.

This year we will be participating in two workshops:
  • Neural Abstract Machines & Program Induction (NAMPI), Saturday, December 10th
    • My colleagues Sungmin Aum, Joseph Davidson, and Josef Strunc will present a poster about their work on Gradual Program Induction.
  • Machine Intelligence workshop (MAIN@NIPS), Friday, December 9th
    • My colleague Jan Feyereisl will be part of a panel on basic requirements for machine intelligence with Angeliki Lazaridou, Katja Hofmann, Brenden Lake, J├╝rgen Schmidhuber, Arthur Szlam, Rudolf Kadlec, and Armand Joulin.
    • Jan will also present our thoughts on consolidating the search for general AI, and briefly introduce:

    After the MAIN@NIPS Workshop, I would like to invite everyone interested in discussing the General AI Challenge and the AI Roadmap Institute to a party in one of the restaurants near the conference venue at 7pm, Friday, December 9th. The exact location will be confirmed several days ahead - stay tuned to our social media channels.

    We are looking forward to meeting our friends and fellow researchers at NIPS! Feel free to reach out in case you would like to catch up with us there in person.


    Read all about GoodAI’s latest achievements, technology, and initiatives on our website

    Marek Rosa
    CEO, CTO of GoodAI
    CEO of Keen Software House

    Thursday, November 24, 2016

    Space Engineers: Public Multiplayer Evaluations Started!

    You may know about our internal competition to rework the Space Engineers multiplayer as mentioned in my previous blog post. Our progress is now at a state where players can directly help us evaluate the new multiplayer prototypes. Today we have for you not one, not two - but three multiplayer prototypes!

    These multiple versions have been created by three different teams (two internal teams and one external team) with each one trying to solve the multiplayer from alternate perspectives, employing different methodologies.

    We need your help to work out which one of these three will provide the best multiplayer foundation moving forward... In the following weeks, we will publish a survey for you to give feedback and comments based on your experience with the different versions.

    The team that wins this competition will receive 1 million CZK (~40,000 USD) from me.

    The multiplayer prototypes are code-named “Rock”, “Paper” and “Scissors” and can be accessed via the Betas tab in Steam. (for detailed guide go here)
    You can switch from one build to another at any time - which will allow you to compare them. Saves are not compatible between the different prototype builds, but you can use saves from our live builds in any of them.

    We know that our Space Engineers community is passionate, you guys care about the game a lot and have been calling for new multiplayer code for a long time. We heard you loud and clear – so now rally your fellow engineers together, get testing and help us make Space Engineers the best multiplayer game out there! ;)

    Marek Rosa
    CEO of Keen Software House
    CEO, CTO of GoodAI

    Monday, November 21, 2016

    GoodAI Releases Arnold Simulator Alpha


    In Brief

    • GoodAI is releasing an alpha version of its prototyping and simulation software called Arnold Simulator on GitHub
    • Arnold Simulator focuses on dynamic neural network topologies and provides transparent scalability to large computer clusters.
    Today we are releasing an alpha version of Arnold Simulator. The purpose of this release is to let the community know what we are working on, get feedback and allow others to start experimenting with our platform. Note that while we intend Arnold Simulator to be used for rapid prototyping, the current version implements mostly only the core simulation concepts. It is very much work in progress, and we haven’t started using it in our research team yet.

    What is Arnold Simulator?

    Arnold Simulator is a software platform designed for development of AI systems with highly dynamic neural network topologies. The software will provide tools for our research and development, but it is also designed for high performance and is transparently scalable to large computer clusters.

    Arnold Simulator is the next generation of GoodAI in-house prototyping software. It follows in the steps of GoodAI's Brain Simulator, which focuses more on the standard machine learning algorithms. We’re designing it for large, highly dynamic, heterogeneous and heterarchical networks of lightweight actors, and with a focus on concurrency, parallelism and low-latency messaging.

    A note on Brain Simulator: we are planning to release an update next month. Stay tuned. But let’s focus on Arnold Simulator release for now.

    What is in this release?

    We’re releasing the source code on GitHub, no binaries are being released. The readme file in the GitHub repository explains the programming model, and there are two example projects included in the sources. For quick introduction into how the UI works and how it is linked to the core, we’ve prepared a short demo video:

    Technical Parameters

    Arnold Simulator consists of a simulation core and a user interface (UI) client. The core is targeted to run on a network of computers with GNU/Linux or MS Windows operating systems. For now, the UI is for MS Windows only. Both the core and the optional UI need to be compiled from the sources using the how-to instructions provided with the sources.

    For concurrency, we're using the actor model, where independent actors communicate via messages. The simulation runs in discrete time-steps, during which the individual actors are processed in parallel. In between simulation steps, the system can interact with any virtual or real environment via sensors and actuators. The design of Arnold Simulator will allow us to effectively implement the growing general AI architectures that we are focusing on.

    Arnold Simulator is designed with the following assumptions in mind: the network is composed of heterogeneous elements, it can be manipulated to the granularity of individual elements, it can be growing or shrinking all the time on the granularity of individual elements, and it can be so large that it will not fit the memory of a single machine. This set of assumptions naturally leads to dynamic load balancing of migratable actors communicating via asynchronous messages.

    Arnold Simulator is based on Charm++, a parallel computation library which implements the actor model and has built-in load balancing that migrates actors across processing units. We intend to try coupling this technology with the latest manycore processors which we hope will allow us to scale the simulation up to millions of actors and billions of connections per machine. A preliminary check of a distributed simulation was successfully done on a cluster of 10 computers with a total of 40 CPU cores.

    The design allows for a large number of synapses per neuron, so we’ve designed the synapses to be as small as possible. Instances of neurons in our testing models take over 3 kB of memory, while synapses fit into just under 200 bytes. That means we can fit a simulation of 1 million neurons and 5 million synapses into 4 GB of memory.


    Arnold Simulator source code is licensed under Apache License version 2.0; however, it depends on the Charm++ library which has more restrictive license than Arnold Simulator itself. You are allowed to use Charm++ for research and for internal business purposes for free, but you need a special agreement with Charm++ authors for commercial distribution and use. The library is not distributed with Arnold Simulator, however you need to obtain it to build Arnold. Therefore, Charm++ license terms apply to Arnold Simulator binaries. See Charm++/Converse license or contact Charmworks for details.

    We look forward to receiving your input! please don't hesitate to get in touch at
    Read all about GoodAI's latest achievements, technology, and initiatives on our About page:
    Marek Rosa
    CEO, CTO of GoodAI
    CEO of Keen Software House

    Thursday, November 3, 2016

    GoodAI Framework + R&D Roadmap Now Available for Public Review

    Today I’m writing with good news from GoodAI – we have published the first iteration of our Framework and Roadmap, and are looking forward to feedback from the scientific community and public as a whole.

    In this post, learn more about
    1. Framework: describes how we understand intelligence, and provides tools for studying, measuring, and testing various skills/abilities
    2. Roadmap: an ordered list of skills/abilities (some are intrinsic, other are learned) our general AI needs to accumulate in order to achieve human level intelligence
    3. Where to download these documents and how to send us your feedback

    GoodAI has several areas of concentration in addition to the Framework and Roadmap, including the School for AI, Growing Topology Architecture, Arnold Simulator, AI Roadmap Institute, GoodAI Consulting, and more. Read about them here.
    Our work takes inspiration from a number of sources across a variety of disciplines, from AI Safety to Machine Learning and more. Read more about our research inspirations here.

    Our main building principles include the gradual acquisition of skills, recursive self-improvement, and curriculum learning - teaching an agent the right skills in a gradual and guided manner.


    We view intelligence as a tool for searching for solutions to problems. The guiding principles of our AI research revolve around an AI which can accumulate skills gradually and in a self-improving manner (where each new skill can be reused and improved in the accumulation of further skills). Each new skill works like a heuristic that helps to guide and narrow the search for problem solutions. Some heuristics even increase the efficiency of the search for additional heuristics.

    These principles have inspired our framework document, which describes how we understand intelligence and which provides tools for studying, measuring, and testing various skills and abilities. The framework itself aims to be as implementation agnostic as possible, without regard to particular learning methods or environments. It provides an analytic, systematic, and scalable way to generate hypotheses that are possibly relevant in the search for general AI. 


    The research roadmap is an ordered list of skills and abilities (some are intrinsic, other are learned) which our AI will need to be able to acquire in order to achieve human level intelligence. Each skill or ability represents an open research problem and these problems can be distributed among different research groups either internally at GoodAI, or among external researchers and hobbyists.
    New skills very often depend (build on) previously acquired skills, and so the research milestones exhibit some intrinsic dependencies. We cannot simply skip to an ability in the middle of the roadmap and start implementing it. Instead, each skill is like a stepping stone to the following skill.

    The roadmap has two parts – architecture and curricula. You can find more information in the roadmap diagram.

    The roadmap is a living document which will be updated as we work towards the milestones and evaluate them within the framework document. The current version of the documents is early-stage and a work in progress. We anticipate that more milestones and research directions will be added to the roadmap as our understanding matures.
    Download the first iteration of our Roadmap

    Goals of Public Release

    We're reaching out today to AI researchers, scientists, and the public as a whole in the hopes of opening conversation about general AI and persuading others of the importance of big picture thinking in the AI research field. In the past year, the GoodAI team has focused on a wider scope of AGI research, and publishing our Framework and Roadmap is one way we aim to increase transparency and cooperation in the AI and general AI community.

    We look forward to receiving your input! Please don’t hesitate to get in touch at


    Read all about GoodAI’s latest achievements, technology, and initiatives on our About page: 
    Marek Rosa
    CEO, CTO of GoodAI
    CEO of Keen Software House