Semantic Engine - What NAO knows ¶
|Prerequisite : Autonomous Life : ON - Basic Channel : ON|
Semantic Engine is an experimental feature, it is not active by default. To activate it, use _enableSemanticFallback method of ALDialog.
NAO can learn! ¶
Thanks to his Semantic Engine , NAO is able to:
- keep in mind some information,
- acquire new information, and
- use this knowledge in order to answer your questions and requests.
For now, NAO has a short-term memory, persistent from startup to shut-down. He will forget all his knowledge each time he reboots.
Test NAO’s ability to learn ¶
When chatting with NAO , try to make some simple assertions, then question him.
Human: Paul likes to play video games. Human: what does Paul like? Robot: Paul likes to play video games.
You can also use “I” and “you”.
Human: I like chocolate. Human: what do I like? Robot: You like chocolate.
You can change your mind!
Human: Paul likes to play video games Human: what does Paul like? Robot: Paul likes to play video games. Human: Paul doesn't like to play video games Human: what does Paul like? Robot: Paul likes nothing particular.
NAO is able to follow conditional assertions.
if/when/whenever <condition> , <affirmation>
Human: If Paul likes chocolate, Paul likes banana Robot: OK, Paul likes the banana if he likes chocolate. Human: Does Paul like banana Robot: I don't know if Paul likes the banana. Human: Paul likes chocolate Human: Does Paul like banana Robot: Yes, Paul likes the banana.
Question NAO about his perceptions ¶
You can question NAO about his perceptions.
<the human doesn’t touch NAO’s left hand>
Human: is your left hand touched? Robot: No, my left hand is not touched.
<the human touches NAO’s left hand>
Human: is your left hand touched? Robot: Yes, you touch my left hand.
Train NAO ¶
On your request, NAO is able to perform some basic actions.
Human: raise your left hand.
<NAO raise his left hand>
For further details, see: Make NAO move .
You can also teach him new actions.
<infinitive command to define> means <set of infinitive(s) command(s) to do>
Human: to salute means to say hello Robot: OK, to salute means to say hello. Human: salute Robot: Hello
NAO is also able to learn how to react in some circumstances.
if/when <condition> , <command>
Human: if I am happy, raise your left hand Robot: OK, I will raise my left hand if you are happy. Human: I am happy <robot raises his left hand> Human: I am happy <robot doesn't raise his left hand>