当前位置: 首页 > news >正文

企业网站建设顾问wordpress 弱口令

企业网站建设顾问,wordpress 弱口令,轻量级应用服务器wordpress,导出wordpress用户1.简述 线线规划的几个基本性质#xff1a;【文献[1]第46页】 (1)线性规划问题的可行域如果非空#xff0c;则是一个凸集-凸多面体#xff1b; (2)如果线性规划问题有最优解#xff0c;那么最优解可在可行域的顶点中确定#xff1b; (3)如果可行域有界#xff0c;且可行域…1.简述 线线规划的几个基本性质【文献[1]第46页】 (1)线性规划问题的可行域如果非空则是一个凸集-凸多面体 (2)如果线性规划问题有最优解那么最优解可在可行域的顶点中确定 (3)如果可行域有界且可行域只有有限个顶点则问题的最优解必存在并在这有限个顶点中确定 (4)最优解可由最优顶点处的有效约束形成的方程组的解确定。 常用的线性规划求解方法有单纯形法和内点法。 1、单纯形法(simplex method) 单纯形法是由G.B. Dantzig在1947年提出来的这是20世纪数学界最重大的成果之一。单纯形法是一种迭代法它根据线性规划问题的特点在问题可行域的顶点中逐步确定问题的最优解。在每一个是基本可行解的迭代点即顶点如果它不是最优的单纯形法从与该顶点相连结的边中确定一个使目标函数值下降的边沿该边移动可以确定一个与该顶点相邻且目标函数又优于该顶点的新顶点新的基本可行解。由于可行域的顶点数是有限的如果每一次的移动都能使目标函数值下降则经过有限次的移动方法必终止于问题的一个最优顶点。【文献[1]第57页】 单纯形法要求线性规划具有标准形式即 即约束函数都是等式约束且决策变量均是非负的。 任何线性规划问题使用单纯形法时都需要通过变换转换为线性规划的标准形。转换方法参见文献[1]第51页例2.1.6。 2、从单纯形法到内点法 由于单纯形法的有效性几十年来得到了广泛的应用。近年来对于大规模的线性规划问题尽管单纯形法受到了内点法的挑战但单纯形法还是受到广大用户的青睐。 一个算法如果其求得问题的解所用的运算工作量是问题的参数m和n的多项式则称这一算法的复杂多项式时间算法如果所需运算工作量的阶数是以m或n为幂的指数2m或2n则称复杂性是指数时间的算法。 单纯形算法的平均运算工作量是多项式时间的但对于一个具体的问题其算法的复杂性并不一定是多项式的。1972年Klee和Minty给出了一个复杂性为指数时间的例子。那么对线性规划问题是否存在时间复杂性是多项式的算法呢如果存在多项式时间算法如何设计这样的算法 1979年前苏联数学家Khachiyan回答了第1个问题他提出了一个椭球算法求不等式问题的解并证明了算法的时间复杂性是多项式的。利用对偶理论线性规划问题可以转换成不等式问题这就明确回答了对线性规划存在多项式时间算法。但是计算的实际表明椭球算法的效果要比单纯形方法差得多并不是一个有实际应用价值的算法。 1984年在美国贝尔实验室工作的印度数学家Karmarkar回答了第2个问题它对线性规划的求解提出了一个具有多项式时间复杂性的内点算法。 3、内点法(interior point method) 求线性规划问题的单纯形方法在问题的基本可行解中确定最优解在几何上每次迭代它是沿着可行域的边界从一个顶点向另一个更好的顶点移动来实现的。内点算法则完全不同它是从可行域的一个严格内点开始产生一个使目标函数值逐步改善的严格内点序列并最终收敛于问题的最优解。通过下图可以清晰的看出单纯形法与内点法的区别。 单纯形法与内战法轨迹文献[1]图2.4.4 经过近20年的研究与发展如今已有大量求解线性规划问题的内点算法它们可以分成三类路径跟踪算法仿射调比算法和原始对偶内点算法(primal-dual interior point method)。 4、线性规划问题的MATLAB求解 在MATLAB中求解线性规划问题的函数是linprog该函数集中了几种求线性规划的算法如内点法和单纯形法根据问题的规模或用户指定的算法进行求解。具体使用方法可查询帮助文件。 2.代码 主程序 %%  生产决策问题 f[-5;-7]; %线性方程系数 A[4,2;5,4;2,7;-6,-5;]; %线性不等式约束系数矩阵 b[90;200;210;0];   l[0 0];   %变量上限 [xo,fo,exitflag]linprog(f,A,b,[],[],l) 子程序 function [x,fval,exitflag,output,lambda]linprog(f,A,B,Aeq,Beq,lb,ub,x0,options) %LINPROG Linear programming. %   X LINPROG(f,A,b) attempts to solve the linear programming problem: % %            min f*x    subject to:   A*x b %             x % %   X LINPROG(f,A,b,Aeq,beq) solves the problem above while additionally %   satisfying the equality constraints Aeq*x beq. (Set A[] and B[] if %   no inequalities exist.) % %   X LINPROG(f,A,b,Aeq,beq,LB,UB) defines a set of lower and upper %   bounds on the design variables, X, so that the solution is in %   the range LB X UB. Use empty matrices for LB and UB %   if no bounds exist. Set LB(i) -Inf if X(i) is unbounded below; %   set UB(i) Inf if X(i) is unbounded above. % %   X LINPROG(f,A,b,Aeq,beq,LB,UB,X0) sets the starting point to X0. This %   option is only available with the active-set algorithm. The default %   interior point algorithm will ignore any non-empty starting point. % %   X LINPROG(PROBLEM) finds the minimum for PROBLEM. PROBLEM is a %   structure with the vector f in PROBLEM.f, the linear inequality %   constraints in PROBLEM.Aineq and PROBLEM.bineq, the linear equality %   constraints in PROBLEM.Aeq and PROBLEM.beq, the lower bounds in %   PROBLEM.lb, the upper bounds in  PROBLEM.ub, the start point %   in PROBLEM.x0, the options structure in PROBLEM.options, and solver %   name linprog in PROBLEM.solver. Use this syntax to solve at the %   command line a problem exported from OPTIMTOOL. % %   [X,FVAL] LINPROG(f,A,b) returns the value of the objective function %   at X: FVAL f*X. % %   [X,FVAL,EXITFLAG] LINPROG(f,A,b) returns an EXITFLAG that describes %   the exit condition. Possible values of EXITFLAG and the corresponding %   exit conditions are % %     3  LINPROG converged to a solution X with poor constraint feasibility. %     1  LINPROG converged to a solution X. %     0  Maximum number of iterations reached. %    -2  No feasible point found. %    -3  Problem is unbounded. %    -4  NaN value encountered during execution of algorithm. %    -5  Both primal and dual problems are infeasible. %    -7  Magnitude of search direction became too small; no further %         progress can be made. The problem is ill-posed or badly %         conditioned. %    -9  LINPROG lost feasibility probably due to ill-conditioned matrix. % %   [X,FVAL,EXITFLAG,OUTPUT] LINPROG(f,A,b) returns a structure OUTPUT %   with the number of iterations taken in OUTPUT.iterations, maximum of %   constraint violations in OUTPUT.constrviolation, the type of %   algorithm used in OUTPUT.algorithm, the number of conjugate gradient %   iterations in OUTPUT.cgiterations ( 0, included for backward %   compatibility), and the exit message in OUTPUT.message. % %   [X,FVAL,EXITFLAG,OUTPUT,LAMBDA] LINPROG(f,A,b) returns the set of %   Lagrangian multipliers LAMBDA, at the solution: LAMBDA.ineqlin for the %   linear inequalities A, LAMBDA.eqlin for the linear equalities Aeq, %   LAMBDA.lower for LB, and LAMBDA.upper for UB. % %   NOTE: the interior-point (the default) algorithm of LINPROG uses a %         primal-dual method. Both the primal problem and the dual problem %         must be feasible for convergence. Infeasibility messages of %         either the primal or dual, or both, are given as appropriate. The %         primal problem in standard form is %              min f*x such that A*x b, x 0. %         The dual problem is %              max b*y such that A*y s f, s 0. % %   See also QUADPROG. %   Copyright 1990-2018 The MathWorks, Inc. % If just defaults passed in, return the default options in X % Default MaxIter, TolCon and TolFun is set to [] because its value depends % on the algorithm. defaultopt struct( ...     Algorithm,dual-simplex, ...     Diagnostics,off, ...     Display,final, ...     LargeScale,on, ...     MaxIter,[], ...     MaxTime, Inf, ...     Preprocess,basic, ...     TolCon,[],...     TolFun,[]); if nargin1 nargout 1 strcmpi(f,defaults)    x defaultopt;    return end % Handle missing arguments if nargin 9     options [];     % Check if x0 was omitted and options were passed instead     if nargin 8         if isa(x0, struct) || isa(x0, optim.options.SolverOptions)             options x0;             x0 [];         end     else         x0 [];         if nargin 7             ub [];             if nargin 6                 lb [];                 if nargin 5                     Beq [];                     if nargin 4                         Aeq [];                     end                 end             end         end     end end % Detect problem structure input problemInput false; if nargin 1     if isa(f,struct)         problemInput true;         [f,A,B,Aeq,Beq,lb,ub,x0,options] separateOptimStruct(f);     else % Single input and non-structure.         error(message(optim:linprog:InputArg));     end end % No options passed. Set options directly to defaultopt after allDefaultOpts isempty(options); % Prepare the options for the solver options prepareOptionsForSolver(options, linprog); if nargin 3 ~problemInput   error(message(optim:linprog:NotEnoughInputs)) end % Define algorithm strings thisFcn   linprog; algIP     interior-point-legacy; algDSX   dual-simplex; algIP15b interior-point; % Check for non-double inputs msg isoptimargdbl(upper(thisFcn), {f,A,b,Aeq,beq,LB,UB, X0}, ...                                       f,  A,  B,  Aeq,  Beq,  lb,  ub,   x0); if ~isempty(msg)     error(optim:linprog:NonDoubleInput,msg); end % After processing options for optionFeedback, etc., set options to default % if no options were passed. if allDefaultOpts     % Options are all default     options defaultopt; end if nargout 3    computeConstrViolation true;    computeFirstOrderOpt true;    % Lagrange multipliers are needed to compute first-order optimality    computeLambda true; else    computeConstrViolation false;    computeFirstOrderOpt false;    computeLambda false; end % Algorithm check: % If Algorithm is empty, it is set to its default value. algIsEmpty ~isfield(options,Algorithm) || isempty(options.Algorithm); if ~algIsEmpty     Algorithm optimget(options,Algorithm,defaultopt,fast,allDefaultOpts);     OUTPUT.algorithm Algorithm;     % Make sure the algorithm choice is valid     if ~any(strcmp({algIP; algDSX; algIP15b},Algorithm))         error(message(optim:linprog:InvalidAlgorithm));     end else     Algorithm algDSX;     OUTPUT.algorithm Algorithm; end % Option LargeScale off is ignored largescaleOn strcmpi(optimget(options,LargeScale,defaultopt,fast,allDefaultOpts),on); if ~largescaleOn     [linkTag, endLinkTag] linkToAlgDefaultChangeCsh(linprog_warn_largescale);     warning(message(optim:linprog:AlgOptsConflict, Algorithm, linkTag, endLinkTag)); end % Options setup diagnostics strcmpi(optimget(options,Diagnostics,defaultopt,fast,allDefaultOpts),on); switch optimget(options,Display,defaultopt,fast,allDefaultOpts)     case {final,final-detailed}         verbosity 1;     case {off,none}         verbosity 0;     case {iter,iter-detailed}         verbosity 2;     case {testing}         verbosity 3;     otherwise         verbosity 1; end % Set the constraints up: defaults and check size [nineqcstr,nvarsineq] size(A); [neqcstr,nvarseq] size(Aeq); nvars max([length(f),nvarsineq,nvarseq]); % In case A is empty if nvars 0     % The problem is empty possibly due to some error in input.     error(message(optim:linprog:EmptyProblem)); end if isempty(f), fzeros(nvars,1); end if isempty(A), Azeros(0,nvars); end if isempty(B), Bzeros(0,1); end if isempty(Aeq), Aeqzeros(0,nvars); end if isempty(Beq), Beqzeros(0,1); end % Set to column vectors f f(:); B B(:); Beq Beq(:); if ~isequal(length(B),nineqcstr)     error(message(optim:linprog:SizeMismatchRowsOfA)); elseif ~isequal(length(Beq),neqcstr)     error(message(optim:linprog:SizeMismatchRowsOfAeq)); elseif ~isequal(length(f),nvarsineq) ~isempty(A)     error(message(optim:linprog:SizeMismatchColsOfA)); elseif ~isequal(length(f),nvarseq) ~isempty(Aeq)     error(message(optim:linprog:SizeMismatchColsOfAeq)); end [x0,lb,ub,msg] checkbounds(x0,lb,ub,nvars); if ~isempty(msg)    exitflag -2;    x x0; fval []; lambda [];    output.iterations 0;    output.constrviolation [];    output.firstorderopt [];    output.algorithm ; % not known at this stage    output.cgiterations [];    output.message msg;    if verbosity 0       disp(msg)    end    return end if diagnostics    % Do diagnostics on information so far    gradflag []; hessflag []; constflag false; gradconstflag false;    non_eq0;non_ineq0; lin_eqsize(Aeq,1); lin_ineqsize(A,1); XOUTones(nvars,1);    funfcn{1} []; confcn{1}[];    diagnose(linprog,OUTPUT,gradflag,hessflag,constflag,gradconstflag,...       XOUT,non_eq,non_ineq,lin_eq,lin_ineq,lb,ub,funfcn,confcn); end % Throw warning that x0 is ignored (true for all algorithms) if ~isempty(x0) verbosity 0     fprintf(getString(message(optim:linprog:IgnoreX0,Algorithm))); end if strcmpi(Algorithm,algIP)     % Set the default values of TolFun and MaxIter for this algorithm     defaultopt.TolFun 1e-8;     defaultopt.MaxIter 85;     [x,fval,lambda,exitflag,output] lipsol(f,A,B,Aeq,Beq,lb,ub,options,defaultopt,computeLambda); elseif strcmpi(Algorithm,algDSX) || strcmpi(Algorithm,algIP15b) % Create linprog options object     algoptions optimoptions(linprog, Algorithm, Algorithm); % Set some algorithm specific options     if isfield(options, InternalOptions)         algoptions setInternalOptions(algoptions, options.InternalOptions);     end thisMaxIter optimget(options,MaxIter,defaultopt,fast,allDefaultOpts);     if strcmpi(Algorithm,algIP15b)         if ischar(thisMaxIter)             error(message(optim:linprog:InvalidMaxIter));         end     end     if strcmpi(Algorithm,algDSX)         algoptions.Preprocess optimget(options,Preprocess,defaultopt,fast,allDefaultOpts);         algoptions.MaxTime optimget(options,MaxTime,defaultopt,fast,allDefaultOpts);         if ischar(thisMaxIter) ...                 ~strcmpi(thisMaxIter,10*(numberofequalitiesnumberofinequalitiesnumberofvariables))             error(message(optim:linprog:InvalidMaxIter));         end     end % Set options common to dual-simplex and interior-point-r2015b     algoptions.Diagnostics optimget(options,Diagnostics,defaultopt,fast,allDefaultOpts);     algoptions.Display optimget(options,Display,defaultopt,fast,allDefaultOpts);     thisTolCon optimget(options,TolCon,defaultopt,fast,allDefaultOpts);     if ~isempty(thisTolCon)         algoptions.TolCon thisTolCon;     end     thisTolFun optimget(options,TolFun,defaultopt,fast,allDefaultOpts);     if ~isempty(thisTolFun)         algoptions.TolFun thisTolFun;     end     if ~isempty(thisMaxIter) ~ischar(thisMaxIter)         % At this point, thisMaxIter is either         % * a double that we can set in the options object or         % * the default string, which we do not have to set as algoptions         % is constructed with MaxIter at its default value         algoptions.MaxIter thisMaxIter;     end % Create a problem structure. Individually creating each field is quicker     % than one call to struct     problem.f f;     problem.Aineq A;     problem.bineq B;     problem.Aeq Aeq;     problem.beq Beq;     problem.lb lb;     problem.ub ub;     problem.options algoptions;     problem.solver linprog; % Create the algorithm from the options.     algorithm createAlgorithm(problem.options); % Check that we can run the problem.     try         problem checkRun(algorithm, problem, linprog);     catch ME         throw(ME);     end % Run the algorithm     [x, fval, exitflag, output, lambda] run(algorithm, problem); % If exitflag is {NaN, aString}, this means an internal error has been     % thrown. The internal exit code is held in exitflag{2}.     if iscell(exitflag) isnan(exitflag{1})         handleInternalError(exitflag{2}, linprog);     end end output.algorithm Algorithm; % Compute constraint violation when x is not empty (interior-point/simplex presolve % can return empty x). if computeConstrViolation ~isempty(x)     output.constrviolation max([0; norm(Aeq*x-Beq, inf); (lb-x); (x-ub); (A*x-B)]); else     output.constrviolation []; end % Compute first order optimality if needed. This information does not come % from either qpsub, lipsol, or simplex. if exitflag ~ -9 computeFirstOrderOpt ~isempty(lambda)     output.firstorderopt computeKKTErrorForQPLP([],f,A,B,Aeq,Beq,lb,ub,lambda,x); else     output.firstorderopt []; end 3.运行结果
http://www.pierceye.com/news/408316/

