汽车租赁调度论文

更新时间:2023-09-16 15:30:01 阅读量: 高中教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

汽车租赁调度问题

1摘要

本文利用matlab和lingo进行线性规划从而实现汽车租赁的优化调度。根据

题意确定合理的目标函数和约束条件,最终得到各个问题的全局最优解。

问题一规划目标为转运费用最小,在保证各代理点转进与转出的车辆数相等以及分配后的车辆数符合实际供求关系的前提下,利用lingo对每天进行规划求解,最终得每天转运费用的最小值,如:第一天的最小转运费用为 1.68256,在前一天的基础上,求得第二天的最优车辆调度,并计算其转运费用最小值,以后每天以此类推,最终求得总的转运费用最小值以及此时相对应的车辆安排。

问题二在问题一的基础上规划目标为转运费用和短缺损失费用的总和最小,只在min后面增加个代理点的短缺损失费用,在同样的约束条件下利用lingo进行求解,可求得每天转运费用和短缺损失费用的总和最小,如:第一天转运费用和短缺损失费最小为2.234598, 以后每天以此类推,得到4周内转运费用和短缺损失费总和最小以及此时相对应的车辆安排。

问题三规划目标为公司获得的利润,公司获得的利润为车辆租赁收入扣除转运费用和短缺损失费用后的数值。同样,在问题二的基础上只在min前面增加每个代理点的租赁收入,考虑同样的约束条件,利用lingo进行优化,得到公司每天最大获利,如:第一天公司最大获利为:136.4462,以后每天以此类推,得到未来四周内公司的最大获利。

问题四假设如果购买新车要考虑买哪一种型号的车花费最低,然后再确定购进车辆数,使年度总获利最大。

2问题重述

国内汽车租赁市场兴起于1990年北京亚运会,随后在北京、上海、广州及深圳等国际化程度较高的城市率先发展,直至2000年左右,汽车租赁市场开始在其他城市发展。

某城市有一家汽车租赁公司,此公司年初在全市范围内有379辆可供租赁的汽车,分布于20个代理点中。每个代理点的位置都以地理坐标X和Y的形式给出,单位为千米。假定两个代理点之间的距离约为他们之间欧氏距离(即直线距离)的1.2倍。附件1—附件6给出了问题的一些数据。

请解决如下问题:

(1).给出未来四周内每天的汽车调度方案,在尽量满足需求的前提下,使总的转运费用最低;

(2).考虑到由于汽车数量不足而带来的经济损失,给出使未来四周总的转运费用及短缺损失最低的汽车调度方案;

(3).综合考虑公司获利、转运费用以及短缺损失等因素,确定未来四周的汽车调度方案;

(4).为了使年度总获利最大,从长期考虑是否需要购买新车?如果购买的话,确定购买计划(考虑到购买数量与价格优惠幅度之间的关系,在此假设如果购买新车,只购买一款车型)。

3问题分析

汽车租赁行业在城市中的前景越来越被看好,本问题有很好的实际意义,在

多种限制条件下,求得最优解。

在本问题中,要求得未来四周内的最优解,以第一天各个代理点向第二天代理点调度车辆来看,考虑到公司的信誉,在代理点每天的汽车需求量要给予满足,不能存在需要车辆而供应不上的状态,但从全局来看,利用约束条件在尽量满足需求的前提下,可以得出最优解,根据附件3未来四周每个代理点每天的汽车需求量,要先求得第一天到第二天的最优调度方案,以后的调度最优方案都以前一天求得的最优调度结果为基准。以这些天数作为节点可以把整个问题划分成若干个子集,对子集利用lingo进行处理求出最优解最终得到整个问题的最优解。

问题一:将这些天数作为节点可以把整个问题划分成若干个子集,以第一天

为例:根据附件一运用EXCLE求得各个代理点之间的距离,在MATLAB中实现矩阵a1;根据附件六整理得不同代理点之间的转运成本矩阵a2,并得其转置矩阵a’。运用矩阵相乘得到每辆车到各个代理点的费用。再利用lingo软件处理所有需要往外调度车辆的代理点乘以at[ij]相加后的值,从而得到最优解。

问题二:经济损失也就是转运费与短缺损失的和,短缺损失意味着满足不了车辆需求带来的损失,利用LINGO软件求最优解。

问题三:公司获利减去转运费用和转运损失,得到净利润。

