哈工大运筹学实验报告-实验三
- 格式:doc
- 大小:255.00 KB
- 文档页数:7
实验三一、实验目的:1)进一步熟悉 Excel 规划求解工具,掌握 Excel 求解 0-1 整数规划问题;2)进一步熟悉 Matlab 软件,掌握 Matlab 求解 0-1 整数规划问题;3)用 Excel 和 Matlab 求解公司选址 0-1 规划问题。
二、实验器材1)PC机: 20 台。
2)Microsoft Excel 软件(具备规划求解工具模块): 20 用户。
3)Matlab 软件(具备优化工具箱):20 用户。
三、实验原理:公司选址属于 0-1 整数规划问题,通过对问题建立数学模型,根据 Excel 自身特点把数学模型在电子表格中进行清晰的描述,再利用规划求解工具设定相应的约束条件,最终完成对问题的寻优过程,具体可参见;在 Matlab 中,根据 Matlab提供的 0-1 整数规划求解函数,将数学模型转换成 0-1 整数规划求解函数可传递的数值参数,最终实现对问题的寻优求解过程,具体可参见中 bintprog 函数描述和示例。
四、实验内容和步骤:用 Excel 和 Matlab 完成下列公司选址问题。
某销售公司打算通过在武汉或长春设立分公司(也许在两个城市都设分公司)增加市场份额,管理层同时也计划在新设分公司的城市最多建一个配送中心,当然也可以不建配送中心。
经过计算,每种选择对公司收益的净现值列于下表的第四列、第五列中记录了每种选择所需的费用,总的预算费用不得超过20 万元。
决策编号问题决策变量净现值(万元)所需资金(万元)1 是否在长春设分公司x1 18 122 是否在武汉设分公司x2 10 63 是否在长春建配送中心x3 12 104 是否在武汉建配送中心x 4 8 4问:如何决策才能使总的净现值最大建立模型:设=0 表示不建立,=1 表示建立,i=1,2,3,4用z表示预算费用总的净现值。
则目标函数 maxz=18 +10 +12 +8先确立约束不等式:总的预算费用不得超过20 万元;设立的分公司数目大于等于 1;且建立配送中心数目一定要小于分公司数目。
《运筹学》实验报告专业:工商管理专业班级:11-2班姓名:***学号:************指导老师:***前言第十一周、十二周,我们在雷莹老师的指导下,用计算机进行了有关运筹学的一系列实验。
本实验报告即是对这次试验的反馈。
本这次试验是为了帮助我们顺利完成有关《运筹学》课程内容的学习。
在先期,雷老师带领我们进行了《运筹学》理论课程的学习,不仅使我们了解和掌握了运筹学的相关知识,而且让我们认识到运筹学的现实意义,认识到现代社会数学与人们生产、生活之间的紧密联系和对人们生产、生活的巨大促进作用。
然而,与此同时,现代社会同时是一个计算机时代,我们只拥有理论知识还不够,必须把理论知识和计算技术结合起来,这样才能进一步提高生产力。
我相信这也是老师要求我们做这次试验的目的和初衷。
在实验中,我们主要是利用WinQSB软件进行相关试验,根据实验指导书中详细给出的各个实验的基本步骤和内容,独立完成各项实验。
本次实验中共包含4个实验,分别是线性规划实验、运输问题实验、整数规划实验,以及网络优化实验。
每个实验均与理论课中讲解的内容相对应。
部分实验内容用于使我们了解WinQSB软件的基本操作,而其它实验内容要求我们能够根据给出的问题,进行分析、建模和求解。
通过完成各项实验任务,使我们得以巩固已有的理论课程学习内容,为将来进一步的学习和实际应用打下基础。
线性规划实验通过对以下问题的分析,建立线性规划模型,并求解:某工厂要用三种原材料C、P、H混合调配出三种不同规格的产品A、B、D。
已知产品的规格要求,产品单价,每天能供应的原材料数量及原材料单价分别见下表1和2。
该厂应如何安排生产,使利润收入为最大?表1表2实验报告要求(1)写出自己独立完成的实验内容,对需要建模的问题,给出问题的具体模型;(2)给出利用WinQSB软件得出的实验结果;(3)提交对实验结果的初步分析,给出自己的见解;实验过程:一、建立模型设Ac是A产品中用c材料,同理得出Ap、Ah、Bc、Bp、Bh、Dc、Dp、Dh34⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎧≤++≤++≤++≤++≥++≤++≥++++++++++++++++=60Dh Bh Ah 100Dp Bp Ap 100Dc Bc Ac 5.0Bh Bp Bc Bp 25.0Bh Bp Bc Bc 25.0Ah Ap Ac Ap 5.0Ah Ap Ac Ac Dh Bh Ah 35-Dp Bp Ap 25-Dc Bc Ac 65-Dh Dp Dc 25Bh Bp Bc 35)(50 max )()()()()(H P C A A A z二、求解过程三、实验分析实验结果表明,在题目的要求下,该工厂只能生产A产品才能盈利,并且在使用c材料100个单位、p材料50个单位、h材料50个单位时,即生产200个单位的A产品时,才能获得最大利润,最大利润为500。
《运筹学》实验报告成绩:班级:学号:姓名:实验一、线性规划(25分)一、实验目的:安装WinQSB软件,了解WinQSB软件在Windows环境下的文件管理操作,熟悉软件界面内容,掌握操作命令;利用WinQSB软件求解线性规划问题。
二、实验内容:安装与启动软件;建立新问题,输入模型,求解模型,结果的简单分析。
三、操作步骤:(1)安装与启动WinQSB软件(5分)1.安装双击Setup.exe,弹出窗口如下图0—1所示:图0—1输入安装的目标文件夹,点Continue按钮,弹出窗口如图0—2所示:图0—2输入用户名和公司或组织名称,点Continue按钮进行文件的复制,完成后弹出窗口如图0—3:图0—3显示安装完成,点“确定”退出。
WinQSB软件安装完毕后,会在开始→程序→WinQSB中生成19个菜单项,分别对应运筹学的19个问题。
如图0—4所示:图0—42.启动在开始菜单中选择Linear and Integer Programming,运行后出现启动窗口如下图0—5所示:图0—5(2)建立线性规划问题并输入模型(5分)选题:P32例八,题目如下:miz z=-3x1+x2+x3x1-2x2+x3≤11-4x1+x2+2x3≥3-2x1 +x3=1x1,x2,x3≥0输入数据,如下图所示:、(3)分析模型并求解(5分)计算结果:a) 运用软件计算的具体过程:b)计算的最终结果如下:(4)实验结果分析(5分)最优解=[4,1,9],即x1=4,x2=1,x3=9最优值=-2,min z=-2四、实验中遇到的主要问题及解决方法(5分)起初未能正确的Variable Type选择导致了计算结果出现错误,最后仔细的检查了操作过程,改变了Variable Type,得出了正确的结果。
实验二、运输问题(25分)一、实验目的:熟悉运用WinQSB软件求解运输问题和指派问题,掌握操作方法。
二、实验内容:求解实际中某一运输问题,建立、输入并求解模型,结果的简单分析。
运筹学综合实验报告本次实验中,我们使用了运筹学的方法来解决了一个经典的优化问题,即整数线性规划问题(Integer Linear Programming,简称ILP)。
一、实验目的本次实验的主要目的是熟悉ILP的求解过程,了解ILP在实际问题中的应用,以及掌握使用现代优化软件Gurobi来求解ILP的方法。
二、实验原理1. 整数线性规划问题整数线性规划问题是在所有线性规划问题中的一个非常重要的子集。
它将优化目标函数的线性组合与整数限制相结合。
一个典型的ILP问题可以被描述为:最大化(或最小化)目标函数:\max(\min) \sum_{j=1}^{n}c_j x_j满足如下的约束条件:\sum_{j=1}^{n}a_{ij} x_j \leq b_i,\ i=1,2,\cdots,mx_j \geq 0,\ j=1,2,\cdots,nx_j \in Z,\ j=1,2,\cdots,nx_j表示自变量,c_j表示目标函数中的系数,a_{ij}表示第i个约束条件中x的系数,b_i表示约束条件的右侧常数,m表示约束条件的数量,n表示变量的数量。
最后两个约束条件要求自变量只能是整数。
2. Gurobi优化软件Gurobi是一个商业优化软件,经过多年的发展,已成为当前最流行的数学优化软件之一。
Gurobi支持多种数学优化方法,包括线性规划、非线性规划、混合整数规划、二次规划等。
Gurobi使用了现代算法来实现高效的求解效果,是工业和学术界备受推崇的优化软件。
三、实验内容1. 利用Gurobi求解整数线性规划问题我们使用Gurobi来求解如下的整数线性规划问题:\max\ \ 2x_1 + 3x_2 + 7x_3满足如下的约束条件:x_1 + x_2 + x_3 \leq 6x_1 - x_2 + x_3 \leq 4x_1, x_2, x_3 \in Z,\ x_1 \geq 0,\ x_2 \geq 0,\ x_3 \geq 0我们使用Python代码来实现该问题的求解过程:```pythonimport gurobipy as gbmodel = gb.Model("integer linear programming")# Create variablesx1 = model.addVar(vtype=gb.GRB.INTEGER, name="x1")x2 = model.addVar(vtype=gb.GRB.INTEGER, name="x2")x3 = model.addVar(vtype=gb.GRB.INTEGER, name="x3")# Set objectivemodel.setObjective(2*x1 + 3*x2 + 7*x3, gb.GRB.MAXIMIZE)# Add constraintsmodel.addConstr(x1 + x2 + x3 <= 6)model.addConstr(x1 - x2 + x3 <= 4)# Optimize modelmodel.optimize()# Print resultsprint(f"Maximum value: {model.objVal}")print(f"x1 = {x1.x}")print(f"x2 = {x2.x}")print(f"x3 = {x3.x}")```运行该代码,得到的输出结果为:```Optimize a model with 2 rows, 3 columns and 6 nonzerosVariable types: 0 continuous, 3 integer (0 binary)Coefficient statistics:Matrix range [1e+00, 1e+00]Objective range [2e+00, 7e+00]Bounds range [0e+00, 0e+00]RHS range [4e+00, 6e+00]Found heuristic solution: objective 9.0000000Presolve time: 0.00sPresolved: 2 rows, 3 columns, 6 nonzerosVariable types: 0 continuous, 3 integer (0 binary)Root relaxation: objective 1.500000e+01, 2 iterations, 0.00 secondsNodes | Current Node | Objective Bounds | WorkExpl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time0 0 15.00000 0 1 9.00000 15.00000 66.7% - 0sH 0 0 14.0000000 15.00000 7.14% - 0s0 0 15.00000 0 1 14.00000 15.00000 7.14% - 0sExplored 1 nodes (2 simplex iterations) in 0.03 secondsThread count was 4 (of 4 available processors)Solution count 2: 14 9Optimal solution found (tolerance 1.00e-04)Best objective 1.400000000000e+01, best bound 1.400000000000e+01, gap 0.0000%Maximum value: 14.0x1 = 2.0x2 = 4.0x3 = 0.0```经过Gurobi的求解,我们得到了最大值为14,同时x_1=2, x_2=4, x_3=0时取到最优值。
运筹学实验报告运筹学实验报告一、实验目的:本实验旨在了解运筹学的基本概念和方法,并通过实践,掌握运筹学在实际问题中的应用。
二、实验过程:1.确定运筹学的应用领域:本次实验选择了物流配送问题作为运筹学的应用领域。
2.收集数据:我们选择了一个小型企业的物流配送数据进行分析,并将数据录入到计算机中。
3.建立模型:根据所收集的数据,我们建立了一个代表物流配送问题的数学模型。
4.运用运筹学方法进行求解:我们运用了线性规划的方法对物流配送问题进行求解,并得到了最优解。
5.分析结果:通过分析最优解,我们得出了一些有关物流配送问题的结论,并提出了一些优化建议。
三、实验结果:通过运用运筹学方法对物流配送问题进行求解,我们得到了一个最优解,即使得物流成本最低的配送方案。
将最优解与原始的配送方案进行对比,我们发现最优解的物流成本降低了20%,节省了货物运输的时间,减少了仓储成本。
四、实验结论:通过本次实验,我们了解了运筹学的基本概念和方法,并成功应用运筹学方法解决了物流配送问题。
通过分析最优解,我们发现采用最优解可以降低物流成本,提高配送效率。
因此,我们得出结论:运筹学在物流配送问题中的应用具有重要意义,可以帮助企业降低成本、提高效率。
五、实验心得:通过本次实验,我对运筹学有了更深入的了解。
通过实践应用运筹学方法,我明白了运筹学的实用性和价值。
在以后的工作中,我会更加注重运筹学方法的应用,以解决实际问题,提高工作效率。
本次实验不仅增强了我的动手实践能力,也培养了我分析和解决问题的能力。
我将继续学习和探索运筹学的知识,为将来的工作打下坚实的基础。
第1篇一、引言运筹学作为一门应用数学分支,广泛应用于经济管理、工程技术、军事决策等领域。
本报告旨在通过运筹学实践教学,验证理论知识在实际问题中的应用效果,提高学生的实践能力和创新能力。
以下是对本次实践教学的总结和反思。
二、实践教学内容1. 线性规划问题本次实践教学选择了线性规划问题作为研究对象。
通过建立线性规划模型,我们尝试解决生产计划、资源分配等实际问题。
- 案例一:生产计划问题某公司生产A、B两种产品,每单位A产品需消耗2小时机器时间和3小时人工时间,每单位B产品需消耗1小时机器时间和2小时人工时间。
公司每天可利用机器时间为8小时,人工时间为10小时。
假设A、B产品的利润分别为50元和30元,请问如何安排生产计划以获得最大利润?- 建模:设A产品生产量为x,B产品生产量为y,目标函数为最大化利润Z = 50x + 30y,约束条件为:\[\begin{cases}2x + y \leq 8 \\3x + 2y \leq 10 \\x, y \geq 0\end{cases}\]- 求解:利用单纯形法求解该线性规划问题,得到最优解为x = 3,y = 2,最大利润为240元。
- 案例二:资源分配问题某项目需要分配三种资源:人力、物力和财力。
人力为50人,物力为100台设备,财力为500万元。
根据项目需求,每种资源的需求量如下:- 人力:研发阶段需20人,生产阶段需30人;- 物力:研发阶段需30台设备,生产阶段需50台设备;- 财力:研发阶段需100万元,生产阶段需200万元。
请问如何合理分配资源以满足项目需求?- 建模:设人力分配量为x,物力分配量为y,财力分配量为z,目标函数为最大化总效用U = x + y + z,约束条件为:\[\begin{cases}x \leq 20 \\y \leq 30 \\z \leq 100 \\x + y + z \leq 500\end{cases}\]- 求解:利用线性规划软件求解该问题,得到最优解为x = 20,y = 30,z = 100,总效用为150。
一、引言运筹学是一门应用数学的分支,它运用数学模型、统计方法和计算机技术等工具,对复杂系统进行优化和决策。
为了更好地理解和掌握运筹学的理论和方法,提高实际操作能力,我们开展了大学生运筹学实训。
以下是本次实训的报告。
二、实训目的1. 理解运筹学的基本概念、原理和方法;2. 学会运用运筹学解决实际问题;3. 提高团队协作和沟通能力;4. 培养独立思考和创新能力。
三、实训内容1. 线性规划(1)实训目的:通过线性规划实训,掌握线性规划问题的建模、求解和结果分析。
(2)实训内容:以生产问题为例,建立线性规划模型,运用单纯形法求解最优解。
2. 整数规划(1)实训目的:通过整数规划实训,掌握整数规划问题的建模、求解和结果分析。
(2)实训内容:以背包问题为例,建立整数规划模型,运用分支定界法求解最优解。
3. 非线性规划(1)实训目的:通过非线性规划实训,掌握非线性规划问题的建模、求解和结果分析。
(2)实训内容:以旅行商问题为例,建立非线性规划模型,运用序列二次规划法求解最优解。
4. 网络流(1)实训目的:通过网络流实训,掌握网络流问题的建模、求解和结果分析。
(2)实训内容:以运输问题为例,建立网络流模型,运用最大流最小割定理求解最优解。
5. 概率论与数理统计(1)实训目的:通过概率论与数理统计实训,掌握概率论与数理统计的基本概念、原理和方法。
(2)实训内容:以排队论为例,建立概率模型,运用排队论公式求解系统性能指标。
四、实训过程1. 组建团队,明确分工;2. 针对每个实训内容,查阅相关资料,了解理论背景;3. 根据实际问题,建立数学模型;4. 选择合适的算法,进行编程实现;5. 对结果进行分析,总结经验教训。
五、实训成果1. 理解了运筹学的基本概念、原理和方法;2. 掌握了线性规划、整数规划、非线性规划、网络流和概率论与数理统计等运筹学工具;3. 提高了团队协作和沟通能力;4. 培养了独立思考和创新能力。
六、实训心得1. 运筹学是一门实用性很强的学科,它可以帮助我们解决实际问题,提高工作效率;2. 在实训过程中,我们要注重理论联系实际,将所学知识应用于实际问题的解决;3. 团队协作和沟通能力在实训过程中至关重要,要学会与团队成员共同进步;4. 实训过程中,我们要敢于尝试,勇于创新,不断提高自己的实践能力。
运筹学实验心得(精选5篇)运筹学实验心得篇1实验心得:1.背景与目标:运筹学是一门决策支持学科,它使用数学模型和算法来解决实际生活中的优化问题。
本实验的目标是通过学习运筹学的基本理论和方法,提高自己在实际问题中的决策能力和解决问题的能力。
2.实验内容:本实验包括了几个重要的运筹学主题,包括线性规划、整数规划、非线性规划和动态规划等。
我们首先学习了这些基本概念和算法,然后通过具体案例进行了实践操作,并运用所学知识对实际生活中的一些问题进行了分析和解决。
3.实验结果与收获:通过实验,我们成功地运用运筹学方法解决了一些实际问题。
例如,我们使用线性规划算法解决了货物配送问题,并使用整数规划算法解决了人员调度问题。
同时,我们也收获了一些理论知识和实践经验。
我们学会了如何使用数学模型和算法来解决实际问题,并提高了自己的决策能力和解决问题的能力。
4.反思与建议:在实验过程中,我们遇到了一些困难和挑战。
例如,有时候我们无法理解复杂的数学模型和算法,或者无法找到合适的实际问题来验证我们的知识。
因此,我们建议在学习运筹学时,应该注重基本概念和算法的学习,并积极寻找合适的实际问题来巩固和应用所学知识。
总的来说,这次实验让我们更加深入地了解了运筹学的魅力和价值,也让我们更加坚定了自己的学习方向和目标。
运筹学实验心得篇2当然,我可以帮助您撰写一篇运筹学实验的心得体会。
以下是一个可能的示例:---标题:运筹学实验:理论到实践的桥梁摘要:这篇*分享了一次运筹学实验的经历,描述了实验中的问题、解决方法以及所学到的经验教训。
关键词:运筹学,实验,问题解决,学习经验---运筹学是我在大学期间最喜爱的科目之一。
它提供了一种实用且富有挑战性的方法来理解和解决现实世界中的优化问题。
然而,真正将理论与实际联系起来的,是我的第一次运筹学实验。
实验开始时,我被一大堆复杂的数学模型和计算机程序搞得眼花缭乱。
理论知识和抽象的模型使我有些晕头转向,但我还是勇敢地面对了挑战。
运筹学实验总结引言:运筹学是一门综合了数学、经济学和工程学等多学科知识的学科,它通过建立数学模型和运用各种优化方法,帮助我们在现实问题中寻找最优解决方案。
在这学期的运筹学课程中,我们进行了一系列实验。
这些实验不仅加深了对运筹学理论的理解,还提供了一种应用运筹学方法解决问题的实践平台。
在本文中,我将总结我参与的运筹学实验,并分享我的体会和收获。
实验一:线性规划问题求解在这个实验中,我们学习了线性规划的基本概念和求解方法。
我选择了一个典型的生产调度问题作为实验题目。
通过建立数学模型,并运用线性规划软件,我成功地解决了这个问题。
通过这个实验,我深刻理解了线性规划问题的本质,以及如何利用线性规划方法找到最优解。
实验二:整数规划问题求解整数规划是线性规划的扩展,它在决策问题中更加实用。
在这个实验中,我选择了货物配送路线问题作为研究对象。
通过构建整数规划模型,并运用求解软件,我得到了最佳的货物配送方案。
这个实验不仅对我的数学建模能力提出了要求,还培养了我的实际问题解决能力。
实验三:动态规划动态规划是一种重要的优化方法,它广泛应用于最优化问题的求解。
在这个实验中,我们学习了动态规划的基本原理和设计思想。
我选择了旅行商问题作为研究对象,通过建立递推关系和寻找最优子结构,我成功地解决了该问题。
这个实验让我意识到了动态规划方法的强大威力,同时也对我的算法设计能力提出了更高的要求。
实验四:模拟退火算法模拟退火算法是一种全局搜索优化算法,具有很强的应用能力。
在这个实验中,我选择了旅行商问题作为研究对象,通过模拟退火算法的迭代和优化,我得到了一个较好的解。
通过这个实验,我掌握了模拟退火算法的基本原理和实现过程,也了解到了算法的优越性。
实验五:遗传算法遗传算法是一种模拟自然选择和遗传机制的优化算法。
在这个实验中,我选择了装箱问题作为研究对象。
通过运用遗传算法的交叉、变异和适应度选择,我得到了一个较好的装箱方案。
这个实验不仅对我的算法设计能力提出了更高的要求,还让我意识到了遗传算法的创新性和解决复杂问题的能力。
运筹学实验报告运筹学实验报告一、引言运筹学是一门研究如何有效地进行决策和规划的学科。
它利用数学、统计学和计算机科学的方法,帮助解决各种实际问题。
本次实验旨在通过实际案例,探讨运筹学在实践中的应用。
二、问题描述我们选择了一个物流配送问题作为本次实验的研究对象。
假设有一家电商公司,需要将一批商品从仓库分配给不同的客户。
每个客户的需求量和距离仓库的距离都不同。
我们的目标是找到一种最优的配送方案,以最小化总配送成本。
三、数学模型为了解决这个问题,我们采用了整数规划模型。
首先,我们定义了以下变量:- Xij:表示将商品从仓库i分配给客户j的数量- Di:表示仓库i的供应量- Dj:表示客户j的需求量- Cij:表示将商品从仓库i分配给客户j的单位运输成本然后,我们建立了以下约束条件:1. 每个仓库的供应量不能超过其库存量:∑Xij ≤ Di2. 每个客户的需求量必须得到满足:∑Xij ≥ Dj3. 分配的商品数量必须是非负整数:Xij ≥ 0最后,我们的目标是最小化总配送成本:Minimize ∑Cij*Xij四、实验步骤1. 收集数据:我们收集了仓库的库存量、客户的需求量和单位运输成本的数据,并进行了整理和清洗。
2. 建立数学模型:根据收集到的数据,我们建立了上述的整数规划模型。
3. 求解模型:我们使用了运筹学软件对模型进行求解,并得到了最优的配送方案和总配送成本。
4. 分析结果:我们对结果进行了分析,比较了不同方案的优劣,并提出了一些建议。
五、实验结果与分析经过运筹学软件的求解,我们得到了最优的配送方案和总配送成本。
通过与其他方案的比较,我们发现该方案在成本上具有明显的优势。
同时,我们还发现一些仓库和客户之间的距离较远,可能会导致运输时间和成本增加。
因此,我们建议公司可以考虑优化仓库和客户的布局,以减少运输成本。
六、实验总结本次实验通过运筹学的方法,解决了一个物流配送问题。
我们通过建立数学模型、求解模型和分析结果,得出了最优的配送方案和总配送成本。
《运筹学》实验报告实验名称:综合实践运用班级:组员:学院:完成时间:2011年12月指导教师:1 实验目的1、掌握运筹学概念、原理、模型以及实际应用意义。
2、理解掌握运筹学综合实践应用。
2 实验内容案例B4童心玩具厂下一年度的现金流(万元)如表中所示,表中负号表示2该月现金流出大于流入,为此该厂需要借款。
借款有两种方式:一是于上一年末借一年期贷款,一次得全部贷款额,从一月底起每月还息1%,于12月归还本金和最后一次利息;二是得到短期贷款,每月出获得,于月底归还,月息 1.5%。
当该厂有多余现金时,可短期存款,月初存入,月末取出,月息0.4%。
问该厂应如何进行存款操作,既能弥补可能出现的负现金流,又可以使年末现金总量最大?3 实验具体方法及步骤3.1 案例分析从案例中可以知道,该厂全年可以进行的借贷次数不限,借贷类型有两种,分别是长贷和短贷,为保证厂方的现金充足,可以在借贷了长贷的情况下依据实际情况借贷短贷。
其中长贷(用y表示)只借贷一次,在年初发生,以后每个月都将要还长贷的0.01%y的利息,总共要还12个月,还息日期为每个月的月底,也即是下一个月份的月初还息;而每个月还可以进行短期贷款(用wi表示),可贷款12个月,并于月底也就是下个月出还段贷款息1.5%wi,也就是说每个月的月初将进行一次短贷贷款,并还上一个月的短贷息 1.5%wi;而每个月若是有现金余留,可将现金(用zi表示)存款,利息为0.4%zi,总共为12个月综上可知,第一个月现金余额须为长贷额+短贷额-月底存款额要大于第一个月的现金需求额,从第二个月开始:上一个月的存款本息+本月贷款额-长贷利息-上个月短贷本息-月底存款额要大于本月的现金需求3.2 建立模型设长期贷款为y,wi表示第i个月的短期贷款额,zi为第i个月的短期存款额,i=1,2,3,4,5,6,7,8,9,10,11,12,目标函数为年底的最多现金额Max Z(目标函数为第12个月份所遗留的现金额,即求第12个月份的现金余额最大),其中约束条件共有12个,分别代表每个月份的现金约束,则线性模型可建立为:Max Z=(1+0.004)x12-(1+0.01)y-(1+0.015)w12S.t{y+w1-z1>=12 第1个月(1+0.004)z1-0.01y-(1+0.015)w1-z2+w2>=10 第2个月(1+0.004)z2-0.01y-(1+0.015)w2-z3+w3>=8 第3个月(1+0.004)z3-0.01y-(1+0.015)w3-z4+w4>=10 第4个月(1+0.004)z4-0.01y-(1+0.015)w4-z5+w5>=4 第5个月(1+0.004)z5-0.01y-(1+0.015)w5-z6+w6>=-5 第6个月(1+0.004)z6-0.01y-(1+0.015)w6-z7+w7>=7 第7个月(1+0.004)z7-0.01y-(1+0.015)w7-z8+w8>=2 第8个月(1+0.004)z8-0.01y-(1+0.015)w8-z9+w9>=-15 第9个月(1+0.004)z9-0.01y-(1+0.015)w9-z10+w10>=-12 第10个月(1+0.004)z10-0.01y-(1+0.015)w10-z11+w11>=7 第11个月(1+0.004)z11-0.01y-(1+0.015)w11-z12+w12>=-45 第12个月}该案例线性模型使用LINGO软件进行求解,编辑如下程序:求解得到结果如图所示,为:结果解析:本实验结果为小组3成员各自独立完成并且结果一致所得。
实验一.简单线性规划模型的求解与Lingo软件的初步使用一. 实验目的:了解Lingo软件的基本功能和简单线性规划模型的求解的输入和输出结果。
二. 实验内容:1. 在Lingo中求解教材P55习题2.2(1)的线性规划数学模型;2. 用Lingo求解教材P52例12的数学模型。
3. 建立教材P57习题2.9的数学模型并用Lingo求解。
三. 实验要求:1. 给出所求解问题的数学模型;2. 给出Lingo中的输入并求解;3. 指出Solution Report中输出的三个主要部分的结果;4. 能给出最优解和最优值;5. 指出第3小题中哪些约束是取等式和哪些约束取不等式。
四. 写出实验报告:1.该问题的数学模型如下,min z=-3x1+4x2-2x3+5x4;4x1-x2+2x3-x4=-2;x1+x2+3x3-x4≤14;-2x1+3x2-x3+2x4≥2;x1,x2,x3≥0,x4无约束;Lingo中的代码如下,求解可得解报告,Solution Report中输出的三个主要部分的结果如下,Variable ValueX1 0.000000X2 8.000000X3 0.000000X4 -6.000000Row Slack or Surplus Dual Price1 2.000000 -1.0000002 0.000000 4.5000003 0.000000 0.50000004 10.00000 0.000000 故最优解为x1=0,x2=8,x3=0,x4=-6,最优值为2。
2.该问题Lingo中的代码如下,min =150*(x1+x2+x3)+80*(y1+y2+y3);500*x1<=5000;1000*x1+500*x2<=9000;1500*x1+1000*x2+500*x3<=12000;2000*x1+1500*x2+1000*x3+500*y1<=16000;2500*x1+2000*x2+1500*x3+1000*y1+500*y2<=18500;3000*x1+2500*x2+2000*x3+1500*y1+1000*y2+500*y3<=21500;3500*x1+3000*x2+2500*x3+2000*y1+1500*y2+1000*y3<=25500;4000*x1+3500*x2+3000*x3+2500*y1+2000*y2+1500*y3<=30000;4000*x1+4000*x2+3500*x3+2500*y1+2500*y2+2000*y3<=33500;4000*x1+4000*x2+4000*x3+2500*y1+2500*y2+2500*y3>=36000;2000*x1+1500*x2+1000*x3+500*y1>=12000;3500*x1+3000*x2+2500*x3+2000*y1+1500*y2+1000*y3>=21500;x1+x2+x3+y1+y2+y3<=11;求解可得解报告,Global optimal solution found.Objective value: 1350.000Infeasibilities: 0.000000Total solver iterations: 5Variable Value Reduced Cost X1 3.000000 0.000000 X2 0.000000 0.000000 X3 6.000000 0.000000 Y1 0.000000 27.50000 Y2 0.000000 27.50000 Y3 0.000000 0.000000Row Slack or Surplus Dual Price 1 1350.000 -1.0000002 3500.000 0.0000003 6000.000 0.0000004 4500.000 0.0000005 4000.000 0.0000006 2000.000 0.0000007 500.0000 0.0000008 0.000000 0.0000009 0.000000 0.5500000E-0110 500.0000 0.00000011 0.000000 -0.6500000E-0112 0.000000 -0.5500000E-0113 4000.000 0.00000014 2.000000 0.000000 Solution Report中输出的三个主要部分的结果如下,Variable ValueX1 3.000000X2 0.000000X3 6.000000Y1 0.000000Y2 0.000000Y3 0.000000Row Slack or Surplus Dual Price1 1350.000 -1.0000002 3500.000 0.0000003 6000.000 0.0000004 4500.000 0.0000005 4000.000 0.0000006 2000.000 0.0000007 500.0000 0.0000008 0.000000 0.0000009 0.000000 0.5500000E-0110 500.0000 0.00000011 0.000000 -0.6500000E-0112 0.000000 -0.5500000E-0113 4000.000 0.00000014 2.000000 0.000000故最优解为x1=3,x2=0,x3=6,y1=0,y2=0,y3=0,最优值为1350。
哈工大运筹学实验报告实验实验一:货物运输问题的数学建模与求解实验目的:1.了解货物运输问题的数学建模方法;2.掌握货物运输问题的线性规划求解方法;3.学会使用运筹学软件求解货物运输问题。
实验原理:货物运输问题属于线性规划问题的一种,其目标是在满足供需平衡和运输容量限制的前提下,使运输成本最小化。
实验内容:1.问题描述:公司有m个供应点和n个需求点,其中每个供应点的供应量为si (i=1,2,…,m),每个需求点的需求量为dj (j=1,2,…,n)。
公司希望通过运输将货物从供应点送到需求点,各供应点到需求点的单位运输成本为aij (i=1,2,…,m; j=1,2,…,n)。
公司希望确定每个供应点与需求点之间的货物运输量xij,以及总运输成本C,使总运输成本最小。
2.数学建模:设xij表示从第i个供应点到第j个需求点的货物运输量,C表示总运输成本,则该问题的数学模型可以描述为:min C = ∑(i=1 to m) ∑(j=1 to n) aij * xijsubject to:∑(j=1 to n) xij = si, i=1,2,…,m∑(i=1 to m) xij = dj, j=1,2,…,nxij ≥ 0, i=1,2,…,m; j=1,2,…,n3.求解方法:利用运筹学软件求解上述线性规划问题,得到最优解。
实验步骤:1.在运筹学软件中新建一个线性规划模型;2.设定决策变量、目标函数和约束条件,并输入相应参数;3.运行求解算法,得到最优解。
实验结果:根据实验步骤,通过运筹学软件求解货物运输问题,得到最优解如下:供应点1到需求点1的运输量为x11=200;供应点1到需求点2的运输量为x12=150;供应点2到需求点1的运输量为x21=100;供应点2到需求点2的运输量为x22=250;总运输成本最小为C=900。
实验总结:通过本次实验,我了解了货物运输问题的数学建模方法,并掌握了线性规划求解的基本步骤。
一、实验背景运筹学是一门应用数学的分支,它运用数学模型和算法来解决各种优化问题。
随着现代科技的发展,运筹学在各个领域的应用越来越广泛,如生产管理、物流运输、资源分配等。
为了提高学生运用运筹学知识解决实际问题的能力,我们开展了运筹学实训实验。
二、实验目的1. 熟悉运筹学的基本概念和常用方法;2. 掌握线性规划、整数规划、运输问题、目标规划等运筹学模型;3. 学会运用计算机软件解决实际问题;4. 培养学生的团队合作精神和创新意识。
三、实验内容本次实验主要包括以下内容:1. 线性规划:以生产计划问题为例,建立数学模型,并运用Excel规划求解器求解最优解。
2. 整数规划:以人员排班问题为例,建立数学模型,并运用Lingo软件求解最优解。
3. 运输问题:以物流配送问题为例,建立数学模型,并运用Lingo软件求解最优解。
4. 目标规划:以投资组合问题为例,建立数学模型,并运用Lingo软件求解最优解。
四、实验步骤1. 线性规划实验(1)问题分析:某企业需要生产甲、乙两种产品,已知生产甲、乙两种产品所需的原料、劳动力及设备等资源消耗量,以及产品的售价和利润。
(2)模型建立:根据问题分析,建立线性规划模型,目标函数为最大化利润,约束条件为资源消耗量不超过限制。
(3)求解:运用Excel规划求解器求解最优解。
2. 整数规划实验(1)问题分析:某公司需要安排员工值班,要求每天至少有3名员工值班,且员工值班时间不能超过一周。
(2)模型建立:根据问题分析,建立整数规划模型,目标函数为最小化员工值班成本,约束条件为员工值班时间不超过限制。
(3)求解:运用Lingo软件求解最优解。
3. 运输问题实验(1)问题分析:某物流公司需要将货物从A、B两个仓库运送到C、D两个销售点,已知各仓库的货物量、各销售点的需求量以及运输成本。
(2)模型建立:根据问题分析,建立运输问题模型,目标函数为最小化运输成本,约束条件为各仓库的货物量不超过需求量。
一、实习概况1. 实习时间:20XX年X月至20XX年X月2. 实习地点:[实习单位名称]3. 实习目的:通过本次运筹学实训,加深对运筹学基本理论和方法的理解,提高解决实际问题的能力,培养团队协作精神。
二、实习内容1. 实训课程概述:本次实训主要围绕运筹学的核心内容展开,包括线性规划、整数规划、网络流、非线性规划、决策分析等。
2. 实训项目:(1)线性规划问题建模与求解(2)整数规划问题建模与求解(3)网络流问题建模与求解(4)非线性规划问题建模与求解(5)决策分析案例研究三、实训过程1. 线性规划问题建模与求解(1)问题描述:以某企业生产计划问题为例,建立线性规划模型,求解最优生产方案。
(2)模型建立:根据实际问题,确定决策变量、目标函数和约束条件。
(3)求解方法:运用单纯形法进行求解。
(4)结果分析:比较不同方案的成本和产量,得出最优生产方案。
2. 整数规划问题建模与求解(1)问题描述:以某企业投资组合优化问题为例,建立整数规划模型,求解最优投资方案。
(2)模型建立:根据实际问题,确定决策变量、目标函数和约束条件。
(3)求解方法:运用分支定界法进行求解。
(4)结果分析:分析不同投资组合的风险和收益,得出最优投资方案。
3. 网络流问题建模与求解(1)问题描述:以某物流公司运输调度问题为例,建立网络流模型,求解最优运输方案。
(2)模型建立:根据实际问题,确定决策变量、目标函数和约束条件。
(3)求解方法:运用最大流最小割定理进行求解。
(4)结果分析:分析不同运输路径的成本和时间,得出最优运输方案。
4. 非线性规划问题建模与求解(1)问题描述:以某工厂生产优化问题为例,建立非线性规划模型,求解最优生产方案。
(2)模型建立:根据实际问题,确定决策变量、目标函数和约束条件。
(3)求解方法:运用拉格朗日乘数法进行求解。
(4)结果分析:分析不同生产方案的成本和产量,得出最优生产方案。
5. 决策分析案例研究(1)问题描述:以某企业新产品研发项目为例,运用决策树法进行决策分析。
实验一:线性规划问题1、实验目的:①学习建立数学模型的方法,并懂得区别运筹学中不同分支的数学模型的特点。
②掌握利用计算机软件求解线性规划最优解的方法。
2、实验任务①结合已学过的理论知识,建立正确的数学模型;②应用运筹学软件求解数学模型的最优解③解读计算机运行结果,结合所学知识给出文字定性结论3、实验仪器设备:计算机4、实验步骤:(1)在主菜单中选择线性规划模型,在屏幕上就会出现线性规划页面,如图所示。
(2)在点击“新建”按钮以后,按软件的要求输入目标函数个数和约束条件个数,输入目标函数及约束条件的各变量的系数和b值,并选择好“≥”、“≤”或“=”号,如图所示。
(3)当约束条件输入完毕后,请点击“解决”按钮,屏幕上将显现线性规划问题的结果,如图所示。
例题一:例题二:例题三:例题四:例题五5、试验体会或心得运筹学是一门实用的学科,学习运筹学,结合生活实际运用运筹学,我们可以将资源最大化利用。
学习理论的目的就是为了解决实际问题。
线性规划的理论对我们的实际生活指导意义很大。
当我们遇到一个问题,需要认真考察该问题。
如果它适合线性规划的条件,那么我们就利用线性规划的理论解决该问题。
线性规划指的是在资源有限的条件下,为达到预期目标最优,而寻找资源消耗最少的方案。
其数学模型有目标函数和约束条件组成。
一个问题要满足一下条件时才能归结为线性规划的模型:⑴要求解的问题的目标能用效益指标度量大小,并能用线性函数描述目标的要求;⑵为达到这个目标存在很多种方案;⑶要到达的目标是在一定约束条件下实现的,这些条件可以用线性等式或者不等式描述。
所以,通过这次实验,不仅对运筹学的有关知识有了进一步的掌握,同时对在自己的计算机操作水准也有了很大的提高。
这次实验让我懂得了运筹学在电脑的应用,让我对运输与数学相结合的应用理解更深了。
实验二:整数规划与运输问题1、实验目的:①学习建立数学模型的方法,并懂得区别运筹学中不同分支的数学模型的特点。
哈工大运筹学实验报告-实验三
实验三
一、实验目的:
1)进一步熟悉Excel规划求解工具,掌握Excel求解0-1整数规划问题;
2)进一步熟悉Matlab软件,掌握Matlab求解0-1整数规划问题;
3)用Excel和Matlab求解公司选址0-1规划问题。
二、实验器材
1)PC机:20台。
2)Microsoft Excel软件(具备规划求解工具模块):20用户。
3)Matlab软件(具备优化工具箱):20用户。
三、实验原理:
公司选址属于0-1整数规划问题,通过对问题建立数学模型,根据Excel 自身特点把数学模型在电子表格中进行清晰的描述,再利用规划求解工具设定相应的约束条件,最终完成对问题的寻优过程,具体可参见1.2;在Matlab中,根据Matlab提供的0-1整数规划求解函数,将数学模型转换成0-1整数规划求解函数可传递的数值参数,最终实现对问题的寻优求解过程,具体可参见 2.2中bintprog函数描述和示例。
四、实验内容和步骤:
用Excel和Matlab完成下列公司选址问题。
某销售公司打算通过在武汉或长春设立分公司(也许在两个城市都设分公司)增加市场份额,管理层同时也计划在新设分公司的城市最多建一个配送中心,当然也可以不建配送中心。
经过计算,每种选择对公司收益的净现值列于下表的第四列、第五列中记录了每种选择所需的费用,总的预算费用不得超过20万元。
决策问题决策净现值所需资
18 12
1 是否在长春设x
1
10 6
2 是否在武汉设x
2
12 10
3 是否在长春建x
3
4 是否在武汉建x
8 4
4
问:如何决策才能使总的净现值最大?
建立模型:
设=0表示不建立,=1表示建立,i=1,2,3,4 用z表示预算费用总的净现值。
则目标函数maxz=18+10+12+8
先确立约束不等式:总的预算费用不得超过20万元;设立的分公司数目大于等于1;且建立配送中心数目一定要小于分公司数目。
列出约束不等式如下:
12+6+10+4≤20
--≤-1
-+≤0
- +≤0
=0,1
Excel求解过程
打开Excel,选择“Excel选项”通过“工具”菜单的“加载宏”选项打开“加载宏”对话框来添加“规划求解”。
将约束条件的系数矩阵输入Excel中,如下图所示,然后将目标函数的系数输入约束矩阵下方,最下方为最优解的值,输入“0”或不输入。
系数矩阵的右端一列为合计栏,点击合计栏中单元格并在其中输入“=sumproduct(”,用鼠标左键拖动合计栏所在行的系数,选定后输入“,”,然后拖拉选定最下方的空白行,输入“)”,输入“Enter”。
用此方法依次处理整个系数矩阵每一行和目标函数行,合计栏右端输入约束条件右端项,在合计栏和约束条件右端项之间可以输入“≧”符号,也可以不输入。
上述步骤完成后,在菜单栏点击“数据”菜单,选择最右端“规划求解”选项,弹出“规划求解参数”对话框,目标单元格选择目标函数系数所在行和合
计栏交叉处的单元格,选择求最大值,可变单元格选择解所在行。
点击“添加约束条件”按钮,单元格引用位置选择合计那一列,约束关系选择“≦”,约束值选择右端项系数所在列,点击确定。
在“选项”中勾选“采用线性模型”和“假定非负”,如果是用EXCEL2010操作,步骤与基本相同,个别界面会有些区别。
求得最优解和目标函数最小值如下
运算结果报告如下:
Matlab求解过程:
先在command window对建立模型中各个参数矩阵进行赋值,同一行数字用空格分开,换行时用分号分开,矩阵用“【】”表示,分别将目标函数系数f,系数矩阵A,右端项b输入,因matlab的标准0-1求解模型中目标函数为求最小值,因此输入f时要乘以一个负号。
输入一个命令完成后加分号,输入“Enter”,矩阵被储存并在workspace中显示出来。
最后调用0-1线性规划的函数x=bintprog(f,A,b);回车,即可得求解结果.将最优解代入目标函数,输入z=f’*x,然后求出-z即为目标函数最大值。
计算界面如下图所示:
最优解:
当在武汉和长春均设立分公司,两地都不建配送中心时取得最优解。
此时总的净现值最大为28万元。
Excel和matlab优劣性比较:
Excel模型直观明了,但是输入单元格较多,设置参数多,过程较复杂,而matlab有编程的意思,采用专门的操作语言,界面不够清晰明了,但是功能强大,输入快捷,运算迅速。
Excel可用于求解变量较少,较为简单的模型,用于日常使用,matlab则是比较专业的软件,适用于较为复杂的问题求解。