Welcome to SDS’s documentation!

Stochastic Diffusion Search (SDS) is a swarm intelligence algorithm. It has many interesting features, most significantly its simplicity, and the speed of its performance over suitable problems.

To see an animation that may help you to understand the process, go here.

The best introduction to the library is the README on GitHub, these pages are for reference.

Default Imports

When you import SDS, these members are available.

class sds.Agent(active=False, hyp=None)

Represents an agent, contains only an activity and a hypothesis, most of the time if activity is falsy then the hypothesis can be undefined.

sds.DH_uniform(hypotheses, rng)

Uniformly random hypothesis generation


Makes a function for halting after a fixed number of iterations

class sds.Swarm(agent_count=None, swarm=None, AgentClass=<class 'sds.standard.Agent'>)

Boolean testing

sds.TM_uniform(microtests, rng)

Uniformly random microtest selection

Indices and tables