-
Notifications
You must be signed in to change notification settings - Fork 22
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
In the King of Fighters, observation['P1']['oppChar'] may be wrong #74
Comments
@amit-gshe thanks a lot for your ticket. First I would like to ask you a few clarifications:
While waiting for your clarification, I will try to see if I am able to replicate it with a single environment first. EDIT: additional question, what setup are you using? Like stable - baselines wrapper or Ray RLLib, how many envs, etc |
@amit-gshe I am also not sure to see the problem in your snapshot, in fact, I see there that the env with From a quick test using a single environment, I do not see any problem at round change. I will now try with multiple envs. |
@alexpalms Sorry I didn't make the question clear. I will edit the title and the issue to make it clear. I used stable baselines3 with 6 envs to train the agent. |
@amit-gshe Thanks for the feedback, can you please share your And please also comment the second question I posted, as it is not clear to me where you see a problem in the snapshot you shared |
@alexpalms I shared a runnable script in here, it contains the settings and wrappers_settings. |
@amit-gshe thanks a lot for your feedback. I was able to replicate the problem locally in even simpler scenario, thus confirming the bug. This is related to the fact that the order of the opponents can be varied with respect to the original choice, and while we (as agent) always confirm the order of the characters we prescribe, the CPU sometimes changes it. In fact, this error never appears in 2 players mode, because we always confirm the original characters order for both players. We will work to fix that asap, I will let you know when done directly in this thread, you will receive the corrected env automatically, as it will be fixed in the engine docker image. |
@amit-gshe I just pushed a new engine image for you to test, it is called It also simplifies the RAM states of the game, in fact please note that there are no more In order to use this new image, you just need to add I will wait for your confirmation that this solves your bug, before merging this fix in the official engine. |
@alexpalms Thanks for your effort to fix this issue, I just tried the test image and I can confirm that the problem is fixed. |
Dear @amit-gshe, thanks a lot for your feedback and confirmation, and also for letting us know about the bug! I am happy the solution solved the problem. I released it in the official image ( Please note the following things:
Do not hesitate to reach out for other needs. |
Dear @amit-gshe, I just completed the RAM states rework I mentioned above. Now the modification is complete, and it has been merged, built and deployed, so I'd suggest you to update your The new image implements the complete fix for KOF, making available the correct characters in the 3 slots (for both P1 and P2), no matter the reordering selected before the stage begins. The docs has been updated, so you find all the info here: https://docs.diambra.ai/envs/games/kof98umh/ In addition it also fixes character selection that in some edge cases was producing the wrong behavior. This should finally close this issue, but do not hesitate to reach out in case you encounter other unexpected behavior. Thanks! |
Hi, In the process of training the King of Fighters agent, after outputting the value of observation['P1']['oppChar'] in the observation space, I saw that sometimes the value is wrong. as shown in the figure below:
I found that the wrong value is sometimes the last opponent instead of the current opponent. One possible reason is that oppChar is not updated after a new round starts.
setup
Stable baselines3 with PPO in 6 envs
The text was updated successfully, but these errors were encountered: