数学建模汽车租赁调度问题
数学建模汽车租赁调度问题

数学建模汽车租赁调度问题一、问题描述汽车租赁行业日益发展,急需一种高效的调度系统来管理车辆分配和租赁订单。
本文旨在通过数学建模的方法来解决汽车租赁调度问题,提高租赁公司的运营效率。
二、问题分析汽车租赁调度问题实质上是一个典型的路径规划问题。
我们需要确定一个最佳的车辆路径和订单分配方案,以最大化租赁收益并减少车辆闲置时间。
具体的步骤如下:1. 数据收集与预处理:首先,我们需要收集租赁公司的订单数据和车辆信息,并对数据进行预处理,包括数据清洗、去噪、归一化等操作,以确保数据的准确性和一致性。
2. 定义数学模型:基于收集到的数据,我们可以建立数学模型来描述汽车租赁调度问题。
以车辆路径和订单分配为决策变量,以租赁收益和车辆闲置时间为目标函数,以车辆容量约束和订单时间窗约束为约束条件,建立线性规划模型或整数规划模型。
3. 算法求解:利用求解线性规划或整数规划模型的算法,如单纯形算法、分支定界算法等,求解最优的车辆路径和订单分配方案。
同时,考虑到问题规模的复杂性,可以利用启发式算法或元启发式算法,如遗传算法、模拟退火算法等,来近似求解最优解。
4. 评估与优化:对于求解出的车辆路径和订单分配方案,进行评估并进行调整优化。
如果满足业务需求和约束条件,则输出解决方案;否则,可以调整模型参数或算法策略,重新求解问题,直至找到最佳解。
三、结果分析与应用通过数学建模和算法求解,我们可以得到最佳的汽车租赁调度方案。
该方案可以有效地提高租赁公司的运营效率,最大程度地利用车辆资源,减少空置率,提高租金收入。
此外,基于数学建模的调度系统还可以为租赁公司提供实时的监控和管理能力,包括车辆位置跟踪、租赁订单状态监测等功能,从而更好地满足客户需求,提升用户体验。
四、结论本文通过数学建模的方法,针对汽车租赁调度问题进行了分析和求解。
通过定义数学模型和运用相应的算法,可以得到最佳的车辆路径和订单分配方案,从而提高租赁公司的运营效率和客户体验。
数学建模中的汽车租赁调度

数学建模中的汽车租赁调度在现代社会中,汽车租赁服务得到了广泛应用。
随着人们对出行方式的多样化需求,汽车租赁业务不断发展。
然而,如何进行高效的汽车租赁调度,最大程度地满足用户需求,并优化企业经营成为了一个重要的课题。
数学建模为解决这一问题提供了理论基础和实践依据。
一、问题背景假设有一家汽车租赁公司,拥有一定数量的汽车和分布于城市各地的租车站点。
用户可以通过手机、网站等方式预订汽车并在指定租车站点取车。
汽车租赁公司需要根据用户需求进行汽车的调度和分配,以保证用户的租车需求得到及时满足,并合理安排汽车的分布,优化公司的利润。
二、问题建模为了解决汽车租赁调度问题,我们可以利用数学建模的方法。
首先,需要明确一些假设和定义:1. 确定服务范围:确定租车服务的城市范围和租车站点的位置分布。
2. 确定需求预测模型:根据历史数据和市场研究,建立合理的汽车租赁需求预测模型,预测不同时间段、不同地点的租车需求量。
3. 建立调度模型:建立汽车调度模型,考虑用户租车的时间、地点和租赁时长等因素,以及汽车的运营成本、剩余电量等因素,确定最优的汽车分配方案。
4. 优化方案求解:利用优化算法求解调度模型,得出最优的汽车分配方案,并生成调度计划。
三、建模方法在汽车租赁调度问题中,我们可以借鉴运输问题中的调度与路径规划方法,如VRP(Vehicle Routing Problem)和TSP(Traveling Salesman Problem)等。
具体步骤如下:1. 数据收集与处理:采集租车站点的地理位置信息、历史租车记录、租车需求预测模型所需的数据等,并进行数据的预处理和分析。
2. 建立数学模型:根据问题的要求和假设,建立合理的数学模型,包括目标函数和约束条件等。
3. 求解最优解:利用优化算法求解建立的数学模型,如遗传算法、模拟退火算法等,得出最优的汽车分配方案。
4. 评估与优化:对求解结果进行评估和优化,根据实际情况修正模型参数和算法,提高调度效果和计算效率。
汽车调动问题数学模型剖析

2014高教社杯全国大学生数学建模竞赛承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): A我们的参赛报名号为(如果赛区设置报名号的话):74所属学校(请填写完整的全名):河南理工大学参赛队员(打印并签名) :1. 闫冬2. 吴兵晓3. 全向前指导教师或指导教师组负责人(打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期: 2014 年 7 月 26 日赛区评阅编号(由赛区组委会评阅前进行编号):2014高教社杯全国大学生数学建模竞赛编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):汽车租赁调度问题摘要本文针对时下我国国内汽车租赁与调度的问题进行认真细致的分析与研究,主要采用线性规划优化问题来建立数学模型,应用数学统计学中加权平均与假设检验相结合的方法,加以拟合回归分析法进行数据模型分析求解,合理运用lingo软件编程计算出最终结果。
数学建模中的汽车租赁调度

