Weekly AI Tourney Series

1

@softles Hey! if you would like to, I could make you a banner for this tourney!

FAF = Femboy Alliance Forever

0

I think this is really cool. Well done!

Let there be light

0

@Softles can I enter my AI?

Iā€™m a shitty 1k Global. Any balance or gameplay suggestions should be understood or taken as such.

Project Head and current Owner/Manager of SCTA Project

0

@Femboy sure - but what would I do with a banner?

@Dragun101 no plans to include SCTA every week, but it would definitely make a good feature for one of the weeks šŸ™‚

6

3rd December 2021 - Edition 2 - 2v2 double trouble
This week the AIs played 2v2s on the <1000 rating TMM pool, with full share active. A similar format was followed to last week, except that 2 AIs were eliminated each round (in order to reduce the total number of games that had to be run). 6 AIs were entered this week:

  • Adaptive AI
  • Sorian AI Adaptive
  • Dilli AI - last update: 2018/06/10
  • DilliDalli AI - last update: 2021/07/27
  • M27AI - last update: 2021/11/19
  • RNG AI -

As before, any game that reached 45 mins was ended and called as a draw.

The scores in each round were calculated as 3 points per win and 1 point per draw, with the round results as follows:

AI Round 1 Round 2 Round 3
RNG 103 53 13
M27 98 53 13
DilliDalli 110 46 X
Dilli 73 20 X
Adaptive 24 X X
Sorian Adaptive 18 X X

Giving us another tied tournament, with #1 spot shared between M27AI and RNG AI!

These results masked some interesting individual strengths and weaknesses for each of the AIs, including our two winners:

M27 AI:

  • Great ACU duelling, superb t3 land rushes, and effectively used gifted bases if teammates died.
  • Struggled on water maps (as well as serenity due to a bug), and risky plays with the ACU left it vulnerable.

RNG AI:

  • Great all round, particularly outclassing other AIs on the water maps. Solid base construction made it hard to beat.
  • Struggled for map control on land focused maps, and doesn't yet make use of gifted allied bases on full share.

Now for some extra stats for your viewing pleasure..
AI head to head results across all rounds (cells are from the perspective of the row AI):

RNG M27AI DilliDalli Dilli Adaptive Sorian Adaptive
RNG ------ 10W, 9D, 11L 5W, 3D, 12L 17W, 1D, 2L 10W, 0D, 0L 10W, 0D, 0L
M27AI 11W, 9D, 10L ------ 12W, 3D, 5L 14W, 2D, 4L 4W, 5D, 1L 7W, 1D, 2L
DilliDalli 12W, 3D, 5L 5W, 3D, 12L ------ 14W, 2D, 4L 8W, 1D, 1L 10W, 0D, 0L
Dilli 2W, 1D, 17L 4W, 2D, 14L 4W, 2D, 14L ------ 9W, 1D, 0L 10W, 0D, 0L
Adaptive 0W, 0D, 10L 1W, 5D, 4L 1W, 1D, 8L 0W, 1D, 9L ------ 1W, 8D, 1L
Sorian Adaptive 0W, 0D, 10L 2W, 1D, 7L 0W, 0D, 10L 0W, 0D, 10L 1W, 8D, 1L ------

Special credit to Dilli and DilliDalli for perfect records against Sorian Adaptive, as well as RNG for perfect records against both Adaptive and Sorian Adaptive.

Map stats for each AI:

Map RNG M27AI DilliDalli Dilli Adaptive Sorian Adaptive
Adaptive Meadow 6W, 2D, 1L 4W, 2D, 3L 3W, 1D, 4L 5W, 0D, 3L 0W, 2D, 3L 0W, 1D, 4L
Angel Lagoon 7W, 2D, 0L 2W, 4D, 3L 3W, 2D, 3L 1W, 3D, 4L 0W, 3D, 2L 2W, 0D, 3L
Charity 5W, 1D, 3L 6W, 1D, 2L 6W, 1D, 1L 2W, 0D, 6L 0W, 2D, 3L 0W, 1D, 4L
Desert Planet II v2 5W, 1D, 3L 7W, 2D, 0L 5W, 1D, 2L 2W, 0D, 6L 0W, 1D, 4L 0W, 1D, 4L
Nomadiah 4W, 1D, 4L 8W, 1D, 0L 5W, 1D, 2L 2W, 0D, 6L 0W, 2D, 3L 0W, 1D, 4L
Pelagial v2 7W, 2D, 0L 2W, 4D, 3L 1W, 2D, 5L 3W, 3D, 2L 1W, 2D, 2L 1W, 1D, 3L
Strife of Titan 3W, 2D, 4L 5W, 2D, 2L 7W, 0D, 1L 4W, 0D, 4L 0W, 1D, 4L 0W, 1D, 4L
Serenity Desert 7W, 0D, 2L 0W, 1D, 8L 8W, 0D, 0L 4W, 0D, 4L 2W, 0D, 3L 0W, 1D, 4L
Syrtis Major 4W, 0D, 5L 8W, 0D, 1L 5W, 0D, 3L 4W, 0D, 4L 0W, 1D, 4L 0W, 1D, 4L
Turtle Rocks 4W, 2D, 3L 6W, 3D, 0L 6W, 1D, 1L 2W, 0D, 6L 0W, 1D, 4L 0W, 1D, 4L

