matlab 计算指北角,Matlab的优化工具箱的几个应用函数及例子

ai: 1 4 3 5 9 12 6 20 17 8

bi: 2 10 8 18 1 4 5 10 8 9

设供应中心的位置为(x,y ),要求它到最远需求点的距离尽可能小,由于此处应采用沿道路行走的距离,可知用户Pi 到该中心的距离为|x-ai|+|y-bi|,从而可得目标函数如下

??????-+-≤≤|]||[|max min 1,i i m

i y x b y a x

约束条件为 ???????≤≥≤≥85

85y y x x

首先编写一个计算x 处10个目标函数的M 文件opt27_2o.m 。

function f = myfun(x)

%输入各个点的坐标值

a=[1 4 3 5 9 12 6 20 17 8];

b=[2 10 8 18 1 4 5 10 8 9];

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));

然后输入初值、约束条件并调用优化过程进行计算(M 文件为opt27_2.m):

x0 = [6; 6]; % 提供解的初值

AA=[-1 0

1 0

0 –1

0 1];

bb=[-5;8;-5;8];

[x,fval] = fminimax(@opt27_2o,x0,AA,bb)

计算结果为:

x =

8

8

fval =

13 6 5 13 8 8 5 14 9 1

可见,在限制区域内的东北角设置供应中心可以使该点到各需求点的最大距离最小。最

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值