Here is a fairly simple DNA Computation Simulator, that I wrote for Molecular and Quantum Computation.
It is not much to look at when running, so really it is only useful if you actually examine the code to see what is happening.
The crux of my approach in writing the simulator is generating all valid paths (below a maximum size) within a directed graph, and turning those paths into "DNA" strands that can be filtered for various things (such as length, start pattern, end pattern etc). This therefore lets us simulate the "computation by carving" aspect of DNA Computers, rather than the random/statistical/non-deterministic aspect.
run" that can be used to search a graph.