问题四:考虑购买新车能否使公司获利增多。如果增多,需要买多少量。

4模型假设即符号说明

假设:1假设每辆车当日租能够当日还,且无损坏。

2每天调度每辆车都需相同的费用,根据调度车辆数量的不同,所需费

用不同。

3租出的车辆只归还于租出代理点。

4代理点没有显示租赁收入的为缺失数据,租赁收入为前15个数据的平

均值。

5今年和去年营业状况相似,市场需求不会出现较大的波动。

6 当需求总数大于公司车辆总数时,代理点在向其他代理点调

度时,必须在满足自身的需求下,多余的车辆全部调出。

符号说明:Z —— 总转运费用

S[ij] —— 代理点i到代理点j的欧式距离

(i=1,2,3……20 ; j=1,2,3……20)

M[ij] —— 代理点i到代理点j的转运成本(万元/千米)

(i=1,2,3……20 ; j=1,2,3……20)

F[ij] —— 代理点i到代理点j的转运费用 (i=1,2,3……20 ; j=1,2,3……20)

at[ij] —— 第t天代理点i到代理点j的车辆数

(i=1,2,3……20 ; j=1,2,3……20)

N(t+1)I —— 第t+1天代理点i需求车辆数 Nti —— 第t天代理点i需求车辆数

Sti —— 第t天第i代理点每辆车的短缺损失费 G —— 总经济损失费 K1,K2 —— 租赁收入 K —— 总的公司获利

5模型建立与求解

问题一 问题分析

5.1由附件1运用EXCEL得到各个代理点之间的位置关系,如图5-1

5-1

5.2利用EXCEL得到未来四周每个代理点每天的汽车需求量供需求散点,如图5-2

5-2

模型建立

Z=

各个代理点的相互转运费用

根据附件一运用EXCLE求得各个代理点之间的距离,在MATLAB中实现矩阵a1;

根据附件六整理得不同代理点之间的转运成本矩阵a2,并得其转置矩阵a’。运用矩阵相乘得到每辆车到各个代理点的费用。

利用MATLAB软件对附件1和附件6数据进行处理得到各个代理点相互转运

的费用:F[ij]=S[ij]*M[ij]的矩阵。

所求的矩阵如下图5-3-1,图5-3-2,图5-3-3所示

5-3-1

5-3-2

5-3-3

此调度分为两种情况:

(1) 第t+1天所需车辆数大于公司总的车辆数时 代理点在满足自身的前提下,全部调出。 即

判断>0即需要调出

又因为t+1天所需车辆数大于公司车辆总数,所以各个代理点所需车辆不可能全部满足。 即

判断<0即需要调入

(2) 第t+1天所需车辆数小于公司总的车辆数时 所编写代码有缺陷,不能完成 (3) 第t+1天所需车辆数等于公司总的车辆数时

代理点i转运前拥有的车辆数等于代拥有理点i转运出去的车辆数、转运进来的车辆数以及留下来的车辆数之和,即转进来的车辆数等于转出去的车辆数,包括自身对自身的转进和转出 即

根据(1)、(2)、(3),写出约束条件,通过编码,利用lingo软件进行线性规划求目标函数Z最小。

model:

