Pogamut 2 Platform for fast development of cognitive agents inside 3D environment - PowerPoint PPT Presentation

About This Presentation
Title:

Pogamut 2 Platform for fast development of cognitive agents inside 3D environment

Description:

Pogamut 2. Platform for fast development of cognitive agents inside 3D environment. Creating JavaSPOSH bot project ... Freshly created project is containing: ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 20
Provided by: artemisM
Category:

less

Transcript and Presenter's Notes

Title: Pogamut 2 Platform for fast development of cognitive agents inside 3D environment


1
Pogamut 2 Platform for fast development of
cognitive agents inside 3D environment
Faculty of mathematics and physics Charles
University at Prague 16th April 2008
  • Creating JavaSPOSH bot project pitfalls
  • (S)POSH
  • Reimplementing bots with SPOSH

http//artemis.ms.mff.cuni.cz/pogamut
2
JavaSPOSH bot project
Select correct project type and read the
description!
http//artemis.ms.mff.cuni.cz/pogamut
3
JavaSPOSH bot project
  • Freshly created project is containing
  • Main.java main class that fires up the bot,
    containing path to the sposhPlan.lap (need to be
    configured! next slide)
  • MyBehavior.java descendant of Behavior,
    containing actions and senses (implementations
    done here)
  • sposhPlan.lap file containing SPOSH plan
    (decision tree of the agent)

4
Running empty JavaSPOSH bot
  • Not as easy as with JavaBot project.
  • 1) were still have some nasty problem with
    build.xml (Ant script file firing the agent up),
    may be already corrected
  • 2) some project names gives the Python engine a
    headache
  • 3) you have to correctly specified the path to
    the sposhPlan.lap file (for SPOSH-engine)

5
JavaSPOSH bot project Pitfall 1
3) Were still have some troubles with
build.xml file 4) Take build.xml file from any
Java Bot project (replace JavaSPOSH one with
it).
2) No bot is running
1) Even though BUILD is SUCCESSFUL
http//artemis.ms.mff.cuni.cz/pogamut
6
JavaSPOSH bot project Pitfall 2
2) Bot failed to run
3) Python engine has tried to interpret \abc as a
character and broken the path to the planfile
1) Even though BUILD is SUCCESSFUL
http//artemis.ms.mff.cuni.cz/pogamut
7
JavaSPOSH bot project Pitfall 2 solution
DO NOT create projects with names that begin with
a, b, c, d, e, f otherwise the Python engine
will interpret \abcYourName as \abcYourName
converting \abc to a wrong character and breaking
the path. Project name ABC is WRONG Project
name JavaSPOSHTest is OK
http//artemis.ms.mff.cuni.cz/pogamut
8
JavaSPOSH bot project Pitfall 3
3) Because it couldnt find the sposhPlan.lap file
2) Bot has failed to run
1) Even though BUILD is SUCCESSFUL
9
JavaSPOSH bot project Pitfall 3solution
  • Step-by-step
  • 1) open Main.java file and find getPlanFile()
    method
  • 2) change PROJECT_NAME and package_name
  • in this case to
  • JavaSPOSHExample and javasposhexample

10
JavaSPOSH bot project Bot is running
Congratulations!
11
POSH parallel ordered slip-stack hierarchy
  • Dr. J. J. Bryson, University of Bath, UK
  • http//www.cs.bath.ac.uk/jjb/web/posh.html
  • reactive planner
  • not fully reactive, you may store whatever
    variable in your Behavior
  • SPOSH Strict POSH
  • more or less a decision tree with slip-stack
  • working with Behavior class that is containing
  • actions and senses

http//artemis.ms.mff.cuni.cz/pogamut
12
POSH parallel ordered slip-stack hierarchy
  • Agent has
  • goal to fulfill
  • were running endlessly so the goal is fail
  • ordered drives
  • evaluated each POSH-engine iteration
  • competences
  • action patterns
  • Using (defined in Behavior)
  • senses gives information from the environment
  • actions primitives

http//artemis.ms.mff.cuni.cz/pogamut
13
POSH parallel ordered slip-stack hierarchy
http//artemis.ms.mff.cuni.cz/pogamut
14
POSH Syntax for HC people -)
http//artemis.ms.mff.cuni.cz/pogamut
15
POSH parallel ordered slip-stack hierarchy
Notice the corespondency between action / sense
names in plan file and names of the methods in
java source code.
http//artemis.ms.mff.cuni.cz/pogamut
16
Java SPOSH bot project Implementing actions /
senses
Implemented inside MyBehavior.java Java
Reflection API is used.
File MyBehavior.java
  • every action has prefix action_
  • every sense has prefix sense_
  • both are always without parameters, both HAS
  • to return a boolean (success)
  • memory and body accessible through
    bot.getMemory()
  • and bot.getBody() inside MyBehavior.java

17
Java SPOSH bot project When the bot fails to run
1) Bot builds ok 2) But fails to run 3) Examine
Platform Log 4) Look for SEVERE entry with Cant
instantiate SPOSH agent 5) Read the reason
here, weve got error in plan syntax
18
Java SPOSH bot project How to test, how it works
  • Download the JavaSPOSHExample bot from the
    webpage.
  • Where is the trick? Every action / sense that is
    firing is logging into User log that it fires.
    Youre free to examine how the SPOSH engine works
  • Some hints
  • SPOSH engine first schedules some action / action
    pattern to be executed
  • Then it executes all scheduled actions (e.g.
    action pattern will schedule more then one action)

19
Java SPOSH bot project Remember FollowBot?
Now the time has come! To become The One Do you
remember FollowBot from the second lecture? Good!
Go and implement it using JavaSPOSH bot
project. Good luck!
Write a Comment
User Comments (0)
About PowerShow.com