• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 03:09
CEST 09:09
KST 16:09
  • 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 Call7[ASL22] Ro24 Preview: Summer's End9Serral wins HomeStory Cup 2915Serral wins Maestros of the Game 244ByuL, and the Limitations of Standard Play3
Community News
New 3v3 BGH Ladder (and more) on ShieldBattery!23Weekly Cups (August 17-23): Zerg dominate the week2Weekly Cups (August 10-16): SHIN doubles2GSTL Returns in 2026!45Weekly Cups (Aug 3-9): Protoss get shut out7
StarCraft 2
General
Starcraft2 player guess game is Coming~! SC4ALL II: SC2 Player Announcement 6/8 - Maru How would you feel about frequent/monthly balance patches for SC2? Weekly Cups (August 17-23): Zerg dominate the week PhD study /w SC2 - help with a survey!
Tourneys
2026 GSTL Announcement IntoTheTV X SOOP SC2 League : Weekly & Monthly PIG STY FESTIVAL 8.0! (13 - 23 August) Sparkling Tuna Cup - Weekly Open Tournament WORTEX 2026 - Hungarian SC2 Finals Budapest
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
New 3v3 BGH Ladder (and more) on ShieldBattery! 25 Years Since Brood War Patch 1.08 BW General Discussion Looking 4 Yaroslav: Enemy, Korchagin, WCG, Ukraine Pros React To: First 'Fastest' Map in ASL History
Tourneys
Brood War in Budapest ! WORTEX 2026 BW Finals [ASL22] Ro24 Group F [ASL22] Ro24 Group E Escore Tournament - Season 3
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
US Politics Mega-thread Russo-Ukrainian War Thread Artificial Intelligence Thread Canadian Politics Mega-thread Dating: How's your luck?
Fan Clubs
The Creator Fan Club MarineLorD Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! Anime Discussion Thread
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023 NBA General Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
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
Hello guys!
LIN1s
Customize Sidebar...

Website Feedback

Closed Threads



Active: 3317 users

Zerg Build Order optimizer. - Page 8

Forum Index > SC2 General
Post a Reply
Prev 1 6 7 8 9 10 58 Next
Deleted_143
Profile Joined October 2010
Australia256 Posts
Last Edited: 2010-10-13 09:07:00
October 13 2010 09:06 GMT
#141
--- Nuked ---
Almania
Profile Joined September 2010
145 Posts
October 13 2010 09:17 GMT
#142
I lolled too. But seriously, C# or Java is the right tool for the job here.. for ease and speed of development esp. with threading.
Revilo
Profile Blog Joined October 2010
Germany23 Posts
October 13 2010 09:19 GMT
#143
On October 13 2010 18:04 Almania wrote:
And never will be...

Show nested quote +
How do you put in the constraint of keeping time as low as possible?

That'd be the fitness test. ie maximize fitness where fitness is the negative of the time taken.


How would you factor in the actual achievement of the required number of units/buildings? i.e. what score does a build get that only builds 6 roaches in 4:20 compared to one that builds 7 roaches in 4:40. I mean do we just toss out the builds that dont achieve our required number of roaches or can we perhaps put them in a pool for additional gene concatenation if their build order time is lower than the current build order timing of the best strategy that fulfills the requirement. This might actually make the algorithm more malleable and allow for various "close" ways of getting 7 roaches of being recorded. Like the top 5 BO's to get 7 roaches that are all within 10 game seconds of each other. This way one can really see whether there are some more pro econ or pro harass builds in there.

Not to mention this would work well with the intermittent constraint problems people want to see. i.e. first i want to pump 2 fast roaches, then i want to transition into 5 hydras + 5 roaches, finally i want to get 2 infestors + 10 hydras + 10 roaches, etc...
Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
Almania
Profile Joined September 2010
145 Posts
Last Edited: 2010-10-13 09:40:04
October 13 2010 09:33 GMT
#144
I can't speak for what Lomilar has done, but yes you could just attach a high negative value (ie 2 minutes) to those genomes that don't meet the criteria rather then just culling them directly. You'd have to experiment to find what convergences fastest.. same as every thing else. Would love for this to be open sourced (nudge nudge .