数学建模中的汽车租赁调度在当今社会,汽车租赁业务发展迅速,越来越多的人选择租赁汽车来满足短期出行的需求。
然而,如何高效地进行汽车租赁调度,以提供优质的服务并降低成本,成为了汽车租赁公司亟待解决的问题。
数学建模为解决这一问题提供了有效的方法和工具。
本文将从几个方面探讨数学建模在汽车租赁调度中的应用。
一、需求预测模型在汽车租赁业务中,准确预测客户的需求是实现优质调度的关键。
数学建模可以利用历史数据和相关的影响因素,构建需求预测模型。
通过分析历史数据中的租车记录、天气、季节等因素,可以找到它们之间的关联性,并运用统计学方法建立预测模型,从而预测未来某一时段的租车需求。
这样一来,租赁公司可以根据预测结果合理安排车辆调配,以满足客户需求的同时最大程度地减少车辆的闲置率。
二、车辆调度模型根据需求预测模型得到的结果,租赁公司需要合理安排车辆的调度,以保证在预测的高峰时段有足够的车辆供应,并在低峰时段将多余的车辆调配到其他地方,以降低闲置率。
数学建模可以提供各种优化方法和算法,帮助租赁公司解决这一调度问题。
一种常见的方法是建立最优分配模型。
该模型考虑了多个因素,如车辆数量、车辆位置、客户的租车需求、交通状况等,并在不同的约束条件下,通过运用线性规划、整数规划等数学方法,求解出最优的车辆分配方案。
通过这种方式,租赁公司可以合理分配车辆,减少客户等待时间,提高服务质量。
此外,还可以利用模拟仿真方法进行车辆调度优化。
通过建立租车站点、路网、客户需求等多个因素的仿真模型,可以通过模拟实际情况来评估不同策略的效果,并找到最佳的调度方案。
模拟仿真方法具有较强的灵活性和可调节性,能够模拟不同的场景和情况,帮助租赁公司针对性地制定调度策略。
三、优化算法除了需求预测和车辆调度模型外,数学建模还可以利用优化算法来解决汽车租赁调度中的其他问题。
例如,优化算法可以用于解决最短路径问题,帮助租赁公司确定最佳的行驶路线,以减少车辆的行驶距离和时间成本。
数学建模汽车租赁调度问题

汽车租赁调度问题摘要国内汽车租赁市场兴起于1900年北京亚运会,随后在北京、上海、广州及深圳等国际化程度较高得城市率先发展直至2000年左右,汽车租赁市场开始在其她城市发展。
为了对某市得一家租赁公司获利情况进行分析并确定汽车调度方案,本文我们以非线性规划为基础,通过matlab,excel等软件对数据进行处理,最小二乘法对缺失数据进行预测,最终使用lingo软件进行编程求解得到最终得优化方案。
在问题一中,我们基于对题目中尽量满足需求得理解,考虑到总得车辆数与总得需求量之间得关系,用最小偏差法与分段考虑法进行了计算,分别建立多目标规划模型与非线性规划模型,通过对转运后各代理点最终得车辆数进行分析,比较两种结果得到更优得转运方案.在问题二中,我们一方面要对其短缺损失进行理解,另一方面要考虑,就是否应该考虑在尽量满足需求得条件下求其最低得转运费用与短缺损失,此问题中我们同样分两种情况对其进行考虑,通过比较两者最低费用并且结合实际情况,得到更合理得转运方案。
在问题三中,首先我们分析数据,剔除了其中一场得部分,并用最小二乘法对缺失数据进行预测,得到完整得单位租赁费用与短缺损失费用,然后综合考虑各种因素后,我们将公司获利最大作为最终目标函数通过非线性规划得模型求得最佳方案。
在问题四中,我们没有直接对就是否购买新车作出判断,而就是直接以其八年获利最大为目标进行非线性规划,购买得车辆数成为其目标函数中得一个未知数,用lingo可直接求得在获利最大时得购车数量,将其与不购车时得利润进行比较可得到最佳得购买方案。
关键词:非线性规划全局最优短缺损失最小二乘法一.问题重述国内汽车租赁市场兴起于1990年北京亚运会,随后在北京、上海、广州及深圳等国际化程度较高得城市率先发展,直至2000年左右,汽车租赁市场开始在其她城市发展.某城市有一家汽车租赁公司,此公司年初在全市范围内有379辆可供租赁得汽车,分布于20个代理点中。
2019数学建模c题出租车c

2019数学建模c题出租车c(原创版)目录1.题目背景及要求2.出租车调度问题的解决方案3.数学建模在解决实际问题中的应用4.结论正文1.题目背景及要求2019 年数学建模竞赛的 C 题,题目为“出租车调度问题”。
该题目要求参赛者针对一个城市中的出租车调度问题进行分析,并提出解决方案。
具体而言,需要考虑如何在满足乘客需求的同时,使出租车的运营效率最大化,并降低出租车的空载率。
2.出租车调度问题的解决方案针对出租车调度问题,我们可以从以下几个方面进行分析和求解:(1) 建立问题模型:根据题目描述,可以将出租车调度问题建立一个车辆路径问题(Vehicle Routing Problem, VRP)模型。
在这个模型中,出租车作为车辆,乘客作为需求点,每辆出租车需要在满足乘客需求的同时,选择一条最优路径,使得总运营效率最大。
(2) 求解算法:针对 VRP 模型,可以采用各种算法进行求解,如穷举法、贪心算法、遗传算法等。
在实际应用中,常用的求解方法是遗传算法,因为它可以在较短时间内找到较优解。
(3) 实际应用:将求解出的最优路径应用于实际出租车调度,通过智能调度系统,实时调整出租车的运营路线,从而满足乘客需求,提高出租车的运营效率,降低空载率。
3.数学建模在解决实际问题中的应用数学建模是一种强有力的工具,能够帮助我们解决实际问题。
在本题中,通过建立 VRP 模型,并采用遗传算法求解,我们可以找到一个较优的出租车调度方案。
这种方法不仅可以应用于出租车调度,还可以应用于许多其他领域,如物流、生产调度等,充分体现了数学建模在解决实际问题中的广泛应用价值。
4.结论总之,2019 年数学建模 C 题“出租车调度问题”通过建立 VRP 模型,并采用遗传算法求解,为解决实际中的出租车调度问题提供了一种有效方法。
汽车租赁调度模型的探求

