I arrived last Monday for a visit to the M-Lab in Hong Kong to find a flurry of activity surrounding OpenCog and Novamente projects. In the span of a few days, several new people would join the team working here, including staff for a Financial Markets AI predictions project and 3 new staff for Biomind, LLC, working on AI bioinformatics for Longevity Research. These were added to an already busy office including the HK video game AGI team, and the staff for a machine learning music recommendation project for Sony that began in February.
Also arriving with me that day were:
- Dingjie Wang, a M.S. student at Xiamen University who will soon join the Opencog HK team,
- Oliver “Lake” Watkins, an experienced game designer and programmer, who will be staying in Hong Kong to help develop a video game demo to showcase the work of the OpenCog team here at the M-lab,
- Eddie Monroe, an employee of Novamente from Virginia working on Brain Simulation,
- and myself, a volunteer OpenCog enthusiast from California.
We all had different purposes in coming to Hong Kong, but a shared goal of learning more about OpenCog and contributing to it’s advancement. My personal goal has been to help improve project documentation and develop a series of several brief developer tutorials to help other open-source contributors get up to speed with OpenCog more quickly.
Throughout the week, the four of us met daily with Ben Goertzel, Jared Wigmore, and Shujing Ke for presentations about the various components of OpenCog and their present usage and development in Hong Kong. We focused especially on Moses and the various components being used by the agent in the Unity3D world, including OpenPsi and the Perception Action Interface. We also had a couple creative brain-storming sessions with Lake to discuss video game ideas that could be suited to demonstrating the OpenCog game agent. On Friday, we celebrated Future Day together at an excellent Indian Restaurant. Finally, on Saturday, I got to attend TEDxHKUST where Ben spoke about radical life extension and the role AGI may play in helping us to discover therapies to stop aging.
There were several outcomes during my visit:
- It was decided that the Unity3D world, although still undergoing much development, ought to be open-sourced for other Developers to experiment with. Expect another post to this blog when that code repository has been opened to the public.
- Shujing wrote some initial documentation for setting up the Unity world.
- Shujing also developed a brand new demo to showcase the 3D mapper she’s been working on. It allows the agent to recognize a set of blocks as a single entity. The demo is available on YouTube.
- Various updates and improvements were made to the OpenCog wiki, including the addition of documentation for setting up Gephi to visualize the Atomspace, thanks to Jared’s help.
- With help from Jared, Lake, and Nil Geisweiller (via IRC), I was able to develop a patch for the MOSES executable that allows an option to output the final program as a complete Python module. That patch  will hopefully be committed to the main repository soon, pending further review. I’m not sure if this will be useful to other developers, but it was a great learning experience for me.
- We discussed various ways to grow the open source community around OpenCog, and evaluated past experiences with Google Summer of Code. This led to a decision to re-apply the OpenCog Foundation for this year as a mentoring organization.
Although I’m leaving Hong Kong, I hope to continue working with the OpenCog team remotely as I prepare materials for the Community CogCamp to be held in Los Angeles in April. This event is the next step in my plan to bring more Open Source developers into the OpenCog project. In the spirit of BarCamps and Hackathons, it will be gathering of interested software developers ready to share knowledge and work together to learn how to use and extend the tools that OpenCog offers. By that time, I also hope to have the beginnings of a ROS integration layer that will do for physical robots what the Perception Action Interface does now for the Unity3D agent. Day 2 of the CogCamp will be focused on that component.
I’m incredibly grateful to Ben and the team for welcoming me in Hong Kong, and I’m eager to continue to apply my new knowledge toward our shared goal of building thinking machines. I look forward to seeing my new friends again at AGI Conferences around the world, and maybe some of you at the LA CogCamp in April.