查找最少的半无限受限的多变量非线性功能gydF4y2Ba
查找最低问题所指定的问题gydF4y2Ba
bgydF4y2Ba和gydF4y2Ba说真的gydF4y2Ba是载体,gydF4y2Ba一个gydF4y2Ba和gydF4y2BaAeqgydF4y2Ba是矩阵,gydF4y2BacgydF4y2Ba(gydF4y2BaxgydF4y2Ba),gydF4y2Ba量表信gydF4y2Ba(gydF4y2BaxgydF4y2Ba),gydF4y2BaKgydF4y2Ba我gydF4y2Ba(gydF4y2Bax, wgydF4y2Ba我gydF4y2Ba)返回载体的功能,以及gydF4y2BafgydF4y2Ba(gydF4y2BaxgydF4y2Ba)是返回标量的函数。gydF4y2BafgydF4y2Ba(gydF4y2BaxgydF4y2Ba),gydF4y2BacgydF4y2Ba(gydF4y2BaxgydF4y2Ba),gydF4y2Ba量表信gydF4y2Ba(gydF4y2BaxgydF4y2Ba)可以是非线性函数。vectors(或矩阵)gydF4y2BaKgydF4y2Ba我gydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BawgydF4y2Ba我gydF4y2Ba)≤0.gydF4y2Ba是两者的连续功能gydF4y2BaxgydF4y2Ba还有一组额外的变量gydF4y2BawgydF4y2Ba1gydF4y2Ba,gydF4y2BawgydF4y2Ba2gydF4y2Ba,......,gydF4y2BawgydF4y2BangydF4y2Ba.变量gydF4y2BawgydF4y2Ba1gydF4y2Ba,gydF4y2BawgydF4y2Ba2gydF4y2Ba,......,gydF4y2BawgydF4y2BangydF4y2Ba是最多长度的载体。gydF4y2Ba
xgydF4y2Ba,gydF4y2Ba磅gydF4y2Ba, 和gydF4y2BaUB.gydF4y2Ba可以作为向量或矩阵传递;看gydF4y2Ba矩阵论据gydF4y2Ba.gydF4y2Ba
x = fseminf(有趣,x0,ntheta,seminfcon)gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b)gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b, Aeq, beq)gydF4y2Ba
x = fseminf(fun,x0,ntheta,seminfcon,a,b,aeq,beq,lb,Ub)gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b, Aeq,说真的,磅,乌兰巴托,选项)gydF4y2Ba
x = fseminf(问题)gydF4y2Ba
[x,fval] = fseminf(...)gydF4y2Ba
[x, fval exitflag] = fseminf(…)gydF4y2Ba
[x, fval exitflag、输出]= fseminf(…)gydF4y2Ba
[x,fval,出口,输出,lambda] = fseminf(...)gydF4y2Ba
fseminfgydF4y2Ba
从初始估计开始,发现最少有几个变量的半无限限制标量函数。目的是最小化gydF4y2BafgydF4y2Ba(gydF4y2BaxgydF4y2Ba)所以限制适用于所有可能的值gydF4y2BawgydF4y2Ba我gydF4y2Ba∈gydF4y2BaℜgydF4y2Ba1gydF4y2Ba(或gydF4y2BawgydF4y2Ba我gydF4y2Ba∈gydF4y2BaℜgydF4y2Ba2gydF4y2Ba).因为不可能计算所有可能的值gydF4y2BaKgydF4y2Ba我gydF4y2Ba(gydF4y2Bax, wgydF4y2Ba我gydF4y2Ba)gydF4y2Ba,必须选择一个地区gydF4y2BawgydF4y2Ba我gydF4y2Ba在其上计算适当采样的值集。gydF4y2Ba
请注意gydF4y2Ba
通过额外的参数gydF4y2Ba如有必要,如何将额外参数传递给客观函数和非线性约束函数。gydF4y2Ba
x = fseminf(有趣,x0,ntheta,seminfcon)gydF4y2Ba
开始于gydF4y2BaX0.gydF4y2Ba
并找到最少的功能gydF4y2Ba乐趣gydF4y2Ba
受到gydF4y2BanthetagydF4y2Ba
半无限约束定义gydF4y2BaseminfcongydF4y2Ba
.gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b)gydF4y2Ba
还试图满足线性不平等gydF4y2Baa *x≤bgydF4y2Ba
.gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b, Aeq, beq)gydF4y2Ba
最小化线性等分的影响gydF4y2Baaeq * x = beqgydF4y2Ba
也是。放gydF4y2Baa = []gydF4y2Ba
和gydF4y2Bab = []gydF4y2Ba
如果没有不等式。gydF4y2Ba
x = fseminf(fun,x0,ntheta,seminfcon,a,b,aeq,beq,lb,Ub)gydF4y2Ba
中的设计变量定义一组上下限gydF4y2BaxgydF4y2Ba
,使解决方案始终在范围内gydF4y2Ba磅gydF4y2Ba
≤.gydF4y2BaxgydF4y2Ba
≤.gydF4y2BaUB.gydF4y2Ba
.gydF4y2Ba
请注意gydF4y2Ba
看到gydF4y2Ba迭代可以违反限制gydF4y2Ba.gydF4y2Ba
x = fseminf(有趣,x0, ntheta seminfcon, A, b, Aeq,说真的,磅,乌兰巴托,选项)gydF4y2Ba
使用指定的优化选项最小化gydF4y2Ba选项gydF4y2Ba
.使用gydF4y2BaoptimoptionsgydF4y2Ba
设置这些选项。gydF4y2Ba
x = fseminf(问题)gydF4y2Ba
求最小值gydF4y2Ba问题gydF4y2Ba
, 在哪里gydF4y2Ba问题gydF4y2Ba
结构描述在gydF4y2Ba输入参数gydF4y2Ba.gydF4y2Ba
[x,fval] = fseminf(...)gydF4y2Ba
返回目标函数的值gydF4y2Ba乐趣gydF4y2Ba
在解决方案gydF4y2BaxgydF4y2Ba
.gydF4y2Ba
[x, fval exitflag] = fseminf(…)gydF4y2Ba
返回一个值gydF4y2BaexitflaggydF4y2Ba
描述退出条件。gydF4y2Ba
[x, fval exitflag、输出]= fseminf(…)gydF4y2Ba
返回一个结构gydF4y2Ba输出gydF4y2Ba
其中包含有关优化的信息。gydF4y2Ba
[x,fval,出口,输出,lambda] = fseminf(...)gydF4y2Ba
返回一个结构gydF4y2Balambda.gydF4y2Ba
其字段在解决方案中包含Lagrange乘法器gydF4y2BaxgydF4y2Ba
.gydF4y2Ba
请注意gydF4y2Ba
如果问题的指定输入边界不一致,则输出gydF4y2BaxgydF4y2Ba
是gydF4y2BaX0.gydF4y2Ba
和输出gydF4y2BafvalgydF4y2Ba
是gydF4y2Ba[]gydF4y2Ba
.gydF4y2Ba
函数输入参数gydF4y2Ba包含传入的参数的一般描述gydF4y2BafseminfgydF4y2Ba
.本节提供特定于功能的详细信息gydF4y2Ba乐趣gydF4y2Ba
,gydF4y2BanthetagydF4y2Ba
,gydF4y2Ba选项gydF4y2Ba
,gydF4y2BaseminfcongydF4y2Ba
, 和gydF4y2Ba问题gydF4y2Ba
:gydF4y2Ba
|
要最小化的函数。gydF4y2Ba x = fseminf (@myfun x0、ntheta seminfcon)gydF4y2Ba 在哪里gydF4y2Ba 函数f = myfun(x)f = ...%compute函数值xgydF4y2Ba
fun = @(x)sin(x''* x);gydF4y2Ba 如果是梯度gydF4y2Ba 选择= optimoptions(‘fseminf’,‘SpecifyObjectiveGradient’,真的)gydF4y2Ba 然后是这个功能gydF4y2Ba |
|
nthetagydF4y2Ba |
半无限约束的个数。gydF4y2Ba |
|
选项gydF4y2Ba |
选项gydF4y2Ba提供特定于功能的详细信息gydF4y2Ba |
|
|
计算非线性不等式约束的向量的函数,gydF4y2Ba x = fseminf(@ myfun,x0,ntheta,@ myinfcon)gydF4y2Ba 在哪里gydF4y2Ba 功能[c,ceq,k1,k2,...,kntheta,s] = myinfcon(x,s)%初始采样间隔如果是isnan(s(1,1)),s = ...%s有ntheta行和2列结束W1 = ...%计算样本集W2 = ...%计算样本集... WNTHETA = ...%计算样本SET K1 = ...%第1个半无限约束x和w k2=......% 2nd semi-infinite constraint at x and w ... Kntheta = ...% Last semi-infinite constraint at x and w c = ... % Compute nonlinear inequalities at x ceq = ... % Compute the nonlinear equalities at x
载体或矩阵gydF4y2Ba 请注意gydF4y2Ba 因为最优化工具箱™函数只接受类型的输入gydF4y2Ba 通过额外的参数gydF4y2Ba解释如何参数化gydF4y2Ba |
|
问题gydF4y2Ba |
|
目标职能gydF4y2Ba |
|
初始点gydF4y2BaxgydF4y2Ba |
|
nthetagydF4y2Ba |
半无限约束的数量gydF4y2Ba | |
seminfcongydF4y2Ba |
半无限约束函数gydF4y2Ba | |
|
线性不等式约束的矩阵gydF4y2Ba | |
|
线性不等式约束的矢量gydF4y2Ba | |
|
线性平等约束的矩阵gydF4y2Ba | |
|
线性等式约束的向量gydF4y2Ba | |
磅gydF4y2Ba |
下界向量gydF4y2Ba | |
UB.gydF4y2Ba |
上限矢量gydF4y2Ba | |
|
'fseminf'gydF4y2Ba |
|
|
选择的选项gydF4y2BaoptimoptionsgydF4y2Ba |
函数输入参数gydF4y2Ba包含返回的参数的一般描述gydF4y2BafseminfgydF4y2Ba
.本节提供特定于功能的详细信息gydF4y2BaexitflaggydF4y2Ba
,gydF4y2Balambda.gydF4y2Ba
, 和gydF4y2Ba输出gydF4y2Ba
:gydF4y2Ba
|
整数标识算法终止的原因。以下列出了值的值gydF4y2Ba |
|
|
功能融合到解决方案gydF4y2Ba |
|
|
搜索方向的幅度小于指定的公差和约束违规小于gydF4y2Ba |
|
|
方向衍生物的幅度小于指定的公差和约束违规小于gydF4y2Ba |
|
|
超过迭代次数gydF4y2Ba |
|
|
算法由输出函数终止。gydF4y2Ba |
|
|
没有发现可行的点。gydF4y2Ba |
|
|
在解决方案中包含拉格朗日乘数的结构gydF4y2Ba |
|
较低的gydF4y2Ba |
下限gydF4y2Ba |
|
上gydF4y2Ba |
上限gydF4y2Ba |
|
ineqlin.gydF4y2Ba |
线性不等式gydF4y2Ba |
|
eqlin.gydF4y2Ba |
线性平等gydF4y2Ba |
|
Ineqnonlin.gydF4y2Ba |
非线性不等式gydF4y2Ba |
|
eqnonlin.gydF4y2Ba |
非线性等分gydF4y2Ba |
|
|
结构,包含关于优化的信息。结构的域是gydF4y2Ba |
|
迭代gydF4y2Ba |
迭代次数gydF4y2Ba |
|
funcCountgydF4y2Ba |
函数计算次数gydF4y2Ba |
|
lssteplenthtgydF4y2Ba |
线路搜索步骤的大小相对于搜索方向gydF4y2Ba |
|
一步的大小gydF4y2Ba |
最终流离失所gydF4y2Ba |
|
算法gydF4y2Ba |
优化算法使用gydF4y2Ba |
|
CONSTRVIOMATION.gydF4y2Ba |
最大约束函数gydF4y2Ba |
|
firstorderoptgydF4y2Ba |
一阶最优性的度量gydF4y2Ba |
|
消息gydF4y2Ba |
退出消息gydF4y2Ba |
使用优化选项gydF4y2BafseminfgydF4y2Ba
.使用gydF4y2BaoptimoptionsgydF4y2Ba
设置或更改gydF4y2Ba选项gydF4y2Ba
.看到gydF4y2Ba优化选项参考gydF4y2Ba的详细信息。gydF4y2Ba
控件中缺少一些选项gydF4y2BaoptimoptionsgydF4y2Ba
展示。这些选项在下表中显示在斜体中。有关详细信息,请参阅gydF4y2Ba视图选项gydF4y2Ba.gydF4y2Ba
|
将用户提供的衍生物(客观或约束的梯度)进行有限差分衍生物。选择是gydF4y2Ba 为gydF4y2Ba |
约束特许gydF4y2Ba |
判断限制违规的终止耐受,一个正标量。默认值是gydF4y2Ba 为gydF4y2Ba |
诊断gydF4y2Ba | 显示有关要最小化或解决的函数的诊断信息。选择是gydF4y2Ba |
diffmaxchange.gydF4y2Ba | 有限差分梯度(正标量)的变量最大变化。默认值是gydF4y2Ba |
差异gydF4y2Ba | 有限差分梯度(正标量)的变量最小变化。默认值是gydF4y2Ba |
展示gydF4y2Ba |
显示水平(见gydF4y2Ba迭代显示gydF4y2Ba):gydF4y2Ba
|
finitedifferencestepsize.gydF4y2Ba |
用于有限差异的标量或矢量步长因子。当你设置时gydF4y2Ba
符号“(x) =符号(x)gydF4y2Ba 除了gydF4y2Ba标志'(0)= 1gydF4y2Ba .中央有限差异是gydF4y2Ba
finitedifferencestepsize.gydF4y2Ba 扩展到向量。默认值是gydF4y2Basqrt (eps)gydF4y2Ba 用于前进有限差异,和gydF4y2Baeps ^ (1/3)gydF4y2Ba 对于中心有限差分。gydF4y2Ba为gydF4y2Ba |
finitedifferenceType.gydF4y2Ba |
用于估计梯度的有限差分是gydF4y2Ba 当估计两种类型的有限差异时,算法小心遵循界限。因此,例如,它可以追溯,而不是向前的差异,以避免在外部界限的点处评估。gydF4y2Ba 为gydF4y2Ba |
FunctionTolerancegydF4y2Ba |
函数值终止差值,正标量。默认值是gydF4y2Ba 为gydF4y2Ba |
funvalcheck.gydF4y2Ba | 检查目标函数和约束值是否有效。gydF4y2Ba |
MaxFunctionEvaluationsgydF4y2Ba |
允许的函数求值的最大数目,一个正整数。默认值是gydF4y2Ba 为gydF4y2Ba |
MaxIterationsgydF4y2Ba |
允许的最大迭代次数,一个正整数。默认值是gydF4y2Ba 为gydF4y2Ba |
MaxSQPItergydF4y2Ba | 允许最大SQP迭代次数,一个正整数。默认值是gydF4y2Ba |
最优法gydF4y2Ba |
终止耐受一阶最优性(正标量)。默认值是gydF4y2Ba 为gydF4y2Ba |
outputfcn.gydF4y2Ba |
指定优化函数在每次迭代时调用的一个或多个用户定义函数。传递一个函数句柄或函数句柄的单元格数组。默认为none (gydF4y2Ba |
PlotFcngydF4y2Ba |
绘制算法执行时的各种进度度量;从预定义的情节中选择或编写您自己的。传递名称、函数句柄或由名称或函数句柄组成的单元格数组。对于定制的绘图函数,传递函数句柄。默认为none (gydF4y2Ba
自定义绘图功能使用与输出功能相同的语法。看到gydF4y2Ba优化工具箱™的输出功能gydF4y2Ba和gydF4y2Ba输出功能和绘图函数语法gydF4y2Ba.gydF4y2Ba 为gydF4y2Ba |
RelLineSrchBndgydF4y2Ba | 线路搜索步长的相对绑定(真实的非负标量值),使得总位移gydF4y2Ba |
Rellinesrchbndration.gydF4y2Ba | 指定的界限的迭代次数gydF4y2Ba |
SpecifyObjectiveGradientgydF4y2Ba |
用户定义的目标函数的梯度。查看前面的描述gydF4y2Ba 为gydF4y2Ba |
StepTolerance.gydF4y2Ba |
终止宽容gydF4y2Ba 为gydF4y2Ba |
Tolconsqp.gydF4y2Ba | 终止容忍内部迭代SQP约束违规,一个正标量。默认值是gydF4y2Ba |
典型的gydF4y2Ba |
典型的gydF4y2Ba |
优化例程gydF4y2BafseminfgydF4y2Ba
可能会改变建议的采样间隔,gydF4y2Ba年代gydF4y2Ba
,设置gydF4y2BaseminfcongydF4y2Ba
,因为对于效率或鲁棒性而言,建议间隔以外的值可能更合适。还有有限区域gydF4y2BawgydF4y2Ba我gydF4y2Ba, 在之上gydF4y2BaKgydF4y2Ba我gydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BawgydF4y2Ba我gydF4y2Ba)gydF4y2Ba计算,允许在优化期间变化,条件是它不会导致局部最小值的数量发生重大变化gydF4y2BaKgydF4y2Ba我gydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BawgydF4y2Ba我gydF4y2Ba)gydF4y2Ba.gydF4y2Ba
要最小化的功能,约束和半无限约束必须是连续的功能gydF4y2BaxgydF4y2Ba
和gydF4y2BawgydF4y2Ba
.gydF4y2BafseminfgydF4y2Ba
可能只提供当地解决方案。金宝搏官方网站gydF4y2Ba
当问题不可行时,gydF4y2BafseminfgydF4y2Ba
尝试最小化最大约束值。gydF4y2Ba
fseminfgydF4y2Ba
使用立方和二次插值技术来估计半无限约束中的峰值。峰值值用于形成提供给SQP方法的一组约束,如gydF4y2Ba粉刺gydF4y2Ba
函数。当约束的数量发生变化时,Lagrange乘法器将重新分配到新的约束集。gydF4y2Ba
推荐的采样间隔计算使用在数据集中出现的内插峰值和峰值之间的差值来估计功能是否需要更多或更少。该功能通过将曲线推断并将其与曲线中的其他点进行比较来评估插值的有效性。当峰值靠近约束边界时,即零,建议采样间隔减小。gydF4y2Ba
有关所使用的算法的更多详细信息以及所显示的过程类型gydF4y2Ba程序gydF4y2Ba
朝前的时候gydF4y2Ba展示gydF4y2Ba
选项设置为gydF4y2Ba“通路”gydF4y2Ba
与gydF4y2BaoptimoptionsgydF4y2Ba
,看到也gydF4y2BaSQP实施gydF4y2Ba.有关的详细资料gydF4y2BafseminfgydF4y2Ba
算法,参见gydF4y2BaFseminf问题配方和算法gydF4y2Ba.gydF4y2Ba