Green Circle - Feedback & Strategies

Language : Java
League : Legend
Rank : 23 top3 language

Its my first PM. :slightly_smiling_face:

Thank you CG for providing to us this completely unexpected contest. It was funny. Thanks especially to [@_SG_Sebastien].
Thanks to my work that left me a little strength for this contest. This doesn’t happen often.
Thanks to my simulation engine that it didn’t give me a lot of timeouts, as it used to be usually. Thanks [@Wala] and [@Neumann] for tips in [Fall Challenge 2020 - Feedbacks & Strategies - #57 by wala] and [[JAVA] JVM memory issues - #4 by Neumann]. Im not sure that it works, but I used similar code.

The rules are very confusing to understand. :slight_smile: Without Referee, it was very difficult to develop a correct simulation. I passed through a few dead ends, before i wrote, what need to me.

Initial bot

First version of my bot for full rules was heuristic and very simple:

  1. Make an app release if you don’t have bugs (Technical Debt);
  2. Do automated bonuses (8), if possible;
  3. Take bonuses to me at 6;
  4. Throw out the technical debt at 7;
  5. Go to nearest available zone.

I was very surprised that he got to the golden league without changes.

Final bot

My bot is BFS “one turn” simulation algorithm and some heuristic improvements.
I developed “lean” version in the beginning (min debts). And it couldn’t get past the golden league boss. Something went wrong and I realized that during the current vision I will never be able to pass it.
Sunday I spent on a new concept. It sounds “huak huak release new issue in production” in Russian.
Main idea: Technical debt doesn’t matter. Deadline comes in 8 months :roll_eyes: (moves).
How will we release the fifth application? 2 automated skills + 2 automated bonuses and we haven’t problem.

Evaluation function looks like a first bot algorithm (in descending order of value):

  1. Make an app release + save better apps for fifth release + release applications that are convenient for my competitor (with skills which he automated);
  2. Take card 2 and play DR, if possible and score = 0;
  3. Do automated bonuses (need 2 only);
  4. Do most useful automated skills (if we have 2 automated bonuses);
  5. Take CI cards if possible;
  6. Go to nearest available zone.

I added some heuristic tweaks for release 3, 4 and 5 application. If score > 2, bot start to consider moves GIVE. Bot built release pipeline also.

13 Likes