Determinism and Predictability Survey

Hello All. As I watch results file in ( for the third time :sweat_smile: ) for the season 3 finale, I keep finding these very frustrating matches in which my leading score algo (I have 6 identical submissions) will lose spontaneously to an algo 200+ points lower that 4 or 5 of my other algos won against. (Not to mention the known coin toss of whether I beat any Oracles or Zeros)

Since it seems like techniques that produce unpredictable results are becoming more popular, I thought I would take a poll on the state of the art in this area.

  • My algo’s performance is unpredictable between identical matches, and this is by design.
  • My algo’s performance is unpredictable between identical matches, and this is unintentional.
  • My algo’s performance is identical between identical matches, and this is by design.
  • My algo’s performance is identical between identical matches, and this is unintentional.

0 voters

  • I believe that having unpredictable algos is a competitive advantage.
  • I believe that having unpredictable algos is a competitive disadvantage.
  • I do not believe that unpredictability grants any particular advantage or disadvantage.
  • I believe that unpredictability grants both advantages and disadvantages in roughly equal measure.

0 voters

  • I find that it is easier to develop and improve the performance of unpredictable algos.
  • I find that it is easier to develop and improve the performance of deterministic algos.

0 voters

  • I plan on focusing on the development of unpredictable algos in the future.
  • I plan on focusing on the development of deterministic algos in the future.

0 voters

2 Likes

@IWannaWin do you believe your algos to be deterministic? If so that’s very interesting because my programs are also supposed to be deterministic but some of our matchups have had different results.
I’m inclined to believe this is because, while they theoretically make the same decisions under the same inputs, the wildly varying server performance has been affecting both the life totals and internal decision trees of our matches, depending on implementation details.

2 Likes

Jup, seems like it, I was suprised to see yours beeing deterministic aswell.

Back In the days, I had “coefficient for randomness”, on most functions. It looked really cool …
and the plan was, when i have a final version, just to tweak it a bit and leave the most successful(confusing) version for the competition.
Currently, it is much more important for me to have predictable behavior and improve overtime.

It is also important for what place you are competing … top 1 … top 3 … top 10 may have different strategies.

1 Like

Uh-oh spaghetti-o’s (spaghetti code, that is) I found an odd thing. Here are two identical matchups of ours, which are perfectly matched frame-for-frame… until I spontaneously attack on round 6 in one game and not attack in the other. Huh. Dat’s not supposed to happen… guess I should change my category to “unpredictible, by accident” :rofl:

Cthaeh wins: https://terminal.c1games.com/watch/4381098
WannaPredict wins: https://terminal.c1games.com/watch/4382580

…if I had to guess, the way this could happen by ‘accident’ when I’m essentially running a fixed pattern of simulations and using decision trees is probably my abuse of floating point. One stage of my program has a Bayesian inference network and another has a weighted sum of decision parameters and I’ve never actually bothered to unit test whether the floats were too small. Probably should have used logarithms. Oh well :crazy_face:

1 Like

:joy: I hope we meet in the final stream, that should be an interesting match