by Brian Tomasik
First written: 23 Jul. 2014; last update: 4 Dec. 2014
This page describes a few artificial intelligence (AI) projects and gives my own commentary on them based on a cursory review. I particularly focus on ethical implications, including whether these AIs should be thought of as at least slightly sentient. This list is by no means comprehensive; it's just a collection of projects that I've learned about or played around with.
Ordinarily I'm a big promoter of Wikipedia. I suggest that if you plan to summarize information about a topic, you should probably do so on Wikipedia rather than elsewhere, because on Wikipedia the information will be centralized in one spot rather than scattered across random pages on the web.
However, when it comes to discussing technical details of AI projects, I become worried about contributing to Wikipedia. Adding information about specific AI details seems like it might benefit people working to build AI as much as public audiences seeking to understand AI. As a result, such contributions might increase the speed of AI development at least as fast as the speed of understanding AI by civil society. Because it's plausible that we should want AI to develop more slowly, it's not clear if highly technical Wikipedia contributions on AI are good or bad on balance. They have both good and bad consequences, so I doubt such contributions have dramatic impact either way, but I'm not sure they're positive either.
As a result, because I want to write about some AI projects, I decided to do so on my own website instead. Writing here will also allow me to inject my opinions on ethics in addition to briefly summarizing the projects.
More complete lists of AGI projects
- Cognitive-architectures category on Wikipedia.
- List of cognitive architectures on Wikipedia.
- "Representative AGI Projects" by Pei Wang.
This project simulates artificial animals (animats) using biologically plausible physics, biomechanics, and neural networks. I am really impressed with how realistic and functional these simulations are. As can be seen from the source code and the sample videos on the home page, the neural networks that control animats include a level of detail down to specific electrical behavior and parameters of individual neurons. For instance, here are various C++ files for firing-rate neurons. The introductory videos show how neurons can be put together to generate sophisticated animat behaviors, which I found extremely enlightening and well worth watching.
One of the videos features simulated predation by a frog-like creature on a fly-like creature. The fly-like creature moves mostly randomly and doesn't respond aversively to being eaten from. This is good. However, it's easy enough to imagine augmenting this simulation with damage signals and escape behaviors by the fly-like creature, at which point the simulation would begin to become morally worrisome, at least to a tiny degree. Alas, animat simulations of the future will include this level of detail and beyond.
OpenCog is one of the more impressive AGI projects I've seen because it's meant to be a robust software product rather than just a system good enough for publishing academic papers. It's built by some real programmers using good coding practices. It's also fairly ambitious and combines together a lot of components.
Despite the seeming technical competence of the project, it has an absurdly optimistic proposed timeline for reaching AGI. I don't know if this is because
- The team has non-standard meanings of AGI. In a certain poetic sense, computers can already do lots of human tasks and will be able to do more in the near future.
- The team wants to fuel enthusiasm by making aggressive predictions.
- The team is simply misguided.
Regardless, I think Ben Goertzel and the OpenCog developers are very smart and have a solid grasp on cognitive and computer sciences.
One feature of OpenCog is OpenPsi, an implementation of Joscha Bach's MicroPsi. It models emotions in a simple way. Bach's proposal gives rise to emotions as emergent properties of lower-level component tendencies. We can compare this with other efforts to categorize emotions and show how they may emerge from smaller parts.
Includes a number of learning algorithms written in Python -- including supervised, unsupervised, and reinforcement -- as well as optimization methods. Some of the algorithms are based on neural networks. The reinforcement-learning algorithms in particular may raise a tiny bit of ethical concern.