跳转到内容
本文内容

Kaiwu SDK使用指南

Kaiwu SDK是一套基于专用量子计算机求解组合优化问题的软件开发套件,提供从QUBO/Ising建模、矩阵预处理、求解器调用到结果后处理的完整Python接口,可将数学算法直接映射为量子计算机可识别的输入,使得开发者不用具备专门的量子物理知识,即可在数学建模层进行量子计算算法开发。

Kaiwu SDK提供企业版和社区版,后文将详细介绍。企业版在社区版建模能力之上,增加了SPQC真机求解、经典优化器、精度适配、HOBO建模、license鉴权和数据上报等能力,便于用户在本地调试和真实计算资源之间切换。

目前Kaiwu SDK已更新至1.4.0版本,后文的SDK教程与例子均按照该版本提供。

【安装教程】

文档教学

  1. 安装Python3.10(不区分小版本),暂不支持Python其它版本,Python安装请自行搜索相关教程;
  2. 创建虚拟环境,激活虚拟环境在命令行输入: python --version,检查python版本是否为3.10,python 3.10下载
  3. 登录网站 (https://platform.qboson.com/) 获取用户ID和SDK授权码;
  4. 根据个人电脑操作系统在官网下载对应的SDK,文件命名如:kaiwu-sdk.linux.1.4.0.zip(mac有intel和m两个版本,使用过程中如提醒架构有问题,请尝试不同的版本,如果两个版本均不行请联系官方人员);
  5. 解压下载的SDK安装包,解压后会有一个whl文件;
  6. 安装SDK,使用pip安装时注意whl文件路径和系统版本。
pip3 install kaiwu-1.4.0-cp310-none-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 在首次使用CIMOptimizer/SimulatedAnnealingOptimizer时,需要按照控制台引导在控制台输入user_id及sdk_code来生成license。

视频教学

Kaiwu SDK安装教程

1.4.0版本更新公告

  • kaiwu 改为命名空间包,删除仓库内 core/common 基础实现,改为依赖开源的 kaiwu-community
  • 修改OptimizerSolver基类,改为QuboSolverIsingSolver, 并删除SimpleSolver类;
  • CIM optimizer任务模式更新为 OPTIMIZATIONSAMPLING,并完善采样参数、任务缓存、OSS上传和授权处理逻辑;
  • 优化器进一步对齐QUBO求解接口,示例和测试改为直接调用optimizer的 solve_qubo
  • 更新BinaryModeladd_constraint接口,支持添加等式/不等式和直接添加惩罚项,并同步更新HoboReducer
  • 转化函数ising_matrix_to_qubo_matrixqubo_matrix_to_ising_matrix添加decimal参数,加速允许浮点误差的转化;
  • kaiwu.solver 改为 kaiwu.hybrid,将罚函数求解能力迁移为 PenaltyMethodOptimizer
  • 新增计算模式文档,同步更新TSP、五岳选址、精度规约、API模块文档,文档构建引入KaTeX数学扩展渲染公式样式。

【模块指南】

Kaiwu SDK目前包含以下核心模块:cimclassicalcommoncorehobohybirdlicensepreprocesssampler。在典型应用中,用户先通过corehobo进行问题建模,将模型转换为QUBO或Ising矩阵;随后使用preprocess对矩阵进行精度、位宽或范围适配;最后根据场景选择classical本地优化器、cim真机优化器,或通过hybrid的惩罚项方法统一处理带约束问题。commonlicense则贯穿整个流程,分别提供工程支撑和企业版授权能力。

典型使用方式

具体使用方法请参考文档:

基于 MIT 许可发布