mees / calvin

CALVIN - A benchmark for Language-Conditioned Policy Learning for Long-Horizon Robot Manipulation Tasks
http://calvin.cs.uni-freiburg.de
MIT License
375 stars 55 forks source link

Feature request: single task datasets #25

Closed ezhang7423 closed 2 years ago

ezhang7423 commented 2 years ago

Hi there! I think it would be really nice if there was a script and dataset for a selection of individual tasks in CALVIN, so that one could test their method on just a single task. I've started working on this already, does it sound like a useful feature?

ezhang7423 commented 2 years ago

If this does sound useful, could I get some advice on what the cleanest/simplest way to implement this in the existing framework is? My current code is a bit hacky...

mees commented 2 years ago

Not sure if this is what you mean, but we provide an option to evaluate single tasks without resetting the robot to a neutral position. https://github.com/mees/calvin#multi-task-language-control-mtlc

ezhang7423 commented 2 years ago

I'm talking about training on a single task.

mees commented 2 years ago

Here you have an example of using task indicators to learn single task rl policies https://github.com/mees/calvin#reinforcement-learning-with-calvin

ezhang7423 commented 2 years ago

Sorry, let be more clear. I specifically mean offline imitation learning through the usage of a subset of the provided dataset filtered on a single task. In essence, breaking up the existing datasets (such as Task D->D) into each individual task that it consists of.

lukashermann commented 2 years ago

You could try to proceed as follows:

I haven't tried this approach, so there could be additional steps to make it work :smile:

lukashermann commented 2 years ago

@ezhang7423 did you get further with what you wanted to do?

ezhang7423 commented 2 years ago

Hi Luka! Thank you so much for your detailed approach. I was able to get further, and will hopefully be able to submit a pull request soon.