• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 21:45
CEST 03:45
KST 10:45
  • 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
[ASL22] Ro24 Preview: Siren's Call4[ASL22] Ro24 Preview: Summer's End9Serral wins HomeStory Cup 2915Serral wins Maestros of the Game 244ByuL, and the Limitations of Standard Play3
Community News
Weekly Cups (August 10-16): SHIN doubles2GSTL Returns in 2026!45Weekly Cups (Aug 3-9): Protoss get shut out7RSL goes to London! 2026 Offline Finals Nov 21-2212Weekly Cups (July 27-Aug 2): SHIN's big week0
StarCraft 2
General
Geoff 'iNcontroL' Robinson has passed away SC4ALL II: SC2 Player Announcement 6/8 - Maru GSTL Returns in 2026! Balance hotfix patch 5.0.16b (July 16) Serral wins Maestros of the Game 2
Tourneys
PIG STY FESTIVAL 8.0! (13 - 23 August) Sparkling Tuna Cup - Weekly Open Tournament WORTEX 2026 - Hungarian SC2 Finals Budapest SC2 AI Tournament 2026 Fall 2026 GSTL Announcement
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 540 Dodge This The PondCast: SC2 News & Results Mutation # 539 Thunder Dome Mutation # 538 Media Blackout
Brood War
General
[ASL22] Ro24 Preview: Siren's Call BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion Pros React To: First 'Fastest' Map in ASL History [Personal Project Share] Terran Defense v0.60
Tourneys
[Megathread] Daily Proleagues Toronto invitational lan 22 august Brood War in Budapest ! WORTEX 2026 BW Finals [ASL22] Ro24 Group C
Strategy
Replay Review Process - What do you do? Odyssey Mineral Stack Saturation Fighting Spirit mining rates Any training maps people recommend?
Other Games
General Games
Nintendo Switch Thread General RTS Discussion Thread Anyone here play Quakeworld back in the day? Stormgate/Frost Giant Megathread EVE Corporation
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank TL Mafia Community Thread NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
Dating: How's your luck? US Politics Mega-thread Russo-Ukrainian War Thread Canadian Politics Mega-thread Artificial Intelligence Thread
Fan Clubs
The Creator Fan Club MarineLorD Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! Anime Discussion Thread
Sports
Football (Soccer) Thread MLB/Baseball 2023 TeamLiquid Health and Fitness Initiative For 2023 NBA General Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Simple Questions Simple Answers FPS when play League Of Legend on laptop
TL Community
The Automated Ban List Northern Ireland Global Starcraft
Blogs
Young Players Exit Esports E…
TrAiDoS
LOCKPICKING NOOB
LUCKY_NOOB
Cathedral Of CS And NY pizza a…
FuDDx
Please support my new stand…
Peanutsc
Customize Sidebar...

Website Feedback

Closed Threads



Active: 4670 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
Next event in 8h 16m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RuFF_SC2 163
StarCraft: Brood War
Rain 3200
GuemChi 2074
Shine 12
Bale 11
Dota 2
monkeys_forever470
XaKoH 467
NeuroSwarm196
League of Legends
Doublelift6383
JimRising 669
Counter-Strike
minikerr84
Super Smash Bros
Mew2King178
Other Games
gofns17303
summit1g3494
Liquid`RaSZi2397
ROOTCatZ1
Organizations
Other Games
gamesdonequick886
BasetradeTV32
[ Show 12 non-featured ]
StarCraft 2
• Hupsaiya 107
• davetesta35
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• RayReign 32
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• masondota22009
Upcoming Events
Afreeca Starleague
8h 16m
hero vs ggaemo
Larva vs Mong
The Patches Monday
14h 16m
Afreeca Starleague
1d 8h
Soulkey vs PianO
JyJ vs sSak
GSL
1d 9h
PiGosaur Cup
1d 22h
Afreeca Starleague
2 days
Mini vs Calm
Queen vs EffOrt
Replay Cast
2 days
The PondCast
3 days
Replay Cast
3 days
IntoTheTV X SOOP
4 days
[ Show More ]
GSL
5 days
Replay Cast
5 days
Sparkling Tuna Cup
6 days
Liquipedia Results

Completed

Proleague 2026-08-23
PiG Sty Festival 8.0
META DYMY #4

Ongoing

KCM Race Survival 2026 Season 3
K-JUNGMAN
ASL Season 22
Super Anchor Qualifying S3
CSL Season 22: Qualifier 1
RSL Revival: Season 6
Esports World Cup 2026
Esports World Cup 2026: LCQ
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026

Upcoming

CSL Season 22: Qualifier 2
BSL 2026 LAN: Kraków
CSL 2026 AUTUMN (S22)
Acropolis #5
Acropolis #5 - TRS
Blizzard Classic Cup 2026
Acropolis #5 - GSA
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Calamity Invitational
Big Dog Cup 2026 Div 1
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
BLAST Open Fall 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.