3.1 Kaiwu SDK
【安装教程】
Kaiwu SDK目前是一套基于相干光量子计算机求解QUBO(二次无约束二值优化)问题的软件开发套件,旨在帮助开发者在Python环境下直接构建可适用于相干光量子计算机的软件算法,并提供物理接口(目前是提供Ising矩阵)调用量子计算机物理真机。SDK包括多种经典求解器,前/后处理模块等,将数学算法直接映射为量子计算机可识别的输入,使得开发者不用具备专门的量子物理知识,即可在数学建模层进行量子计算算法开发。
目前Kaiwu SDK已更新到1.3.0版本,后文的SDK教程与例子也是按照该本版编写。
文档教学
安装Python3.10(不区分小版本),暂不支持Python其它版本,Python安装请自行搜索相关教程。
创建虚拟环境,激活虚拟环境在命令行输入: python --version,检查python版本是否为3.10。 python 3.10 下载 :https://www.python.org/downloads/release/python-31011/
登录网站 (https://platform.qboson.com/) 获取用户ID和SDK授权码。
根据个人电脑操作系统在官网下载对应的SDK,文件命名如:kaiwu-sdk.linux.1.3.0.zip(mac有intel和m两个版本, 使用过程中如提醒架构有问题,请尝试不同的版本,如果两个版本都不行请联系相关人员)。
解压下载的SDK安装包,解压后会有一个whl文件。
安装SDK,使用pip安装时注意whl文件路径和系统版本。 (国内可使用: pip3 install kaiwu-1.3.0-cp310-none-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple)
pip3 install kaiwu-1.3.0-cp310-none-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple- 首次建模代码开头增加授权初始化代码,如果初始化错误请校验用户ID和SDK授权码或清除kaiwu/license.lic文件,然后重新初始化。
import kaiwu as kw
kw.license.init(user_id="123456", sdk_code="AjUvlTvWrWeidADu5Vbf6pceVmuX")注:从Kaiwu SDK的1.3.0版本开始,License由SDK自动管理,用户只需在授权期内首次输入一次License信息,后续所有模块都会自动验证和更新,无需多次在代码中传入SDK授权码,自动校验和重建License。
视频教学
1.3.0版本更新内容
1.增加HOBO Model类,使得用户使用HOBO建模时更目的明确;
2.重构License,用户一次输入,有效期内可用;
3.重构CIMOptimizer
3.1 新增功能和优化
License 自动管理:无需代码中传入 SDK 授权码,自动校验和重建 License。
矩阵文件上传改造:文件传输速度更快。
3.2 重构详情
任务唯一标识机制更新:删除了 task_name 参数,新增任务名前缀参数:task_name_prefix 以满足迭代需求,任务名由 task_name_prefix + MD5(ising_matrix) 自动生成:
v1.2.0: CIMOptimizer(user_id, sdk_code);
v1.3.0: CIMOptimizer(task_name_prefix);
注意事项: 通过v1.2.0创建的任务需要通过v1.2.0进行查询。
4.重构Constraint,QUBOModel.add_constraint接收expression逻辑表达式。
