Page MenuHomeWildfire Games

irishninja (Brian Broll)
User

Projects

User Details

User Since
Aug 4 2019, 2:04 AM (49 w, 2 d)

Recent Activity

Sat, Jul 11

irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

After rebasing the changes, I have been seeing the following linking error:

Sat, Jul 11, 10:38 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Fix issues in main.cpp and rebased (using the github mirror).

Sat, Jul 11, 10:36 PM
irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

I have made most of the changes. To my knowledge, the only remaining issues are:

  • Update GetGameState to use GetEntitiesWithInterface (as described in the earlier comment). I asked a question about this in the earlier comment.
  • Use json_spirit to make it less std::string heavy.
Sat, Jul 11, 5:22 PM

Mon, Jun 29

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Removed sdl linking from premake (only removed the include last time!)

Mon, Jun 29, 8:56 PM

Sat, Jun 27

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

GetTemplates is now const and removed unused include

Sat, Jun 27, 5:31 PM

Wed, Jun 24

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Miscellaneous code cleanup. Still need to address the GetGameState comments and the use of jsonspirit rather than strings by @wraitii.

Wed, Jun 24, 11:40 PM
irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

Made the miscellaneous code fixes. Pushing them momentarily!

Wed, Jun 24, 11:38 PM

Sun, Jun 21

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.
Sun, Jun 21, 5:17 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Revert extern_libs5 file.

Sun, Jun 21, 5:16 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Fixed various linting/style issues. Rebased to the latest version of 0 AD.

Sun, Jun 21, 5:08 PM
irishninja planned changes to D2199: Add RL interface for Reinforcement Learning.

I have made most of the changes and will be updating the revision soon (arcanist is hanging a bit after the rebase). I still need to update the GetGameState function and make it a little less string heavy as mentioned by @wraitii but most other changes should have been applied.

Sun, Jun 21, 3:42 PM

Jun 6 2020

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Removed some grpc includes that I missed

Jun 6 2020, 8:01 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Remove old build option, reorder python args, and minor update to the python readme. Python arguments for reset were reordered from reset(config, player_id=1, save_replay=False) to reset(config, save_replay=False, player_id=1) as I suspect it will be more common for users to want to save the replay rather than change the player's ID.

Jun 6 2020, 7:45 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Remove empty requirements.txt file

Jun 6 2020, 7:37 PM
irishninja retitled D2199: Add RL interface for Reinforcement Learning from Add RPC interface for Reinforcement Learning to Add RL interface for Reinforcement Learning.
Jun 6 2020, 7:34 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Updated the diff to use mongoose instead of gRPC and cleaned up python API.

Jun 6 2020, 7:34 PM

May 22 2020

irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

Thanks, @wraitii ! I am happy to have a review (and someone else who shares my excitement for this! :)

May 22 2020, 9:57 PM

Apr 25 2020

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Fixed remaining call to to_proto (from old ScenarioConfig logic).

Apr 25 2020, 2:17 PM

Apr 12 2020

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Remove programmatic creation of scenario config/game setup JSON and updated the example.

Apr 12 2020, 4:10 AM

Feb 8 2020

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Added --with-rlinterface to the script for building libraries on OSX (only built fiber if flag exists). Removed a condition which is always false (checking if on windows with the --with-rlinterface flag since it throws an unsupported error message earlier if so).

Feb 8 2020, 6:55 PM

Jan 27 2020

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Added support for OSX (required updates to script for building libraries and premake).

Jan 27 2020, 1:09 AM

Dec 22 2019

irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

This adds a couple dependencies when building with the --with-rlinterface (passed to ./update-workspaces.sh):

  • GRPC (C++ and Python)
    • Protobuf
    • Python support requires grpcio-tools package
  • boost fiber
  • boost system
Dec 22 2019, 11:18 PM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Added error when building on unsupported platform (windows). (@Stan mentioned in IRC that windows support was not necessary for merging.)

Dec 22 2019, 10:56 PM

Dec 5 2019

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Updated python dependencies and fixed bug when built w/o the RL interface.

Dec 5 2019, 10:45 PM

Nov 12 2019

nani awarded D2199: Add RL interface for Reinforcement Learning a Like token.
Nov 12 2019, 4:21 AM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Updated installation/testing instructions in README for the python client and removed the user option for the RL interface address as it must be set on start and may be confusing for users.

Nov 12 2019, 4:06 AM
irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Added tests for actions and configuring scenarios. I also removed the extra example since it didn't contain anything new as compared to the better one ;)

Nov 12 2019, 3:42 AM

Nov 11 2019

irishninja added inline comments to D2199: Add RL interface for Reinforcement Learning.
Nov 11 2019, 3:27 PM
irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

