|
Macrorush is a software which uses genetic algorithms to calculate optimal build orders based on user inputted objectives. The latest version covers all three races, and has no restrictions or limitations whatsoever. To try it: http://www.macrorush.com/
For the ones who know others build order generators, this one has some distinct functions like "macro score", "manual adjust", and so on. For the ones who don't know what is a build order generator, it's a program that tries to calculate what is the best sequence to build in order to fullfil some goal, for example, what's the fastest way to get 2 blue flame hellions? The program tries to answer, and after some time (it takes some time to complete the analysis) shows the best solution it found.
|
United States7927 Posts
Hmm... downloading now. Looks promising!
|
Been playing around with it a bit, here are the changes and additions I personally would like to see
-Ability to save/load build orders -Change the layout so it's easier to access different values, it's a little annoying to have to scroll all the way down to change tech options -Allow setting a goal for mineral/gas -Allow different ways to display the build order so there's a yabot format and a detailed format that allows you to see when exactly units finish -Allow adding/removing checkpoints -Allow setting time limits in each checkpoints
I also really like the manual adjust feature, but it becomes quite bothersome to deal with it when you have huge build orders. I'd prefer it if you could just modify the supply at which the buildings/units are built instead of having to move them up/down.
Last thing, for some reason the program seems to be extremely slow. For example, it does 7000 simulations in about a minute, while SCFusion already did a few millions
Hope you keep updating this, I see potential in it.
|
Shintuku, thanks for the feedback. We'll consider some changes in future.
About the manual adjust, there is a reason for it be the way it is. That's the only way you can determine an exact build order. I agree that showing the supply count is better to easily understand the BO, but it's a good way to READ a build order, not the best way to WRITE one. Let's say you wanna set the BO to: 9 supply depot 10 barracks 11 marine 12 marine 13 marine 14 barracks It's hard to know just looking at this list if at the time the second barracks starts we have 14 supply due 11 scv's and 3 marines, or due 12 scv's and 2 marines (maybe the 3rd marine is still on queue), so it's hard to know if I need 11 or 12 scv's. To set exactly what you want, you set in manual adjust the exact sequence. After processing, you can click on "update other tabs" to see the BO in "supply count" format.
About the performance, I recommend you to compare not the number of simulations per minute, but the number of minutes to reach the goal. I really can't say how other build order generators simulate each game, but there is clearly a huge difference in our software. We do not simulate millions of games, but with much fewer simulations we evolve to objective with similar speed. Furthermore, you can compare the result, but not just the number of game seconds the program tells you some BO takes. You should enter the game, simulate the BO and see the real duration. All build order generators have some deviation in time from a real BO execution, including macrorush. But to know what is the best BO, the only way is to test each one inside the game. Macrorush can not tell you allways the best option, but we think it tell you a very good option in most cases, and it let you try the "perfection" with manual adjust.
|
cool! Cant wait to check it out! Thanks!
|
I would love to check this out! but does it work on mac osx? :/
|
I ran into a rather odd issue..... I installed the program yesterday and ran it once to tinker. I then loaded up my computer today... and when I ran the program it went into some verification process and then popped up a prompt....
"Cannot Start Application
Cannot continue. The application is improperly formatted. Contact the application vendor for assistance."
I can click for more details where it provides an error sheet if that would be helpful to you? I just don't want to paste it up here.
I'm on Windows 7.
PS: Slick looking app!
|
Is this a permanent error? It's still showing this message? We'll try to find out what happened. Meanwhile you can try to install again and see if it works.
|
Originally I coulnd't reinstall (same error would popup).
Oddly enough it allowed me to install now..... will keep you posted if I see any errors pop up again! :D
|
Shintuku, I look back to your list of suggestions and noticed that you asked for "a detailed format that allows you to see when exactly units finish", but it's already there, the second tab shows you the detailed build order, with start and finish for each unit, plus minerals, gas and supply step by step.
TheAlchemist89, Good to know. It seems that some download file was corrupt, fresh reinstall is always a good test :D
|
Gonna take a look at it when I come home. I'll edit once I have something to add
|
Firstly, it's great to see other projects working on build order optimisers. More projects encourages more innovation 
On July 23 2011 21:21 MarcoBrei wrote: About the performance, I recommend you to compare not the number of simulations per minute, but the number of minutes to reach the goal. I really can't say how other build order generators simulate each game, but there is clearly a huge difference in our software. We do not simulate millions of games, but with much fewer simulations we evolve to objective with similar speed.
While I agree that you can't necessarily compare the number of games simulated per second, I tried out your app on the traditional 7 roach rush (7 roaches with 1 queen) and I think it's struggling to find the optimal solution. I had it running for about 20 minutes (~40,000 games simulated) after which it said "Evolution process has stalled" and here are the results:
+ Show Spoiler +[Checkpoint:1 Generation: 1]
8 Spawning pool 9 Overlord 9 Queen 12 Extractor 12 Roach Warren 13 Roach 17 Overlord 17 Roach 19 Overlord 19 Roach 22 Roach 24 Roach 27 Roach 30 Roach Time: 6:02 Number of Workers: 16 Macro Score: 15 Power score: 17
___________________________________
[Checkpoint:1 Generation: 2]
9 Overlord 9 Spawning pool 8 Queen 12 Roach Warren 12 Extractor 11 Roach 13 Overlord 13 Roach 15 Roach 17 Roach 19 Roach 21 Roach 23 Roach Time: 5:28 Number of Workers: 9 Macro Score: 8 Power score: 17
___________________________________
[Checkpoint:1 Generation: 3]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 13 Roach Warren 12 Extractor 11 Roach 13 Overlord 13 Roach 15 Roach 17 Roach 19 Roach 21 Roach 23 Roach Time: 5:17 Number of Workers: 9 Macro Score: 8 Power score: 17
___________________________________
[Checkpoint:1 Generation: 4]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 14 Extractor 13 Roach Warren 12 Roach 14 Overlord 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach Time: 5:15 Number of Workers: 10 Macro Score: 9 Power score: 17
___________________________________
[Checkpoint:1 Generation: 5]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 14 Extractor 13 Overlord 13 Roach Warren 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach Time: 5:15 Number of Workers: 10 Macro Score: 9 Power score: 17
___________________________________
[Checkpoint:1 Generation: 6]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 14 Extractor 13 Overlord 13 Roach Warren 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach Time: 5:15 Number of Workers: 10 Macro Score: 9 Power score: 17
___________________________________
[Checkpoint:1 Generation: 7]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 14 Extractor 13 Overlord 13 Roach Warren 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach Time: 5:15 Number of Workers: 10 Macro Score: 9 Power score: 17
___________________________________
[Checkpoint:1 Generation: 8]
9 Extractor trick (extractor, drone, cancel extractor) 10 Overlord 10 Spawning pool 9 Queen 14 Extractor 13 Overlord 13 Roach Warren 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach Time: 5:15 Number of Workers: 10 Macro Score: 9 Power score: 17
___________________________________
[Checkpoint:1 Generation: 9]
10 Overlord 11 Overlord 11 Spawning pool 13 Queen 19 Extractor 18 Overlord 18 Extractor 17 Roach Warren 16 Roach 19 Roach 21 Roach 23 Roach 25 Roach 27 Roach 29 Roach Time: 5:11 Number of Workers: 15 Macro Score: 14 Power score: 17
___________________________________
[Checkpoint:1 Generation: 10]
10 Spawning pool 10 Overlord 11 Queen 15 Extractor 14 Roach Warren 13 Roach 15 Overlord 15 Roach 17 Roach 19 Roach 21 Roach 23 Roach 25 Extractor 24 Roach Time: 5:01 Number of Workers: 10 Macro Score: 8 Power score: 17
___________________________________
[Checkpoint:1 Generation: 11]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 14 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 12 Power score: 17
___________________________________
[Checkpoint:1 Generation: 12]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 14 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 12 Power score: 17
___________________________________
[Checkpoint:1 Generation: 13]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 14 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 12 Power score: 17
___________________________________
[Checkpoint:1 Generation: 14]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 14 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 12 Power score: 17
___________________________________
[Checkpoint:1 Generation: 15]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 14 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 12 Power score: 17
___________________________________
[Checkpoint:1 Generation: 16]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 15 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 13 Power score: 17
___________________________________
[Checkpoint:1 Generation: 17]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 15 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 13 Power score: 17
___________________________________
[Checkpoint:3 Generation: 17]
10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 12 Overlord 12 Spawning pool 15 Queen 19 Extractor 18 Overlord 18 Roach Warren 17 Extractor 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach 26 Roach 28 Roach Time: 4:58 Number of Workers: 14 Macro Score: 13 Power score: 17
___________________________________
If I do the same simulation in SCFusion it gets this build order within about 5s:
+ Show Spoiler +10 Overlord 10 Extractor Trick 13 Spawning Pool 12 Extractor 11 Overlord 11 Move Drone To Gas 11 Move Drone To Gas 11 Roach Warren 10 Queen 12 Spawn Larvae 12 Roach 14 Roach 16 Roach 18 Move Drone To Gas 18 Roach 20 Roach 22 Roach 24 Roach
Waypoint 1 satisfied: 4:44.38: 134M 52G 3L 0L 0L 39E 26/ 26S Income: 297M 114G Buildings: 1 Hatchery 1 Extractor 1 Spawning Pool 1 Roach Warren Units: 10 Drone 3 Overlord 1 Queen 7 Roach Upgrades:
If you leave SCFusion running a bit longer it usually gets this BO within a minute:
+ Show Spoiler +10 Extractor Trick 11 Overlord 12 Spawning Pool 15 Extractor 16 Move Drone To Gas 16 Move Drone To Gas 16 Queen 18 Move Drone To Gas 18 Overlord 18 Overlord 18 Roach Warren 17 Spawn Larvae 17 Roach 19 Roach 21 Roach 23 Roach 25 Roach 27 Roach 29 Roach
Waypoint 1 satisfied: 4:38.03: 232M 54G 2L 0L 0L 39E 31/ 34S Income: 516M 114G Buildings: 1 Hatchery 1 Extractor 1 Spawning Pool 1 Roach Warren Units: 15 Drone 4 Overlord 1 Queen 7 Roach Upgrades:
I'm not sure why MacroRush is struggling with this, but perhaps something to look into?
Also, I found that sometimes I can't stop it in the middle of developing a build (Stop button is disabled), is that intentional?
I also noticed that it seems to use the queen's spawn larvae ability without showing it - any chance you could add that to the output so it's clear?
|
CarbonTwelve, Have you tried to execute the BO in SC2? Some build order generators suggest valid build orders, but with (very) unreal execution time. If the time is not accurate, you must test the BO in game. Macrorush may have performance improvements, but it's a hard task, and the developers have no much time to invest (unfortunately we have to work to pay the bills, and also we want some free time to play SC2 ).
The stop button is disabled intentionally when a strong mutation is happening with the cromossomes (build orders). If we let you to click in stop, you could wait a lot until the application really stops.
It's assumed that when you have a Queen, you are always injecting larva, the same way it's assumed when you have a extractor done you'll put 3 drones on it. We think this way the BO would be more simple to read.
|
On August 02 2011 06:36 MarcoBrei wrote: CarbonTwelve, Have you tried to execute the BO in SC2? Some build order generators suggest valid build orders, but with (very) unreal execution time. If the time is not accurate, you must test the BO in game.
I wrote SCBuildOrder & SCFusion, and have often tested the times in game for various builds. I can usually get within 1-2s of the suggested times from its output. Try it yourself if you like.
Macrorush may have performance improvements, but it's a hard task, and the developers have no much time to invest (unfortunately we have to work to pay the bills, and also we want some free time to play SC2  ).
Yes, I understand performance improvements are hard, and I suspect ultimately you'll find yourself limited by the language you're using (I'm guessing it's C#?). I also definitely understand the limitations of time to invest in the project as I often struggle with it myself.
The stop button is disabled intentionally when a strong mutation is happening with the cromossomes (build orders). If we let you to click in stop, you could wait a lot until the application really stops.
I don't think you should limit what the user can do though. If the user wants to stop processing (ie, they want to free up the CPU usage), they should be able to do so without killing it via the task manager.
It's assumed that when you have a Queen, you are always injecting larva, the same way it's assumed when you have a extractor done you'll put 3 drones on it. We think this way the BO would be more simple to read.
That's not always the best thing though - sometimes you'll want to use queens for creep tumors, and sometimes you don't need 3 workers on gas. One improvement you might want to look at for that is gas micro options (whether to always put 3 on gas, put 1 at a time, or move back and forth as required) - check SCFusion if you want to see an example of this.
|
Its downloading a 0Kb file foe me
|
CarbonTwelve, I'll test the build orders again, but when I did it in the past with SCBuildOrder it suggested a build order 30 seconds faster than the real time (4:30 -> 5:00). I'm not a pro gamer to execute a build order with perfection (I'm a programmer, not a pro gamer ), but I tried my best and still got an unreal time. The gas micro options is something great to see in a program, but it's not pratical at all to do in game. Most people (90% or more) won't be able to properly execute BO's with micro gas management, so we decide do simplify. Anyways, thanks for your concern about our software.
|
Finally I had some time to test build orders. The 7 roach suggested by SCFusion I was able to do in 4:53 (best time), never in 4:38. I think that it can be done better, not sure if in 4:38. And I recognize that this BO is still better than macrorush 7 roach.
In another test, I set SCFusion and Macrorush to get 1 marauder only. Result:
SCFusion 6 Supply Depot 6 Barracks (Naked) 6 Refinery 7 Move SCV To Gas 7 Move SCV To Gas 7 Move SCV To Gas 7 Barracks Tech Lab 7 Marauder Waypoint 1 satisfied: 2:58,15
Macrorush 7 Supply Depot 7 Barracks 7 Refinery 7 Tech Lab - Barracks 8 Marauder Time: 3:06
But when I tried to simulate the build orders in game, both could be done in exactly 3:07 (my best try, for both). In this case macrorush BO is a little better in macro perspective (1 additional worker). And the time suggested by SCFusion (2:58) seems to be impossible to achieve.
As I said before, macrorush will not always show the best solution, so I recommend people to try build orders in game, adapt with manual adjust to see new scenarios. Use it as an alternative software to try build orders. Also, macrorush seems to be accurate in estimated time, at least for terran build orders (other races were little less tested in matter of time accuracy).
|
Here's a replay of me doing the 7RR in ~4:41 with the above build order (I delayed my spawning pool a little, hence the extra couple of seconds): http://www.sc2replayed.com/replay-videos/11285
I had to upload it as a manual upload (normally for vid files) as the standard uploads aren't working atm on sc2replayed. You should still be able to download & watch it though, lemme know if there's issues.
Anyway, this at least shows what's possible. I'm sure I could do the marauder one too if you wanted proof on that. SCFusion has been tested multiple times on its accuracy and most build orders can be performed within a couple of seconds of the suggested times. You can also put the output into http://haploid.nl/sc2/build_order/ to confirm the times through another site. Eg, here's the 7RR:
+ Show Spoiler +10 Extractor Trick 11 Overlord 12 Spawning Pool 15 Extractor 16 Put 1 on Gas 16 Put 1 on Gas 16 Queen 18 Put 1 on Gas 18 Overlord 18 Overlord 18 Roach Warren 17 Spawn Larvae 17 Roach 19 Roach 21 Roach 23 Roach 25 Roach 27 Roach 29 Roach
Haploid gives a guide time of 4:36.
|
I got this with SCFusion in like 10 seconds as CarbonTwelve has stated, interesting that it skips the Queen and claims 2 seconds faster than the above build.
+ Show Spoiler +10 Spawning Pool 10 Overlord 10 Extractor Trick 12 Extractor 11 Roach Warren 11 Move Drone To Gas 12 Move Drone To Gas 12 Overlord 12 Move Drone To Gas 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach 24 Roach
Waypoint 1 satisfied: 4:34.11: 171M 53G 1L 0L 0L 0E 26/ 26S Income: 381M 114G Buildings: 1 Hatchery 1 Extractor 1 Spawning Pool 1 Roach Warren Units: 12 Drone 3 Overlord 7 Roach Upgrades:
This is what MacroRush gave me after ~30 mins
+ Show Spoiler +[Checkpoint:3 Generation: 21]
9 Spawning pool 10 Extractor trick (extractor, drone, cancel extractor) 11 Overlord 11 Roach Warren 10 Extractor 10 Overlord 10 Roach 12 Roach 14 Roach 16 Roach 18 Roach 20 Roach 22 Roach Time: 4:49 Number of Workers: 11 Macro Score: 9 Power score: 14
You both seem to be using a genetic solution here, maybe SCFusion has optimized the solution space or something. It seems to get to the answer much faster.
|
Have never tried these programs! Have to get them asap!
- Gj on making the program btw!
|
|
|
|