最大最小化模型

一、数学模型:

二、模型求解函数(fminimax)

[x,fval]=fminimax(@fun,x0,A,b,Aeq,beq,lb,ub,@nonlfun,option)

三、例子

   步骤:

   1、先建立M文件 fun.m,定义目标函数

function f=fun(x);   
    a=[1 4 3 5 9 12 6 20 17 8];
    b=[2 10 8 18 1 4 5 10 8 9];
    %  函数向量
    f=zeros(10,1);
    for i = 1:10
        f(i) = abs(x(1)-a(i))+abs(x(2)-b(i));  
    end;
% f(1) = abs(x(1)-a(1))+abs(x(2)-b(1));  
% f(2) = abs(x(1)-a(2))+abs(x(2)-b(2));
% f(3) = abs(x(1)-a(3))+abs(x(2)-b(3));
% f(4) = abs(x(1)-a(4))+abs(x(2)-b(4));
% f(5) = abs(x(1)-a(5))+abs(x(2)-b(5));
% f(6) = abs(x(1)-a(6))+abs(x(2)-b(6));
% f(7) = abs(x(1)-a(7))+abs(x(2)-b(7));
% f(8) = abs(x(1)-a(8))+abs(x(2)-b(8));
% f(9) = abs(x(1)-a(9))+abs(x(2)-b(9));
% f(10) = abs(x(1)-a(10))+abs(x(2)-b(10));
end 

 2、再建立M文件mycon.m定义非线性约束(此题无非线性约束,可不写)

 function [g,ceq]=mycon(x)
 % 非线性不等式约束(记得标准化为<=,并且移项)
 g=[];
 % 非线性等式约束
 ceq=[];

3、主程序main.m

x0 = [6, 6];   % 给定初始值
lb = [3, 4];   % 决策变量的下界
ub = [8, 10];  % 决策变量的上界
[x,feval] = fminimax(@fun,x0,[],[],[],[],lb,ub)
max(feval)

4、求解结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值