As an update, I am currently working on adding tests for the actions and scenario config (using pytest). I have tests for all the actions in zero_ad/actions.py and a number of the different scenario settings. I am currently working on testing random map usage. After finishing the tests, I am planning on training a simple agent as an example demonstrating how it can be used to expose an OpenAI Gym API to 0 AD :) (I will probably do this in an external repo and then just post a link to it.)

Nov 11 2019, 3:24 PM

Oct 24 2019

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Miscellaneous code cleanup per Stan's feedback.

Oct 24 2019, 12:38 AM

Oct 23 2019

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Updates:

  • Define ScenarioConfig in Python. Added basic helpers for defining victory conditions as well as more generic setters (set_map_setting, set_game_setting).
  • Refactored RL Server main loop to own method
  • Changed default build to not include RL interface (uses --with-rlinterface)
Oct 23 2019, 1:46 AM

Sep 14 2019

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.

Added more actions (construct, gather, train, attack-walk) and an example script showing a lot of these basic actions.

Sep 14 2019, 12:29 AM

Aug 24 2019

irishninja added inline comments to D2199: Add RL interface for Reinforcement Learning.
Aug 24 2019, 6:20 AM

Aug 23 2019

irishninja updated the diff for D2199: Add RL interface for Reinforcement Learning.
  • Added --without-rlinterface compile flag
  • Removed generated files
  • Added config option for the rpc server address (both to the default.cfg and to the options.json used in-game)
Aug 23 2019, 10:34 PM

Aug 22 2019

irishninja awarded D2197: Add support for recording replay metadata when in nonvisual mode a Like token.
Aug 22 2019, 9:29 PM
irishninja updated the diff for D2197: Add support for recording replay metadata when in nonvisual mode.

Cleaned up the updates to the SaveReplayMetadata function (mentioned in the prior reviews). I also made the argument for the fn const since it is read-only.

Aug 22 2019, 7:51 AM
irishninja added a comment to D2197: Add support for recording replay metadata when in nonvisual mode.

I will be updating the diff with the most recent fixes. Dumb question: when I update the diff, does it add the changes to the existing diff or overwrite it with the most recent diff? I usually use git and GitHub and am still getting used to Phabricator...

Aug 22 2019, 7:49 AM

Aug 21 2019

elexis awarded D2197: Add support for recording replay metadata when in nonvisual mode a Like token.
Aug 21 2019, 10:06 PM
irishninja updated the diff for D2197: Add support for recording replay metadata when in nonvisual mode.

Updates:

  • Removed duplicate functions for getReplayMetadata to more directly call the fn from the GuiInterface.
    • Updated VisualReplay::SaveReplayMetadata to call GuiInterface directly from the C++. After the code change, I removed the (now unused) ScriptInterface argument from the method signature.
    • Replaced the single invocation of getReplayMetadata with Engine.GuiInterfaceCall("GetReplayMetadata")
  • Added the registration of GetInitAttributes which should have been included in the original diff.
  • Added myself to the credits
Aug 21 2019, 9:55 PM
irishninja added a comment to D2197: Add support for recording replay metadata when in nonvisual mode.

Thanks for the feedback! I added some responses inline and will be updating the diff (hopefully addressing all the remaining issues)!

Aug 21 2019, 9:45 PM
irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

As @Stan said, there is more discussion on the PR on GitHub. The goal of this contribution is to provide the fundamental underlying capabilities for exploring RL/ML agents in 0 AD (such as an OpenAI gym environment which can actually be implemented on top of this quite easily). I am intentionally not adding any action/observation spaces or reward as expected by OpenAI gym as these are not obvious and there are many different candidates for each of these (this is discussed more on the GitHub thread).

Aug 21 2019, 7:04 PM
irishninja added a comment to D2199: Add RL interface for Reinforcement Learning.

Thanks for the feedback! I can move it to be behind a feature flag and remove the generated files.

Aug 21 2019, 12:00 AM

Aug 20 2019

irishninja updated the diff for D2197: Add support for recording replay metadata when in nonvisual mode.

Changed NULL to nullptr

Aug 20 2019, 10:41 PM
irishninja updated the diff for D2197: Add support for recording replay metadata when in nonvisual mode.

I added GetReplayMetadata to the GuiInterface component to reduce code duplication introduced by the original diff.

Aug 20 2019, 10:38 PM
irishninja added a comment to D2197: Add support for recording replay metadata when in nonvisual mode.

Thanks for the feedback - I have added my responses inline!

Aug 20 2019, 6:52 PM
Stan awarded D2199: Add RL interface for Reinforcement Learning a Love token.
Aug 20 2019, 7:21 AM
irishninja created D2199: Add RL interface for Reinforcement Learning.
Aug 20 2019, 2:46 AM
irishninja created D2197: Add support for recording replay metadata when in nonvisual mode.
Aug 20 2019, 2:15 AM