I do like the idea of having several build orders displayed.. for instance I'd take overpool over 10 pool if the difference is 1 second on the roaches, yet the BO finder can't (and shouldn't) make that decision for me.
HFR-TV
Profile Blog Joined September 2010
France21 Posts
October 13 2010 10:04 GMT
#145
Could you get an answer for an optimal fast expand build ? hatch 12/13/14 ? pool 12/13/14 ? pool/gaz first for speed or hatch ?
HFR TV la télé des non newbies
Noxie
Profile Blog Joined April 2010
United States2227 Posts
October 13 2010 10:09 GMT
#146
I think this is great. I think you are thinking it will be a lot more detrimental then it actually would be. The fact of the matter is that players have to adapt to a ton of things. We are not computers and we can not make sure everything happens at this time. I am sure this will help go in the right direction but it will not be that big of a factor and "ruin" the game scene.
Shikyo
Profile Blog Joined June 2008
Finland33997 Posts
October 13 2010 10:14 GMT
#147
On October 13 2010 09:28 Lomilar wrote:
Show nested quote +
On October 13 2010 09:24 tsuxiit wrote:
...I somehow doubt this program is as impressive as you claim.

Say you told it you wanted to make 50 hydralisks. There are an extreme number of variables in that equation; when do larva start to appear at a new expansion? When can a queen get there? Should you expand 3 times as soon as possible or delay them? If so, by how much? I mean, how does your program possibly determine and optimize hundreds of precise timings? Does your claim that it 'learns' just mean that it gives you limited information as to how to 'optimize' a build once you already execute it?


Give me a desired build. Something like, the fastest way to some mutalisks, or something like that.

There are indeed an extreme number of variables in that equation. I have programmed some tricks in there, such as waiting for a building to pop before doing anything more. I haven't done others, like building a second queen at your main while waiting for your expo.

My claim is, you give me a desired destination (10 lings, 5 roaches, 7 mutalisks), and within an hour or two, or maybe less, I will give you a build like the above, telling you how to do it very quickly.

What's the fastest way to get 8 mutalisks while having sufficient defense against hellion harrass, cloaked banshees, and afterwards the fastest way to get enough roaches to defend against the thor-hellion push at 14 minutes?

If it's in a vacuum, this is, in fact, entirely useless for everything other than sophisticated rushes.
League of Legends EU West, Platinum III | Yousei Teikoku is the best thing that has ever happened to music.
Ropid
Profile Joined March 2009
Germany3557 Posts
October 13 2010 10:43 GMT
#148
On October 13 2010 19:14 Shikyo wrote:
Show nested quote +
On October 13 2010 09:28 Lomilar wrote:
On October 13 2010 09:24 tsuxiit wrote:
...I somehow doubt this program is as impressive as you claim.

Say you told it you wanted to make 50 hydralisks. There are an extreme number of variables in that equation; when do larva start to appear at a new expansion? When can a queen get there? Should you expand 3 times as soon as possible or delay them? If so, by how much? I mean, how does your program possibly determine and optimize hundreds of precise timings? Does your claim that it 'learns' just mean that it gives you limited information as to how to 'optimize' a build once you already execute it?


Give me a desired build. Something like, the fastest way to some mutalisks, or something like that.

There are indeed an extreme number of variables in that equation. I have programmed some tricks in there, such as waiting for a building to pop before doing anything more. I haven't done others, like building a second queen at your main while waiting for your expo.

My claim is, you give me a desired destination (10 lings, 5 roaches, 7 mutalisks), and within an hour or two, or maybe less, I will give you a build like the above, telling you how to do it very quickly.

What's the fastest way to get 8 mutalisks while having sufficient defense against hellion harrass, cloaked banshees, and afterwards the fastest way to get enough roaches to defend against the thor-hellion push at 14 minutes?

If it's in a vacuum, this is, in fact, entirely useless for everything other than sophisticated rushes.


From the explanations in this thread, the program uses as input a starting state and an end state. You could run it two times, first for your desired defenses: zerglings with speed or roaches, or whatever you deem as sufficient defense. After that, you can use that situation as the start state for a second run, with the 8 mutalisks situation as the new end state.
"My goal is to replace my soul with coffee and become immortal."
Revilo
Profile Blog Joined October 2010
Germany23 Posts
October 13 2010 10:44 GMT
#149
On October 13 2010 18:33 Almania wrote:
I can't speak for what Lomilar has done, but yes you could just attach a high negative value (ie 2 minutes) to those genomes that don't meet the criteria rather then just culling them directly. You'd have to experiment to find what convergences fastest.. same as every thing else. Would love for this to be open sourced (nudge nudge .

I do like the idea of having several build orders displayed.. for instance I'd take overpool over 10 pool if the difference is 1 second on the roaches, yet the BO finder can't (and shouldn't) make that decision for me.


So I just had lunch with a buddy of mine (he is working towards his PhD in Computer Science soon) and he thought about the idea and said it would work quite well. In fact, you dont have to worry about a lot of details when you use Genetic Algorithms since the algorithm should do the work and not you. So any human post-processing should be kept minimal (for example, looking through multiple almost equal builds). However I think it should be not too hard to put constraints up that will get you what you want.

Instead, i think it would be awesome to just give particular starting points for the algorithm. Like, what is the fastest route to 5 roaches given that i did a 10 overlord instead of 9 overlord.

I myself am finishing my Masters in Bioinformatics. I have been exposed to these optimization algorithms but i have never made a big project out of them. So I think it would be great to start implementing it and then giving it to the world as open source software.

I plan on starting the project tonight, I will be implementing it in python since its the language i am most comfortable with and it has some useful stuff to make it easier to program. It most probably will run slower than the C or Java implementations, but I am certain it will be fast enough and just as good. Since in the end it really only matters about tweaking the parameters to help the algorithm find solutions faster. I will post with updates as soon as I get this off the ground. Probably I will open a blog and encourage people to help answer some questions which will no doubt come up during development.

If all goes well, I will make a simple GUI and installer for all OS's, since python is platform independent (if you program correctly ). PM me if you have any interesting considerations or ideas about it, but also post here in case others are also going to attempt this stuff. I am open to suggestions
Looking for practice partners on EU! Message me if you like :) "I dont wtach porn anymore, I watch Socke" - Rotterdam
jdobrev
Profile Blog Joined February 2010
Bulgaria162 Posts
October 13 2010 10:46 GMT
#150
it might be somewhat useful for theoretical purposes but it's not going to change anything, certainly not on a pro level.game is just too dynamic for that kind of stuff, buddy.
A nice tool to have but nothing more. if you want to see how fast you can get 2 colossi you just go, test some BOs and compare the times. then have a friend do throw all kind of shit at you until you find the fastest build where you actually survive.
Eluadyl
Profile Joined May 2010
Turkey364 Posts
Last Edited: 2010-10-13 11:22:46
October 13 2010 10:55 GMT
#151
I and a few friends (all scientists/phd students of different majors) had a similar program for BW from years back, we used to optimize it as the game got patched. After reaching a certain point where we were running week long simulations to try and calculate even the tricky situations, we got bored and overwhelmed. I say it's not worth it unless you put in the effort to get the input directly from game output and make it into a proper Ai where it can react to scouting info, enemy BO's, etc. And this would have to be done in reasonable amounts of time to be played against. Overly complicated chess simulator if you ask me.

Therefore, I think you should optimize it as best as you can so people can customize their own input, including extractor tricks and shit, then release it opensource (better free software) so others can work on it too. :D

TL;DR: release it opensource.
Not enough energy
hns
Profile Joined January 2010
Germany609 Posts
October 13 2010 11:05 GMT
#152
On October 13 2010 12:36 kevmo wrote:
+ Show Spoiler +

On October 13 2010 12:09 BladeRunner wrote:
I have a friend who's a genius at CS, worked on the AI they put in robots sent to the moon, and I've had many interesting conversations with him about Machine Learning (a topic he is quite interested in). I, being a meer CS bachelor's degree holder was of course familiar with genetic algorithms, but I learned by talking to him that they're widely considered suboptimal to experts in the field.. They tend to get stuck on local maxima/minima.

According to him (and unfortunately I can't really back this up as I'm not an expert), support vector regression is better in almost every case.

From my experience, genetic algorithms are cool for finding unsuspected solutions to a problem, and many various solutions... not exactly the best way to find the BEST solution reliably. I think you could take advantage of this with your tool is to look at a longer target and the result would be a handful of optimal solutions that the player could choose between in the early-game based on scouting, etc.


Support vector machines are used for classification problems (given an input and a set of data, produce a function which most reliably predicts that data). Genetic algorithms are used for search problems (given a solution space, find the "best" solution for some definition of best).

That said, genetic algorithms usually are not the best solution for a given search problem. The advantage lies in the ease of implementation, as well as general applicability. Essentially, I consider genetic algorithm the go to algorithm when you don't really know a better way to solve a search problem. Often in complicated problems (such as build order optimization) genetic algorithms are a good way to get something working.

I obviously don't know the details of the OP's implementation, but there are possibly optimizations to be done even with genetic algorithms. For instance, you can prune solutions early that don't meet certain easily calculable metrics. The easiest are required buildings/units for a given set of goals. In the 7 roach example, you know that you will need at the LEAST a spawning pool, roach warren, extractor, 1 overlord (because 6 drones - 3 for buildings + 14 supply of roaches = 17 supply), and 7 roaches in the build. Any build that does not contain these items simply is not valid, and does not need to be considered as a solution. Furthermore, you can probably speed up evaluation with some simple formulas based on required minerals. For example, you know you need a certain amount of minerals and gas to get all the required buildings and units, and there are easy heuristics for computing payoff time for building workers. Using these numbers, it should be easy to prune off say, a 6 pool as being clearly inferior to a 7 pool, etc.

In terms of implementation, the latter optimization can be thought of as keeping track of the best builds you have seen so far, and immediately rejecting anything that is slower by a certain margin using simple heuristics (e.g. I have seen 7 roaches in 5:00 so starting my spawning pool at 4:30 is clearly not going to be any better). This would involve finding any critical paths and resource requirements for a given goal, but that can be precomputed once and then used over and over again as you evaluate solutions.


I have to agree here. I don't know if your post was motivated by the famous branch&bound-algorithms (wiki), but you give essentially the idea of those here. This would definately give one hell of a speedup, although I have no clue if this is useful/implementable in the context of genetic algorithms.

@Lomilar: Does your algorithm keep track of certain "keypoints" during the build or do you have only the fitness value (that is, overall build time I guess) to compare with? Even in the latter case you could, as kevmo suggested, just add something like "if [current-build-time] + [build-time-of-missing-stuff] > [best-known-build-time] => stop". That means you'd have to know what's missing and take building multiple stuff at the same time into account etc, but I guess it'd already help speed up the whole thing a lot. Don't know if it's too much work for too little benefit, though.

Very interesting topic, and obviously very nice programming!
ZerO, Action, Neo.G_Soulkey & FlaSh fanboy~~
Invictus
Profile Blog Joined September 2009
Singapore2697 Posts
October 13 2010 11:27 GMT
#153
This is a good simulator for creating 'rushes' and would be the most optimal way to create such 'rushes'. Example: the quickest way to build 6 zerglings,2 zealots,2 bunkers. Beyond the early game, the game has soany changes that the build order can't adapt to it

Although it still is impressive as it gives people a general idea on how builds are optimised and would allow for some rough calculation of timing rushes(that is, if one was made for terran and protoss) since timing rushes usually consists of an early +1 or a set number of high tier units(thor hellion push, colossus push)
Lee Jaedong Fighting!
theSAiNT
Profile Joined July 2009
United States726 Posts
October 13 2010 11:54 GMT
#154
There's no moral quandary here. It does not alter the game in any way to give an unfair advantage to one party. It is a perfectly legitimate tool. Release it, preferably in an open format so others can have a look and play with it.
Shikyo
Profile Blog Joined June 2008
Finland33997 Posts
October 13 2010 11:57 GMT
#155
Well, probably a better example would be, what is the build that gets the maximum amount of drones out while getting 10 Roaches by 7 minutes?
League of Legends EU West, Platinum III | Yousei Teikoku is the best thing that has ever happened to music.
SwampZero
Profile Joined September 2010
Greece350 Posts
October 13 2010 12:39 GMT
#156
Please make it so your program gives an income snapshot(mineral,gas,workercount) when it finishes a build. This would make it fairly easy to judge how economicy is a build while you code a better solution.
archy
Profile Joined August 2010
Norway22 Posts
October 13 2010 12:45 GMT
#157
Is there something wrong with the mineral counter? I noticed it lists alot of wierd mineral values. In the example you have for example 51, 52, 53 or 106 minerals, and minerals are collected 5 at a time..

Would be very interested to see this released. It would be a great consultant program like Rawr is for WoW players.
Glacius0
Profile Joined July 2010
Netherlands66 Posts
October 13 2010 12:47 GMT
#158
I might be wrong, but I get the feeling your build forgets that there is a limit of 3 larva where the hatchery won't spawn any additional larva. This is just my impression from having tried the build and having my 7th Roach pop @ 4:57.

I'm thinking of taking my drones off gas after reaching 7x25=175 gas and getting an expo.
dejavue
Profile Joined September 2010
Germany47 Posts
October 13 2010 12:47 GMT
#159
Seeing as there are some people here majoring in similar areas, wouldn't a collaborate effort make sense?

Just my two cents, I myself have no idea about programming of any sort, would however LOVE to see this program released...
Maybe it's tech issues, maybe he's just exhausted, MAYBE, JUST MAYBE, he wanted to dress as spiderman and web the shit out of his girlfriend / boyfriend / donkeyfriend without having people watch. - wormintrude
Risen
Profile Blog Joined March 2010
United States7927 Posts
October 13 2010 12:54 GMT
#160
On October 13 2010 21:45 archy wrote:
Is there something wrong with the mineral counter? I noticed it lists alot of wierd mineral values. In the example you have for example 51, 52, 53 or 106 minerals, and minerals are collected 5 at a time..

Would be very interested to see this released. It would be a great consultant program like Rawr is for WoW players.


Minerals ARE collected 5 at a time...
Pufftrees Everyday>its like a rifter that just used X-Factor/Liquid'Nony: I hope no one lip read XD/Holyflare>it's like policy lynching but better/Resident Los Angeles bachelor
Prev 1 6 7 8 9 10 58 Next
Please log in or register to reply.
Live Events Refresh
Next event in 2h 51m
[ Submit Event ]
Live Streams
Refresh
StarCraft: Brood War
Rain 1746
Soma 185
Dewaltoss 98
Mind 67
Icarus 9
ZergMaN 8
League of Legends
JimRising 607
C9.Mang0294
Super Smash Bros
Mew2King225
Other Games
summit1g4929
ceh9409
WinterStarcraft394
[ Show 10 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• lizZardDota2170
League of Legends
• Lourlo2072
Upcoming Events
Afreeca Starleague
2h 51m
Mini vs Calm
Queen vs EffOrt
WardiTV Invitational
3h 51m
ByuN vs TBD
SHIN vs TBD
Classic vs TBD
Patches Events
8h 51m
Replay Cast
16h 51m
The PondCast
1d 2h
Replay Cast
1d 16h
Escore
2 days
IntoTheTV X SOOP
2 days
Korean StarCraft League
2 days
GSL
3 days
[ Show More ]
Replay Cast
3 days
Sparkling Tuna Cup
4 days
WardiTV Weekly
4 days
GSL
6 days
PiGosaur Cup
6 days
Liquipedia Results

Completed

CSL Season 22: Qualifier 1
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 2
RSL Revival: Season 6
Light Tournament 2026
BLAST Open Fall 2026
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

BSL 2026 LAN: Kraków
CSL 2026 AUTUMN (S22)
Acropolis #5
Acropolis #5 - TRS
Blizzard Classic Cup 2026
Acropolis #5 - GSA
Acropolis #5 - GSB
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
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.