Desktop

所属分类:其他
开发工具:matlab
文件大小:1KB
下载次数:5
上传日期:2019-03-18 22:09:47
上 传 者funfn
说明:  重心法选址的m文件,结果自动输出最后选址的坐标,及总费用,迭代次数(输出有些许偏差)
(The result of the m file of the center of gravity method automatically outputs the coordinates of the final location, the total cost and the number of iterations (the output is slightly deviated).)

文件列表:
dom.m (364, 2019-03-18)

重心法(The centre-of-gravity method)是一种选择销售中心位置,从而使销售成本降低的方法。 它把销售成本看成运输距离和运输数量的线形函数。此种方法利用地图确定各点的位置,并将一坐标重叠在地图上确定各点的位置。 重心法是一种模拟方法,它将物流系统中的需求点和资源点看成是分布在某一平面范围内的物流系统,各点的需求量和资源量分别看成是物体的重量,物体系统的重心作为物流网点的最佳设置点,利用求物体系统重心的方法来确定物流网点的位置。 知道4个点的坐标A(1,0)B(0,0)C(-1,0)D(3,0) 权重分别为0.1,0.5,0.2,0.2 就只是按照权重,求E(x0,y0)到四个点的距离最短, 用matlab重心模型 clear; clc; x=[1 1 -1 -1 0]; y=[-1 1 1 -1 0]; w=[1 1 1 1 1]'; f=@(var) sqrt((var(1)-x).^2+(var(2)-y).^2)*w; %var(1)=x0,var(2)=y0 [var,fval,exitflag]=ga(f,2); x0=var(1) y0=var(2) plot(x,y,'o','markersize',8,'markerfacecolor','r'); hold on; plot(x0,y0,'s','markerfacecolor','g'); for i=1:5 plot([x0 x(i)],[y0 y(i)],':'); end clear; clc; x=[1 1 -1 -1 0]; y=[-1 1 1 -1 0]; w=[1 1 1 1 1]'; f=@(var) sqrt((var(1)-x).^2+(var(2)-y).^2)*w; %var(1)=x0,var(2)=y0 [var,fval,exitflag]=ga(f,2); x0=var(1) y0=var(2) plot(x,y,'o','markersize',8,'markerfacecolor','r'); hold on; plot(x0,y0,'s','markerfacecolor','g'); for i=1:5 plot([x0 x(i)],[y0 y(i)],':'); end clear; clc; x=[1 1 -1 -1 0]; y=[-1 1 1 -1 0]; w=[1 1 1 1 1]'; f=@(var) sqrt((var(1)-x).^2+(var(2)-y).^2)*w; %var(1)=x0,var(2)=y0 [var,fval,exitflag]=ga(f,2); x0=var(1) y0=var(2) plot(x,y,'o','markersize',8,'markerfacecolor','r'); hold on; plot(x0,y0,'s','markerfacecolor','g'); for i=1:5 plot([x0 x(i)],[y0 y(i)],':'); end clear; clc; x=[1 1 -1 -1 0]; y=[-1 1 1 -1 0]; w=[1 1 1 1 1]'; f=@(var) sqrt((var(1)-x).^2+(var(2)-y).^2)*w; %var(1)=x0,var(2)=y0 [var,fval,exitflag]=ga(f,2); x0=var(1) y0=var(2) plot(x,y,'o','markersize',8,'markerfacecolor','r'); hold on; plot(x0,y0,'s','markerfacecolor','g'); for i=1:5 plot([x0 x(i)],[y0 y(i)],':'); end clear; clc; x=[1 1 -1 -1 0]; y=[-1 1 1 -1 0]; w=[1 1 1 1 1]'; f=@(var) sqrt((var(1)-x).^2+(var(2)-y).^2)*w; %var(1)=x0,var(2)=y0 [var,fval,exitflag]=ga(f,2); x0=var(1) y0=var(2) plot(x,y,'o','markersize',8,'markerfacecolor','r'); hold on; plot(x0,y0,'s','markerfacecolor','g'); for i=1:5 plot([x0 x(i)],[y0 y(i)],':'); end

近期下载者

相关文件


收藏者