min=0.033941*a0102+0.123329*a0103+0.065613*a0104+0.108126*a0106+0.205299*a0110+0.055887*a0111+0.0756*a0112+0.061188*a0113+0.09892*a0116+0.17761*a0120+0.172817*a0502+0.061984*a0503+0.113954*a0504+0.144828*a0506+0.00648*a0510+0.096723*a0511+0.175498*a0512+0.065454*a0513+0.091297*a0516+0.05009*a0520+0.092665*a0702+0.053518*a0703+0.043469*a0704+0.134411*a0706+0.00979*a0710+0.13848*a0711+0.1998*a0712+0.063645*a0713+0.084553*a0716+0.105252*a0720+0.06627*a0802+0.080518*a0803+0.039549*a0804+0.045855*a0806+0.066449*a0810+0.08906*a0811+0.082687*a0812+0.090963*a0813+0.087209*a0816+0.012369*a0820+0.131073*a0902+0.127648*a0903+0.073946*a0904+0.047001*a0906+0.026563*a0910+0.0329*a0911+0.077813*a0912+0.096979*a0913+0.049689*a0916+0.064399*a0920+0.042914*a1402+0.064935*a1403+0.025395*a1404+0.036045*a1406+0.096632*a1410+0.0599*a1411+0.045235*a1412+0.014934*a1413+0.017133*a1416+0.047226*a1420+0.031487*a1502+0.064221*a1503+0.02271*a1504+0.03202*a1506+0.152565*a1510+0.046875*a1511+0.081424*a1512+0.390935*a1513+0.03757*a1516+0.068531*a1520+0.078548*a1702+0.04032*a1703+0.063801*a1704+0.043034*a1706+0.061847*a1710+0.05568*a1711+0.076269*a1712+0.063691*a1713+0.099045*a1716+0.010733*a1720+0.083769*a1802+0.091747*a1803+0.027217*a1804+0.020646*a1806+0.070195*a1810+0.042101*a1811+0.103007*a1812+0.05814*a1813+0.018441*a1816+0.014126*a1820+0.059427*a1902+0.128336*a1903+0.05411*a1904+0.031152*a1906+0.045745*a1910+0.049601*a1911+0.062972*a1912+0.02596*a1913+0.031588*a1916+0.030926*a1920;

a0102+a0502+a0702+a0802+a0902+a1402+a1502+a1702+a1802+a1902<=4; a0103+a0503+a0703+a0803+a0903+a1403+a1503+a1703+a1803+a1903<=3; a0104+a0504+a0704+a0804+a0904+a1404+a1504+a1704+a1804+a1904<=9; a0106+a0506+a0706+a0806+a0906+a1406+a1506+a1706+a1806+a1906<=4; a0110+a0510+a0710+a0810+a0910+a1410+a1510+a1710+a1810+a1910<=1; a0111+a0511+a0711+a0811+a0911+a1411+a1511+a1711+a1811+a1911<=9;

a0112+a0512+a0712+a0812+a0912+a1412+a1512+a1712+a1812+a1912<=1; a0113+a0513+a0713+a0813+a0913+a1413+a1513+a1713+a1813+a1913<=16; a0116+a0516+a0716+a0816+a0916+a1416+a1516+a1716+a1816+a1916<=7; a0120+a0520+a0720+a0820+a0920+a1420+a1520+a1720+a1820+a1920<=9; a0102+a0103+a0104+a0106+a0110+a0111+a0112+a0113+a0116+a0120=7; a0502+a0503+a0504+a0506+a0510+a0511+a0512+a0513+a0516+a0520=9; a0702+a0703+a0704+a0706+a0710+a0711+a0712+a0713+a0716+a0720=4; a0802+a0803+a0804+a0806+a0810+a0811+a0812+a0813+a0816+a0820=5; a0902+a0903+a0904+a0906+a0910+a0911+a0912+a0913+a0916+a0920=3; a1402+a1403+a1404+a1406+a1410+a1411+a1412+a1413+a1416+a1420=5; a1502+a1503+a1504+a1506+a1510+a1511+a1512+a1513+a1516+a1520=1; a1702+a1703+a1704+a1706+a1710+a1711+a1712+a1713+a1716+a1720=5; a1802+a1803+a1804+a1806+a1810+a1811+a1812+a1813+a1816+a1820=10; a1902+a1903+a1904+a1906+a1910+a1911+a1912+a1913+a1916+a1920=6; end

5.4以第一天为例,利用lingo软件处理所有需要往外调度车辆的代理点乘以Z费用相加后的值,再利用限制条件得到以下图表,第i行表示该天代理点i对其所拥有车辆的调度安排,第i列表示调度安排完之后该天代理点i所拥有的车辆,元素a t i j代表第t天代理点i转运给代理点j的车辆数,以第一天的矩阵为例,如图5-4。

5-4

由上图可知:调度方案

AB=4,表示A向B调度4辆。

AB=4,AD=3,EC=3, EJ=1,EM=5,,GD=4,HD=1,HT=4,OD=1,RF=3,RP=7,SM=6。

改进方法一:

把不能满足自身需求的代理点当做需求点,把能够满足自身需求且能够向外供应的代理点当做供应点。

分析题意列表5-5

即供给车辆数,需求车辆数以及各代理点转移车辆数所需费用的关系

