As a user of the OptimizationSolver I want the Optimization solver with many parallel configurations running simultaneously to get higher solution probability and a lower time to solution on both Loihi2 and CPU backends.
Conditions of satisfaction
User can explicitly invoke the number of parallel copies of the solver network in SolverConfig.
At runtime, the network state is read from the network with the best cost.
The user can give the solver a set of hyperparameters in SolverConfig which parameterize each copy of the network solver.
Acceptance Tests
For Loihi2 and CPU backends
Number of parallel copies of the network in SolverConfig results in an equivalent number of SNN + CostIntegrator copies on the SolverProcess and SolverModel.
ReadGate's RefPorts for solution readout and spike counters for cost reading are equal the number of copies of the network.
Solver network and solution readout processes are correctly connected.
The input set of hyperparameters are correctly propagated and distributed into the solver network copies.
At runtime, the network state is read from the network with the best cost.
User Story
As a user of the OptimizationSolver I want the Optimization solver with many parallel configurations running simultaneously to get higher solution probability and a lower time to solution on both Loihi2 and CPU backends.
Conditions of satisfaction
Acceptance Tests
For Loihi2 and CPU backends
Tasks
Lava version:
I'm submitting a ...
Other information: