Sunday, February 26, 2012

Re: Questions on Project 2

Hi Srijith,

1. Yes, it supports preconditions. The problem with UMTS is the "or" that is present in that precondtion line that you've pasted below - Sapa Replan doesn't support those. Right now, if you want an action that supports 'or' kind of semantics, you have to implement it as two different actions with no 'or'.

More generally, for things of the nature of connected, if you don't want to manually encode (a conn. b) <-> (b conn. a), then you can think about some kind of 'domain axiom' action that fires and gives that effect. That is one way, the other of course is to just manually encode it.

If you are downloading the IPC3 domains, you might want to try something from the "Tests1" or "Tests2" suite. "Tests3" may not always work. Also, please stick to the "Strips" sub-folder (since the others have some features that Sapa Replan may not currently support, and that we don't need for this project).

2. Yes, you can give in object types as parameters. See the sample files for examples. Not too sure what your question is ... if you mean "can I use one action for reporting in both rooms and hallways", yes, you can. Think about the line where I said they are both subtypes of the larger 'location' type. Does that help?

Thanks.


On Sun, Feb 26, 2012 at 1:10 AM

1. Does the planner jar you gave us support in preconditions? I seam to get error on the ones that is available in http://planning.cis.strath.ac.uk/competition/domains.html (UMTranslog-2)
Here is my code:
:precondition (and (at ?p) (or (connected ?h ?p) (connected ?p ?h)))

Output:
Exception while parsing domain robby!
edu.asu.sapa.parsing.ParseException: Encountered "(" at line 13, column 29.
Was expecting:
   ")" ...

       at edu.asu.sapa.parsing.PDDL21Parser.generateParseException(PDDL21Parser.java:4230)
       at edu.asu.sapa.parsing.PDDL21Parser.jj_consume_token(PDDL21Parser.java:4109)
       at edu.asu.sapa.parsing.PDDL21Parser.AllIConditions(PDDL21Parser.java:1063)
       at edu.asu.sapa.parsing.PDDL21Parser.InstantAct(PDDL21Parser.java:1139)
       at edu.asu.sapa.parsing.PDDL21Parser.Action(PDDL21Parser.java:843)
       at edu.asu.sapa.parsing.PDDL21Parser.ActionList(PDDL21Parser.java:835)
       at edu.asu.sapa.parsing.PDDL21Parser.parse_domain_pddl(PDDL21Parser.java:62)
       at edu.asu.sapa.Planner.main(Planner.java:73)

It works if I change to and instead of or.

2. Is there a way to give or in the parameters? For example Report needs to take in room and hallway. Currently I solved it using two actions report-room and report-hallway. I feel there should be a better way.


I checked the tutorials you had attached in the bottom of the project description. I couldn't find direct answer to my question there which is why I am mailing you.


Regards,
Srijith Ravikumar


No comments:

Post a Comment