A shared API for binary quadratic model samplers.
Project description
dimod
dimod is a shared API for binary quadratic samplers. It provides a binary quadratic model (BQM) class that contains Ising and quadratic unconstrained binary optimization (QUBO) models used by samplers such as the D-Wave system. It also provides utilities for constructing new samplers and composed samplers.
Example Usage
This example constructs a simple QUBO and converts it to Ising format.
>>> import dimod >>> bqm = dimod.BinaryQuadraticModel({0: -1, 1: -1}, {(0, 1): 2}, 0.0, dimod.BINARY) # QUBO >>> bqm_ising = bqm.change_vartype(dimod.SPIN, inplace=False) # Ising
An example of using one of the built-in test Samplers.
>>> import dimod >>> h = {0: 0.0, 1: 0.0} >>> J = {(0, 1): -1.0} >>> bqm = dimod.BinaryQuadraticModel.from_ising(h, J) >>> response = dimod.ExactSolver().sample(bqm) >>> response.samples_matrix matrix([[-1, -1], [ 1, -1], [ 1, 1], [-1, 1]])
See the documentation for more examples.
Installation
Compatible with Python 2 and 3:
pip install dimod
To install with optional components:
pip install dimod[all]
To install from source:
pip install -r requirements.txt
python setup.py install
License
Released under the Apache License 2.0. See LICENSE file.
Contribution
See CONTRIBUTING.rst file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for dimod-0.6.8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 273c13a4d5b7802da8bb1aa12b8a0e1bb537bfe8ce108a9d5d6b50e763d9bc80 |
|
MD5 | c98294be9d5709d78cd048ba348c3631 |
|
BLAKE2b-256 | 5dc3ab87a9787c70c9d5b9d010b2515d0bab4ae347820cc0392e64696f420a46 |