1. 学习地图
伊辛云帮助中心
  • 学习地图
    • 快速入门
    • 云平台使用教程
    • SDK使用教程
    • 案例-解决最大割问题
    • 案例-特征选择
    • 案例-组合投资优化
    • 案例-旅行商问题
    • 常见问题
  1. 学习地图

SDK使用教程

SDK (ising-toolkit) 使用教程#

ising-toolkit 是一个为解决二次无约束二元优化(QUBO)和 Ising(伊辛)模型问题而设计的 Python 工具包。它提供高级 API,自动处理模型预处理、格式转换,并支持本地模拟退火或远程伊辛云平台求解。

1. 安装#

使用 pip 安装工具包 wheel 文件:

2. 核心模型定义#

SDK 提供了两个核心类来构建问题,并会自动进行矩阵对称化和输入验证:
IsingModel:适用于自旋变量 σi​∈{+1,−1}。
若包含非零外部磁场 h,系统会自动引入辅助自旋进行转换。
QUBOModel:适用于二元变量 xi​∈{0,1}。
系统会自动将线性项合并到 Q 矩阵的对角线上。

示例:定义 Ising 模型#


3. 求解器使用#

3.1 本地求解 (SimulatedAnnealingSolver)#

使用内置的多副本并行模拟退火求解器进行快速本地测试。
初始化:SimulatedAnnealingSolver(agents=128, steps_per_temp=100)
返回:一个包含 spins(结果数组)和 energy(能量值)的字典。

3.2 云平台求解 (IsingSolver)#

将任务提交至远程光电伊辛机。该求解器会自动处理模型转换并将数据上传至云平台。
提交任务:.solve(model, name, post_process=False)
返回一个包含 success 和 taskId 的字典。
获取结果:.get_result(task_id)
该方法需要轮询;任务运行中返回 None,任务完成后返回包含 variables 和 energy 的结果。
修改于 2026-01-01 02:58:46
上一页
云平台使用教程
下一页
案例-解决最大割问题
Built with