• 大小: 36KB
    文件类型: .zip
    金币: 2
    下载: 2 次
    发布日期: 2021-06-11
  • 语言: 其他
  • 标签: topotogy  mma  

资源简介

基于Sigmund的经典99行代码,将其中的OC优化器改成MMA优化器,包含所需变量定义和函数调用

资源截图

代码片段和文件信息

%    This is the file mmasub.m
%
function [xmmaymmazmmalamxsietamuzetslowupp] = ...
mmasub(mniterxvalxminxmaxxold1xold2 ...
f0valdf0dxdf0dx2fvaldfdxdfdx2lowuppa0acd);
%
%    written in January 1999 by
%
%    Krister Svanberg (krille@math.kth.se)
%    Optimization and Systems Theory KTH
%    SE-10044 Stockholm Sweden.
%
%    mmasub performs one MMA-iteration aimed at
%    solving the nonlinear programming problem:
%         
%      Minimize  f_0(x) + a_0*z + sum( c_i*y_i + 0.5*d_i*(y_i)^2 )
%    subject to  f_i(x) - a_i*z - y_i <= 0  i = 1...m
%                xmax_j <= x_j <= xmin_j    j = 1...n
%                z >= 0   y_i >= 0         i = 1...m
%*** INPUT:
%
%   m    = The number of general constraints.
%   n    = The number of variables x_j.
%  iter  = Current iteration number ( =1 the first time mmasub is called).
%  xval  = Column vector with the current values of the variables x_j.
%  xmin  = Column vector with the lower bounds for the variables x_j.
%  xmax  = Column vector with the upper bounds for the variables x_j.
%  xold1 = xval one iteration ago (provided that iter>1).
%  xold2 = xval two iterations ago (provided that iter>2).
%  f0val = The value of the objective function f_0 at xval.
%  df0dx = Column vector with the derivatives of the objective function f_0
%          with respect to the variables x_j calculated at xval.
% df0dx2 = Column vector with the non-mixed second derivatives of the
%          objective function f_0 with respect to the variables x_j
%          calculated at xval.
%  fval  = Column vector with the values of the constraint functions f_i
%          calculated at xval.
%  dfdx  = (m x n)-matrix with the derivatives of the constraint functions
%          f_i with respect to the variables x_j calculated at xval.
%          dfdx(ij) = the derivative of f_i with respect to x_j.
%  dfdx2 = (m x n)-matrix with the non-mixed second derivatives of the
%          constraint functions f_i with respect to the variables x_j
%          calculated at xval.
%          dfdx2(ij) = the second derivative of f_i with respect to x_j.
%  low   = Column vector with the lower asymptotes from the previous
%          iteration (provided that iter>1).
%  upp   = Column vector with the upper asymptotes from the previous
%          iteration (provided that iter>1).
%  a0    = The constants a_0 in the term a_0*z.
%  a     = Column vector with the constants a_i in the terms a_i*z.
%  c     = Column vector with the constants c_i in the terms c_i*y_i.
%  d     = Column vector with the constants d_i in the terms 0.5*d_i*(y_i)^2.
%     
%*** OUTPUT:
%
%  xmma  = Column vector with the optimal values of the variables x_j
%          in the current MMA subproblem.
%  ymma  = Column vector with the optimal values of the variables y_i
%          in the current MMA subproblem.
%  zmma  = Scalar with the optimal value of the variable z
%   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-07-17 02:21  MMA_test\
     文件        5646  2014-10-04 23:38  MMA_test\mmasub.m
     文件        5487  2014-10-04 23:38  MMA_test\subsolv.m
     文件        5685  2019-07-17 01:34  MMA_test\top.m
     文件       30179  2019-07-17 02:21  MMA_test\untitled.fig

评论

共有 条评论