AIBO's Brain |
Overview
This web page tries to explain some of the details of "AiboWare", the software in AIBO's brain. I make no claims on the accuracy of the information. If you have any corrections/suggestions/questions, please email me at 'aibopet@go.to'.Open-R - NOT
AiboWare is built on Open-R which is in turn built upon Aperios. Aperios (formerly named Apertos) is a Sony proprietary operating system. Open-R is a general robot control mechanism used by AIBO as well as the RoboCup dogs. AIBO has some additional software built upon that to give the dog emotions, behaviors and learning capabilities.CPU Hardware
AIBO uses a MIPS 4000-series processor (Sony claims it is a "64-bit" processor, but it really is a 32-bit processor). AIBO has 16MB of RAM in a Unified Memory Architecture shared by the CPU and other hardware. Permanent storage is on the external memory stick (8MB or 16MB).
A Custom hardware ASIC is used for interfacing to external components, and providing a variety of interfacing and other functions. This includes:
- bus host controller for the Open-R bus
- DMAC - a DMA controller
- FBK - a multi-resoltion filter bank for the camera's video data
- CDT - an 8 channel color detection engine
- IPE - an inner product engine for helping in video calculations
- DSP - a digital signal processor for sound processing
Instincts and Emotions
AIBO has 4 Instincts and 6 Emotions in what is called the "ieModel". Interactions with the dog affect these ieModel values. Each value is in the range of 0 (low) to 100 (high).Instincts: Exercise Affection Appetite Curiosity Emotions: Joy (AKA Happiness) Sadness Anger Surprise Disgust (AKA Discontent) FearHow you interact with the dog will change the dog's mood. How the dog's emotions react in turn depends on the current behavior/mood of the dog.
For example, in one behavior mode: if the dog sees the pink BALL then the "Joy" value will go up, and the negative emotions "Sadness", "Anger" and "Disgust" will go down. Conversely, if the dog sees the color it hates (the "UNFAV" color), "Joy" will go down and "Surprise" and "Fear" will go up. The dog's instincts change in a similar fashion, but are not controlled by the dog's moods. For example, seeing the BALL increases "Exercise" and "Affection" a bit, but increase "Curiosity" a lot. Seeing the hated color does the reverse. You can use the AIBO Browser to "Chart" these instincts/emotions.
Growing / Evolution
AIBO starts out as a Newborn. After a few hours of use it grows (or "evolves") into a Baby stage. After about 8 hours of use it will grow into a Child, and so on.The stages are: Newborn, Baby, Child, Youth (or Young) and Adult.
Growing stops when the dog hits the adult stage. When AIBO evolves to a new stage, it picks one of several possible personality variants. The older the stage, the more personality variants there are.
Personality variants can be described with either a number following the stage (as in "Child#2") or with a descriptive name (as in "Rumble Child"). These descriptive names are what the AIBO developers used to describe these personality variants. There are a total of 11 possible personality variants for AIBO:
- Newborn - "Tweety"
- Baby
- Child#1 - Lazy Child
- Child#2 - Rumble Child
- Young#1 - Lazy Boy
- Young#2 - Bad Boy
- Young#3 - Good Boy
- Adult#1 - Lazy Cat
- Adult#2 - Rumble Cat
- Adult#3 - Lazy Dog
- Adult#4 - Rumble Dog Stating the obvious: In general "Rumble" personalities are more active than "Lazy" personalities. Cats are lazier than Dogs. The AIBO Browser or AIBO Trainer will show you the stage and personality of your dog. You can use the AIBO Trainer to adjust the stage and personality variant of your AIBO.
Click here to learn more about how AIBO grows/evolves.
Instinctive Behavior
Learned Behavior
In addition to the "Instinctive Behavior" that is common to all dogs with the same personality, there is "Learned Behavior". The AIBO Browser will show you the "Learned Behavior" of the dog. The AIBO Trainer can adjust this "Learned Behavior" using the "Basic Training" option. There is a debate on the AIBOard BBS (www.aibonet.com/bbs) whether AIBO learns more than this. This is still being debated.Good Touching, Bad Touching:
The top of the dog's head has a pressure sensitive switch. Depending on how long you press the switch, that determines how the dog reacts.If you press the dog's head quickly (less than .1 seconds), this is a "CLICK" and is used to get the dog's attention. If you press the dog's head slightly longer (less than .37 seconds), this is a "HIT" and is used to scold the dog. If you press the dog's head longer (more than .37 seconds), this is a "PAT" and is used to praise the dog. If you press the dog's head for longer than 5 seconds, this is a "LONGPAT" and is used to wakeup the dog after it passes out after a servo jam or being lifted or shaken.