-
Notifications
You must be signed in to change notification settings - Fork 88
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
PDDL Trajectory Generation in ProcTHOR #125
Comments
@pushkalkatara, if ProcTHOR doesn't support receptacles or object interactions, then most of the ALFRED code+dataset might not be useful for you. You need the PDDL planner if you want solve tasks that involve interacting with the environment, but otherwise for navigation, a simple A* planner would be sufficient. Hope this helps! |
@MohitShridhar Thanks for the prompt response. I think procTHOR does support object interactions, it also has a baseline for rearrangement. Probably the design of how interaction (
but doesn't support |
oh cool! yeah, you probably have to followup with procTHOR folks on this. The 2.1.0 version we used for ALFRED is almost 3 years old, so it probably won't gel with the new API. |
Sure, thanks for the suggestions. |
Hi @MohitShridhar, I made changes with respect to the new ai2thor API supported by procTHOR, the data generation code seems to work now. I generated a few layouts using the modified script, and trying to generate data with the modified generate_trajectories script. I am able to generate trajectories for some tasks like:
However, there are many failure cases like:
Are these expected to fail? How should I go about debugging these? |
We utilized rejection sampling during the generation of ALFRED trajectories. Some scene initializations just aren't compatible with the sampled task (e.g., if you're supposed to put a fork in a cup, but there's already a fork in a cup by random object starting positions). Other times navigation fails, objects are out of reach, etc. Very expected for many generated trajectories to fail before completion. You can twiddle with the PDDL and execution to increase the success rate, but the generated scenes will sometimes just have conditions that can't be overcome (e.g., you need a particular plate, but the plate is on a low shelf where the agent can't see/reach from any angle). |
Thanks for clearing out. How should I go about tweaking PDDL and execution to increase the success rate? What would be a baseline success rate? I'm basically trying to understand if the failure roots to scene configuration, object placements, simulator-API parameters, or something else. I tested on a single procthor Kitchen environment. Stats were: Successful: 88 The trajectories didn't have task distributions related to:
Most of these tasks were failing due to one such instance:
|
You're integrating a newer version of AI2THOR, so your guess is going to be as good as ours for how to go about fixing bugs as they arise. I can see some deprecation warning in the transcript you provided; that's probably a reasonable place to start. We're not going to have useful info about rejection sampling rates since you're working in a new space with a new version, though. This extension is a cool idea, but it's out of the scope of "maintaining the ALFRED benchmark codebase", which is what we still do here :) |
Yes, I am basically trying to backtrack through scene configurations in procthor scenes which might be a probable reason for pddl plan failure. Probably the failures relate to how objects are arranged in a scene and the agent's visibility. this might give some direction. thanks for the suggestions. Regarding the success rate, I was referring to PDDL plans success rate in alfred scenes just to get a raw idea of % how many generated plans are executed in the environment. |
Hi, Thanks for the amazing dataset.
I wanted to generate PDDL-based expert demonstrations in ProcTHOR dataset similar to ALFRED-gen dataset.
I modified the Layout generation script to support the ProcTHOR-10k dataset.
However, I think the AI2THOR nightly build which supports ProcTHOR does not support receptacles. While applying the PutObject action in layout generation, I get this error:
Is there a way I can fix this issue for PDDL-based data generation in ProcTHOR?
The text was updated successfully, but these errors were encountered: