dimod
dimod 是采样器的一个共享 API,提供了:
- BQM(binary quadratic model )类,BQM其包含了如使用了 D-Wave 系统的采样器的 Ising 和 QUBO(quadratic unconstrained binary optimization);
- DQM(discrete quadratic model)类和高阶(non-quadratic)模型;
- 采样器和组合采样器的参考例子;
- abstract base classes 用于构建新采样器和组合采样器;
Introduction
关于 Ocean 编程模型(BQM的使用和求解 hard 问题的采样器)参见 Ocean’s Programming Model。
Binary Quadratic Models
dimod 可以用适合不同性能和易用性需求的类来表示 BQM。BQM支持的所有表达参见Binary Quadratic Models。
BQM Generation
如图四个节点的 maximum cut 问题,

Star graph with four nodes.
QUBO矩阵如下表示:
Q = [ − 3 2 2 2 0 − 1 0 0 0 0 − 1 0 0 0 0 − 1 ] Q = \left[ \begin{matrix} -3 & 2 & 2 & 2 \\ 0 & -1 & 0 & 0 \\ 0 & 0 & -1 & 0 \\ 0 & 0 & 0 & -1 \end{matrix} \right] Q=⎣⎢⎢⎡−30002−10020−10200−1⎦⎥⎥⎤
BQM 的 python dict 表示

本文深入介绍了dimod库,它提供了二元二次模型(BQM)的API,包括Ising和QUBO模型。内容涵盖BQM的生成、属性、方法,以及采样器和组合采样器的使用。还涉及非二元和非二次模型,如离散二次模型(DQMs)和高阶模型的处理。
最低0.47元/天 解锁文章
1822

被折叠的 条评论
为什么被折叠?