A E G H I N O Q R S 需求辆数 B 0.033941 0.172817 0.092665 0.06627 0.131073 0.042914 0.031487 0.078548 0.083769 0.059427 4 C 0.123329 0.061984 0.053518 0.080518 0.127648 0.064935 0.064221 0.04032 0.091747 0.128336 3 D 0.065613 0.113954 0.043469 0.039549 0.073946 0.025395 0.02271 0.063801 0.027217 0.05411 9 F 0.108126 0.144828 0.134411 0.045855 0.047001 0.036045 0.03202 0.043034 0.020646 0.031152 4 J 0.205299 0.00648 0.00979 0.066449 0.026563 0.096632 0.152565 0.061847 0.070195 0.045745 1 K 0.055887 0.096723 0.13848 0.08906 0.0329 0.0599 0.046875 L 0.0756 0.175498 0.1998 0.082687 0.077813 0.045235 0.081424 M 0.061188 0.065454 0.063645 0.090963 0.096979 0.014934 0.390935 0.063691 0.058145 0.02596 16 P 0.09892 0.091297 0.84553 0.087209 0.049689 0.017133 0.03757 0.099045 0.018441 0.0.031588 7 T 0.17761 0.05009 0.105252 0.012369 0.064399 0.047226 0.068531 0.010733 0.014126 0.030926 9 供给辆数 7 9 4 5 3 5 1 5 10 6 0.0.07605568 269 0.042101 0.049601 9 0.103007 0.062972 1 5-5

比如AB:A代理点向B代理点转移车辆数所需费用为0.033941 7:A代理点能向其他代理点转移的车辆数为7

利用lingo编程:

问题分析

capacity表示所提供的车辆;demand表示所需要的车辆;cost表示调度所需费用;volume表示代理点调度车辆。

此编程为第一天调度车辆后总的费用

改进方法二:

model: sets:

warehouses/ag1..ag20/: capacity; vendors/wg1..wg20/: demand;

links(warehouses,vendors): cost, volume; endsets !目标函数;

min=@sum(links: cost*volume); !需求约束;

@for(vendors(J):

@sum(warehouses(I): volume(I,J))<=demand(J)); !拥有量约束;

@for(warehouses(I):

@sum(vendors(J): volume(I,J))=capacity(I));

!这里是数据; data:

capacity=7 0 0 0 9 0 4 5 3 0 0 0 0 5 1 0 5 10 6 0;

demand=0 4 3 9 0 4 0 0 0 1 2 0 16 0 0 7 0 0 0 9; 以第一天为例,编程 具体见附件一

结果分析

cost为20*20的矩阵,只需将capacity和demand的值改变,cost数据不变,简化录入工序,在以后的工作中即体现出工作的方便与简洁,节省时间。

问题二 问题分析

短缺损失只是供不应求而产生的,供过于求是不产生短缺损失的。

模型建立

短缺损失用S表示,第t天每辆的短缺损失费用St表示,即S=i代理点需要的车辆数-(i代理点现有的车辆数+从其他代理点转来的车辆数)*St(万元/天·辆) 再加上由问题一得出的转运费用 即可求得由于汽车数量不足而带来的经济损失。

即:G=

结果分析

以第一天为例,利用LINGO程序编写出代码,求得第一天的短缺损失为2.234598万元。车辆调度安排如下:

经过求解,考虑到由于汽车数量不足而带来的经济损失,在最优解的调度方案下,转运和短缺导致的总费用为70.3055万元。车辆调度安排计划如下:

1-2日:A-B,4;A-k,3;E-C,2;E-J,1;E-M,6;G-D,4;H-D,4;H-T,1;I-K,3;N-L,1;N-M,4;O-D,1;Q-C,1;Q-F,1;Q-K,3;R-F,3;R-P,7;S-M,6。

第三问

问题分析

观察附件5发现代理点P、Q、R、S、T的租赁收入数据存在缺失。我们以前15个代理点租赁收入的平均值0.3859作为后五个代理点的租赁收入。

模型建立

当代理点i在t日的需求量大于t+1天的需求量,该代理点t+1天的租赁收入取决第t天的减去调出数;当代理点i在t日的需求量小于t+1天代理点i拥有的车辆数,该代理点t+1天的租赁收入取决于第t天的加上调入数。

根据上述分析分为两种情况:

(1) 当Nti>N(t+1)i时,K1=(2) 当Nti

结果分析

本文来源:https://www.bwwdw.com/article/tmxh.html

Top