You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Came across the tutorial on youtube and got the program running. How can I change the reward function to give points to number of unique pokemon? The idea is to try to train the agent to Catch them all.
I also have access to cloud resources of several GPUs. I want to try to run run_baseline_parallel_fast.py to simulate hundreds of games at once to see how fast I can get it to capture 10 unique pokemon.
The text was updated successfully, but these errors were encountered:
you could write something along the lines of
def get_unique_pokemon(self):
for i in range(0,18):
pokemon_caught += self.bit_count(self.read_m(0xD2F7 + i))
return pokemon_caught
then add to the state_score dictionary something like
'unique_pokemon': self.reward_scale*self.get_unique_pokemon(),
i would not recommend removing the other rewards as the agent probably wont leave pallet town unless it has some exploration reward but you are welcome to experiment.
def update_seen_pokemons(self):
initial_seen_pokemon = 3 # it seems like it has already encountered a bird
self.seen_pokemons = sum(self.reader.read_seen_pokemons()) - initial_seen_pokemon
Reader (i extracted everything related to memory in a different class)
def read_seen_pokemons(self):
return [self.bit_count(self.read_m(a)) for a in SEEN_POKEMONS_ADDRESSES]
Hi,
Came across the tutorial on youtube and got the program running. How can I change the reward function to give points to number of unique pokemon? The idea is to try to train the agent to Catch them all.
I also have access to cloud resources of several GPUs. I want to try to run
run_baseline_parallel_fast.py
to simulate hundreds of games at once to see how fast I can get it to capture 10 unique pokemon.The text was updated successfully, but these errors were encountered: