patternsearch

使用模式搜索查找的功能最低

描述

X= patternsearch(有趣的x0求局部最小值,X,到功能手柄有趣的一个计算目标函数的值。x0是指定用于所述模式搜索算法中的初始点实向量。

请注意

传递额外的参数(优化工具箱)解释了如何额外的参数,传递给目标函数和约束的非线性函数,如果必要的。

X= patternsearch(有趣的x0一个b最小化有趣的受线性不等式斧头b。看到不等式约束条件(优化工具箱)。

X= patternsearch(有趣的x0一个bAEQ说真的最小化有趣的服从线性等式Aeq * x=说真的斧头b。如果不存在线性不等式,集合一个= []B = []

X= patternsearch(有趣的x0一个bAEQ说真的乌兰巴托定义了在设计变量的一组上限和下限的X,使溶液总是在范围X乌兰巴托。如果不存在线性等式,设置AEQ = []BEQ = []。如果X(ⅰ)没有下界了吗磅(i) =负无穷。如果X(ⅰ)没有上限,集UB(ⅰ)= Inf文件

X= patternsearch(有趣的x0一个bAEQ说真的乌兰巴托nonlcon研究非线性不等式的极小化问题c (x)或平等CEQ(x)的中定义的nonlconpatternsearch优化有趣的这样c (x)≤0CEQ(X)= 0。如果不存在任何界限,设定磅= []UB = [], 或两者。

X= patternsearch(有趣的x0一个bAEQ说真的乌兰巴托nonlcon选项最小化有趣的在指定的优化选项选项。采用optimoptions来设置这些选项。如果不存在非线性不等式或等式约束,则设nonlcon = []

X= patternsearch(问题求出问题,其中问题结构描述在输入参数。创建问题结构从优化应用程序导出一个问题,如所述导出您的工作(优化工具箱)。

[Xfval] = patternsearch(___,对于任何语法,返回目标函数的值有趣的在解决方案X

[Xfvalexitflag输出] = patternsearch(___此外回报exitflag的退出条件的值patternsearch和一个结构输出关于优化过程的信息。

例子

全部折叠

将无约束问题最小化patternsearch解算器。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

找出最小,在开始点(0,0)

x0 = (0,0);X = patternsearch(乐趣,X0)
终止优化:网格尺寸小于可选项。x = -0。7037 -0。1860

最小化的函数受到一些线性不等式约束。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

设置两个线性不等式约束。

A = [-3,-2;-4,-7]。B = [-1; -8]。

找出最小,在开始点[0.5,-0.5]

X0 = [0.5,-0.5];X = patternsearch(乐趣,X0,A,B)
终止优化:网格尺寸小于可选项。X = 5.2824 -1.8758

求一个只有约束条件的函数的最小值。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

求最小值时$0 \le x(1) \le\infty$$  -  \ infty \文件X(2)\文件-3 $

磅=(0,负);乌兰巴托=[正无穷,3];一个= [];b = [];Aeq = [];说真的= [];

找出最小,在开始点(1、5)

x0 = (1、5);x = patternsearch (Aeq有趣,x0, A, b,说真的,磅,乌兰巴托)
终止优化:网格尺寸小于可选项。X = 0.1880 -3.0000

找出最小的功能受到非线性不等式约束的。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

创建非线性约束

$ $ \压裂{{xy}}{2} +{\离开({x + 2} \右)^ 2}+ \压裂{{{{\离开({y - 2} & # xA; \右)}^ 2}}}{2}\ le 2。$ $

为此,在您的MATLAB路径上,将以下代码保存到一个名为的文件中ellipsetilt.m

功能[c,ceq] = ellipsetilt(x) ceq = [];c = x(1)*x(2)/2 + (x(1)+2)^2 + (x(2)-2)^2/2 -2;

开始patternsearch从最初的点[-2,-2]

x0 = (2, 2);一个= [];b = [];Aeq = [];说真的= [];磅= [];乌兰巴托= [];nonlcon = @ellipsetilt;X = patternsearch(乐趣,X0,A,B,AEQ,BEQ,LB,UB,nonlcon)
优化终止:网孔尺寸小于options.MeshTolerance和约束违反小于options.ConstraintTolerance。X = -1.5144 0.0874

设置选项以观察进程patternsearch解决方案的过程。

创建以下双变量目标函数。在您的MATLAB®路径,下面的代码保存到一个文件名为psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

选项得到迭代显示和在每次迭代绘制目标函数。

选项= optimoptions(“patternsearch”'显示''ITER'“PlotFcn”,@psplotbestf);

从该点出发,求出目标的无约束极小值(0,0)

x0 = (0,0);一个= [];b = [];Aeq = [];说真的= [];磅= [];乌兰巴托= [];nonlcon = [];X = patternsearch(乐趣,X0,A,B,AEQ,BEQ,LB,UB,nonlcon,选项)

ITER F-计数F(X)MeshSize方法0 1 1 1 1 4 -5.88607 2成功轮询2 8 -5.88607 1精确网3 12 -5.88607 0.5提纯网4 16 -5.88607 0.25精确目(输出修整)63 218 -7.025451.907e-06提纯网64 221 -7.02545 3.815e-06成功轮询65 225 -7.02545 1.907e-06提纯网66 229 -7.02545 9.537e-07提纯网格优化终止:筛目大小小于options.MeshTolerance。x = -0。7037 -0。1860

查找函数的最小值,同时报告位置和最低值。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

找到目标的约束最小,从点开始(0,0)。返回最小值的位置,X的值有趣的(x)

x0 = (0,0);[x, fval] = patternsearch(有趣,x0)
终止优化:网格尺寸小于可选项。x = -0.7037 -0.1860 fval = -7.0254

要检查patternsearch溶液处理,得到所有输出。

创建以下双变量目标函数。在MATLAB®路径上,将以下代码保存到一个名为的文件中psobj.m

功能y = psobj (x) y = exp (- x (1) ^ 2 x (2) ^ 2) * (1 + 5 * x (1) + 6 * x x (1) (2) + 12 * * cos (x (2)));

设置目标函数为@psobj

有趣= @psobj;

找到目标的约束最小,从点开始(0,0)。返回的解决方案,X,在该溶液中的目标函数值,有趣的(x),出口标志,以及输出结构。

x0 = (0,0);[x, fval exitflag、输出]= patternsearch(有趣,x0)
终止优化:网格尺寸小于可选项。X = -0.7037 -0.1860 FVAL = -7.0254 exitflag = 1个输出=结构与字段:功能:@psobj problemtype: '无约束' pollmethod: 'gpspositivebasis2n' maxconstraint:[] searchmethod:[]迭代:66 funccount:229 meshsize:9.5367E-07 rngstate:[1x1的结构]消息: '优化终止:筛目大小小于options.MeshTolerance'。

exitflag1,表示收敛到局部极小值。

输出结构包括信息,诸如多少次迭代patternsearch花,有多少功能评估。比较该输出结构,从结果使用非默认选项进行模式搜索。在那个例子中,您获得了其中的一些信息,但是没有获得,例如,函数计算的次数。

输入参数

全部折叠

函数被最小化,指定为功能句柄或函数名。该有趣的函数接受的载体X并返回实标量F,即目标函数的取值点X

您可以指定有趣的作为文件句柄的函数

x = patternsearch (x0 @myfun)

这里,myfun是一个MATLAB函数吗

函数f = myfun(x) f =…在x处计算函数值

有趣的也可以是匿名函数的函数句柄

X = patternsearch(@(x)的范数(X)^ 2,X0,A,B);

例:有趣= @(X)的sin(x(1))* COS(X(2))

数据类型:字符|function_handle|

初始点,指定为实数向量。patternsearch使用元素的数量x0来确定变量的个数有趣的接受。

例:X0 = [1,2,3,4]

数据类型:

线性不等式约束,表示为实矩阵。一个是一个中号——- - - - - -nvars矩阵,中号是不等式的个数。

一个编码中号线性不等式

A * x < =

哪里X的列向量nvars变量X(:),b是一个列向量吗中号元素。

例如,指定

X1+ 2X2≤10
3X1+ 4X2≤20
X1+ 6X2≤30日

给这些约束:

= [1,2,3,4,5,6);b = (10、20、30);

例:若要指定控制变量的和为1或更小,请给出约束条件A =酮(1,N)B = 1

数据类型:

线性不等式约束,指定为实数向量。b是一个中号-与。相关的元素向量一个矩阵。如果您通过b作为行向量,求解器内部进行转换b到列向量B(:)

b编码中号线性不等式

A * x < =

哪里X的列向量ñ变量X(:),一个是一个矩阵的大小中号——- - - - - -ñ

例如,指定

X1+ 2X2≤10
3X1+ 4X2≤20
X1+ 6X2≤30日

给这些约束:

= [1,2,3,4,5,6);b = (10、20、30);

例:若要指定控制变量的和为1或更小,请给出约束条件A =酮(1,N)B = 1

数据类型:

线性等式约束,指定为实矩阵。AEQ是一个——- - - - - -nvars矩阵,是等式的个数。

AEQ编码线性等式

Aeq * x =说真的

哪里X的列向量ñ变量X(:),说真的是一个列向量吗元素。

例如,指定

X1+ 2X2+ 3X3= 10
2X1+ 4X2+X3= 20,

给这些约束:

AEQ = [1,2,3; 2,4,1];BEQ = [10; 20]。

例:要指定控制变量sum为1,请给出约束条件AEQ =酮(1,N)BEQ = 1

数据类型:

线性等式约束,指定为实数向量。说真的是一个-与。相关的元素向量AEQ矩阵。如果您通过说真的作为行向量,求解器内部进行转换说真的到列向量BEQ(:)

说真的编码线性等式

Aeq * x =说真的

哪里X的列向量ñ变量X(:),AEQ是一个矩阵的大小微地震——- - - - - -ñ

例如,指定

X1+ 2X2+ 3X3= 10
2X1+ 4X2+X3= 20,

给这些约束:

AEQ = [1,2,3; 2,4,1];BEQ = [10; 20]。

例:要指定控制变量sum为1,请给出约束条件AEQ =酮(1,N)BEQ = 1

数据类型:

下界,指定为实向量或真正的数组。如果要素的数量x0等于,然后指定

X(ⅰ)> =磅(I)

对所有人一世

如果元素个数(磅)<元素个数(x0),然后指定

X(ⅰ)> =磅(I)

1 <= I <= numel(Ib)的

在这种情况下,解决方案发出警告。

例:要指定所有控制变量为正,LB =零(尺寸(X0))

数据类型:

上限,指定为实向量或真正的数组。如果要素的数量x0等于乌兰巴托,然后乌兰巴托指定

X(ⅰ)<= UB(I)

对所有人一世

如果numel(UB),然后乌兰巴托指定

X(ⅰ)<= UB(I)

1 <= I <= numel(UB)

在这种情况下,解决方案发出警告。

例:要指定所有的控制变量都小于1,UB =酮(尺寸(X0))

数据类型:

非线性约束,指定为功能手柄或函数的名称。nonlcon是接受载体或阵列的功能X并返回两个阵列,c (x)CEQ(x)的

  • c (x)是非线性不等式约束在阵列Xpatternsearch试图满足

    C(X)<= 0

    对于所有C

  • CEQ(x)的是非线性等式约束在阵列Xpatternsearch试图满足

    CEQ(X)= 0

    对于所有CEQ

例如,

X = patternsearch(@ myfun,X0,A,B,AEQ,BEQ,LB,UB,@ mycon)

哪里mycon是一个MATLAB函数吗

功能并[c,CEQ] = mycon(X)C = ...%计算非线性不等式x处。CEQ = ...%计算非线性等式x处。
欲了解更多信息,请参阅非线性约束(优化工具箱)。

数据类型:字符|function_handle|

优化选项,指定为返回的对象optimoptions(推荐),或结构。您也可以使用从优化应用程序导出选项。有关详细信息,请参阅模式搜索选项

optimoptions皮张的选项中列出斜体;看到optimoptions隐藏的选项

{}表示默认值。见选项细节模式搜索选项

选项patternsearchparetosearch

选项 描述

ConstraintTolerance

公差限制。

对于期权的结构,使用TolCon

正标|{1E-6}

显示

显示器的水平。

“关”|'ITER'|“诊断”|{'最后'}

MaxFunctionEvaluations

目标函数评估的最大数量。

对于期权的结构,使用MaxFunEvals

正整数|{' 2000 * numberOfVariables '}patternsearch{ '3000 *(numberOfVariables + numberOfObjectives)'}paretosearch,其中numberOfVariables为问题变量的个数,numberOfObjectives是目标函数的数

MaxIterations

最大迭代次数。

对于期权的结构,使用MAXITER

正整数|{ '100个* numberOfVariables'}patternsearch{100 * (numberOfVariables + numberOfObjectives)}paretosearch,其中numberOfVariables为问题变量的个数,numberOfObjectives是目标函数的数

MAXTIME

总时间(单位:秒),允许进行优化。

对于期权的结构,使用时限

正标|{Inf}

MeshTolerance

公差的网目尺寸。

对于期权的结构,使用TolMesh

正标|{1E-6}

OutputFcn

功能优化的函数调用在每次迭代。指定为功能句柄或函数处理的一个单元阵列。

对于期权的结构,使用OutputFcns

函数句柄或函数句柄的单元数组|{[]}

PlotFcn

从模式搜索输出的情节。作为指定的名称内建绘图功能,功能手柄,或名称的单元阵列内置的情节函数或函数处理。

对于期权的结构,使用PlotFcns

{[]}|都patternsearchparetosearch“psplotfuncount”|自定义绘制函数

paretosearch只有多目标:'psplotdistance'|'psplotmaxconstr'|'psplotparetof'|“psplotparetox”|“psplotspread”|'psplotvolume'

patternsearch或者只paretosearch只有一个目标:“psplotbestf”|“psplotmeshsize”|“psplotbestx”

PollMethod

模式搜索中使用的轮询策略。

{ 'GPSPositiveBasis2N'}|“GPSPositiveBasisNp1”|'GSSPositiveBasis2N'|'GSSPositiveBasisNp1'|'MADSPositiveBasis2N'|“MADSPositiveBasisNp1”

paretosearch只要:{' GSSPositiveBasis2np2 '}

UseParallel

并行计算目标函数和非线性约束函数。看到向量化和并行选项(用户功能评价)如何使用全局优化工具箱并行处理

真正的|{假}

UseVectorized

指定是否函数量化。看到向量化和并行选项(用户功能评价)矢量化目标和约束功能

对于期权的结构,使用矢量化='上'“关”

真正的|{假}

选项paretosearch只有

选项 描述

InitialPoints

初始点paretosearch。使用这些数据类型之一:

  • 矩阵nvars列,其中每行代表一个初始点。

  • 包含以下字段的结构(所有字段都是可选的,除了X0):

    • X0——矩阵nvars列,其中每行代表一个初始点。

    • Fvals——矩阵numObjectives列,其中每一行表示目标函数在对应点处的值X0

    • Cineq——矩阵numIneq列,其中每行代表在相应点处的非线性不等式约束值X0

paretosearch计算在任何遗漏值FvalsCineq字段。

矩阵nvars列|结构|{[]}

MinPollFraction

图案到轮询的最低分数。

从0到1 |的标量{0}

ParetoSetSize

在帕累托集合中的点数。

正整数|{ '最大(numberOfObjectives,60)'},其中numberOfObjectives是目标函数的数

ParetoSetChangeTolerance

解算器停止时处于停止量度超过迭代的窗口的相对变化小于或等于ParetoSetChangeTolerance

  • 对于三个或更少的目标,paretosearch使用卷和蔓延的措施。

  • 对于四个或更多的目标,paretosearch使用扩展和距离度量。

看到定义为paretosearch算法

当在任何适用的措施的相对变化小于所述解算器停止ParetoSetChangeTolerance,或者说这些量的时间序列的傅里叶变换的平方的最大值相对较小。看到paretosearch算法

请注意

设置ParetoSetChangeTolerance<sqrt (eps)~不建议使用1.5e-8。

正标|{1E-4}

选项patternsearch只有

选项 描述
缓存

缓存设置为'上'patternsearch保存它所轮询的网格点的历史。在后继的迭代中,patternsearch没有民意调查点接近那些已经投票。在以下情况下使用此选项patternsearch在计算目标函数时运行缓慢。如果目标函数是随机的,不要使用这个选项。

'上'|{ '断'}

CacheSize

历史的规模。

正标|{1 e4}

CacheTol

从目前的网点在历史上的任何一点,以便最大距离patternsearch以避免轮询当前点。如果使用缓存选项设置为'上'

正标|{} EPS

FunctionTolerance

公差的功能。迭代停止如果函数值的变化小于FunctionTolerance并且网格大小小于StepTolerance。此选项不适用于MADS轮询。

对于期权的结构,使用TolFun

正标|{1E-6}

InitialMeshSize

初始网格尺寸的算法。看到如何模式搜索查询作品

正标|{1.0}

InitialPenalty

惩罚参数的初值。看到非线性约束求解算法

正标|{10}

MaxMeshSize

轮询或搜索步骤中使用的最大网格大小。看到如何模式搜索查询作品

正标|{Inf}

MeshContractionFactor

网不成功迭代收缩的因素。

对于期权的结构,使用MeshContraction

正标|{0.5}

MeshExpansionFactor

网成功迭代展开因素。

对于期权的结构,使用MeshExpansion

正标|{2.0}

MeshRotate

在声明一个点为最优之前旋转模式。看到网格选项

“关”|{'在'}

PenaltyFactor

点球更新参数。看到非线性约束求解算法

正标|{100}

PlotInterval

指定该地块函数被调用在每个间隔。

正整数|{1}

PollOrderAlgorithm

在模式搜索中轮询方向的顺序。

对于期权的结构,使用PollingOrder

'随机'|“成功”|{“连续”}

ScaleMesh

自动缩放变量。

对于期权的结构,使用ScaleMesh='上'“关”

{真正}|

SearchFcn

键入模式搜索中使用的搜索。指定为名称或功能句柄。

对于期权的结构,使用SearchMethod

'GPSPositiveBasis2N' |'GPSPositiveBasisNp1' |'GSSPositiveBasis2N' |'GSSPositiveBasisNp1' |'MADSPositiveBasis2N' |'MADSPositiveBasisNp1' |'searchga' |'searchlhs' |'searchneldermead' |{[]} |自定义搜索功能

StepTolerance

宽容的变量。迭代停止如果两个位置的变化和网格尺寸都小于StepTolerance。此选项不适用于MADS轮询。

对于期权的结构,使用TolX

正标|{1E-6}

TolBind

结合宽容。看到约束参数

正标|{1E-3}

UseCompletePoll

围绕当前点完成投票。看到如何模式搜索查询作品

对于期权的结构,使用CompletePoll='上'“关”

真正的|{假}

UseCompleteSearch

围绕当前点完成搜索时,搜索方法是调查方法。看到搜索和轮询

对于期权的结构,使用CompleteSearch='上'“关”

真正的|{假}

例:选项= optimoptions( 'patternsearch', 'MaxIterations',150 'MeshTolerance',1E-4)

数据类型:结构

问题结构,指定为具有以下字段的结构:

  • 客观的- 目标函数

  • x0——起点

  • Aineq- 矩阵的线性不等式约束

  • bineq- 载体的线性不等式约束

  • AEQ-线性等式约束的矩阵

  • 说真的- 载体的线性等式约束

  • - 下界X

  • 乌兰巴托-上限X

  • nonlcon- 非线性约束函数

  • 求解-“patternsearch”

  • 选项- 选项与创建optimoptionspsoptimset

  • rngstate-可选字段来重置随机数生成器的状态

创建结构问题通过从优化应用程序导出的一个问题,如在导入和导出您的工作(优化工具箱)。

请注意

各个领域中问题是必要的。

数据类型:结构

输出参数

全部折叠

解,作为实向量返回。的大小X相同的尺寸x0。当exitflag是积极的,X通常是当地的解决问题的办法。

目标函数值在解,作为实数返回。一般来说,fval=有趣的(x)

原因patternsearch停止,返回一个整数。

出口标志 含义

1

无非线性约束- 网目尺寸的大小小于规定的公差和约束违反小于ConstraintTolerance

非线性约束-的大小互补性措施(在此表之后定义)小于开方(ConstraintTolerance)的子问题是使用网眼细于解决MeshTolerance和约束违反小于ConstraintTolerance

2

在改变X且网格尺寸均小于规定的公差,且约束违反小于ConstraintTolerance

3

在改变fval且网格尺寸均小于规定的公差,且约束违反小于ConstraintTolerance

4

步骤的大小大于机器精度更小,并且约束违反小于ConstraintTolerance

0

达到功能评价或迭代的最大数量。

1

优化终止通过输出功能或绘图功能。

2

没有找到可行点。

在非线性约束求解中,互补性措施是向量,其元素为常态C一世λ一世,其中C一世是否违反非线性不等式约束,且λ一世是相应的拉格朗日乘数。

关于优化过程的信息,以结构形式返回,包含以下字段:

  • 功能- 目标函数。

  • problemtype-问题类型,其中之一:

    • “无约束”

    • “boundconstraints”

    • 'linearconstraints'

    • 'nonlinearconstr'

  • pollmethod——轮询技术。

  • searchmethod- 搜索技术使用,如果有的话。

  • 迭代-迭代总数。

  • funccount-功能评估的总数。

  • meshsize- 网目尺寸的X

  • maxconstraint- 最大约束冲突,如果有的话。

  • rngstate状态的MATLAB随机数发生器,刚好在算法开始之前。可以使用in中的值rngstate要在使用随机搜索方法或随机轮询方法时重现输出。看到结果重现,其中讨论了相同的技术遗传算法

  • 信息- 之所以算法终止。

算法

默认,patternsearch长相对于基于自适应最小啮合的是,在不存在的线性约束,与坐标方向对准。看到什么是直接搜索?如何模式搜索查询作品

参考

广义模式搜寻的分析。SIAM杂志上优化。第13卷第3期,2003年,第889-903页。

[2]美国康涅狄格州,A. R.,N. I.M。古尔德,和pH值。L. Toint。“全局收敛的增广拉格朗日屏障算法优化与一般不等式约束和简单的边界。”数学的计算。第66卷,第217号,1997年,第261-288页。

[3] Abramson, Mark A。模式搜索过滤算法混合变量的一般约束最优化问题。博士论文,计算与应用数学,莱斯大学,2002年8月系。

[4] Abramson, Mark A., Charles Audet, J. E. Dennis, Jr.,和Sebastien Le Digabel。正thomads:具有正交方向的确定性MADS实例。SIAM杂志上优化。2009年第20卷第2期,第948-966页。

[5]科尔达,塔玛拉G.罗伯特·迈克尔·刘易斯和弗吉尼亚Torczon。“优化的直接搜索:在一些古典和现代的方法,新的视角。”SIAM回顾。第45卷,2003年第3期,第385-482页。

[6]科尔达,塔玛拉G.罗伯特·迈克尔·刘易斯和弗吉尼亚Torczon。“A发电机组直接搜索增广拉格朗日算法对于具有一般和线性约束的组合优化”。技术报告SAND2006-5315,桑迪亚国家实验室,2006年8月。

[7]刘易斯,迈克尔·罗伯特,安妮·谢泼德和弗吉尼亚Torczon。“实施产生用于线性约束的最小化的一组搜索方法”。科学计算的暹罗杂志。第29卷,第6期,2007年,2507-2530页。

扩展功能

之前介绍过的R2006a