跳转到内容
本文内容

本指南聚焦专用量子计算云平台的服务形态、计算模式、结果解释与端到端服务链路,旨在为相关研究人员提供全面的技术参考。

一、概述

玻色量子专用量子计算云平台是一种面向Ising/QUBO类离散优化问题的任务式云计算服务,用户可通过云平台或Kaiwu SDK提交问题矩阵,由专用量子计算真机完成求解并返回结果。

1.1 计算范式

计算范式是用户与量子计算机交互的方式框架,它决定了系统如何处理用户的优化问题、分配计算资源以及呈现最终结果。选择合适的计算模式,就像为不同路况选择合适的驾驶模式。

在专用量子计算中,支持两种计算模式:

  • Optimization模式(优化模式):适合追求更高解质量的组合优化任务,计算资源单位为Optimization Credits;
  • Sample模式(采样模式):适合需要获得大量候选解、分布样本或进行探索性计算的任务,计算资源单位为Sampling Credits。

Optimization模式(优化模式)

计算模式定义

Optimization模式旨在帮助用户平衡计算效率和结果质量,基于动态策略算法调整相干光量子演化计算次数,对简单模型快速输出结果,对难解任务则持续追加计算资源,确保求解质量;同时,多次计算采样到的所有候选解均经过能量排序、聚类分析等多层数据后处理,从海量解集中筛选出稳定可靠的最优解。

参数说明

  • task_mode:设置为TaskMode.OPTIMIZATION

适用场景

适用于对结果质量敏感但时效性要求宽松的计算场景:

(1)生物制药领域:药物发现(变构位点识别、分子相似性筛选)等;

(2)金融领域:信用评分特征筛选、社区发现与反欺诈检测

代码示例

.. code:: python
 
    import numpy as np
    import kaiwu as kw
    from kaiwu.cim import CIMOptimizer, TaskMode
 
    kw.common.CheckpointManager.save_dir = '/tmp'
 
    matrix = -np.array([[0., 1., 0., 1., 1.],
                        [1., 0., 0., 1., 1.],
                        [0., 0., 0., 1., 1.],
                        [1., 1., 1., 0., 1.],
                        [1., 1., 1., 1., 0.]])
 
    optimizer = CIMOptimizer(
        task_name='cim_optimization_test',
        task_mode=TaskMode.OPTIMIZATION
    )
    solution = optimizer.solve(matrix)

Sampling模式(采样模式)

计算模式定义

Sampling模式需要用户指定计算迭代次数(sample_number),每次迭代通过相干光量子能量演化,系统将不断采样解空间,最终收敛至低能量态。Sampling模式主要面向需要观察候选解分布、分析模型稳定性或进行参数调试的场景,每个sample结果通常包含解向量、哈密顿量以及单次演化时长等信息,完整结果可通过下载获取。

该模式适用于海量解空间的长期采样任务,相比Optimization模式随机性更高,不保证计算结果质量。

参数说明

  • task_mode:设置为TaskMode.SAMPLING

  • sample_number:采样次数,取值范围10-2000,默认值10,仅Sampling模式需要此参数。

适用场景

面向对计算时间成本敏感、解质量要求相对宽松的科研场景,典型应用包括:

(1)人工智能领域:玻尔兹曼机训练;

(2)无序列表生物制药领域:mRNA疫苗序列优化、分子生成等。

代码示例

.. code:: python
 
    import numpy as np
    import kaiwu as kw
    from kaiwu.cim import CIMOptimizer, TaskMode
 
    kw.common.CheckpointManager.save_dir = '/tmp'
 
    matrix = -np.array([[0., 1., 0., 1., 1.],
                        [1., 0., 0., 1., 1.],
                        [0., 0., 0., 1., 1.],
                        [1., 1., 1., 0., 1.],
                        [1., 1., 1., 1., 0.]])
 
    optimizer = CIMOptimizer(
        task_name='cim_sampling_test',
        task_mode=TaskMode.SAMPLING,
        sample_number=100
    )
    solution = optimizer.solve(matrix)

模式对比

用户更关注最终结果质量,希望平台自动平衡计算预算与求解质量时,建议选择Optimization模式;当希望观察多个候选解、分析样本分布、进行建模调试或对比不同参数设置时,建议选择Sampling模式。

经验来看,当问题的解空间较集中、优质候选解重复率较高时,Sampling模式已可满足分析需求;而当优质解出现概率较低、哈密顿量分布较分散,或任务对最终结果稳定性要求更高时,更适合采用Optimization模式,由系统动态追加采样与后处理资源,以提高优质解命中概率和结果稳定性

维度OptimizationSampling
返回结果低能量的解多个采样的样本
返回解的个数系统决定用户显式指定(sample次数)
输出形态聚合后的优先结果多个独立样本结果
期望目标求得哈密顿量更低的解采样的分布与目标分布一致

二、云计算服务链路