汽车租赁调度模型的探求【摘要】本文旨在探讨汽车租赁调度模型,首先介绍了研究背景和意义,明确了研究目的。
然后详细阐述了汽车租赁调度模型的概念,对相关研究进行了综述,并提出了基于特定方法的模型设计。
通过实证分析和案例研究,验证了模型的有效性,并对其进行了优化和改进。
总结了汽车租赁调度模型的启示,探讨了研究的局限性和未来展望。
本文的研究成果将为汽车租赁行业提供重要参考,提升调度效率,优化资源利用,推动行业发展。
【关键词】汽车租赁、调度模型、研究背景、研究意义、研究目的、概念、相关研究、方法、设计、实证分析、案例研究、模型优化、改进、启示、局限、展望、结论总结。
1. 引言1.1 研究背景汽车租赁调度模型的研究背景十分重要,随着城市化进程的加速和交通需求的增加,汽车租赁行业也在快速发展。
汽车租赁公司在面对日益增长的需求时往往会面临诸多挑战,比如车辆调度效率低、成本高等问题。
研究如何通过科学合理的调度模型来提高汽车租赁公司的效率和服务质量显得至关重要。
随着智能交通技术的不断创新和发展,汽车租赁调度模型也逐渐向智能化、信息化方向发展。
通过建立高效的汽车租赁调度模型,可以帮助企业降低成本、提高服务水平,从而在激烈的市场竞争中脱颖而出。
当前汽车租赁行业正处于快速发展阶段,而汽车租赁调度模型的研究正是为了提高企业的经营效益和竞争力。
通过对研究背景的深入分析,可以更好地把握行业发展的趋势和需求,指导后续研究工作的展开。
1.2 研究意义汽车租赁调度模型的研究意义主要体现在以下几个方面:通过建立有效的汽车租赁调度模型,可以提高汽车租赁公司的运营效率和利润水平。
优化调度模型可以帮助企业更好地满足客户需求,提升客户体验和忠诚度。
汽车租赁调度模型的研究还可以促进智能交通、共享经济和节能减排等领域的发展,推动城市交通系统的智能化和可持续发展。
深入研究汽车租赁调度模型,可以为相关领域提供新的理论与方法,拓展学术研究领域,促进学科发展。
数学建模作业B题租赁方案

