Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Planning actions for new robocup scenarios #126

Closed
argenos opened this issue Mar 15, 2019 · 8 comments
Closed

Planning actions for new robocup scenarios #126

argenos opened this issue Mar 15, 2019 · 8 comments

Comments

@argenos
Copy link
Contributor

argenos commented Mar 15, 2019

For some of the SDP projects, I would like students to develop missing skills or actions. Could you please add a list here of the things you have come up so far? Please add to which scenarios they belong in case we have too many, this will help with prioritization.

Related to #105, #106, #107, #108, #110.

@robertocaiwu
Copy link
Contributor

robertocaiwu commented Mar 16, 2019

Related to the Take out the garbage task [#110]:

@argenos
Copy link
Contributor Author

argenos commented Mar 20, 2019

@rhasel4s @henrikschnor @PatrickNa the deadline for this is Friday, has there been any progress? I still need to work on the proposals a bit after you guys suggest them.

@henrikschnor
Copy link
Contributor

I'm not sure which scope those SDPs are supposed to have, but here are some things that need to be done for "serving drinks":

  • Detect all people in a room
  • Detect faces of (detected) people and remember them (there might already be some code for the detection part here)
  • Recognize what a person is holding in their hands
  • Create an action/behaviour for picking up specific objects

@rhasel4s
Copy link

Hey, besides the actions or skills we could need a JSHOP2 dispatcher for ROSPlan. At the moment we are using the standard dispatcher which has a slightly different plan representation. At the moment shop is modified to generate the plan in the same way the popf planner does.

Otherwise @henrikschnor @robertocaiwu and @PatrickNa have already defined the skills needed for the tasks.

I think at one point we should discuss about what each skill is doing and the naming of the operators and predicates for the preconditions, add and delete actions they will add to the KB, these should also be defined so that the students stick to these conventions, this will save a lot of refactoring once they get integrated.

@argenos
Copy link
Contributor Author

argenos commented Mar 21, 2019

naming of the operators and predicates for the preconditions, add and delete actions they will add to the KB

Let's add that to this discussion thread, so I can refer back to it when writing the proposals.
Could you maybe add those for the actions that are already listed?

@rhasel4s
Copy link

Operator Precondition Delete Add
move_base (waypoint ?to)
(robot_at ?robot ?from) (robot_at ?robot ?to)
open_door (robot_at ?robot ?waypoint)
(door ?door)
(door_status ?door closed)
(door_status ?door closed) (door_status ?door open)
perceive_plane (robot_at ?robot ?waypoint)
(belongs_to ?plane ?waypoint)
(perceive ?plane ?waypoint)
(perceive ?plane ?waypoint) (perceived ?plane ?waypoint)
pick (robot_at ?robot ?waypoint)
(plane ?plane)
(perceived ?plane ?waypoint)
(belongs_to ?plane ?waypoint)
(on_plane ?object ?plane)
(store_object ?object)
(emptyGripper ?robot)
(on_plane ?object ?plane)
(store_object ?object)
(emptyGripper ?robot)
(holding ?robot ?object)
place (perceived ?plane ?waypoint)
(belongs_to ?plane ?waypoint)
(holding ?robot ?object)
(holding ?robot ?object) (emptyGripper ?robot)
(on_plane ?object ?plane)
locate
explore
...

i started with the once we allready use in the domain.

@alex-mitrevski
Copy link
Member

@rhasel4s The client of perceive_plane does more than what you have in the table: for each object, an on(object, plane) and object_category(object, category) predicates are added + the plane is marked as explored. Also, before perceiving, all objects on the plane are deleted from the KB. Implementation here. The other actions match what we have.

@rhasel4s
Copy link

ok, i add those things, we should then progress with the explore and locate behaviour.

  • explore - would be exploring something unknown like a room, piece of furniture or whatever.

  • locate - would be identifying an object at specific location.

so explore would mostly also include the locate action, but the locate action can be used when we already know the location but not the exact position.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants