现在的位置: 首页 > 综合 > 正文

求解多变量box约束的最优化的matlab函数 fminsearch–ound constrained optimization using fminsearch

2013年10月04日 ⁄ 综合 ⁄ 共 1215字 ⁄ 字号 评论关闭
 

 
Download Now:
  Rating:
  Code Metrics:

 What is this?
  Author: John D'Errico
  Summary: Bound constrained optimization using fminsearch.
  MATLAB Release: R14SP1
 
   
Editor's Notes:

This is a File Exchange Select file.

Select files are submissions that have been peer-reviewed and approved as meeting a high standard of utility and quality.

 
  Description: Fminsearch does not admit bound constraints.
However simple transformation methods exist to
convert a bound constrained problem into an
unconstrained problem.

Fminsearchbnd is used exactly like fminsearch,
except that bounds are applied to the variables.
The bounds are applied internally, using a
transformation of the variables. (Quadratic for
single bounds, sin(x) for dual bounds.)

The bounds are inclusive inequalities, which admit
the boundary values themselves, but will not permit
ANY function evaluations outside the bounds.

Note that fminsearchbnd allows the user to exactly fix a variable at some given value, by setting both bounds to the exact same value.

Example usage:
rosen = @(x) (1-x(1)).^2 + 105*(x(2)-x(1).^2).^2;

% unconstrained fminsearch solution
fminsearch(rosen,[3 3])
ans =
1.0000 1.0000

% Lower bounds, no upper bounds
fminsearchbnd(rosen,[2.5 2.5],[2 2],[])
ans =
2.0000 4.0000

Lower bounds on both vars, upper bound on x(2)
fminsearchbnd(rosen,[2.5 2.5],[2 2],[inf 3])
ans =
2.0000 3.0000

 

抱歉!评论已关闭.