主要内容

createOptimproblem.

创建优化问题结构

句法

问题= createOptimproblus('solvername')
问题= createOptimprobrom('solvername','parametername',parametervalue,...)

描述

问题= createOptimproblus('solvername')为此创建一个空的优化问题结构solvername.求解器。

问题= createOptimprobrom('solvername','parametername',parametervalue,...)接受一个或多个逗号分隔的参数名称/值对。指定ParameterName.在单引号内。

输入参数

solvername.

求解器的名称。为一个Globalsearch.问题,使用'粉丝'。为一个多层的问题,使用'粉丝''fminunc''lsqcurvefit'或者'lsqnonlin'

名称值对参数

'aeq'

线性平等约束的矩阵。约束具有表单:

AEQ X.=贝卡

'Aineq'

线性不等式约束的矩阵。约束具有表单:

Aineq X.≤.Bineq.

'beq'

线性平等约束的矢量。约束具有表单:

AEQ X.=贝卡

'bineq'

线性不等式约束的矢量。约束具有表单:

Aineq X.≤.Bineq.

'磅'

下限矢量。

也可以是一个阵列;看矩阵论据

'nonlcon'

非线性约束函数的功能句柄。约束函数必须接受向量X并返回两个向量:C,非线性不等式约束,和CEQ.,非线性平等约束。如果其中一个约束函数是空的,nonlcon.必须退货[]对于该功能。

如果是Gradconstr.选项是'在',然后另外nonlcon.必须返回两个额外的输出,GRADC毕格。这GRADC参数是具有一列的矩阵,用于每个约束的梯度,如毕格

有关更多信息,请参阅写制约束

'客观的'

功能手柄到目标函数。除了除了所有的解雇lsqnonlinlsqcurvefit.,目标函数必须接受向量X并返回标量。如果是gradobj.选项是'在'然后,目标函数必须返回第二输出,载体,表示目标的梯度。为了lsqnonlin,目标函数必须接受向量X并返回向量。lsqnonlin总和客观函数值的正方形。为了lsqcurvefit.,目标函数必须接受两个输入,Xxdata.,并返回向量。

有关更多信息,请参阅计算目标函数

'选项'

优化选项。创建选项优化选择

'UB'

上限矢量。

UB.也可以是一个阵列;看矩阵论据

'x0'

矢量,优化的潜在起点。给出了问题的维度。

X0.也可以是一个阵列;看矩阵论据

'xdata'

数据点矢量lsqcurvefit.

'ydata'

数据点矢量lsqcurvefit.

输出参数

问题

优化问题结构。

例子

使用Rosenbrock的功能创建一个问题结构,例如:参见遗传算法中的混合方案), 这内部点算法粉刺,绝对值的边界2

Anonrosen = @(x)(100 *(x(x(2) -  x(1)^ 2)^ 2 +(1-x(1))^ 2);opts = Optimoptions(@ Fmincon,'算法','内部点');问题= createOptimprobrom('fmincon','x0',randn(2,1),...'目标',anonrosen,'lb',[ -  2; -2],'Ub',[2; 2],...'选项',选择);

也可以看看

|

在R2010A介绍