• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 22:30
CET 04:30
KST 12:30
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Rongyi Cup S3 - Preview & Info3herO wins SC2 All-Star Invitational12SC2 All-Star Invitational: Tournament Preview5RSL Revival - 2025 Season Finals Preview8RSL Season 3 - Playoffs Preview0
Community News
Weekly Cups (Jan 12-18): herO, MaxPax, Solar win0BSL Season 2025 - Full Overview and Conclusion8Weekly Cups (Jan 5-11): Clem wins big offline, Trigger upsets4$21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7)25Weekly Cups (Dec 29-Jan 4): Protoss rolls, 2v2 returns7
StarCraft 2
General
PhD study /w SC2 - help with a survey! herO wins SC2 All-Star Invitational Oliveira Would Have Returned If EWC Continued StarCraft 2 not at the Esports World Cup 2026 [Short Story] The Last GSL
Tourneys
$21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7) OSC Season 13 World Championship $70 Prize Pool Ladder Legends Academy Weekly Open! SC2 All-Star Invitational: Jan 17-18 Sparkling Tuna Cup - Weekly Open Tournament
Strategy
Simple Questions Simple Answers
Custom Maps
[A] Starcraft Sound Mod
External Content
Mutation # 510 Safety Violation Mutation # 509 Doomsday Report Mutation # 508 Violent Night Mutation # 507 Well Trained
Brood War
General
[ASL21] Potential Map Candidates Which foreign pros are considered the best? Gypsy to Korea BGH Auto Balance -> http://bghmmr.eu/ Fantasy's Q&A video
Tourneys
[Megathread] Daily Proleagues Azhi's Colosseum - Season 2 Small VOD Thread 2.0 [BSL21] Non-Korean Championship - Starts Jan 10
Strategy
Current Meta Simple Questions, Simple Answers Soma's 9 hatch build from ASL Game 2 Game Theory for Starcraft
Other Games
General Games
Nintendo Switch Thread Battle Aces/David Kim RTS Megathread Stormgate/Frost Giant Megathread Beyond All Reason Awesome Games Done Quick 2026!
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread European Politico-economics QA Mega-thread Canadian Politics Mega-thread NASA and the Private Sector
Fan Clubs
The herO Fan Club! The IdrA Fan Club
Media & Entertainment
Anime Discussion Thread [Manga] One Piece
Sports
2024 - 2026 Football Thread
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
How Esports Advertising Shap…
TrAiDoS
My 2025 Magic: The Gathering…
DARKING
Life Update and thoughts.
FuDDx
How do archons sleep?
8882
James Bond movies ranking - pa…
Topin
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2503 users

Day 2: BOO with Genetic Algorithms

Blogs > Revilo
Post a Reply
Revilo
Profile Blog Joined October 2010
Germany23 Posts
October 14 2010 10:49 GMT
#1
Heya fine folks of TL,
I have finished making the controller for the Genetic Algorithm (Basically all the easy work is done). Now I have to get down and dirty with the fitness function and also replicate the Starcraft 2 game in mini form to evaluate timings, minerals, gas, etc... Wish me luck! If someone is interested in the bare bone Genetic Algorithm coded in python 2.7 which currently does nothing but find the optimal "Drone Only" build order, let me know and I can email it to you or provide a link.

Any inspiring ideas about the fitness function would be welcome It has dawned on me that this is definitely the hardest part of the algorithm I may however start with the Starcraft 2 simulator which would let people also just plug in a build order by hand and see the fastest execution time for it.

Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
Revilo
Profile Blog Joined October 2010
Germany23 Posts
Last Edited: 2010-10-14 13:43:33
October 14 2010 13:41 GMT
#2
I have finished making a basic version of the Starcraft 2 game simulator. The first thing I told it to try is to give me the build time for a 6 pool (naturally ). Here are the timings it spits out:

