Commit graph

40 commits

Author SHA1 Message Date
c6676c6681 Allow loading the DB without loading the merge bounds.
There are so many that it's a waste of memory and time to load those if they are not needed.
2021-02-21 00:01:38 +01:00
012b079e46 Fix combine not retrying the same axis multiple times 2021-02-21 00:00:42 +01:00
287f799b69 Optimize combines by storing the closest house in a direction.
This is a huge speedup. It's equivalent to using prefix sums. Needs a lot of memory.
2021-02-15 22:59:13 +01:00
f207d61455 Optimize combines by using a lookup table for layout pairs
This is significantly faster than having to go through lower bound hash tables all the time (20% of time was spent in there).
2021-02-15 17:29:43 +01:00
bcd3818929 Fix combine bound axis not being part of primary key
This did not impact results, as it only resulted in looser bounds and some bounds not being stored.
2021-02-15 16:45:10 +01:00
c8dc4e064d Add time output to the bot 2021-02-14 15:32:02 +01:00
8e94bcccb4 Add a bot for one-upping solutions from the leaderboard 2021-02-13 14:43:06 +01:00
9b02c0799a Add a way to merge subcity improvements into the main city 2021-02-12 04:58:46 +01:00
58c35762a2 Add subcity optimization 2021-02-12 04:07:42 +01:00
083d6a97b9 Add in-memory only databases 2021-02-11 12:00:55 +01:00
f694e4701a Allow Cities of any sizes
This will be useful for optimizing parts of the map independently.
2021-02-11 11:26:37 +01:00
109b5fac01 Add proper last step checks to layout gen 2021-02-03 23:08:05 +01:00
ab772f0a31 Increase the top layout count for combination attempts 2021-02-03 23:07:24 +01:00
b629369169 Remove spammy prints 2021-02-03 23:07:03 +01:00
affb99472c Cache lowest bounds for combining pairs 2021-01-17 20:27:42 +01:00
3facf2f297 Cache by last updates of left and right side instead of just coord 2021-01-13 22:32:02 +01:00
dacb278ef3 Add a cache; only try combining while merges lower price 2021-01-13 21:45:50 +01:00
148f59010e Stop combining if finished, update layouts between x and y 2021-01-13 04:11:33 +01:00
2b08da0809 Combining forever; adding to DB 2021-01-13 02:00:32 +01:00
63ed9e7fe0 Horizontal cuts (through transpose) 2021-01-13 01:43:23 +01:00
dfedf7b3ae Start combining from best pairs, stop at cheapest valid 2021-01-13 00:56:28 +01:00
751e0d81ff Vertical combines 2021-01-13 00:03:09 +01:00
5b10766ab9 Combination early implementation (vertical line) 2021-01-12 01:19:40 +01:00
b3cf776618 Do not redo steps that would not improve the solution 2021-01-11 05:36:11 +01:00
71aaabdec4 Print house count at start 2021-01-11 05:26:29 +01:00
9bd654a8e6 Draw from the layout DB 2021-01-11 05:25:40 +01:00
d4093d6000 Fix swapped x and y in log import 2021-01-11 04:54:34 +01:00
8e526c8c17 Add a tool for importing logs to the DB 2021-01-11 04:37:09 +01:00
e819099f92 Add an SQLite DB for layouts 2021-01-11 03:50:55 +01:00
f64d0c3c98 Dual move optimization (WIP, useless?) 2021-01-09 22:13:21 +01:00
28567a0b3f Split into multiple modules 2021-01-07 16:16:16 +01:00
5ee3f236be Pairwise merging; cleanup 2021-01-07 00:58:09 +01:00
2d1b76cd6e Remove unnecessary prints 2021-01-06 20:09:15 +01:00
9fda072a13 Optimize candidate search 2021-01-06 19:27:15 +01:00
ce4d26ec67 Introduce rectangles 2021-01-06 16:51:09 +01:00
d6fd306c61 Optimized with a maintained HouseLayout 2021-01-06 14:39:15 +01:00
a01fa30954 Randomized improvements, finding best
Takes best close house to a random house
2020-12-23 16:29:33 +01:00
3d17279613 Randomized improvements
Randomly choose one close cheaper house and try to move there.
2020-12-23 05:18:20 +01:00
748d9eaacd Random generation 2020-12-23 04:17:52 +01:00
0a273d6594 Random generation 2020-12-23 04:16:16 +01:00