Special credit to DilliDalli for the 100% record on Serenity Desert.

As an extra special treat, I also recorded performance over time stats for each of the games, and averaged over all their games to get an idea of each AI's in game performance (i.e. how quickly does it run in game). This stat isn't perfect, since it doesn't control for how performant opponents were in their games, but it gives a rough idea.
tmp.png
(perf here is measured as #real seconds per 10 game seconds while speed is set to +10, with full +10 roughly meaning a perf of 1.5 and +0 roughly meaning a perf of 13)

Hope people find this interesting - tune in next week for 4v4s, 5v5s and 6v6s on classic team-game maps. As ever feel free to drop in ideas for future weeks or anything else šŸ™‚

1

Also let me know how you want results tables formatted in the future - should I stick with {Wins, Draws, Losses}, swap to {points} or go back to {win %} in the head to head and map results tables? (or something else entirely??)

1

Points or win %, w/d/l is impossible to compare across a table like that.

1

The 1st Wk - AI Fight Club Tourny 1v1 posted results were:
-a Points Chart
-2 Bullet points = 1 for each Final AI, and the maps they won on, and
-a Percentage win rate Chart for the 8 maps.
Short and just the stats.
.
I very much prefer the way you did the 2nd Wk - 2v2 double trouble:
-a Points Chart
-AND 4 Very Insightful Bullet points on the Strengths and Weaknesses of the AIs
-a W.L.D. Chart Vs Other AI's (More info then the Percent Chart)
-a W.L.D. Chart on 8 Maps
-a Performance Chart (which is good info for planning larger maps, more AI)
.
I think the 2nd week reports are well done, and now that they are in easy to understand format,
it would be nice to continue in a similar format/style, As it will be easy to follow along and compare.
I would definitely like for your continued insights each week on the different AI's strengths and weaknesses.
Very Interesting Stuff!
Thanks for testing, and posting these updates šŸ™‚
.
Looking fwd to hear the result of todays WK 3 tourny results

5

11th December 2021 - Edition 3 - 4v4+: you can't spell teaim without AI.

This week the AIs were playing on a selection of team game maps to find out who you should bring to back you up in a com fight:

  • Round 1: Tabula Rasa v3 (4v4) and The Pyramid 5v5 (5v5)
  • Round 2: Hilly Plateau (4v4) and Diversity (4v4)
  • Round 3: Canis 4v4 spezial edition (4v4) and Adaptive Wonder Open (8v8)

Rules this week were share until death and a 2 hour game limit (which none of the games reached). I'll just include the win % in the tables below since there were no draws this week.

Each AI played every other AI on every map once in round 1, twice in round 2, and 4 times in round 3. Without further ado, here were the results:

AI Round 1 Round 2 Round 3
RNG Standard 60% 58% 87%
DilliDalli 90% 75% 13%
M27AI 70% 33% X
Dilli 60% 33% X
Sorian Edit Adaptive 10% X X
Swarm 10% X X

Congrats to RNG Standard for the first outright win of the series!

The head to head and per map results were as follows:

RNG Standard DilliDalli M27AI Dilli Sorian Edit Adaptive Swarm
RNG Standard - 64% 33% 83% 100% 100%
DilliDalli 36% - 100% 67% 100% 100%
M27AI 67% 0% - 50% 100% 100%
Dilli 17% 33% 50% - 100% 100%
Sorian Edit Adaptive 0% 0% 0% 0% - 50%
Swarm 0% 0% 0% 0% 50% -
RNG Standard DilliDalli M27AI Dilli Sorian Edit Adaptive Swarm
Tabula Rasa 60% 80% 60% 80% 0% 20%
The Pyramid 60% 100% 80% 40% 20% 0%
Hilly Plateau 33% 100% 67% 0% X X
Diversity 83% 50% 0% 67% X X
Canis 100% 0% X X X X
Wonder 75% 25% X X X X

This week I also pulled performance stats for each AI against itself in the two round 1 maps, which produced the results below:
tmp.png
Again for reference, a performance of X => X/10 real seconds per game second (trying to run at +10 speed). Results plotted against the number of units on the map.

Congrats again to RNG Standard for winning, and remember tune in next week for some Free For All chaos!

2

Great series of tournaments, thanks for conducting them šŸ™‚

4

22nd January 2022 - Edition 4 - 1v1s: Cry me a river

After a festive break we are back with a bumper edition of the AI tourney - 11 AIs entered, fighting it out across 5 rounds (round robin) of 1v1s on the following maps:

  • Twin Rivers (round 1)
  • Twin Rivers (round 2)
  • Twin Rivers (round 3)
  • Twin Rivers (round 4)
  • Twin Rivers (round 5)

The AIs entered for this week are:
Adaptive AI, Dalli AI, Dilli AI, DilliDalli AI, M27 AI, RNG Standard AI, SCTA Arm, SCTA Core, Sorian Adaptive AI, Sorian Edit Adaptive AI, Swarm Terror AI.

Format
The twist is that each round AIs are granted bonus cheat multipliers based on the previous round's results. In brief, an AI gets a +0.1 boost to resources and build rate for every position down the leaderboard it was in the last round - and accumulates these bonuses as the tournament goes on.

To stop these boosts getting out of hand in the matches, the boosts applied in game are scaled down based on the lower of the boosts between two AIs. For example if AI Alpha with boost 2.0 is playing AI Bravo with boost 2.4, then the applied settings would be a 1.0x multiplier for Alpha (2.0/2.0) and a 1.2x multiplier for Bravo (2.4/2.0). Applied boosts are rounded to the nearest 0.1 due to UI limitations.

The aim is that as the rounds progress, we get a better and better idea of what boosts each AI needs to be an equal match for every other AI (kinda like the AI's handicap). The AI with the lowest boost at the end of the tourney wins!

Matches:
M: Accumulated Modifier going into the round
W: Wins that round
P: End of round placement (* joint)

Round 1 Round 2 Round 3 Round 4 Round 5
AI M W P M W P M W P M W P M W P
Adaptive 1.0 3 8 1.7 7 3* 1.9 0 11 2.9 6 2* 3.0 2 9*
Dalli 1.0 9 1* 1.0 2 10 1.9 9 2 2.0 5 7* 2.6 9 2
Dilli 1.0 8 3 1.2 3 8* 1.9 8 3 2.1 6 2* 2.2 2 9*
DilliDalli 1.0 6 4* 2.3 7 3* 1.5 4 6* 2.3 2 11 2.9 10 1
M27 1.0 5 6* 1.5 9 1 1.5 3 9 2.3 5 7* 2.9 6 4*
RNG Standard 1.0 9 1* 1.0 0 11 2.0 10 1 2.0 6 2* 2.1 4 6*
SCTA Arm 1.0 2 9 1.8 5 6* 2.3 4 6* 2.8 3 9* 3.6 7 3
SCTA Core 1.0 1 10* 2.9 8 2 2.0 2 10 2.9 6 2* 3.0 4 6*
Sorian Adaptive 1.0 1 10* 1.9 6 5 2.3 6 4 2.6 3 9* 3.4 6 4*
Sorian Edit 1.0 6 4* 1.3 3 8* 2.0 5 5 2.4 6 2* 2.5 3 8
Swarm Terror 1.0 5 6* 1.5 5 6* 2.0 4 6* 2.5 7 1 2.5 2 9*

Results:
For a final set of modifiers at (raw, normalised to nearest 0.1):
2.6, 1.0: RNG Standard
2.7, 1.0: Dalli
3.0, 1.2: Dilli, DilliDalli
3.2, 1.2: M27, Sorian Edit
3.3, 1.3: Swarm Terror
3.5, 1.3: SCTA Core
3.7, 1.4: Sorian Adaptive
3.8, 1.5: Adaptive, SCTA Arm

Congrats to RNG Standard AI for winning, commiserations to everyone else!

For fun, here's a view of the normalised modifiers (normalised compared to leading AI that round) each AI had as the tourney progressed:
tmp.png

I think the scores would have continued to settle down a little bit if I'd kept doing more rounds, but after manually running 275 games in a row I didn't feel like anymore...

--

The particularly sharp amongst you may have noticed that the weekly tourney hasn't exactly been weekly lately - and going forwards this will become a less regular thing (maybe monthly?) so that I can focus on developing AIs to enter.

See you all in the next one!

1

@softles Thanks again for running these! Re moving to once a month Iā€™m happy to run one once a month to share the load if you wanted to have it as a biweekly tourney?

M27AI developer; Devlog and more general AI development guide:
https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v20-devlog/41