0:38 - Spawning Pool
0:53 - Drone
1:08 - Drone
1:10 - Drone Completes
1:25 - Drone Completes
1:43 - Spawning Pool Completes
1:43 - Zergling
1:43 - Zergling
1:43 - Zergling
2:07 - Zergling Completes
2:07 - Zergling Completes
2:07 - Zergling Compeltes

This is of course in game time and I have made no variance based on time to get to mineral patches, etc... If someone know how fast they can get 6 zerglings in a 6-pool, I would appreciate the data. If you beat the listed timings you will be added to a special thanks section of the final algorithm

EDIT: Bear in mind, this is not the genetic algorithm giving a perfect build order for 6 zerglings. Rather this is just the timing function that is telling me how fast this build order can be done.
Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
Revilo
Profile Blog Joined October 2010
Germany23 Posts
October 14 2010 15:10 GMT
#3
Just completed a build order "cleaner". It basically takes an arbitrary build order (even if its an illegal one) and goes through it and checks to make sure basic requirements are fulfilled for each step. For instance, if Zerglings are to be made, it checks to see if there is already a spawning pool in the build order. Also, it checks to make sure enough pop is available given the overlords produced beforehand in the build order. If something illegal is found, it simply removes it from the list and increments a penalty counter. At the end it returns a cleansed build order that is legal and a penalty count that tells you how many incorrect units were removed from the original build order. This is mainly a preprocessing tool for my genetic algorithm to keep the input to the Starcraft 2 simulator legal (preventing an infinite loop).
Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
ammeL
Profile Joined August 2009
United States211 Posts
October 14 2010 16:31 GMT
#4
Interesting stuff; I may be able to provide some input. I can probably take a look at the code, too, to see if any ideas spark for me and I can help you with the algorithm.
Those who criticize our generation forget who raised it.
palanq
Profile Blog Joined December 2004
United States761 Posts
October 14 2010 16:42 GMT
#5
the objective function is to maximize the probability of winning, but this depends on what your opponent is doing, and that could be a number of things, depending on what you see. so I don't see how you can manage the problem.

the best you could do maybe is to maximize the size of your army at 20 minutes, subject to the constraints that you must have at least such and such units and upgrades at particular timepoints.

fun project, and good luck, but I'm not sure if this will be useful for players
time flies like an arrow; fruit flies like a banana
ammeL
Profile Joined August 2009
United States211 Posts
October 14 2010 17:03 GMT
#6
Even though it may not be useful to players, it may still be useful in the context that you're able to see what times certain things can be done (though of course, I'm sure there will always be something more efficient).

This will probably be of no use to most people, but if you're just messing around with build orders and certain timing attacks, knowing that you can have X amount of Zerglings out in an X amount of time can help you in some ways.
Those who criticize our generation forget who raised it.
Revilo
Profile Blog Joined October 2010
Germany23 Posts
October 14 2010 18:06 GMT
#7
So I have extended the code to now include Queens (with larva injection), as well as extractors (with drones moving to extractor) and Roaches and the Roach Warren. I have been able to replicate some results by users for a 7 Roach Rush:

