# D-Wave Ocean Software Documentation¶

Ocean software is a suite of tools D-Wave Systems provides on the D-Wave GitHub repository for solving hard problems with quantum computers.

Getting Started shows how to install and begin using Ocean tools.

Concepts defines and describes Ocean concepts and terminology.

# Packages¶

The Ocean SDK includes the CLI and the following packages:

##
**dwavebinarycsp** — Generates BQMs from constraint satisfaction problems. docs code

Library to construct a binary quadratic model from a constraint satisfaction problem with small constraints over binary variables.

##
**dwave-cloud-client** — API client to D-Wave solvers. docs code

Minimal implementation of the REST interface used to communicate with D-Wave Sampler API (SAPI) servers.

##
**dwave-greedy** — Steepest descent solver. docs code

An implementation of a steepest descent solver for binary quadratic models.

##
**dwave-hybrid** — Framework for building hybrid solvers. docs code

A general, minimal Python framework for building hybrid asynchronous decomposition samplers for quadratic unconstrained binary optimization (QUBO) problems.

##
**dwave-inspector** — Visualizer for problems submitted to quantum computers. docs code

A tool for visualizing problems submitted to, and answers received from, a D-Wave structured solver such as a D-Wave 2000Q quantum computer.

##
**dwave-neal** — Simulated annealing sampler. docs code

An implementation of a simulated annealing sampler.

##
**dwave-networkx** — NetworkX extension. docs code

Extension of NetworkX—a Python language package for exploration and analysis of networks and network algorithms—for users of D-Wave Systems.

dwave-networkx provides tools for working with Chimera and Pegasus graphs and implementations of graph-theory algorithms on the D-Wave system and other binary quadratic model samplers.

##
**dwave-preprocessing** — Preprocessing tools for quadratic models. docs code

Library containing common preprocessing tools for quadratic models.

##
**dwave-system** — D-Wave samplers and composites. docs code

Basic API for easily incorporating the D-Wave system as a sampler in the D-Wave Ocean software stack.

It includes DWaveSampler, a dimod sampler that accepts and passes system parameters such as system identification and authentication down the stack. It also includes several useful composites—layers of pre- and post-processing—that can be used with DWaveSampler to handle minor-embedding, optimize chain strength, etc.

##
**dwave-tabu** — Tabu sampler. docs code

An implementation of the MST2 multistart tabu search algorithm for quadratic unconstrained binary optimization (QUBO) problems with a dimod Python wrapper.

##
**minorminer** — Minor-embeds graphs. docs code

A tool for finding graph minor-embeddings, developed to embed Ising problems onto quantum annealers (QA).

While it can be used to find minors in arbitrary graphs, it is particularly geared towards the state of the art in QA: problem graphs of a few to a few hundred variables, and hardware graphs of a few thousand qubits.

##
**pyqubo** — Creates quadratic models from mathematical expressions. docs code

A package that helps you create QUBOs and Ising models from flexible mathematical expressions.

## Index and D-Wave Links¶

Index: Index for this site.

Leap: Sign up for Leap quantum cloud service, which gives you immediate, secure access to D-Wave quantum and hybrid solvers, as well as a wealth of information to help you get started creating quantum applications.

System Documentation: Here you will find information such as

Getting Started with the System—An introduction to D-Wave’s quantum computers, their hardware and how they work.

Solver Properties and Parameters—Description of properties and parameters for of D-Wave’s quantum computers and Leap’s quantum-classical hybrid solvers.

Problem-Solving Handbook—Information and references on formulating problems and best practices in quantum computing.