Repository: HumanCompatibleAI/overcooked_ai
Issue: Different versions?
Root cause: Unimplemented Feature Gap

I ran the overcooked demo via this link: https://humancompatibleai.github.io/overcooked-demo/
I also made a clone of https://github.com/HumanCompatibleAI/overcooked_ai and was able to get the demo running locally.

However, the remote demo can save game trajectories, but the local version doesn't have this option.
The remote version also "auto" cooks the soup instead of needing to press the space bar.

Is the code for the remote version available?

Thanks!

Hi @pgerken,

Thanks for reaching out! The demo code used to have the trajectory-saving option before the repo was drastically refactored.

The code for the demo version [at this link](https://humancompatibleai.github.io/overcooked-demo/) is from [the github pages branch](https://github.com/HumanCompatibleAI/overcooked-demo/tree/gh-pages) of the repo.

Hope this answers your question! If you find a way to port the trajectory saving functionality to the new version of the repo, feel welcome to submit a PR request!


Saving trajectory functionality pull request is here https://github.com/HumanCompatibleAI/overcooked-demo/pull/29. I'm not sure about compatibility with current master (it may be somehow dependent on my forked version of the overcooked_ai repo but it is probably compatible with master) as I wrote it long time ago.

@bmielnicki 

> Saving trajectory functionality pull request is here [HumanCompatibleAI/overcooked-demo#29](https://github.com/HumanCompatibleAI/overcooked-demo/pull/29). I'm not sure about compatibility with current master (it may be somehow dependent on my forked version of the overcooked_ai repo but it is probably compatible with master) as I wrote it long time ago.

I tried to clone your repo: git clone https://github.com/bmielnicki/overcooked-demo.git

However, when running...
```
   ./up.sh --env production
```
...it's failing on this in the service/Dockerfile
```
   RUN cp /overcooked_ai/src/overcooked_ai_py/visualization/web/* ./static/overcooked_visualizations_web
```
Here's the error: 

```
 => [17/18] RUN mkdir ./static/overcooked_visualizations_web                                                                                                       0.2s 
 => ERROR [18/18] RUN cp /overcooked_ai/src/overcooked_ai_py/visualization/web/* ./static/overcooked_visualizations_web                                            0.2s 
------                                                                                                                                                                  
 > [18/18] RUN cp /overcooked_ai/src/overcooked_ai_py/visualization/web/* ./static/overcooked_visualizations_web:
#22 0.201 cp: cannot stat '/overcooked_ai/src/overcooked_ai_py/visualization/web/*': No such file or directory
------
executor failed running [/bin/sh -c cp /overcooked_ai/src/overcooked_ai_py/visualization/web/* ./static/overcooked_visualizations_web]: exit code: 1
ERROR: Service 'app' failed to build : Build failed
Recreating overcooked-demo_app_1 ... done
```

And.. if I comment that out, it fails when the docker image starts with the following....
```
   app_1  | Traceback (most recent call last):
   app_1  |   File "app.py", line 17, in <module>
   app_1  |     from overcooked_ai_py.visualization.extract_events import extract_events
   app_1  | ModuleNotFoundError: No module named 'overcooked_ai_py.visualization.extract_events'
   overcooked-demo_app_1 exited with code 1
```
My guess is that overcooked_ai_py.visualization.extract_events is not part of the overcooked_ai?

Maybe I need a different branch of overcooked_ai?

I also tried to clone your copy of overcooked_ai: git clone https://github.com/bmielnicki/overcooked_ai

And found the missing files...

$ ls overcooked_ai/src/overcooked_ai_py/visualization/web/
event_chart.html	event_chart_default.css	render_event_chart.js	run_event_chart.js

So how would I have the Dockerfile in overcooked-demo use the overcooked-ai that I cloned instead of the pip installed version?


Getting closer...

I changed the following in the server/Dockerfile...

+#RUN git clone $OVERCOOKED_URL --branch $OVERCOOKED_BRANCH --single-branch /overcooked_ai
+RUN git clone https://github.com/bmielnicki/overcooked_ai --single-branch /overcooked_ai

and 

+#RUN git clone $HARL_URL --branch $HARL_BRANCH --single-branch /human_aware_rl
+RUN git clone https://github.com/bmielnicki/human_aware_rl --single-branch /human_aware_rl

This appears to give me the checkbox for saving trajectories, but still doesn't save it.

Also, the AI players are different.. I see RandAI and StayAI instead of Human-aware PPO Agent.  Is there a different repo with the better AI players like the ones found in https://humancompatibleai.github.io/overcooked-demo/?



Just to respond to the last point:

> Also, the AI players are different.. I see RandAI and StayAI instead of Human-aware PPO Agent. Is there a different repo with the better AI players like the ones found in https://humancompatibleai.github.io/overcooked-demo/?

The dynamics of the environment are different between the old and new version of overcooked-demo (the soup cooking doesn't require an extra interact action), and I don't believe PPO agents for the new version were ever trained and set aside for the purposes of the demo.