-
Notifications
You must be signed in to change notification settings - Fork 5
VizDoom "shaping" : toxic survival #136
Comments
Be sure to also make an appropriate batch file when you get this working. |
This basic example seems broken since upgrading to 1.0.3, but hopefully we can still make a task that works. |
When you say "basic example, " which one are you referring to? Both basic and Shaping will work, but they obviously lack any actual smart behavior |
Currently, we have VizDoomToxicRoomTask created, but it still won't work. The Shaping example worked for me earlier and now it won't work anymore 👎 For now I'll move onto #138 and see where I can start there. The inputs for Defend the Center and our basic shoot task will be the same if not similar. |
Follow this GitHub issue for the VizDoom project to see when they fix it. |
This was a duplicate under a different name. Affects #136
Since we've replaced this task with the VizDoomHealthGatherTask, it works more often than not. I'm wondering if that was because of naming, or even just order of the config being loaded, but I'll continue with this for now |
In vizdoom.examples there is a class called Shaping. The point of this task is to survive as long as possible in a room where the whole floor is radioactive/toxic. All the agent can do to prolong its life is gather health packs that keep dropping into the world. This is actually the first video showcased on the VizDoom homepage: http://vizdoom.cs.put.edu.pl/
Make a class called VizDoomToxicRoomTask that tries to evolve an agent to solve this task.
Properties of the task are supposedly defined in vizdoom/examples/config/health_gathering.cfg, but make sure that the settings there actually mean something.
Note that the example code uses GameVariable.USER1 as a custom scripted game variable that supposedly provides a shaping reward (shaping is when you directly reward intermediate actions that you believe will help your overall fitness). I'm not entirely sure what this is or where it is defined ... unless it is simply the HEALTH in the cfg file. Hopefully you can figure this out by playing around with the domain.
By the way, I think that you should also cheat in this domain by only looking at a single row of the screen. In fact, I just made a commit that moves the code for getting input from a specific row into the VizDoomTask so it can be shared by all child classes. See a95a168
The text was updated successfully, but these errors were encountered: