Compare commits

..

2 Commits

Author SHA1 Message Date
592c4b6cc0 massive state space solver improvement: supercomp took ~10s, now ~40ms
achieved by imposing a 15 block limit on each board and changing the
internal representation from std::string to 4x uint64_t
2026-03-02 05:26:18 +01:00
c7361fe47e fix board goal rendering bug if no target block exists or board has no win condition 2026-03-01 00:30:06 +01:00

View File

@ -14,11 +14,18 @@
#include <tracy/Tracy.hpp>
#endif
// TODO: Manual movement is now completely broken
// TODO: Add some popups (my split between input.cpp/gui.cpp makes this ugly)
// - Clear graph: Notify that this will clear the visited states and move
// history
// - Reset state: Notify that this will reset the move count
// TODO: Add state space generation time to debug overlay
// TODO: Reduce memory usage
// - The memory model of the puzzle board is terrible (bitboards?)
// TODO: Improve solver
// - Move discovery is terrible
// - Instead of trying each direction for each block, determine the
// possible moves more efficiently (requires a different memory model)
// - Implement state discovery/enumeration
// - Find all possible initial board states (single one for each
// possible statespace). Currently wer're just finding all states
@ -30,6 +37,8 @@
// TODO: Click states in the graph to display them in the board
// NOTE: Tracy uses a huge amount of memory. For longer testing disable Tracy.
// For profiling explore_state_space
auto main2(int argc, char* argv[]) -> int
{
@ -164,4 +173,4 @@ auto main(int argc, char* argv[]) -> int
CloseWindow();
return 0;
}
}