I've become involved in an interesting discussion group, http://groups.google.com/group/roboworld
It was started by Ben Goertzel, of Novamente. Ben is a pretty serious dude when it comes to AI (see his classic startup story: http://www.goertzel.org/benzine/WakingUpFromTheEconomyOfDreams.htm
Anyway, here is a recent post I made there, which outlines the problem we're trying to solve (at least I think it does):
----------------------------------------------------------------
[subject: "square two"]
I think we need to outline our goals for this project, so we can make reasonable implementation decisions wrt rex, opensim, and SecondLife.
Here are my personal goals -- the possibilities that motivate me to be involved.
I want to build a world where autonomous agents can be developed, either through human design, and/or through a process of artificial evolution (a subject I have been deeply involved in for a while). These agents should be able to interact, pursue goals, observe other agents, and in turn build structures and agents of their own. In short, they should have available to them every operational capability that human agents have in a SecondLife sort of environment.
However, they need something more. As humans, we have the benefit of physical embodiment in a complex, rich physical world. This embodiment endows us with a critical advantage, which is the ability to experiment, play, and learn from the bottom up. What I mean by this is that as babies, we spend a significant amount of time playing with our physical environment, learning the ropes so to speak. We build on these experiences to develop layers of abstraction, working our way up the chain of complexity to the point where we can do things like walk, manipulate objects, and eventually communicate with other humans and interact with other entities such as animals and machines.
The autonomous agents I want to (meta)create will need the same sort of ladder of complexity to climb, otherwise they will not be able to get to the heights I have in mind for them. Virtual worlds such as Second Life (as presently implemented) basically forgo the lower levels of complexity, and implement a world at a somewhat abstract level -- a level of objects, qualities, and complex transactions. This makes sense if your goal is to create an efficient simulation of the world at the level of abstraction that an adult human typically works in. Since the customer base for virtual worlds is adult (or near adult) human beings, that goal is reasonable.
We are aiming here for something quite a bit more ambitious. Not only do we want to simulate a world at the level appropriate for research into AI and artificial evolution; in addition, we want to allow humans to interface with that world as well. The problem is that our artificial entities are embodied in the simulation, while we are embodied in the real world.
There are really two possible solutions to this problem, and they are not mutually exclusive. Humans can fully embody themselves into a rich simulation (Virtual Reality), and/or the agents can embody themselves in the 'real' world (Robotics). Let's examine each solution in detail.
Virtual Reality
The holy grail of VR research (for most anyway) is to create a world so realistic that the human immersed in it can hardly distinguish it from real life. This involves not only the obvious simulation of the main senses (vision and hearing), but also tactile, vestibular, and prioperception. To really achieve this, we will need either a direct neural connection, or an extremely sophisticated (and expensive) set of technologies involving stereo vision, haptics, and some sort of gymbaled bodysuit or exoskeleton. For this to actually work in any useful sense, the lag time between the simulation and human senses and actions will need to be measured in single milliseconds. Suffice to say this is probably a long way off, and will not be available to the average consumer for at least 20 to 30 years (IMSHO). It is unlikely to ever be cheaper than an expensive consumer purchase, so it will have to provide some real value, rather than just being an
entertainment device (though I suppose folks do pay dearly for some entertainment). Anyway, it's not around the corner, technically speaking.
On the other hand, it is quite possible that a level of immersion that goes beyond today's joystick interface could arrive sooner. Technology is afoot that could allow you to virtually mimic your upper body and facial motions in an avatar. I've mentioned before that even this level of VR immersion will require some major retooling of the virtual world interface, to support direct avatar control as opposed to canned animations.
Robotics
For two years now, I've worked full time on bipedal legged locomotion and manual manipulation with human-sized robots. It's really, really hard. I have become much more impressed with biology and evolution than I ever was before. The fact is, building capable robots is really difficult. Most of the work I do is in fact in simulation, because at least there I can depend on the robot working consistently from one day to the next, and I can run hundreds and thousands of simultaneous simulations in the time it takes to do a single experiment on the real robot. I can say with confidence that we are still at least a decade away from truly human-capable machines, even simply on the mechanical and power train front, much less control and autonomy.
Yet, there are interesting products such as Ugobe's Pleo that redefine what is possible today at an economical scale. Kits such as Lego and the RoboOne class of mini-bipeds are bringing physical embodiment of smaller robots with limited but interesting capabilities into homes and schools.
The other interesting development in robotics is the increasing use of simulation. Every serious robotics project I am aware of in the last 10 years (and perhaps longer) has used some level of simulation as part of the design process. Microsoft has a popular product, and there is a large community using open-source tools such as Player/Stage/Gazebo. In my case, my experience writing a robotic simulator using ODE allowed me to contribute to the OpenSim codebase, which relies on ODE to perform its physics calculations.
Putting It All Together
The point of intersection between these two disciplines is the use of physics simulation technology to mimic the behavior of objects and materials found in the real world. Right now, there's a bit of an 'impedance mismatch', in that the use of physics in popular virtual worlds such as Second Life and RealXtend is much more limited in its granularity of realism than what is typically required to do actual robotic-level simulation. More than just an issue of efficiency and scale, there are deep architectural differences between how the two disciplines have evolved. Making them play nice together is going to take some work.
I've got some further thoughts about how to get there from here, which I will put in another post.
-danx0r
Wednesday, July 02, 2008
Subscribe to:
Post Comments (Atom)
The Road to Artificial Reality
0 comments:
Post a Comment