数学建模作业B 题汽车租赁案例学院: 专业: 姓名: 学院: 专业: 姓名:为了使每周的利润最大化,公司希望获取一个‘稳态’方案,即在每周固定的日子,将固定预计数目的车辆安排于固定的租借点。
87654321max pf pf pf pf pf pf pf pf f ------+=!价格收益∑∑∑∑∑=====-+-+-=1331226141111]30150[]30100[]2070[1l j ij lij l j ij lij i j l j ij lij x xx xx xpf!损坏罚金收益∑∑==+++=6121)]([1002i m imimiidesddesadescdesbpf!边际成本∑∑∑∑=====614131413i j k l ijkl kx cbpf!机会成本z pf 154=!完好车转移费用∑∑∑====6141415i j l ijl jly movemypf!破损车转移费用∑∑==+=6121)(36i m imimm desddesamovemypf!破损修好后转移费用∑∑==+=614112117i l il l ij l c movemy b movemypf!特别优惠∑∑===414116208j l lj xpf4,3,2,1,6,,2,1,314===∑∑=j i xd k lijklij 实际派车约束4,3,2,1,6,,2,1,==≤j i a d ij ij 需求约束4,3,2,1,4,3,2,1,6,,2,1,1413131====∑∑∑===l j i xr xn k ijknjlk ijkl归还比例约束3,2,1,6,,2,1,24141314141===∑∑∑∑∑=====k i xr xj j n l ijnlk l ijkl租期分配约束6,5,4,1.0)(1.0)(1.0)(1.04131121413162111123231413152161112221413142151161211==++=+++=+++=+∑∑∑∑∑∑==-====i xdesax x x desadesax x x desadesax x x desadesaj k kjk i m imj j j j j j j j j j j j A 地损坏车约束6,5,4,1.0)(1.0)(1.0)(1.04131421413462411423231413452461412221413442451461211==++=+++=+++=+∑∑∑∑∑∑==-====i xdesax x x desadesax x x desadesax x x desadesaj k kjk i m imj j j j j j j j j j j j D 地损坏车约束6,5,4,1.0)(1.0)(1.0)(1.0413124132********4132********4132********==++=++=++=∑∑∑∑∑==-===i xdesbx x x desbx x x desbx x x desbj k kjk i ij j j j j j j j j j j j B 地损坏车约束6,5,4,1.0)(1.0)(1.0)(1.0413134133********4133********4133********==++=++=++=∑∑∑∑∑==-===i xdescx x x descx x x descx x x descj k kjk i ij j j j j j j j j j j j C 地损坏车约束20,5,4,3,2,1,2012,5,4,3,2,1,126266221261661111≤++=≤++≤++=≤++++desddescdesai desddescdesadesd desb desa i desd desb desa i i i i i i 修车能力约束62162412526524112124126116141251651411111412114,3,2,1,1114,3,2,1,1desddescdesac desddescdesac i desddescdesac desddesbdesab desddesbdesab i desddesbdesab j jj ji i i j ji j jj ji i i j ji ++=++==++=++=++==++=∑∑∑∑∑∑==+=+==+=+ B ,C 修好车约束每天平衡约束 每天总量约束 MODEL: SETS: local/1..4/;days/1..6/:desb,desc;!B 、C 点损坏的车辆阵;t imes/1..3/;d em/1..4/:movemy1,movemy2;!B、C点损坏的车辆修好后的转移费用矩阵;m yset/1,2/;s upply(days,local,times,dem):x;!表示供车数;m ove(days,local,dem):y;!y表示转移的没有损坏的车辆数;m ovem(local,dem):movemy;!转移费用矩阵;d es(days,myset):desa,desd;!在A、D点损坏的车辆矩阵;afdes(days,local):b1,c1;!在B、C点修好后的车子的转移矩阵;demond(days,local):A,C,D;!A、C、D分别表示需求矩阵、出点终点比例阵、实际派车矩阵; rent1(local,dem):r1;!出点终点的比例关系阵;E NDSETSDATA:A=100 150 135 83120 230 250 14380 225 210 9895 195 242 11170 124 160 9955 96 115 80;r1= 0.6 0.2 0.1 0.10.15 0.55 0.25 0.500.15 0.2 0.54 0.110.8 0.12 0.27 0.53;m ovemy=0 20 30 5020 0 15 3530 15 0 2550 35 25 0;m ovemy1=20 0 15 35;m ovemy2=30 15 0 25;E NDDATAM AX = Pf1+Pf2-Pf3-Pf4-Pf5-Pf6-Pf7-Pf8;@for(days(i):@for(local(j):D(i,j)=@sum(times(k):@sum(dem(L):x(i,j,k,l)))));!价格收益;Pf1=@sum(days(i):@sum(local(j):(70*@sum(dem(l):x(i,j,1,l))-20*x(i,j,1,j))))+@sum(days(i):@sum(local(j):(100*@sum(dem(l):x(i,j,2,l))-30*x(i,j,2,j))))+@sum(days(i):@sum(local(j):(150*@sum(dem(l):x(i,j,3,l))-30*x(i,j,3,j))));! 损坏罚金;Pf2 = 100*@sum(days(i):desa(i,1)+desa(i,2)+desd(i,1)+desd(i,2)+desb(i)+desc(i));!边际成本;Pf3= 20*@sum(days(i):@sum(local(j):@sum(dem(l):x(i,j,1,l))))+25*@sum(days(i):@sum(local(j):@sum(dem(l):x(i,j,2,l))))+30*@sum(days(i):@sum(local(j):@sum(dem(l):x(i,j,3,l))));!机会成本;Pf4=15*Z;!完好车转移费用;Pf5=@sum(days(i):@sum(local(j):@sum(dem(k):movemy(j,k)*y(i,j,k))));!破损车转移费用;Pf6=@sum(days(i):20*desa(i,1)+30*desa(i,2)+35*desd(i,1)+25*desd(i,2));!破损并修好后转运费用;Pf7=@sum(days(i):@sum(dem(k):movemy1(k)*b1(i,k)))+@sum(days(i):@sum(dem(k):movemy2(k)*c1(i,k))); !特别优惠费用;Pf8= 20*@sum(local(j):@sum(dem(l):x(6,j,1,l)));@for(days(i)|i#le#5:desa(i,1)+desb(i+1)+desd(i,1)<=12);desa(6,1)+desb(1)+desd(6,1)<=12;@for(days(i)|i#le#5:desa(i,2)+desc(i+1)+desd(i,2)<=20);desa(6,2)+desb(1)+desd(6,2)<=20;!约束条件租期分配;@for(days(i):@sum(local(j):@sum(dem(l):x(i,j,1,l)))=0.55*@sum(local(j):@sum(times(k):@sum(dem(l):x(i,j,k,l) ))));@for(days(i):@sum(local(j):@sum(dem(l):x(i,j,2,l)))=0.20*@sum(local(j):@sum(times(k):@sum(dem(l):x(i,j,k,l) ))));@for(days(i):@sum(local(j):@sum(dem(l):x(i,j,3,l)))=0.25*@sum(local(j):@sum(times(k):@sum(dem(l):x(i,j,k,l) ))));!约束条件归还比列;@for(days(i):@for(local(j):@for(dem(l):@sum(times(k):x(i,j,k,l))=r1(j,l)*@sum(dem(n):@sum(times(k):x(i,j,k,n) )))));!约束条件需求约束;@for(days(i):@for(local(j):@sum(times(k):@sum(dem(l):x(i,j,k,l)))<=A(i,j)));!每天损坏车辆约束条件;desa(1,1)+desa(1,2)=0.1*@sum(local(j):x(6,j,1,1)+x(5,j,2,1)+x(4,j,3,1));desa(2,1)+desa(2,2)=0.1*@sum(local(j):x(1,j,1,1)+x(6,j,2,1)+x(5,j,3,1));desa(3,1)+desa(3,2)=0.1*@sum(local(j):x(2,j,1,1)+x(1,j,2,1)+x(6,j,3,1));@for(days(i)|i#GE#4:@sum(myset(j):desa(i,j))=0.1*@sum(local(j):x(i-1,j,1,1)+x(i-2,j,2,1)+x(i-3,j,3,1)));desb(1)=0.1*@sum(local(j):x(6,j,1,2)+x(5,j,2,2)+x(4,j,3,2));desb(2)=0.1*@sum(local(j):x(1,j,1,2)+x(6,j,2,2)+x(5,j,3,2));desb(3)=0.1*@sum(local(j):x(2,j,1,2)+x(1,j,2,2)+x(6,j,3,2));@for(days(i)|i#GE#4:desb(i)=0.1*@sum(local(j):x(i-1,j,1,2)+x(i-2,j,2,2)+x(i-3,j,3,2)););desc(1)=0.1*@sum(local(j):x(6,j,1,3)+x(5,j,2,3)+x(4,j,3,3));desc(2)=0.1*@sum(local(j):x(1,j,1,3)+x(6,j,2,3)+x(5,j,3,3));desc(3)=0.1*@sum(local(j):x(2,j,1,3)+x(1,j,2,3)+x(6,j,3,3));@for(days(i)|i#GE#4:desc(i)=0.1*@sum(local(j):x(i-1,j,1,3)+x(i-2,j,2,3)+x(i-3,j,3,3)););desd(1,1)+desd(1,2)=0.1*@sum(local(j):x(6,j,1,4)+x(5,j,2,4)+x(4,j,3,4));desd(2,1)+desd(2,2)=0.1*@sum(local(j):x(1,j,1,4)+x(6,j,2,4)+x(5,j,3,4));desd(3,1)+desd(3,2)=0.1*@sum(local(j):x(2,j,1,4)+x(1,j,2,4)+x(6,j,3,4));@for(days(i)|i#GE#4:@sum(myset(j):desd(i,j))=0.1*@sum(local(j):x(i-1,j,1,4)+x(i-2,j,2,4)+x(i-3,j,3,4)));!B,C每天修理好的车辆约束;@for(days(i)|i#le#4:@sum(local(j):b1(i+2,j))=desa(i,1)+desb(i+1)+desd(i,1));@sum(local(j):b1(1,j))=desa(5,1)+desb(6)+desd(5,1);@sum(local(j):b1(2,j))=desa(6,1)+desb(1)+desd(6,1);@for(days(i)|i#le#4:@sum(local(j):c1(i+2,j))=desa(i,2)+desc(i+1)+desd(i,2));@sum(local(j):c1(1,j))=desa(5,2)+desc(6)+desd(5,2);@sum(local(j):c1(2,j))=desa(6,2)+desc(1)+desd(6,2);!第一天;0.9*@sum(local(j):x(6,j,1,1)+x(5,j,2,1)+x(4,j,3,1))+C(6,1)+@sum(local(j):y(1,j,1))+b1(6,1)+c1(6,1)=@sum(dem( k):y(1,1,k))+@sum(times(k):@sum(dem(n):x(1,1,k,n)))+C(1,1);0.9*@sum(local(j):x(6,j,1,4)+x(5,j,2,4)+x(4,j,3,4))+C(6,4)+@sum(local(j):y(1,j,4))+b1(6,4)+c1(6,4)=@sum(dem( k):y(1,4,k))+@sum(times(k):@sum(dem(n):x(1,4,k,n)))+C(1,4);0.9*@sum(local(j):x(6,j,1,2)+x(5,j,2,2)+x(4,j,3,2))+C(6,2)+@sum(local(j):y(1,j,2))+b1(1,2)=@sum(dem(k):y(1,2, k))+@sum(times(k):@sum(dem(n):x(1,2,k,n)))+C(1,2);0.9*@sum(local(j):x(6,j,1,3)+x(5,j,2,3)+x(4,j,3,3))+C(6,3)+@sum(local(j):y(1,j,3))+c1(6,3)=@sum(dem(k):y(1,3, k))+@sum(times(k):@sum(dem(n):x(1,3,k,n)))+C(1,3);!第二天;0.9*@sum(local(j):x(1,j,1,1)+x(6,j,2,1)+x(5,j,3,1))+C(1,1)+@sum(local(j):y(2,j,1))+b1(1,1)+c1(1,1)=@sum(dem( k):y(2,1,k))+@sum(times(k):@sum(dem(n):x(2,1,k,n)))+C(2,1);0.9*@sum(local(j):x(1,j,1,2)+x(6,j,2,2)+x(5,j,3,2))+C(1,2)+@sum(local(j):y(2,j,2))+b1(2,2)=@sum(dem(k):y(2,2, k))+@sum(times(k):@sum(dem(n):x(2,2,k,n)))+C(2,2);0.9*@sum(local(j):x(1,j,1,3)+x(6,j,2,3)+x(5,j,3,3))+C(1,3)+@sum(local(j):y(2,j,3))+c1(2,3)=@sum(dem(k):y(2,3, k))+@sum(times(k):@sum(dem(n):x(2,3,k,n)))+C(2,3);0.9*@sum(local(j):x(1,j,1,4)+x(6,j,2,4)+x(5,j,3,4))+C(1,4)+@sum(local(j):y(2,j,4))+b1(1,4)+c1(1,4)=@sum(dem( k):y(2,4,k))+@sum(times(k):@sum(dem(n):x(2,4,k,n)))+C(2,4);!第3天;0.9*@sum(local(j):x(2,j,1,1)+x(1,j,2,1)+x(6,j,3,1))+C(2,1)+@sum(local(j):y(3,j,1))+b1(2,1)+c1(2,1)=@sum(dem( k):y(3,1,k))+@sum(times(k):@sum(dem(n):x(3,1,k,n)))+C(3,1);0.9*@sum(local(j):x(2,j,1,2)+x(1,j,2,2)+x(6,j,3,2))+C(2,2)+@sum(local(j):y(3,j,2))+b1(3,2)=@sum(dem(k):y(3,2, k))+@sum(times(k):@sum(dem(n):x(3,2,k,n)))+C(3,2);0.9*@sum(local(j):x(2,j,1,3)+x(1,j,2,3)+x(6,j,3,3))+C(2,3)+@sum(local(j):y(3,j,3))+c1(3,3)=@sum(dem(k):y(3,3, k))+@sum(times(k):@sum(dem(n):x(3,3,k,n)))+C(3,3);0.9*@sum(local(j):x(2,j,1,4)+x(1,j,2,4)+x(6,j,3,4))+C(2,4)+@sum(local(j):y(3,j,4))+b1(2,4)+c1(2,4)=@sum(dem(k):y(3,4,k))+@sum(times(k):@sum(dem(n):x(3,4,k,n)))+C(3,4);!第4天;0.9*@sum(local(j):x(3,j,1,1)+x(2,j,2,1)+x(1,j,3,1))+C(3,1)+@sum(local(j):y(4,j,1))+b1(3,1)+c1(3,1)=@sum(dem( k):y(4,1,k))+@sum(times(k):@sum(dem(n):x(4,1,k,n)))+C(4,1);0.9*@sum(local(j):x(3,j,1,2)+x(2,j,2,2)+x(1,j,3,2))+C(3,2)+@sum(local(j):y(4,j,2))+b1(4,2)=@sum(dem(k):y(4,2, k))+@sum(times(k):@sum(dem(n):x(4,2,k,n)))+C(4,2);0.9*@sum(local(j):x(3,j,1,3)+x(2,j,2,3)+x(1,j,3,3))+C(3,3)+@sum(local(j):y(4,j,3))+c1(4,3)=@sum(dem(k):y(4,3, k))+@sum(times(k):@sum(dem(n):x(4,3,k,n)))+C(4,3);0.9*@sum(local(j):x(3,j,1,4)+x(2,j,2,4)+x(1,j,3,4))+C(3,4)+@sum(local(j):y(4,j,4))+b1(3,4)+c1(3,4)=@sum(dem( k):y(4,4,k))+@sum(times(k):@sum(dem(n):x(4,4,k,n)))+C(4,4);!第5天;0.9*@sum(local(j):x(4,j,1,1)+x(3,j,2,1)+x(2,j,3,1))+C(4,1)+@sum(local(j):y(5,j,1))+b1(4,1)+c1(4,1)=@sum(dem( k):y(5,1,k))+@sum(times(k):@sum(dem(n):x(5,1,k,n)))+C(5,1);0.9*@sum(local(j):x(4,j,1,2)+x(3,j,2,2)+x(2,j,3,2))+C(4,2)+@sum(local(j):y(5,j,2))+b1(5,2)=@sum(dem(k):y(5,2, k))+@sum(times(k):@sum(dem(n):x(5,2,k,n)))+C(5,2);0.9*@sum(local(j):x(4,j,1,3)+x(3,j,2,3)+x(2,j,3,3))+C(4,3)+@sum(local(j):y(5,j,3))+c1(5,3)=@sum(dem(k):y(5,3, k))+@sum(times(k):@sum(dem(n):x(5,3,k,n)))+C(5,3);0.9*@sum(local(j):x(4,j,1,4)+x(3,j,2,4)+x(2,j,3,4))+C(4,4)+@sum(local(j):y(5,j,4))+b1(4,4)+c1(4,4)=@sum(dem( k):y(5,4,k))+@sum(times(k):@sum(dem(n):x(5,4,k,n)))+C(5,4);!第6天;0.9*@sum(local(j):x(5,j,1,1)+x(4,j,2,1)+x(3,j,3,1))+C(5,1)+@sum(local(j):y(6,j,1))+b1(5,1)+c1(5,1)=@sum(dem( k):y(6,1,k))+@sum(times(k):@sum(dem(n):x(6,1,k,n)))+C(6,1);0.9*@sum(local(j):x(5,j,1,2)+x(4,j,2,2)+x(3,j,3,2))+C(5,2)+@sum(local(j):y(6,j,2))+b1(6,2)=@sum(dem(k):y(6,2, k))+@sum(times(k):@sum(dem(n):x(6,2,k,n)))+C(6,2);0.9*@sum(local(j):x(5,j,1,3)+x(4,j,2,3)+x(3,j,3,3))+C(5,3)+@sum(local(j):y(6,j,3))+c1(6,3)=@sum(dem(k):y(6,3, k))+@sum(times(k):@sum(dem(n):x(6,3,k,n)))+C(6,3);0.9*@sum(local(j):x(5,j,1,4)+x(4,j,2,4)+x(3,j,3,4))+C(5,4)+@sum(local(j):y(6,j,4))+b1(5,4)+c1(5,4)=@sum(dem( k):y(6,4,k))+@sum(times(k):@sum(dem(n):x(6,4,k,n)))+C(6,4);!总量一定是Z;Z=@sum(local(j):C(1,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(1,j,k,L))))+@sum(local(j):@sum(dem( L):(x(5,j,3,L)+x(6,j,2,L)+x(6,j,3,L))))+desa(6,2)+desd(6,2)+desa(6,1)+desd(6,1)+b1(1,1)+b1(1,4)+c1(1,1)+c1(1,4) +desa(1,2)+desd(1,2)+desa(1,1)+desd(1,1)+desb(1)+desc(1);Z=@sum(local(j):C(2,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(2,j,k,L))))+@sum(local(j):@sum(dem( L):(x(6,j,3,L)+x(1,j,2,L)+x(1,j,3,L))))+desa(1,2)+desd(1,2)+desa(1,1)+desd(1,1)+b1(2,1)+b1(2,4)+c1(2,1)+c1(2,4) +desa(2,2)+desd(2,2)+desa(2,1)+desd(2,1)+desb(2)+desc(2);Z=@sum(local(j):C(3,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(3,j,k,L))))+@sum(local(j):@sum(dem( L):(x(1,j,3,L)+x(2,j,2,L)+x(2,j,3,L))))+desa(2,2)+desd(2,2)+desa(2,1)+desd(2,1)+b1(3,1)+b1(3,4)+c1(3,1)+c1(3,4) +desa(3,2)+desd(3,2)+desa(3,1)+desd(3,1)+desb(3)+desc(3);Z=@sum(local(j):C(4,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(4,j,k,L))))+@sum(local(j):@sum(dem(L):(x(2,j,3,L)+x(3,j,2,L)+x(3,j,3,L))))+desa(3,2)+desd(3,2)+desa(3,1)+desd(3,1)+b1(4,1)+b1(4,4)+c1(4,1)+c1(4,4) +desa(3,2)+desd(3,2)+desa(3,1)+desd(3,1)+desb(4)+desc(4);Z=@sum(local(j):C(5,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(5,j,k,L))))+@sum(local(j):@sum(dem( L):(x(3,j,3,L)+x(4,j,2,L)+x(4,j,3,L))))+desa(4,2)+desd(4,2)+desa(4,1)+desd(4,1)+b1(5,1)+b1(5,4)+c1(5,1)+c1(5,4) ++desb(5)+desc(5)+desa(4,2)+desd(4,2)+desa(4,1)+desd(4,1);Z=@sum(local(j):C(6,j))+@sum(local(j):@sum(times(k):@sum(dem(L):x(6,j,k,L))))+@sum(local(j):@sum(dem( L):(x(4,j,3,L)+x(5,j,2,L)+x(5,j,3,L))))+desa(5,2)+desd(5,2)+desa(5,1)+desd(5,1)+b1(6,1)+b1(6,4)+c1(6,1)+c1(6,4) +desb(6)+desc(6)+desa(5,2)+desd(5,2)+desa(5,1)+desd(5,1);!整数约束条件;!@for(days(i):@for(local(j):@for(times(k):@for(dem(l):@gin(x(i,j,k,l)))))); !@for(days(i):@for(local(j):@for(dem(l):@gin(y(i,j,l)))));!@for(days(i):@gin(desb(i)));!@for(days(i):@gin(desc(i)));!@for(des(i,m):@gin(desa(i,m)));!@for(des(i,m):@gin(desd(i,m)));!@for(afdes(i,n):@gin(b1(i,n)));!@for(afdes(i,n):@gin(c1(i,n)));!@for(demond(i,j):@gin(A(i,j)));!@for(demond(i,j):@gin(C(i,j)));!@for(demond(i,j):@gin(D(i,j)));。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汽车租赁调度问题摘要国内汽车租赁市场兴起于1900年北京亚运会,随后在北京、上海、广州及深圳等国际化程度较高的城市率先发展直至2000年左右,汽车租赁市场开始在其他城市发展。
为了对某市的一家租赁公司获利情况进行分析并确定汽车调度方案,本文我们以非线性规划为基础,通过matlab,excel等软件对数据进行处理,最小二乘法对缺失数据进行预测,最终使用lingo软件进行编程求解得到最终的优化方案。
在问题一中,我们基于对题目中尽量满足需求的理解,考虑到总的车辆数和总的需求量之间的关系,用最小偏差法和分段考虑法进行了计算,分别建立多目标规划模型和非线性规划模型,通过对转运后各代理点最终的车辆数进行分析,比较两种结果得到更优的转运方案。
在问题二中,我们一方面要对其短缺损失进行理解,另一方面要考虑,是否应该考虑在尽量满足需求的条件下求其最低的转运费用和短缺损失,此问题中我们同样分两种情况对其进行考虑,通过比较两者最低费用并且结合实际情况,得到更合理的转运方案。
在问题三中,首先我们分析数据,剔除了其中一场的部分,并用最小二乘法对缺失数据进行预测,得到完整的单位租赁费用与短缺损失费用,然后综合考虑各种因素后,我们将公司获利最大作为最终目标函数通过非线性规划的模型求得最佳方案。
在问题四中,我们没有直接对是否购买新车作出判断,而是直接以其八年获利最大为目标进行非线性规划,购买的车辆数成为其目标函数中的一个未知数,用lingo可直接求得在获利最大时的购车数量,将其与不购车时的利润进行比较可得到最佳的购买方案。
关键词:非线性规划全局最优短缺损失最小二乘法一.问题重述国内汽车租赁市场兴起于1990年北京亚运会,随后在北京、上海、广州及深圳等国际化程度较高的城市率先发展,直至2000年左右,汽车租赁市场开始在其他城市发展。
某城市有一家汽车租赁公司,此公司年初在全市范围内有379辆可供租赁的汽车,分布于20个代理点中。
每个代理点的位置都以地理坐标X和Y的形式给出,单位为千米。
假定两个代理点之间的距离约为他们之间欧氏距离(即直线距离)的1.2倍。
要求根据附件所给数据计算如下问题:1.给出未来四周内每天的汽车调度方案,在尽量满足需求的前提下,使总的转运费用最低;2.考虑到由于汽车数量不足而带来的经济损失,给出使未来四周总的转运费用及短缺损失最低的汽车调度方案;3.综合考虑公司获利、转运费用以及短缺损失等因素,确定未来四周的汽车调度方案;4.为了使年度总获利最大,从长期考虑是否需要购买新车?如果购买的话,确定购买计划(考虑到购买数量与价格优惠幅度之间的关系,在此假设如果购买新车,只购买一款车型)。
二.问题分析汽车租赁调度问题是一个典型的数学规划问题,需要综合考虑转运费用,短缺损失,公司获利等多方面因素,在掌握了各代理点实际需求下,根据一定要求,寻找到使目标函数满意的优化解。
问题一中,要求在尽量满足需求的前提下,使未来四周的总转运费用最低。
对数据进行处理后,对尽量满足需求这一约束条件,认为其在需求量大于供应量时应保证每辆车都能够被利用,在需求量小于供应量时应保证每个代理点的需求都能被满足。
然后据此约束建立多目标规划模型求全局最优解,使得未来四周总的转运费用最小。
针对问题二,我们需要考虑在汽车数量不足的情况下所带来的短缺损失,所谓短缺损失是指,在某代理点某天经过转运后最终的车辆数比需求量少时,少的车辆数与单位短缺损失的乘积。
在此基础上建立两种模型,第一种是尽量满足需求条件下的模型,第二种是不考虑尽量满足需求这一条件下的模型。
然后分别建立非线性规划模型求全局最优,使得未来四周的转运费与短缺损失之和最小。
针对问题三,综合考虑公司获利、转运费用以及短缺损失等因素,以公司获利最多作为目标函数,考虑到前期尽量满足需求对公司后续的租赁需求影响,在此仅分析在尽量满足需求条件下获利最多。
对于附录中丢失的数据,我们将平均需求量与租赁收入之间的关系曲线采用最小二乘法进行拟合,预测出缺失的数据以及异常数据。
最后将其考虑为非线性规划问题对其进行规划求全局最优,得到最佳的调度方案。
针对问题四,由于一年中最大需求量要比实际供应量多66辆车,故我们将购买车的数量m取小于66的值,然后分别计算每增加一辆能够获得的最大的利润,然后求得最优的m值,该m的取值区间会有一个值使得获利最大。
由于车型不影响租赁收入,所以在考虑车型时,选择是8年成本和维修费用之和最低的一款。
三.符号说明四.模型假设1.假设租赁车辆不会损坏,且不会产生维修保养费用。
2.假设当天租出去的车会当天归还,不影响第二天租赁。
3.假设每次车辆转运发生在一天的结束后,第二天之前。
4.假设附件2所给一年各代理点的汽车需求量代表未来八年的汽车需求量。
5.假设购买新车的周期为8年。
6.假设价格不考虑涨价等情况。
7.假设前期的不满足需求不会影响到后续的需求量。
五.模型建立与求解5.1问题一5.1.1对问题一的理解问题一要求在尽量满足需求的前提下,使总的转运费用最低。
对于尽量满足需求,我们对其有两种理解。
一是使每天每个代理点转运后最终的车辆数与其需求量的偏差最小。
二是认为其在需求量大于供应量时应保证每辆车都能够被利用,在需求量小于供应量时应保证每个代理点的需求都能被满足。
5.1.2基于偏差最小的多目标规划模型的建立与求解首先用matlab 对附件1和附件6中数据进行处理,得到两两代理点之间每转运一辆车的转运费用。
具体结果见附件1。
用ki ki x a -表示其偏差,建立多目标规划如下:min292011ki ki k ix a ==-∑∑s.t.1379nki iX ==∑上式可求得当其偏差和最小时每天每个代理点经过转运后的最终车辆数。
在此基础上以其转运费用最低为目标函数建立如下模型:min292020111kij ij k i jn p ===∑∑∑s.t.2020()11kij kji k i i ki j jn n x x -==-=-∑∑利用lingo 软件编程解得最小的转运费用为70.4987万元,以下是前11天各代理点转运之后最终的车辆数。
由下表数据可知,在该模型下,虽然大部分代理点几乎完全满足需求,但是一些代理点经过转运之后一辆车也没有,这违背了尽量满足需求这一条件,也不符合实际情况,同时求解得到其运输费用最小为70.4987万元,远高于第二个模型的最小运输费用,所以该模型被舍弃。
表5.1.2 前11天各代理点转运之后最终的车辆数5.1.3基于分段考虑的非线性规划模型的建立与求解对该公司拥有的总的车辆数和总的需求量进行比较,通过对两者大小的判断,以此述判断为分段约束条件,直接以转运费用最低位目标函数建立非线性规划模型如下:min292020111kij ij k i jn p ===∑∑∑s.t.2020()11kij kji k i i ki j jn n x x -==-=-∑∑当k A B ≤ 时 ki ki x a ≤当k A B ≥ 时ki ki x a ≥利用lingo 软件编程对该模型进行求解得,最小的转运费用为40.4916万元,下表给出前11天各代理点转运之后的最终车辆数,完整表格见附件3:表5.1.3 前11天各代理点转运之后最终的车辆数由上表数据可以看出,该模型在尽量满足需求的条件下分配的也比较合理,远远优于第一种模型,而且转运费用也远远低于第一种模型。
转运方案:1-20分别代表A-T20个租赁代理点第一天:1→2(7) 2→13(3) 5→10(9) 7→4(5) 8→4(1) 8→20(4) 9→11(3) 10→3(3) 10→6(4) 10→7(1) 14→13(5) 15→4(1) 16→13(2) 17→20(5)18→4(1) 18→16(9) 1 9→13(6)第二天:4→7(2) 4→14(9) 9→10(1) 10→7(4) 11→6(4) 12→14(5) 13→16(4) 13→19(5) 14→19(8) 1→19(2) 18→19(1) 20→8(3) 20→17(12)第十四天:4→11(12) 6→11(2) 8→20(3) 9→10(16) 14→13(2) 14→16(4) 15→2(6) 15→3(2) 1 5→4(5) 15→14(1) 17→3(3) 19→18(1) 20→3(2)完整转运方案可见附件2分析第十四天的转运方案在代理点4既有转入又有转出,表面上看如此周折会产生多余费用,实际上这样是节省了转运费用,由附件1可知,1 5→11转运费用0.04余万元每千米,而1 5→4再从4→11转运费用是0.03余万元每千米。
因此如此周转节省了转运费用。
5.1.4模型比较通过对以上两种方案最小转运费用的的比较,发现第二种基于全局优化的非线性规划模型得到的最小转运费用远远小于第一种模型,并且由第一种方案得到的转运后的最终车辆数在一部分代理点中出现了零,这是不符合实际情况的,也偏离了尽量满足需求这一要求。
所以我们选择了第二种方案作为最终的调度方案。
5.2问题二5.2.1 对问题二的理解问题二要求在考虑短缺损失的情况下,求得使四周总的转运费用及短缺损失最低的最佳汽车调度方案。
本题我们同样分两种情况考虑,第一种是考虑在尽量满足需求的前提进行求解,即在问题一的基础上保留使得尽量满足需求的约束条件。
第二种是不考虑尽量满足需求即在问题一的基础上去掉使得尽量满足需求的约束条件。
并且应该明确的是:在尽量满足需求的前提下,只有在该公司拥有的总的车辆数小于总的需求量时才存在短缺损失,并且是转运费用与短缺损失之和最低。
由此我们可以以和费用最低为目标函数建立如下模型。
5.2.2考虑尽量满足需求时模型的建立与求解考虑尽量满足需求,即要对该公司拥有的总的车辆数和总的需求量之间进行比较,在需求量大于供应量时应保证每辆车都能够被利用,在需求量小于供应量时应保证每个代理点的需求都能被满足。
建立非线性规划模型如下:292020292011111min b kij ij ki i k i jk in p d ======+∑∑∑∑∑ s.t.2020()11kij kji k i i ki j jn n x x -==-=-∑∑当ki ki a x ≥ 时 ki ki ki d a x =- 当ki ki a x ≤ 时 0ki d =当k A B ≤ 时ki ki x a ≤当k A B ≥ 时ki ki x a ≥利用lingo 软件编程对该模型进行求解,最小的转运费用与短缺损失共为70.1639万元5.2.3不考虑尽量满足需求时的模型建立与求解不考虑尽量满足需求,即使得损失与运输费之和最小而不用考虑尽量满足需求这一约束条件,建立非线性规划模型如下:292020292011111min b kij ij ki i k i jk in p d ======+∑∑∑∑∑ s.t.2020()11kij kji k i i ki j jn n x x -==-=-∑∑当ki ki a x ≥时ki ki ki d a x =- 当ki ki a x ≤时0ki d =运用lingo 软件编程对该模型进行求解,最小的转运费用为64.2085万元。