主要内容

OptimizationConstraint

优化的约束

描述

一个OptimizationConstraint对象包含约束的OptimizationVariable对象或OptimizationExpression对象。每个约束使用其中一个比较运算符:= =,< =,或> =

一个语句可以代表一组约束。例如,您可以表达一个矩阵变量的约束,每一行x总结,如图所示创建简单的约束循环

创建

创建一个空对象使用约束optimconstr。通常,您使用一个循环来填补这个表达式的对象。

如果你创建一个优化使用比较运算符表达式从优化变量= =,< =,或> =,然后生成的对象是一个OptimizationEquality或者一个OptimizationInequality。看到兼容性的考虑

包括限制约束通过使用点符号属性的优化问题。

概率= optimproblem;x = optimvar (“x”、5、3);rowsum = optimconstr (5);i = 1:5 rowsum (i) =总和(x(我,:))= =我;结束prob.Constraints。rowsum = rowsum;

属性

全部展开

索引名称,指定字符串或字符单元阵列的向量。使用索引名称的信息,请参阅为优化变量命名索引

数据类型:细胞

这个属性是只读的。

优化变量的对象,指定为一个结构OptimizationVariable对象。

数据类型:结构体

对象的功能

不可能实行 在一个点约束违反
显示 显示信息优化对象
保存优化对象描述

例子

全部折叠

创建一个5-by-3优化变量x

x = optimvar (“x”、5、3);

创建约束,每一行的资金,通过使用一个循环。初始化循环使用optimconstr

rowsum = optimconstr (5);i = 1:5 rowsum (i) =总和(x(我,:))= = 1;结束

检查rowsum对象。

rowsum
rowsum = 5 x1线性OptimizationConstraint数组属性:IndexNames:{{}{}}变量:[1 x1 struct]包含1 OptimizationVariable看到约束制定与显示。

显示的约束rowsum

显示(rowsum)
(1,1)x (1,1) + (1、2) + x (1、3) = = 1 (2, 1) x (2, 1) + (2, 2) + x (2、3) = = 1 (3,1) x (1) + (2) + x (3、3) = = 1 (4,1) x (4 1) + (2) + x (4,3) = = 1 (5、1) x (1) + (2) + x (5,3) = = 1

兼容性的考虑

全部展开

行为改变R2019b

介绍了R2017b