An open API service indexing awesome lists of open source software.

https://github.com/dwavesystems/penaltymodel

Utilities and interfaces for using penalty models.
https://github.com/dwavesystems/penaltymodel

Last synced: 3 months ago
JSON representation

Utilities and interfaces for using penalty models.

Awesome Lists containing this project

README

          

:warning: *penaltymodel* is deprecated. For solving problems with constraints,
we recommend using the hybrid solvers in the Leap :tm: service. You can find
documentation for the hybrid solvers at https://docs.dwavequantum.com.

.. image:: https://img.shields.io/pypi/v/penaltymodel.svg
:target: https://pypi.python.org/pypi/penaltymodel

.. image:: https://img.shields.io/pypi/pyversions/penaltymodel.svg
:target: https://pypi.python.org/pypi/penaltymodel

.. image:: https://codecov.io/gh/dwavesystems/penaltymodel/branch/master/graph/badge.svg
:target: https://codecov.io/gh/dwavesystems/penaltymodel

.. image:: https://circleci.com/gh/dwavesystems/penaltymodel.svg?style=svg
:target: https://circleci.com/gh/dwavesystems/penaltymodel

============
penaltymodel
============

.. start_penaltymodel_about

One approach to solve a constraint satisfaction problem
(`CSP `_) using
an `Ising model `_ or a
`QUBO `_,
is to map each individual constraint in the CSP to a 'small' Ising model or
QUBO. This mapping is called a *penalty model*.

.. end_penaltymodel_about

For more information, see
`penalty models `_.

Installation
============

To install the core package:

.. code-block:: bash

pip install penaltymodel

License
=======

Released under the Apache License 2.0

Contributing
============

Ocean's
`contributing guide `_
has guidelines for contributing to Ocean packages.

Release Notes
-------------

penaltymodel makes use of `reno `_ to manage
its release notes.

When making a contribution to penaltymodel that will affect users, create a new
release note file by running

.. code-block:: bash

reno new your-short-descriptor-here

You can then edit the file created under ``releasenotes/notes/``.
Remove any sections not relevant to your changes.
Commit the file along with your changes.

See reno's `user guide `_
for details.