Graph Search Framework (Concept for a strategic analysis program)

Created on 2024-08-09T20:43:02-05:00

Return to the Index

This card can also be read via Gemini.

High concept: framework to solve strategy and logistic problems (ex. complex towers of hanoi) by modeling the world as a graph, allowing problems to be defined as script functions that produce graphs and edges.

Build the code up in Nim/Rebol.

Code

The framework needs to handle getting a list of edges (choices) from the current node (world state.) We persist this data but mostly focus on the tips of the graph search, loading them back when some criteria calls for searching another branch.

It might also be necessary to pause a line of search and try another one, possibly returning to the previous one as well. For example we might ask that no more than 4 actions deep be examined, which in a chess game means after examining two rounds of white-black moves to backtrack and try another line of inquiry.

Externalizing different graph search doctrines (like beam search), as well as having some kind of work queue, possibly also distributing the search across cores and computers.

If we insert some 'validation' function step, we can immitate what TLA+ does as well. Convert temporal algebra to the pair of "given this state, what branches" and "given this state and branch, what outcome" and we can grind out temporal modeling problems.

Tools:

Problems: