I want to create an axiom-action tha will enable an agent to move up or down between doors if the robot is in a lift node, and if a route connects the two lift nodes
A map which shows the structure of the building. Each node either represent a room (Rn) or a lift (Ln). The robot can either move between rooms (solid lines), or move between oors (dashed lines). The robots needs to specify the direction (up/开发者_运维知识库down) when taking the lift.
I was thinking of something like:
isRobot(r) and isEdge(e) and isLift(x) and isLift(y) and isFloor(Floor1) and isFloor(Floor2) and -(x==y) and -(Floor1==Floor2) and at(inside(r,x),Floor1) and edgeFrom(e,x,y)ad=>goUp(inside(r,y),Floor2) or goDown(inside(r,y),Floor2)
My predicates are: move(x,y)- edgeFrom(x,y,z)- at(x,y) inside(x,y)- dusting(x,y)- isClean(x)-
isRoom(x)- isEdge(x)- isFloor(x)- goUp(x,y)- goDown(x,y) isLift(x) isRobot(x)Did I formalized the action right?If not what should I do?
You should look at the PDDL and STRIPS documentations; it'll help.
http://planning.cis.strath.ac.uk/competition/
They have sample problems; so you should be able to go along.
All the best.
精彩评论