+ Show Spoiler +
7 Roach Rush
00:00 - Drone
00:13 - Drone
00:15 - Larva Spawn
00:17 - Drone Complete
00:24 - Drone
00:30 - Larva Spawn
00:30 - Drone Complete
00:33 - Drone
00:41 - Drone Complete
00:45 - Larva Spawn
00:50 - Drone Complete
00:50 - Overlord
01:00 - Larva Spawn
01:15 - Larva Spawn
01:15 - Overlord Complete
01:19 - Spawning Pool
01:27 - Drone
01:35 - Drone
01:42 - Larva Spawn
01:44 - Drone Complete
01:44 - Drone
01:51 - Drone
01:52 - Drone Complete
01:57 - Larva Spawn
01:57 - Drone
02:01 - Drone Complete
02:08 - Drone Complete
02:12 - Larva Spawn
02:12 - Drone
02:12 - Extractor
02:14 - Drone Complete
02:24 - Spawning Pool Complete
02:27 - Larva Spawn
02:27 - Drone
02:29 - Drone Complete
02:30 - Queen
02:42 - Larva Spawn
02:42 - Extractor Complete
02:42 - Drone
02:44 - Drone Complete
02:51 - Roach Warren
02:57 - Larva Spawn
02:58 - Drone
02:59 - Drone Complete
03:12 - Larva Spawn
03:12 - Overlord
03:15 - Drone Complete
03:20 - Queen Complete
03:27 - Larva Spawn
03:27 - Overlord
03:37 - Overlord Complete
03:42 - Larva Spawn
03:46 - Roach Warren Complete
03:46 - Roach
03:52 - Overlord Complete
03:57 - Larva Spawn
03:57 - Roach
04:00 - 4x Larva from Inject
04:00 - Roach
04:00 - Roach
04:03 - Roach
04:12 - Larva Spawn
04:12 - Roach
04:13 - Roach Complete
04:20 - Roach
04:24 - Roach Complete
04:27 - Larva Spawn
04:27 - Roach Complete
04:27 - Roach Complete
04:30 - Roach Complete
04:39 - Roach Complete
04:42 - Larva Spawn
04:45 - 4x Larva from Inject
04:47 - Roach Complete
Build finishes at 04:48 minutes.
Minerals at end: 255.0
Gas at end: 75.0


The algorithm has some built in timing issues with the transfer of workers between minerals to gas and from spawning to minerals. But I believe these are negligent and you should be able to almost replicate these times to the second. Playing on normal speed to try it out first might help with training it. This is a very aggressive build. If anyone has some other Zerg build orders they would like me to time and compare with your own play time, please feel free to post them (or pm me if you feel it might be embarrassing or secretive ).
Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
Slithe
Profile Blog Joined February 2007
United States985 Posts
October 14 2010 18:47 GMT
#8
What kind of performance are you seeing on the algorithm for something about as complex as a 7 roach rush? Does the fitness level converge relatively quickly?
Please log in or register to reply.
Live Events Refresh
Replay Cast
00:00
Rongyi Cup S3 - Group D
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft537
RuFF_SC2 165
Ketroc 69
StarCraft: Brood War
Artosis 784
Shuttle 84
ZergMaN 47
Noble 21
Icarus 3
Dota 2
monkeys_forever441
NeuroSwarm97
febbydoto12
League of Legends
JimRising 841
Counter-Strike
taco 263
minikerr34
Super Smash Bros
hungrybox1964
Heroes of the Storm
Khaldor144
Other Games
tarik_tv18864
gofns13607
summit1g13058
ViBE123
WinterStarcraft116
Organizations
Other Games
gamesdonequick1439
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• Berry_CruncH206
• Mapu8
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• masondota21489
League of Legends
• Scarra2145
Upcoming Events
RongYI Cup
7h 30m
Wardi Open
10h 30m
Monday Night Weeklies
13h 30m
OSC
20h 30m
Replay Cast
1d 5h
RongYI Cup
1d 7h
WardiTV Invitational
1d 10h
Replay Cast
2 days
RongYI Cup
2 days
WardiTV Invitational
2 days
[ Show More ]
The PondCast
3 days
HomeStory Cup
4 days
Korean StarCraft League
4 days
HomeStory Cup
5 days
Replay Cast
5 days
HomeStory Cup
6 days
Replay Cast
6 days
Liquipedia Results

Completed

BSL 21 Non-Korean Championship
OSC Championship Season 13
Underdog Cup #3

Ongoing

CSL 2025 WINTER (S19)
KCM Race Survival 2026 Season 1
Acropolis #4 - TS4
Rongyi Cup S3
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
SL Budapest Major 2025
ESL Impact League Season 8
BLAST Rivals Fall 2025

Upcoming

Escore Tournament S1: W6
Escore Tournament S1: W7
Acropolis #4
IPSL Spring 2026
uThermal 2v2 2026 Main Event
Bellum Gens Elite Stara Zagora 2026
HSC XXVIII
Nations Cup 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
PGL Cluj-Napoca 2026
IEM Kraków 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.