相关文章:

  • 国外免费logo设计网站免费网课平台
  • 高端网站设计定制公司页面跳转自动更新
  • 项目建设资金来源网站网站开发技术可以做什么工作
  • 可做易企秀的网站网页建站网站
  • 南京网站建设价格大型网站开发协调
  • 园林景观设计公司点评的网站和论坛大型网站搜索怎么做的
  • 河南省建设教育培训中心网站广告机器设备的价格表
  • 郑州做网站哪家最好中国能源建设集团有限公司是什么级别
  • 品牌设计公司排行榜前十名seo外包服务公司
  • 潍坊网站建设 58wordpress 酒店预订
  • 个人网站主机选择电商公司官网
  • 名城苏州网站龙岗网站建设价位
  • 免费手机网站制作学做网站游戏教程
  • 什么企业做网站广州市公司网站建设
  • 无锡万度网站建设推广电影链接赚佣金
  • 电子商务网站建设与管理实训网页设计与网站建设基础心得体会
  • 托管的服务器如何做网站花店网站模板 html
  • 南宁保洁网站建设在线 代理 输入网址
  • 微站是什么意思快站app下载
  • 网站让女友做网站模特做网站好一点的软件
  • 苏州h5网站建设wordpress 数据库配置
  • 环保网站模板下载农村电商平台怎么加入
  • 教育企业重庆网站建设建设公司网站征集信息的通知
  • 广州做网站找哪家好成都装饰设计公司排名
  • 做头发个人网站制作素材copyright wordpress
  • 高埗镇网站仿做企业网站建设市场分析
  • 网站怎么加icowordpress 程序员主题
  • 做国外产品描述的网站门户网站 建设 如何写
  • 建筑网站资料哪些购物网站做的比较简洁有品质
  • 永州做网站网站运营与管理实验报告