云平台整个计算过程涵盖任务排队真机占用结果回传三个阶段:用户通过Kaiwu SDK或云平台提交计算任务,任务首先进入队列等待调度;排队完成后,系统对数据进行相关处理,随后将任务送入SPQC执行运算;真机完成计算后,结果回传至用户,形成端到端闭环服务链路,全程总时长即为端到端服务时间

2.1 端到端服务时间拆解

描述

端到端服务时间(service_time)为用户在 云平台提交任务 -> 真机计算任务 -> 云平台收到任务结果 所花费的实际时间:

  • 排队时间(queuing_time):用户在云平台提交任务到SPQC系统开始计算前的等待时间;

  • 系统占用时间(qpu_access_time):SPQC系统执行一次计算任务指令完成计算的时间,在此期间,其他量子计算任务指令对SPQC系统不可用。

    • 数据前处理时间/qpu_preprocess_time
    • 系统计算时间/qpu_computation_time
    • 数据后处理时间/post_process_time
  • 数据回传时间(data_return_time):SPQC系统完成一次计算任务到用户收到计算结果的网络传输/延迟时间。

注:

  • SPQC系统为专用量子计算机物理硬件模块;
  • 系统计算时间/qpu_computation_time=Sample1+Sample2+Sample3+...+SampleN;
  • 单Sample计算时间=Tc+Td+Tr
    • Tc:单次演化时长/qpu_coh_time
    • Td:延迟时间/qpu_delay_time
    • Tr:读出时间/qpu_readout_time

2.2 时间模块字段拆解

系统占用时间模块

描述

2.3 计算任务结果页介绍

描述

结果页主要用于展示量子计算任务的基本信息、输入配置及求解输出。用户可查看任务状态、任务名称、创建时间、所使用的量子计算资源、计算模式、矩阵类型及采样次数等关键信息,帮助用户快速确认任务属性与运行上下文。

任务输入

任务输入模块展示用户提交的矩阵信息,用户可通过“详情”入口查看输入的矩阵结构,便于核对任务配置与求解对象的一致性。

任务结果

结果展示区域,系统将给出任务执行状态、结束时间及单次样本求解耗时。

Hamiltonian演化图用于展示一次求解过程中目标函数值随计算推进的变化趋势。结果图中横轴T表示系统的相对演化进程,可理解为演化步数(Evolution Step)或迭代轮次(Round),并非统一的绝对物理时间。在专用量子计算机中,每个步长对应光信号在光路中的一次传播迭代,同时完成一次状态测量,并根据该轮测得的相位与强度信息对下一轮计算进行反馈调整。

由于不同设备的系统配置有所不同,单步对应的实际耗时可能存在差异。本图采用 a.u.(arbitrary units,任意单位)展示演化趋势,重点体现Hamiltonian随计算推进的相对变化与收敛过程。

三、FAQ

Q1:专用量子计算机的计算耗时仅为几毫秒,为什么提交计算任务后得到结果的时间耗时较长?

A:云服务涉及多个步骤,不仅是计算本身。如用户提交任务数据后,服务器接收后需进行预处理,并排队等待计算资源(此步骤消耗时间较多),计算完成后还需进行后处理和结果返回。

专用量子计算机毫秒级的计算时间只是指单次相干光量子物理演化计算过程耗时,即时间字段Tc:单次演化时长/qpu_coh_time所花费的时间开销。但为了保证云服务返回解质量,每个计算任务需要通过系统动态算法调整进行多次(千次级)量子计算(系统计算时间/qpu_computation_time),并进行结果分析、优化筛选,从中获取最优解(数据后处理时间/post_process_time)。当需要处理大规模候选解时,这一步也可能导致耗时较长。

Q2:单次计算毫秒级时间即可得出结果,为什么要通过系统动态算法进行千次级的计算再获取最优解?

A:单次计算本质是采样(Sample),基于量子系统的概率性本质,单次Sample计算输出可能不保证最优解,但遵循“大数定律”——预设足够Sample数(如千次级)可逼近解空间的概率分布边界,通过对多次演化结果进行统计分析,更全面评估解的质量,提高找到全局最优解的概率。

Q3:从云平台提交矩阵至返回结果,所有的步骤指的是哪些?

A:大体步骤分为1.0排队时间、2.0系统占用时间、3.0任务回传时间,具体的步骤划分可以查看端到端服务时间结构图和对应的解释说明。

Q4:云平台的“单次演化时长”时间表示的是仅包含一次计算时间还是多次计算的时间?是否包含前处理、后处理时间?

A:“单次演化时长”不包含前处理、后处理时间,仅代表一次演化计算测量到最优解的时间。关于前处理、后处理时间和整体时间结果的关系可查看端到端服务时间结构图。“单次演化时长“对应的字段是Tc:单次演化时长/qpu_coh_time。

Q5:为什么当问题规模发生变化,SPQC系统的“单次演化时长”没有显著变化?

A:SPQC系统计算时间和问题规模没有明显的相关性。硬件系统所有脉冲在光学环路中同步演化,会针对问题解空间进行大量并行计算搜索,故“单次演化时长”的变化幅度不会太大,详情可以查看Tc:单次演化时长/qpu_coh_time的解释。

基于 MIT 许可发布