Commit Graph

96 Commits (a299c904015f09c65ee9c233917a2a5b1496cc0c)

Author SHA1 Message Date
magical a299c90401 day 22 python cleanup
also make part 1 work again
2022-12-22 20:56:46 -08:00
magical 77f02a8217 day 22 python part 2 2022-12-21 22:58:32 -08:00
magical 6960c73439 day 22 python part 1 2022-12-21 21:35:46 -08:00
magical b7cfadf7b1 day 21 python part 2 2022-12-20 22:36:28 -08:00
magical cef93e325f day 21 python part 1 solution 2022-12-20 21:56:12 -08:00
magical c4d168689f day 21 rename some files 2022-12-20 21:38:27 -08:00
magical c46feecce9 day 21 go+python solution 2022-12-20 21:35:31 -08:00
magical cb4b8295e1 day 20 python cleanup 2022-12-19 22:31:14 -08:00
magical 009fa446c2 day 20 python solution 2022-12-19 21:34:48 -08:00
magical 47c10a1027 day 19 more optimizations 2022-12-19 20:53:27 -08:00
magical 634e0e7eaa day 19 cleanup 2022-12-19 11:42:47 -08:00
magical ee05144644 day 19 part 2 solve 2022-12-19 11:15:09 -08:00
magical c572351a00 day 19 solve??? 2022-12-19 02:51:40 -08:00
magical 98ff1e0cf9 day 19 checkpoint 2022-12-19 01:55:09 -08:00
magical fd84db7072 day 19 wip 2022-12-18 23:08:55 -08:00
magical 88040394db day 18 ivy solution 2022-12-18 17:26:40 -08:00
magical 772dda0bbc day 18 python fix a flood fill bug
not sure how this ever worked
2022-12-17 22:37:20 -08:00
magical 4b5b25e56b day 18 python cleanup 2022-12-17 22:07:34 -08:00
magical 71958605b6 day 18 python solution 2022-12-17 21:41:26 -08:00
magical 910da239c0 new A* optimization: worst-case pruning
i'm not sure if this has been described in the literature exactly but it
is similar to existing branch-and-bound techniques.

it doesn't speed up the search directly (the number of visited nodes is
the same) but it does cut the queue length down by an order of magnitude
and shave a couple seconds off of day 16, presumably due to reduced memory
pressure or something.
2022-12-17 20:15:25 -08:00
magical e9ada04aa9 lib/astar: report final queue length 2022-12-17 19:29:26 -08:00
magical e1fb37d229 lib/astar: handle inconsistent heuristics better
before pruning a node we've already visited, we need to check if it has
a better cost.
2022-12-17 19:27:28 -08:00
magical 5a7c8ef732 day 15 svg visualization 2022-12-17 16:36:01 -08:00
magical 032c1df356 day 16 reshuffle files 2022-12-17 15:29:48 -08:00
magical 64a09bb238 day 16 hide my shame 2022-12-17 15:29:32 -08:00
magical 6b0bf5d29b day 16 sample input 2022-12-17 15:26:04 -08:00
magical 2e18e87a95 lib/astar: fix return value for failed search 2022-12-17 15:22:18 -08:00
magical 043a57608d day 16 python part 2 solve with A*, and cleanup 2022-12-17 15:10:28 -08:00
magical bbc4075137 day 17 python tweaks 2022-12-17 13:31:57 -08:00
magical 8c1696fa32 day 16 speed up search by shrinking the graph 2022-12-17 13:20:30 -08:00
magical de987b60db day 17 python cleanup 2022-12-17 13:20:30 -08:00
magical 799fefa59a day 17 python part 2 solve 2022-12-17 13:20:30 -08:00
magical db649d4a56 day 17 python refactor 2022-12-17 13:20:20 -08:00
magical 40b9f86f4c day 17 part 1 python 2022-12-17 13:20:20 -08:00
magical a54304686d day 16 python alternate solution (astar) 2022-12-17 13:20:20 -08:00
magical 014b7daf09 day 16 part 2 python, finally
ugh
2022-12-17 13:20:20 -08:00
magical 03710f579a day 16 python part 1 solve
this shouldn't work
2022-12-17 13:19:18 -08:00
magical f39fbe1890 day 16 python attempt
works on the sample input, doesn't work on the real input
2022-12-17 13:18:50 -08:00
magical 7b40516b66 day 15 part 2 alternate solution 2022-12-15 12:55:42 -08:00
magical 2b0ef33a08 day 15 python wip optimizations 2022-12-14 22:50:07 -08:00
magical 5f76b4e69d day 15 python part 2 2022-12-14 22:47:37 -08:00
magical af21ad12cc day 15 python part 1 2022-12-14 21:26:18 -08:00
magical 37e5ab92e0 day 14 python more cleanup 2022-12-14 01:02:53 -08:00
magical 80cf54d600 day 14 python optimize 2022-12-13 22:18:59 -08:00
magical 99fa431441 day 14 python cleanup 2022-12-13 22:13:50 -08:00
magical 96a5961ed4 day 13 python solution 2022-12-13 21:45:47 -08:00
magical 85e623a9db day 13 python cleanup
convert our less function into a real cmp function
2022-12-13 10:39:36 -08:00
magical 6c175f2d8e day 13 python use json instead of eval
hat tip to benharri
2022-12-13 10:35:29 -08:00
magical 10293ec22d day 13 python solution 2022-12-12 21:23:29 -08:00
magical f2fc82c55f add astar module and alternate solution for day 12 2022-12-12 12:55:37 -08:00