主要内容

Optimwarmstart.

创建温暖的启动对象

描述

例子

WS.= OptimwarmStart(X0.选项创建一个热启动对象WS.与求解器一起使用选项.有关使用温暖启动对象的示例,请参阅热启动quadprog

例子

WS.= OptimwarmStart(X0.选项名称,价值WS.使用名称-值参数。仅在生成代码时使用内存边界。

例子

全部收缩

为创建一个默认的热启动对象quadprog

X0 = [1 3 5];选择= optimoptions (“quadprog”“算法”'active-set');WS = OptimWarmStart(X0,选项)
WS =具有属性的Quadprogwarmstart:x:[3×1双]选项:[1×1 Optim.Options.QuadProg]代码生成限制

创建一个Lsqlin.具有内存限制的代码生成的热启动对象。

X0 = [1 3 5];选择= optimoptions (“lsqlin”“算法”'active-set');WS = OptimWarmStart(X0,选项,......'maxlinearequalities'30岁的......'maxlinearinequality'5)

ws = lsqlinwarmstart与属性x和选项以及链接“代码生成限制”

单击代码生成限制链接以查看内存设置。

Maxlinearequality:30 MaxlineSinequality:5

输入参数

全部收缩

初始点,指定为真实数组。这一点存储在ws。X

例子:10 *兰特(5,1)

数据类型:双倍的

的输出,指定为优化选项优化选择.您必须指定至少一个支持的求解器万博1manbetxLsqlin.quadprog,'active-set'对于和算法选项。例如,输入以下代码以指定quadprog求解器。

选择= optimoptions (“quadprog”“算法”'active-set');

这些选项存储在ws。选项

名称值对参数

指定可选的逗号分离对名称,价值参数。名称是参数名称和价值是对应的值。名称必须出现在引号内。您可以按如下顺序指定几个名称和值对参数Name1, Value1,…,的家

例子:WS = OptimWarmStart(X0,选项,'MaxLinearequalities',30,'MaxLineAleineQuality',5)指定高达30个线性等于和5个线性不平等。

最大线性平等约束数,指定为正整数。要为平等​​约束分配足够的内存,请指定在代码的整个运行过程中的最大相等约束数。

仅在没有动态内存分配的情况下使用此参数进行代码生成。您必须使用此参数和'maxlinearinequality'

存储此参数的值存储在Ws.maxlinearity.

例子:25.

数据类型:双倍的

线性不等式约束的最大数目,指定为一个正整数。要为不等约束分配足够的内存,请指定在整个代码运行期间不等约束的最大数量。

仅在没有动态内存分配的情况下使用此参数进行代码生成。您必须使用此参数和'maxlinearequalities'

存储此参数的值存储在Ws.maxlineAleinequality.

例子:25.

数据类型:双倍的

输出参数

全部收缩

温暖的启动对象,作为一个返回lsqlinwarmstart.对象或一个quadprogwarmstart.目的。有关使用温暖启动对象的示例,请参阅热启动quadprog

WS.具有以下只读属性:

  • X——初始点

  • 选项- 优化选项

  • MaxLinearEqualities- 代码生成的最大线性平衡数

  • MaxLinearInequalities-代码生成的线性不等式的最大数量

改变任何属性WS.,通过致电重新创建对象Optimwarmstart.

算法

温暖的启动对象维护来自先前解决的问题的活动约束列表。求解器通过尽可能多地运行最大的激活约束信息以解决当前问题。如果先前的问题与当前的问题太不同,则不会重复使用活动集信息。在这种情况下,求解器有效地执行冷启动以重建活动约束列表。

扩展能力

在R2021A介绍