主要内容

optimvar

创建优化变量

描述

使用optimvar创建优化变量。

例子

x= optimvar (的名字)创建一个标量优化变量。一个优化变量是一个象征性的对象,使您能够创建表达式问题的目标函数和约束的变量。

提示

为了避免混淆,集的名字MATLAB的®变量的名字。例如,

金属= optimvar (“金属”)

例子

x= optimvar (的名字,n)创建一个n1优化变量的向量。

例子

x= optimvar (的名字,装运箱)创建一个向量的优化变量,可以使用装运箱索引。元素的数量x的长度是一样的吗装运箱向量。的方向x的方向是一样的吗装运箱:x是一个行向量什么时候装运箱是一个行向量,x是一个列向量的时候吗装运箱是一个列向量。

例子

x= optimvar (的名字,装运箱1,n2……装运箱k)x= optimvar (的名字,{装运箱1,装运箱2……装运箱k})x= optimvar (的名字,(n1,n2……nk)为正整数的任意组合nj和名称装运箱k,创建优化变量与数组维度等于整数nj和条目的长度cstr1k。

例子

x= optimvar (___,名称,值)以前,对于任何语法,使用指定的一个或多个额外的选项名称,值对参数。例如,指定一个整数变量,使用x = optimvar (“x”、“类型”、“整数”)

例子

全部折叠

创建一个标量优化变量命名美元

美元= optimvar (“美元”)
美元= OptimizationVariable属性:名称:“美元”类型:“连续”IndexNames:{{}{}}下界:负无穷UpperBound:正看到变量与显示。看到与showbounds界限。

创建一个3×1优化变量向量命名x

x = optimvar (“x”3)
x = 3 x1 OptimizationVariable数组属性:Array-wide属性:名称:“x”型:“连续”IndexNames: {{} {}} Elementwise属性:下界:x1双[3]UpperBound: [3 x1双]看到变量与显示。看到与showbounds界限。

创建一个整数优化变量向量命名螺栓索引的字符串“铜”,“不锈钢”,“镀锌”。使用的指标螺栓创建一个表达式优化,尝试创建螺栓使用字符数组或在一个不同的方向。

创建螺栓使用字符串连续取向。

bnames = [“铜”,“不锈钢”,“镀锌”];螺栓= optimvar (螺栓的bnames,“类型”,“整数”)
螺栓= 1 x3 OptimizationVariable数组属性:Array-wide属性:名称:螺栓的类型:“整数”IndexNames: {{} {1 x3细胞}}Elementwise属性:下界:[负负无穷到负无穷到]UpperBound:[正正正]看到变量与显示。看到与showbounds界限。

创建一个使用字符串索引优化表达式。

y =螺栓(“铜”)+ 2 *螺栓(“不锈钢”)+ 4 *螺栓(“镀锌”)
y =线性OptimizationExpression螺栓(黄铜)+ 2(不锈钢)+ 4 * *螺栓螺栓(镀锌)

用特征向量的单元阵列代替字符串得到相同的变量指标。

bnames = {“铜”,“不锈钢”,镀锌的};螺栓= optimvar (螺栓的bnames,“类型”,“整数”)
螺栓= 1 x3 OptimizationVariable数组属性:Array-wide属性:名称:螺栓的类型:“整数”IndexNames: {{} {1 x3细胞}}Elementwise属性:下界:[负负无穷到负无穷到]UpperBound:[正正正]看到变量与显示。看到与showbounds界限。

使用的用于版本bnames,3×1而不是1×3,并观察螺栓有方向。

bnames = [“铜”;“不锈钢”;“镀锌”];螺栓= optimvar (螺栓的bnames,“类型”,“整数”)
螺栓= 3 x1 OptimizationVariable数组属性:Array-wide属性:名称:螺栓的类型:“整数”IndexNames: {{1 x3细胞}{}}Elementwise属性:下界:x1双[3]UpperBound: [3 x1双]看到变量与显示。看到与showbounds界限。

创建一个数组3-by-4-by-2优化变量的命名xarray

xarray = optimvar (“xarray”、3、4、2)
xarray = 3 x4x2 OptimizationVariable数组属性:Array-wide属性:名称:“xarray”类型:“连续”IndexNames: {{} {} {}} Elementwise属性:下界:[3 x4x2双]UpperBound: [3 x4x2双]看到变量与显示。看到与showbounds界限。

您还可以创建多维变量索引的名称和数字指标。例如,创建一个3×4优化变量的数组,第一个维度是索引的字符串“铜”,“不锈钢”,镀锌的,第二个维度是数值索引。

bnames = [“铜”,“不锈钢”,“镀锌”];螺栓= optimvar (螺栓的bnames 4)
螺栓= 3 x4 OptimizationVariable数组属性:Array-wide属性:名称:螺栓的类型:“连续”IndexNames: {{1 x3细胞}{}}Elementwise属性:下界:[3 x4双]UpperBound: [3 x4双]看到变量与显示。看到与showbounds界限。

创建一个优化变量命名x大小3-by-3-by-3代表二进制变量。

x = optimvar (“x”3,3,3,“类型”,“整数”,下界的0,“UpperBound”,1)
x =子集要OptimizationVariable数组属性:Array-wide属性:名称:“x”型:“整数”IndexNames: {{} {} {}} Elementwise属性:下界:[子集要双]UpperBound:子集要双变量与表演。看到与showbounds界限。

输入参数

全部折叠

变量名称,指定为一个字符或字符串向量。

提示

为了避免混淆的名称涉及到这方面的一个变量,变量名设置工作空间变量的名字。例如,

卡车= optimvar (“卡车”);

例子:“仓库”

例子:“卡车”

数据类型:字符|字符串

变量维度,指定为一个正整数。

例子:4

数据类型:

索引名称,指定为字符串数组或单元格字符数组的数组。

例子:x = optimvar (“x”,“仓库”,“卡车”,“城市”))

例子:x = optimvar (“x”,{“仓库”,“卡车”,“城市”})

数据类型:字符串|细胞

名称-值对的观点

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

例子:创建x转换作为一个负的向量x (2) < = 2x (3) < = 4由命令x = optimvar (“x”、3、“下界”,0,“UpperBound”,[正无穷,2、4])

变量类型,指定为“连续”“整数”

  • “连续”——真正的值

  • “整数”——整数值

变量类型适用于所有变量的数组。有多个变量类型,创建多个变量。

提示

指定二进制变量,使用“整数”类型与下界等于0UpperBound等于1

例子:“整数”

下界,指定为数组相同的大小x或作为一个真正的标量。如果下界是一个标量,适用于所有元素的值的x

例子:设定一个下限0所有的元素x,指定标量值0

数据类型:

上界,指定为数组相同的大小x或作为一个真正的标量。如果UpperBound是一个标量,适用于所有元素的值的x

例子:设置一个上限2所有的元素x,指定标量值2

数据类型:

输出参数

全部折叠

优化变量,作为一个返回OptimizationVariable数组中。数组的尺寸是一样的那些相应的输入变量,如装运箱1——- - - - - -cstr2

提示

  • OptimizationVariable对象有处理复制行为。看到处理对象的行为处理的比较和价值类。处理行为意味着一份副本OptimizationVariable指向原来的,没有一个独立的存在。例如,创建一个变量x,将其复制到y,然后设置一个属性y。请注意,x需要在新的属性值。

    x = optimvar (“x”,下界的1);y = x;y。下界= 0;showbounds (x)
    0 < = x
介绍了R2017b