You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's misleading/confusing to provide simulated annealing sampler (and exact solver) as part of dimod library. The problem is not just in code organization, but the fact the dimod.reference.SimulatedAnnealingSampler is a paedagogical, Python (slow) implementation of SA. Users are much better off using the optimized C++ version available in dwave-neal package.
Since dimod.reference.SimulatedAnnealingSampler is promoted in documentation and training materials, users (even library creators) are starting to use it for wrong use cases (e.g. see pyqubo.utils.solve_qubo()).
Since dimod.reference.* samplers demonstrate how to write a custom sampler, target audience, supposedly, are developers. Therefore, better location for them is out of dimod namespace, probably in level with tests. They can still be documented (included in main docs), just as long they are un-importable.
The location (namespace) for samplers is TBD, but to prevent compatibility breaking, we might (transitionally) import neal.SimulatedAnnealingSampler in dimod.
The text was updated successfully, but these errors were encountered:
It's misleading/confusing to provide simulated annealing sampler (and exact solver) as part of
dimod
library. The problem is not just in code organization, but the fact thedimod.reference.SimulatedAnnealingSampler
is a paedagogical, Python (slow) implementation of SA. Users are much better off using the optimized C++ version available indwave-neal
package.Since
dimod.reference.SimulatedAnnealingSampler
is promoted in documentation and training materials, users (even library creators) are starting to use it for wrong use cases (e.g. seepyqubo.utils.solve_qubo()
).Since
dimod.reference.*
samplers demonstrate how to write a custom sampler, target audience, supposedly, are developers. Therefore, better location for them is out ofdimod
namespace, probably in level withtests
. They can still be documented (included in main docs), just as long they are un-importable.The location (namespace) for samplers is TBD, but to prevent compatibility breaking, we might (transitionally) import
neal.SimulatedAnnealingSampler
indimod
.The text was updated successfully, but these errors were encountered: