Skip to main content

A shared API for binary quadratic model samplers.

Project description

https://travis-ci.org/dwavesystems/dimod.svg?branch=master https://ci.appveyor.com/api/projects/status/2oc8vrxxh15ecgo1?svg=true https://coveralls.io/repos/github/dwavesystems/dimod/badge.svg?branch=master https://readthedocs.org/projects/dimod/badge/?version=latest

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

This version

0.6.6

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dimod-0.6.6.tar.gz (45.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dimod-0.6.6-py2.py3-none-any.whl (55.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file dimod-0.6.6.tar.gz.

File metadata

  • Download URL: dimod-0.6.6.tar.gz
  • Upload date:
  • Size: 45.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for dimod-0.6.6.tar.gz
Algorithm Hash digest
SHA256 74a03d7cd367b692959f4e582c30a626365309d65f7ef5fcbc797e073e9aeffb
MD5 8e6aabfe82b465f914995a51ba629578
BLAKE2b-256 1afa55be85d5c8281909dc5d71c6e17d749006f15f41a9a98f7258c5e917267c

See more details on using hashes here.

File details

Details for the file dimod-0.6.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for dimod-0.6.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 644fd075abcbd49102ba7bb0bd2db03d81ce3deafe747892febdac68e50eb774
MD5 cfcb7c9186f779cfe781fe01252c60af
BLAKE2b-256 811c646319ad26f069960b18ddacedc49db8558ba61303be14e3383124121f62

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page