1、(10)申请公布号 CN 104054254 A (43)申请公布日 2014.09.17 CN 104054254 A (21)申请号 201380006498.6 (22)申请日 2013.01.16 12152208.0 2012.01.24 EP H02M 7/487(2006.01) H02P 27/12(2006.01) H02P 27/14(2006.01) (71)申请人 ABB 研究有限公司 地址 瑞士苏黎世 (72)发明人 H. 派尔 S. 里希特 (74)专利代理机构 中国专利代理(香港)有限公 司 72001 代理人 叶晓勇 汤春龙 (54) 发明名称 电转换器的多核实
2、现的基于权函数的预测控 制 (57) 摘要 一种用于控制电气转换器 12 的方法包括下 列步骤 : 接收电气转换器12的实际切换状态uk-1; 基于实际切换状态uk-1来确定电气转换器12可能 的将来切换状态的方案树50, 方案树50定义多个 可能的将来切换序列, 切换序列U通过从方案树 50 的根节点 52 到方案树 50 的叶节点 58 的路径 来定义 ; 通过评估方案树 50 的节点 60 来计算切 换序列的权重w; 以及从具有最佳权重的开关序 列来确定要应用于电气转换器 12 的下一个切换 状态uk。节点 (60) 的评估由至少两个处理器核 30a、 30b、 30c、 30d 来执行
3、。 (30)优先权数据 (85)PCT国际申请进入国家阶段日 2014.07.24 (86)PCT国际申请的申请数据 PCT/EP2013/050733 2013.01.16 (87)PCT国际申请的公布数据 WO2013/110532 EN 2013.08.01 (51)Int.Cl. 权利要求书 2 页 说明书 10 页 附图 3 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书10页 附图3页 (10)申请公布号 CN 104054254 A CN 104054254 A 1/2 页 2 1. 一种用于控制电气转换器 (12) 的方法, 所述方法包括
4、下列步骤 : 接收所述电气转换器 (12) 的实际切换状态 (uk-1) ; 基于所述实际切换状态 (uk-1) 来确定所述电气转换器 (12) 的可能将来切换状态的方 案树 (50), 所述方案树 (50) 定义多个可能将来切换序列, 切换序列 (U) 通过从所述方案树 (50) 的根节点 (52) 到所述方案树 (50) 的叶节点 (58) 的路径来定义 ; 通过评估所述方案树 (50) 的节点 (60), 相对所述电气转换器 (12) 的控制目标来计算 切换序列的权重 (w) ; 从具有最佳权重的切换序列来确定要应用于所述电气转换器 (12) 的下一个切换状态 (uk) ; 其中所述节点
5、 (60) 的所述评估由至少两个处理器核 (30a, 30b, 30c, 30d) 来执行。 2. 如权利要求 1 所述的方法, 还包括下列步骤 : 将所述方案树 (50) 分为子树 (62) ; 将所述子树 (62) 分配给至少两个处理器核 (30a, 30b, 30c, 30d)。 3. 如权利要求 2 所述的方法, 还包括下列步骤 : 采用第一处理器核来计算第一子树的切换序列的权重 ; 采用第二处理器核来计算第二子树的切换序列的权重。 4. 如以上权利要求中的一项所述的方法, 还包括下列步骤 : 将所述方案树 (50) 分为切换序列 (U) ; 将所述切换序列 (U) 分配给多个处理器核
6、 (30a, 30b, 30c, 30d) ; 采用向其分配了所述切换序列的处理器核来计算切换序列的权重。 5. 如以上权利要求中的一项所述的方法, 还包括下列步骤 : 通过计算与节点 (60) 关联的切换过渡的切换损耗, 来确定所述节点 (60) 的权重 (w) ; 基于所述节点 (60) 的所述权重和所述节点的父节点 (54) 的权重来计算切换序列 (U) 的权重。 6. 如以上权利要求中的一项所述的方法, 还包括下列步骤 : 生成必须评估的所述方案树 (50) 的节点 (60) 的中央节点池 ; 向处理器核 (30a, 30b, 30c, 30d) 分配所述中央节点池的节点 (60) ;
7、 在所述处理器核来计算所述节点 (60)。 7. 如以上权利要求中的一项所述的方法, 还包括下列步骤 : 采用至少两个处理器核 (30a, 30b, 30c, 30d) 来生成所述方案树 (50) 的节点 (60) 的至 少两个本地节点池 ; 采用已经生成所述本地节点池的处理器核来评估本地节点池的节点。 8. 如以上权利要求中的一项所述的方法, 还包括下列步骤 : 通过从预先计算表 (70) 加载所述方案树 (50) 的至少部分, 来确定所述方案树 (50)。 9. 如权利要求 8 所述的方法, 其中, 分为所述方案树 (50) 的子树 (62) 在所述表 (70) 中预先定义 ; 和 / 或
8、 所述方案树 (50) 的子树 (62) 的计算时间在所述表 (70) 中预先定义 ; 和 / 或 向处理器核 (30a, 30b, 30c, 30d) 分配子树 (62) 在所述表 (70) 中预先定义。 10. 如以上权利要求中的一项所述的方法, 权 利 要 求 书 CN 104054254 A 2 2/2 页 3 其中, 所述方案树 (50) 包括切换节点 (S) ; 评估切换节点 (S) 包括基于切换节点所定义的切换过渡的切换损耗来计算所述切换 节点的权重。 11. 如以上权利要求中的一项所述的方法, 其中, 所述方案树 (50) 包括扩展节点 (E) ; 评估扩展节点 (E) 包括通
9、过外推所述转换器的电气状态直到所述电气状态留下预定 义间隔, 来计算扩展节点的扩展时间。 12. 一种用于控制转换器 (12) 的计算机程序, 其在由至少两个处理器核 (30a, 30b, 30c, 30d) 所运行时适合执行权利要求 1 至 11 中的一项所述的方法的步骤。 13. 一种计算机可读介质, 其中存储了如权利要求 12 所述的计算机程序。 14. 一种用于电气转换器 (12) 的控制器, 包括 包括至少两个处理器核 (30a, 30b, 30c, 30d) 的多核处理器 (26) ; 其中所述多核处理器 (26) 适合于运行权利要求 1 至 11 中的一项所述的方法。 15. 一
10、种转换器系统 (10), 包括 : 用于生成可变 AC 输出电流的转换器 (12) ; 如权利要求 14 所述的用于切换所述转换器 (12) 的半导体开关 (22a, 22b, 22c) 的控制 器 (16)。 权 利 要 求 书 CN 104054254 A 3 1/10 页 4 电转换器的多核实现的基于权函数的预测控制 技术领域 0001 本发明涉及电气转换器的控制领域。具体来说, 本发明涉及用于控制电气转换器 的方法、 计算机程序和计算机可读介质以及涉及电气转换器的控制器和转换器系统。 背景技术 0002 直接转矩控制 (DTC) 是一种用于控制中压驱动应用中的电动机的转矩和通量的 方法
11、。但是, DTC 的缺陷之一可能是如下事实 : 转换器的平均切换频率无法直接控制。由 于切换频率通常成比例地与作为驱动的总损耗的主要部分的转换器的切换损耗相关, 所以 切换频率的任何降低可对驱动的操作成本具有显著影响, 并且增加总体系统健壮性和可靠 性。 0003 这种降低已经表明经过模型预测直接转矩控制 (MPDTC) 方法是可能的, MPDTC 方 法包括两种基于模型的最佳控制算法。 MPDTC的计算复杂度要求基于FPGA的实现和大量工 程工作以满足所需取样时间。 0004 MPDTC 算法已经扩展到 “广义模型预测直接转矩控制” (GMPDTC)( 参见例如 EP 2348631 A1)
12、。如同 MPDTC 一样, GMPDTC 的计算复杂度随控制时域 (control horizon) 的 长度而以指数增加, 从而仅使短时域是易处理的。 0005 GMPDTC可被看作是用于感应机器的转矩控制的专门模型预测控制(MPC)算法。 控 制目标可以是将机器转矩、 通量和转换器的中性点电位保持在所指定范围之内, 同时使转 换器切换频率和功率损耗为最小。不是使用基于调制的技术、 例如 PWM, 该方法直接操纵转 换器的切换过渡 (switching transition) 。 发明内容 0006 本发明的目的是加速 GMPDTC 算法的执行。 0007 这个目的通过独立权利要求的主题来实
13、现。通过从属权利要求和以下描述, 其它 示范实施例是显而易见的。 0008 本发明的第一方面涉及一种用于控制电气转换器的方法。 0009 按照本发明的一个实施例, 该方法包括下列步骤 : 接收电气转换器的实际切换状 态 ; 基于实际切换状态来确定电气转换器可能的将来切换状态的方案树, 方案树定义多个 可能的将来切换序列, 切换序列通过从方案树的根节点到方案树的叶节点的路径来定义 ; 通过评估方案树的节点来计算切换序列的权重和 / 或成本 ; 以及从具有最佳权重和 / 或最 佳成本的切换序列来确定要应用于电气转换器的下一个切换状态。 0010 换言之, 该方法可以是 GMPDTC 方法。 001
14、1 权重和 / 或成本可相对电气转换器的控制目标来计算。例如, 权重和 / 或成本可 相对切换序列的预计切换损耗来计算。 0012 按照本发明的一实施例, 节点的评估由至少两个处理器核来执行。 0013 通过将方案树的节点的评估分配给至少两个不同的处理器核, GMPDTC 可并行化, 说 明 书 CN 104054254 A 4 2/10 页 5 并且因而可适合多核处理器平台。 使用由这些平台所提供的附加计算能力可允许解决较大 控制时域的问题, 并且因此可产生改进应用性能、 例如具有进一步降低的切换损耗。 0014 此外, 要由多核处理器所运行的 GMPDTC 可避免定制硬件实现 ( 例如基于
15、 FPGA 的 解决方案 ) 的需要, 并且因此可降低开发时间和成本。 0015 本发明的其它方面涉及 : 一种用于控制转换器的计算机程序, 其在由至少两个处 理器核所运行时适合执行如以上和以下所述的方法的步骤 ; 以及计算机可读介质, 其中存 储这种计算机程序。计算机可读介质可以是软盘、 硬盘、 USB( 通用串行总线 ) 存储装置、 RAM( 随机存取存储器 )、 ROM( 只读存储器 ) 和 EPROM( 电可擦可编程只读存储器 )。 0016 本发明的一个方面涉及一种用于电气转换器的控制器。 0017 按照本发明的一实施例, 控制器包括多核处理器, 其中包括至少两个处理器核。 多 核处
16、理器适合于运行如以上和以下所述的方法。 例如, 控制器还包括存储器, 其中存储上述 计算机程序。 0018 本发明的一个方面涉及一种转换器系统、 例如中压驱动系统。 0019 按照本发明的一实施例, 转换器系统包括用于生成可变 AC 输出电流的转换器以 及如以上和以下所述的用于切换转换器的半导体开关的控制器。 0020 通过参照以下所述实施例进行的说明, 本发明的这些方面及其它方面将会显而易 见。 附图说明 0021 下文中参照附图示出的示范实施例更详细地说明本发明的主题。 0022 图 1 示意示出按照本发明的一实施例的转换器系统。 0023 图 2 示出按照本发明的一实施例、 用于控制转换
17、器的方法的流程图。 0024 图 3 示出按照本发明的一实施例的方案树。 0025 大体上, 附图中, 相同部件提供有相同参考标号。 具体实施方式 0026 图 1 示出转换器系统 10, 其中包括转换器 12、 电气负载 14 和控制器 16。 0027 转换器 12 包括三个半桥 18a、 18b、 18c, 其适合于通过将相应相 20a、 20b、 20c 连接 到电位 +V、 负电位 -V 或中性点电位 NP( 其例如可由 DC 环节来提供 ), 在负载 14 的相应相 20a、 20b、 20c 生成三级输出电压。为了将相应相 20a、 20b、 20c 连接到电位 +V、 -V 或
18、 NP, 各 半桥包括可控半导体开关22a、 22b、 22c。 功率半导体开关22a、 22b、 22c可包括晶闸管、 IGCT 和 / 或 IGBT。 0028 按照本发明的一实施例, 转换器 12 可包括用于将 DC 输入电压切换到 AC 输出电压 中的至少一个半桥 18a、 18b、 18c。 0029 按照本发明的一实施例, 转换器系统 12 可包括至少一相, 例如三相 20a、 20b、 20c。 0030 电气负载 14 可包括电动机 14、 例如中压驱动器 14 或者电力网 14, 其可由转换器 12 来供电。 0031 适合于确定转换器系统 10 的测量值并且用于起动开关 2
19、2a、 22b、 22c 的转换器 12 的控制器 16 可包括通信 ( 和 / 或测量 ) 单元 24、 多核处理器 26 和共同共享主存储器 28。 说 明 书 CN 104054254 A 5 3/10 页 6 通信单元 24 和多核处理器 26 可对主存储器 28 读取和写入数据。 0032 通信单元 24 可从转换器 12 和 / 或负载 14 接收测量值, 并且可将这些值写入主存 储器 28 中。此外, 通信单元 24 可从主存储器 28 读取下一个切换状态, 并且可起动 ( 即, 控 制 ) 开关 22a、 22b、 22c, 使得它们切换到这种切换状态。 0033 多核处理器
20、26 可从主存储器 28 来读取测量值和实际切换状态, 并且可从这些数 据来确定下一个切换状态, 如下面将详细说明。 0034 多核处理器26具有至少两个处理器核30a、 30b、 30c、 30d, 例如4、 8或16个处理器 核。可同样地设计处理器核 30a、 30b、 30c、 30d。处理器核 30a、 30b、 30c、 30d 的每个可适合 对主存储器 28 读取和写入数据。例如, 核之间的通信可经由主存储器 28 来执行。 0035 各处理器核 30a、 30b、 30c、 30d 可包括高速缓冲存储器 32a、 32b、 32c、 32d, 其可比 主存储器 28 要小许多、
21、例如 64 kB。 0036 处理器核 30a、 30b、 30c、 30d 和 / 或其相应高速缓存 32a、 32b、 32c、 32d 可位于一个 芯片上。但是, 其它配置也是可能的, 例如一个主板上各具有一个核的 4 个单独处理器。 0037 GMPDTC 方法 图 2 示出 GMPDTC 方法的流程图。 0038 GMPDTC 利用 : 电气状态 ( 例如转矩、 通量和 / 或中性点电位 ) 的输出值无需尽可 能保持为接近其参考, 而是只是保持在可通过特定界限来限制的特定范围之内。在每一个 取样时刻, 控制算法通过数学预测模型来检查前一计算电气状态是否能够再次应用而无需 驱动其范围外
22、部的输出值中的一个 ( 或多个 )。如果情况不是这样, 则该算法通过解决 MPC 问题 ( 其使用负载 14 的离散时间模型、 根据转换器开关 22a、 22b、 22c 来预测电气状态的演 进 ), 来确定下一个控制移动。 0039 要取得长预测时域 ( 与切换时域加以区分 ), 引入控制策略, 其将预测时域划分为 其中允许切换的期间以及其中将开关冻结到预测输出之一将违反其范围的期间。 切换步骤 S 和移动阻塞步骤 ( 又称作扩展步骤 )E 的切换序列 ( 其将针对图 3 来更详细地说明 ) 可以 是算法的参数, 并且可用来代替固定预测时域, 即, 预测时域的长度因扩展步骤的可变长度 而改变
23、。 0040 针对图 2, 在步骤 100, 通信单元 24 确定转换器系统 10 的实际电状态 xk。 0041 实际电状态 xk可包括电气负载 14 中和 / 或转换器 12 与其连接的 DC 环节中的测 量电流和 / 或电压。实际电状态 xk还可包括输出值, 例如负载 14 的转矩和 / 或通量和 / 或 转换器 10 的中性点电位。 0042 实际电状态 xk可写到主存储器 28。 0043 此外, 可确定转换器 12 的实际切换状态uk-1。通常, 转换器 12 的实际切换状态可 包括开关 22a、 22b、 22c 的实际切换状态。实际切换状态uk-1可以是由通信单元 24 应用于
24、 转换器 12 的最后一个切换状态。 0044 一般来说, 转换器 12 的切换状态u可包括转换器 12 的开关 22a、 22b、 22c 的切换 状态 ( 例如开关是接通还是断开 ), 或者更一般地包括半桥 18a、 18b、 18c 的状态 ( 例如, 半 桥是将相连接到可表示为 +1、 0、 -1 的 +V、 NP 还是 -V)。 0045 按照本发明的一实施例, 在处理器 16 中接收电气转换器 12 的实际切换状态uk-1。 0046 在步骤 102, 生成方案树 50( 参见图 3)。 说 明 书 CN 104054254 A 6 4/10 页 7 0047 根节点 52 可包括
25、转换器 12 的实际电状态 xk和 / 或实际切换状态uk-1。 0048 方案树 50 的其它节点可通过将控制策略应用于根节点 52 来生成。控制策略可通 过与切换和扩展动作对应的符号 S 和 E 的序列来表示。图 3 示范地示出控制策略 SSESE 的 切换方案树50。 通过迭代地将节点附连到已经通过控制策略的符号所生成的所有中间叶节 点, 来生成方案树 50。 0049 对于切换动作S, 可跟随父节点(例如52)的切换状态的每种可能切换状态的切换 节点 ( 例如 54) 附连到每一个中间叶节点。可能切换状态可以是全部不同的切换状态, 例 如三相三级逆变器的 9 种不同切换状态。一般来说,
26、 3 级 3 相逆变器具有 27 个不同开关配 置。取决于前一切换状态, 可行新开关配置的数量可以较低, 例如 8 或 12。 0050 对于扩展动作 E, 扩展节点 ( 例如 56) 附连到每一个中间叶节点。 0051 这样, 生成切换序列U的方案树 50。各切换序列经由从根节点 52 到叶节点 58 的 路径的节点来定义。切换序列可通过向量U = uk-1, uk, . , u(k+N-1)( 其中N是切换序列U 的切换时域 ) 并且通过特定切换状态之间所定义的扩展时间来定义。 0052 因此, 采用三相三级转换器 12 的控制策略 SSESE 所生成的方案树 50 可定义至少 27 个不
27、同切换序列U。不同切换序列的数量可等于叶节点的数量, 并且通常可比 27 要高许 多。如果仅考虑这些序列的第一元素, 则对 3 级 3 相转换器存在 27 种可能性。 0053 按照本发明的一实施例, 电气转换器 12 的可能将来切换状态的方案树 50 可基于 实际切换状态uk-1来确定。 0054 按照本发明的一实施例, 方案树 50 可定义多个可能将来切换序列。 0055 按照本发明的一实施例, 切换序列U可通过从方案树 50 的根节点 52 到方案树 50 的叶节点 58 的路径来定义。 0056 在步骤 104, 切换序列U采用成本或权重w来加权。在这个步骤期间, 控制算法遍 历方案树
28、 50, 并且计算树 50 的各节点的权重w。切换序列U的权重w可以是其关联叶节点 58 的权重。 0057 节点的权重w可基于可在从父节点的切换状态到节点的下一个切换状态进行切 换时对各切换过渡来计算的切换成本。对于切换成本的计算, 可使用系统 10 的数学模型。 0058 按照本发明的一实施例, 可通过评估方案树 50 的节点 60, 针对控制目标、 对切换 序列计算权重w, 例如以便使切换损耗为最小。 不同权重和/或成本可对不同控制目标进行 编码。虽然切换损耗的降低可以是 GMPDTC 中的主要优化目标, 但是不同转换器应用可具有 不同控制目标, 例如将电气状态保持为尽可能接近预期参考值
29、 ( 例如, 跟踪参考转矩 )。 0059 按照本发明的一实施例, 可通过计算与节点 60 关联的切换过渡的切换损耗、 即当 从父节点的切换状态到节点本身的切换状态进行切换时发生的切换过渡, 来确定节点 60 的权重w。权重w还可基于系统的状态 xk、 例如电压或电流来计算。 0060 按照本发明的一实施例, 切换序列U的权重可基于节点60的权重和节点的父节点 54 的权重来计算。 0061 此外, 在步骤 104 期间, 对于各切换序列U, 系统 10 的电气状态 xk在将来外推。在 遍历方案树 40 时, 控制算法可从其父节点的电气状态来计算节点的电气状态。 0062 对于 S 节点, 计
30、算切换成本, 并且电气状态在将来外推一个取样实例。 0063 对于 E 节点, 电气状态在将来外推, 直到违反对外推状态的界限。 说 明 书 CN 104054254 A 7 5/10 页 8 0064 按照本发明的一实施例, 方案树 50 包括切换节点 S 和 / 或扩展节点 E。 0065 按照本发明的一实施例, 评估切换节点 S 包括基于切换节点所定义的切换过渡的 切换损耗来计算切换节点的权重。 0066 按照本发明的一实施例, 评估扩展节点 E 包括通过外推转换器 12 的电气状态, 直 到电气状态留下预定义间隔, 来计算扩展节点的扩展时间。 0067 切换序列U连同其外推电气状态 x
31、k一起可被看作是转换器系统 10 的将来方案。 这样, 每一个叶节点 58 与方案关联。各方案具有权重w, 从而在执行方案时进行与转换器 12 的损耗有关的预测。 0068 最后, 树 50 的第一个叶节点 58 可根据切换序列U期间发生的切换过渡和范围违 反的数量来与特定权重w( 或成本 ) 关联。 0069 在步骤 106, 从具有最低 ( 或最佳 ) 权重w的切换序列U, 跟随根节点的切换状态 uk-1的切换状态 uk选择为转换器 12 的下一个切换状态uk, 并且写入存储器 28 中。该算法 可选择与具有最小成本的叶节点 58 关联的控制律, 并且按照移动时域策略、 仅将第一控制 移动
32、uk应用到逆变器。 0070 按照本发明的一实施例, 要应用于电气转换器 12 的下一个切换状态uk可从具有 最佳权重的切换序列来确定。 0071 在步骤 108, 通信单元 24 从存储器 28 来读取下一个切换状态uk, 并且控制转换器 12 的开关 22a、 22b、 22c, 使得转换器 12 切换到这种切换状态。 0072 步骤 100 至 108 可在转换器 12 的各切换循环中执行。 0073 必须注意, GMPDTC 可按照不同方式执行。例如, 步骤 104 和 106 可以是步骤 102 的 一部分。 0074 一般来说, GMPDTC 应用特殊移动阻塞策略, 以便以较低数量
33、的切换方案来取得长 预测时域。对于计算时间极受限制的应用 ( 例如在 DTC 中 ), 这是有利的, 因为在标准 MPC 问题公式化中, 要考虑的切换序列U的数量随预测时域而指数地增长, 并且因此将该方法 限制到极短时域。 0075 下面给出可如何在多个处理器核30a、 30b、 30c、 30d上运行GMPDTC算法的实施例。 0076 按照本发明的一实施例, 节点60的评估由至少两个处理器核30a、 30b、 30c、 30d来 执行。 0077 GMPDTC可被看作是树遍历问题, 其中方案树50的各节点60(注意, 参考标号60用 于一般树节点 ) 必须正好访问一次。依次实现可已经具有与
34、数据布局和代码组织极大相关 的执行时间。对于并行实现, 这些效果可预计得到扩大。例如, 访问节点的顺序 ( 例如深度 优先或宽度优先 ) 可直到重要作用。有效并行化策略可极大地取决于计算单个节点 60 所 需的时间、 用于在处理器核 30a、 30b、 30c、 30d 之间传递相干节点数据所花费的时间和 / 或 处理器核30a、 30b、 30c、 30d的数量。 GMPDTC的有效并行化可必须不仅考虑对节点评估和核 间通信所花费的时间, 而且还可必须采用有效数据结构, 并且考虑架构相关特性、 例如存储 器高速缓存大小 32a、 32b、 32c、 32d。 0078 例如, 如果通信与评估
35、节点60相比是高费用的, 则解决方案可以是将树50分为若 干子树 62, 其然后在不同处理器核 30a、 30b、 30c、 30d 上并行地计算。 0079 在方案树 50 的全面分析中, GMPDTC 可削减与会引起具有增加范围违反的输出的 说 明 书 CN 104054254 A 8 6/10 页 9 切换序列U对应的树分支。在削减之后没有留下可行切换方案的情况下, 该算法可将不可 行退出 (infeasible-exit) 策略用于选择下一个切换命令, 以保证故障安全操作。 0080 集中节点池管理 并行执行的第一示例可以是步骤 102 至 106 期间的集中节点池管理。 0081 如
36、果核 30a、 30b、 30c、 30d 之间的核间通信与计算节点 60 所需的时间相比是较低 费用的, 则可使用待决树节点 60 的集中池, 其然后由主过程分配给各种核。 0082 具体来说, 在步骤 102, 例如由处理器核 30a 来运行的主过程生成树 50、 具体来说 是树 50 的树节点 60。树节点 60 可存储在主存储器 28 的集中节点池中。 0083 按照本发明的一实施例, 必须评估的方案树 50 的节点 60 的中央节点池 (central node pool) 可例如在主存储器中生成。 0084 在步骤 104, 主过程将待决树节点 600 分配给从过程, 其例如可在其
37、它处理器核 30b、 30c、 30d 中运行。 0085 按照本发明的一实施例, 将中央节点池的节点 60 分配给处理器核 30a、 30b、 30c、 30d。 0086 从过程然后对所接收的待决树节点 60 执行必要操作, 并且将结果返回到主过程, 其可保持全局知识。 0087 按照本发明的一实施例, 分配给处理器核的节点 60 在处理器核来评估。 0088 可使用用于从池中选择下一个待决节点的宽度优先方式。这会是有利的, 因为它 快速产生大量节点, 从而防止对处理器核的供应不足。 但是, 集中节点池所需的存储可比深 度优先策略明显要高。 0089 在步骤 106, 主过程选择具有最低权
38、重的切换序列。 0090 分布节点池管理 并行执行的第二示例可以是步骤 102 至 106 期间的分布节点池管理。 0091 如果核 30a、 30b、 30c、 30d 之间的核间通信与节点评估相比是高费用的, 则可使用 分布节点池管理。 0092 具体来说, 在步骤 102, 例如由处理器核 30a 来运行的主过程仅生成方案树 50 的 ( 一个或多个 ) 级。将这个不完全方案树的各分支分配给并行过程, 其例如可在处理器核 30a、 30b、 30c、 20d 中运行。 0093 在步骤 104, 每一个从过程对于它存储在其自己的本地节点池中、 例如其本地存储 器高速缓存 32a、 32b
39、、 32c、 32d 中的待决树节点 60 的子集进行工作。 0094 按照本发明的一实施例, 方案树 50 的节点 60 的至少两个本地节点池采用至少两 个处理器核 30a、 30b、 30c、 30d 来生成。 0095 按照本发明的一实施例, 本地节点池的节点 60 采用已经生成相应本地节点池的 处理器核来评估。 0096 要避免不均匀工作负荷, 可使用负荷平衡策略, 其接管待决节点 60 的再分配, 并 且更新全局变量 ( 例如当前节点的值 )。负荷平衡可由主过程来执行。 0097 在步骤 106, 主过程选择具有最低权重的切换序列。 0098 虽然分布节点池策略可需要比集中方式要少的
40、通信, 但是对于要求微秒范围中的 循环时间的应用, 甚至适度核间通信也能够使总体性能显著退化。 说 明 书 CN 104054254 A 9 7/10 页 10 0099 分为子树 并行执行的第三示例可在步骤102至106期间分为子树或者子路径。 将全局方案树50 分为子树62(其然后被指配给用于并行计算的核)可被认为是上述分布节点池管理的特殊 变体。 0100 在步骤 102, 方案树 50 被生成, 并且分为子树 62。 0101 例如, 例如由处理器核 30a 来运行的主过程在主存储器 28 中生成树 50, 并且按照 一般规则将它分为子树 62。但是, 主过程在主存储器 28 中生成满
41、树不是必要的, 因为从过 程可即时生成其单独子树 ( 在其本地高速缓冲存储器 32a、 32b、 32c、 32d 中 )。 0102 例如, 在第一级的节点 54 来分割全局方案树 50。即, 子树 62 具有根节点 54, 其是 全局方案树 50 的第一级节点。子树 62 然后分配给处理器核 30a、 30b、 30c、 30d。例如, 每个 子树 62 存储在相应本地高速缓冲存储器 32a、 32b、 32c、 32d 中。 0103 但是, 有可能的是, 可在处理器核 30a、 30b、 30c、 30d 中运行的并行过程例如在读 取输入 xk和uk-1之后、 在其本地高速缓冲存储器
42、32a、 32b、 32c、 32d 中生成树 50。还有可能 的是, 并行过程可以仅生成它们感兴趣的小子树, 即, 满树 50 的一部分。 0104 此后, 并行过程可分割方案树 50 本身。在这种情况下, 可以不需要主过程。 0105 取决于控制器 16 所提供的处理器核的数量, 可在不同级分割方案树 50, 以便得到 充分多的子树 62, 以将所有处理器核 30a、 30b、 30c、 30d 保持为忙。 0106 如果只有几个处理器核是可用的, 并且核间通信应当保持在最小等级, 则可使用 分为 ( 实际 ) 子树 62 的方式。 0107 按照本发明的一实施例, 方案树50分为子树62
43、, 并且将子树62分配给至少两个处 理器核 30a、 30b、 30c、 30d。 0108 按照本发明的一实施例, 第一子树62的切换序列的权重采用第一处理器核30a来 计算, 以及第二子树 62 的切换序列的权重采用第二处理器核 30b 来计算。 0109 在控制器 16 提供与方案树 50 中存在的叶节点 58 同样多的处理器核的情况下, 第 一个处理器核 30a、 30b、 30c、 30d 可需要仅计算一种方案。单独路径 ( 切换序列 ) 由处理器 核 30a、 30b、 30c、 30d 来计算, 从而接受在树上级所执行的计算的冗余度。这种策略的一个 有效实现可要求方案结果的快速聚
44、合。 例如, 特定处理器核可运行主过程, 其为一组处理器 核确定具有最低权重的方案。该方式可特别适合于在 GPU 架构 ( 其专用于对多个数据运行 相同指令 ) 上的执行。 0110 按照本发明的一实施例, 方案树50分为单切换序列U, 并且将切换序列U分配给多 个处理器核 30a、 30b、 30c、 30d。 0111 按照本发明的一实施例, 切换序列U的权重采用向其分配切换序列U的处理器核 来计算。 0112 全局方案树 50 被分为的子树 62 的数量可以是设计参数, 可根据可用处理器核 30a、 30b、 30c、 30d 的数量来选择。解决方案可以是将第一级的全局方案树 50 划分
45、为子帧 62, 其根节点 54 是全局树 50 的第一级节点 54。 0113 由于转换器 12 的硬件 ( 具体来说是开关 22a、 22b、 22c) 所施加的切换限制, 子树 62 可具有不同大小。因此, 全面分析特定子树 62 所花费的时间也可不同。 0114 对于各实际切换状态uk-1, 查找表 70 可存储在控制器 16 中, 其对特定控制策略 说 明 书 CN 104054254 A 10 8/10 页 11 ( 例如 SSESE) 已经预先计算。 0115 各查找表 70 可包括特定切换状态uk-1的方案树 50。查找表 70 可存储在全局存储 器 28 中或者各高速缓冲存储器
46、 32a、 32b、 32c、 32d 中。 0116 此外, 查找表 70 可包括全局方案树 50 应当被分为哪些子树 62 的信息和 / 或相应 子树 62 的估计处理时间 ( 参见图 3)。 0117 例如, 在图 3 的方案树 50 的情况下, 查找表 70 可包括子树 62, 并且以下 ( 假定 ) 表包括处理子树 62 所需的估计时间 : 子树 : 时间 : 1,3,43 2,55 从这些执行时间, 可得出哪些处理器核 30a、 30b、 30c、 30d 应当按照哪一种顺序来处理 哪一个子树 62 的调度策略。 0118 调度策略也可存储在查找表 70 中。特定切换循环的调度策略
47、然后可根据先前应 用的切换状态uk-1来选择。查找表 70 可存储哪些处理器核 30a、 30b、 30c、 30d 可处理哪些 子树 62, 和 / 或可存储由处理器核 30a、 30b、 30c、 30d 处理子树 62 的顺序。 0119 下面示出采用两个处理器核 30a 和 30b、 使用控制器 16 的 LPT 规则对子树的所产 生分配 : CPU 核 : 子树 : 12,1,4 25,3 注意, 由于在这个示例中, 分割在方案树 50 的第二级来执行, 所以所产生时间表可涉 及第一级的节点 52、 54 的冗余计算。 0120 总之, 调度策略可预先计算并且存储在控制器 16 中。
48、但是, 如果控制算法能够在 运行时提供与方案树 50 结构有关的附加信息, 则基于试探的在线调度、 例如 LPT( 参见下 文 ) 可用于调度。要满足实时要求, 试探应当具有低计算需求。如果使用计算低费用调度 试探, 则时间表可在每一个切换循环中计算和更新, 以考虑来自控制算法的附加信息, 其可 只是在线可用的。 0121 按照本发明的一实施例, 通过从预先计算表70加载方案树50的至少部分, 来确定 方案树 50。 0122 按照本发明的一实施例, 分为方案树 50 的子树 62 在表 70 中预先定义。 0123 按照本发明的一实施例, 方案树 50 的子树 62 的计算 / 处理时间在表
49、 70 中预先定 义。子树的计算和 / 或处理时间不是严格地需要存储在表中。可以仅要求预先计算对处理 器核分配子树。 0124 按照本发明的一实施例, 向处理器核 30a、 30b、 30c、 30d 分配子树 62 在表 70 中预 先定义。 0125 在步骤 104, 处理器核 32a、 32b、 32c、 32d 计算与子树 62 关联的方案。各切换序列 / 方案的所产生权重w可存储在本地高速缓冲存储器 32a、 32b、 32c、 32d 中。 0126 在步骤 106, 确定具有最低权重的方案。 0127 例如, 所有并行过程至少将下一个可能切换状态uk及其权重w写到主存储器 28。 此后, 主过程确定具有最低权重w的切换状态。 0128 还有可能的是, 各处理器