数学建模破圈法
2012新疆维吾尔自治区数据理论高级
![2012新疆维吾尔自治区数据理论高级](https://img.taocdn.com/s3/m/22beb07c7e21af45b207a80b.png)
1、我们可用“破圈法”求解带权连通无向图的一棵最小代价生成树。
所谓“破圈法”就是“任取一圈,去掉圈上权最大的边”,反复执行这一步骤,直到没有圈为止。
请给出用“破圈法”求解给定的带权连通无向图的一棵最小代价生成树的详细算法,并用程序实现你所给出的算法。
注:圈就是回路。
2、冒泡排序算法是把大的元素向上移(气泡的上浮),也可以把小的元素向下移(气泡的下沉)请给出上浮和下沉过程交替的冒泡排序算法。
48.有n个记录存储在带头结点的双向链表中,现用双向起泡排序法对其按上升序进行排序,请写出这种排序的算法。
(注:双向起泡排序即相邻两趟排序向相反方向起泡)3、编程实现单链表的就地逆置。
23.在数组 A[1..n]中有n个数据,试建立一个带有头结点的循环链表,头指针为h,要求链中数据从小到大排列,重复的数据在链中只保存一个.4、后序遍历最后访问根结点,即在递归算法中,根是压在栈底的。
采用后序非递归算法,栈中存放二叉树结点的指针,当访问到某结点时,栈中所有元素均为该结点的祖先。
本题要找p和q 的最近共同祖先结点r ,不失一般性,设p在q的左边。
后序遍历必然先遍历到结点p,栈中元素均为p的祖先。
将栈拷入另一辅助栈中。
再继续遍历到结点q时,将栈中元素从栈顶开始逐个到辅助栈中去匹配,第一个匹配(即相等)的元素就是结点p 和q的最近公共祖先。
typedef struct{BiTree t;int tag;//tag=0 表示结点的左子女已被访问,tag=1表示结点的右子女已被访问}stack;stack s[],s1[];//栈,容量够大BiTree Ancestor(BiTree ROOT,p,q,r)//求二叉树上结点p和q的最近的共同祖先结点r。
{top=0; bt=ROOT;while(bt!=null ||top>0){while(bt!=null && bt!=p && bt!=q) //结点入栈{s[++top].t=bt; s[top].tag=0; bt=bt->lchild;} //沿左分枝向下if(bt==p) //不失一般性,假定p在q的左侧,遇结点p时,栈中元素均为p的祖先结点 {for(i=1;i<=top;i++) s1[i]=s[i]; top1=top; }//将栈s的元素转入辅助栈s1 保存 if(bt==q) //找到q 结点。
数学建模模拟试题(一)
![数学建模模拟试题(一)](https://img.taocdn.com/s3/m/0d8c7e1714791711cc79179a.png)
数学建模模拟试题(一)一、填空题(每题5分,共20分)1. 若,,x z z y ∝∝则y 与x 的函数关系是 .2. 在超级市场的收银台有两条队伍可选择,队1有1m 个顾客,每人都买了1n 件商品,队2有2m 个顾客,每人都买了2n 件商品,假设每个人付款需p 秒,而扫描每件商品需t 秒,则加入较快队1的条件是 .3. 马尔萨斯与罗捷斯蒂克两个人口增长模型的主要区别是假设了 .4. 在研究猪的身长与体重关系时,我们通过与已知其相关性质的的弹性梁作 的方法建立了模型.二、分析判断题(每小题15分,满分30分)1. 要为一所大学编制全校性选修课程表,有哪些因素应予以考虑?试至少列出5种.2. 一起交通事故发生3个小时后,警方测得司机血液中酒精的含量是),ml /mg (100/56 又过两个小时,含量降为),ml /mg (100/40试判断,当事故发生时,司机是否违反了酒精含量的规定(不超过80/100)ml /mg (.(提示:不妨设开始时刻为)(,0t C t =表示t 时刻血液中酒精的浓度,则依平衡原理,在时间间隔],[t t t ∆+内酒精浓度的改变量为t t kC t C t t C ∆-=-∆+)()()(其中0>k 为比例常数,负号则表示了浓度随时间的推移是递减的.)三、计算题(每题25分,满分50分)1. 一个毛纺厂使用羊毛、兔毛和某种纤维生产甲、乙两种混纺毛料,生产一个单位产品甲需要的三种原料依次为3、2、8个单位,产值为580元;生产一个单位产品乙需要的三种原料依次为2、3、5个单位,产值为680元,三种原料在计划期内的供给量依次为90、30和80单位.试建立线性规划模型以求一个生产方案,使得总产值达到最大,并由此回答:(1) 最优生产方案是否具有可选择余地?若有请至少给出两个,否则说明理由. (2) 原材料的利用情况.2. 三个砖厂321,,A A A 向三个工地321,,B B B 供应红砖.各砖厂的供应量与各工地的需求量以及各砖厂调运红砖到各工地的单价见表.试安排调运方案,使总费用最小?数学建模模拟试题(一)参考答案一、填空题(每题5分,共20分)1. k kx y ,=是比例常数;2. )()(2211t n p m t n p m +<+;3. 增长率是常数还是人口的递减函数;4. 类比.二、分析判断题(每小题15分,满分30分)1. 问题涉及到时间、地点和人员三大因素,故应该考虑到的因素至少有以下几个: (1)教师:是否连续上课,对时间的要求,对多媒体的要求和课程种类的限制等; (2)学生:是否连续上课,专业课课时与公共基础课是否冲突,选修人数等; (3)教室:教室的数量,教室的容纳量,是否具备必要的多媒体等条件;(每个因素3分) 2. 设)(t C 为t 时刻血液中酒精的浓度,则浓度递减率的模型应为,/kC C -=其通解是,e)0()(ktC t C -=而)0(C 就是所求量.由题设可知,40)5(,56)3(==C C 故有 56e )0(3=-kC 和 ,40e )0(5=-k C由此解得.94e 56)0(17.040/56e 32≈=⇒≈⇒=k k C k可见在事故发生时,司机血液中酒精的浓度已经超出了规定.三、计算题(每题25分,满分50分)1. 设21,x x 表示甲、乙两种产品的产量,则有 原材料限制条件: ,902321≤+x x ,303221≤+x x ,805821≤+x x 目标函数满足 ,680580m ax 21x x z += 合在一起便是所求线性规划模型:,680580m ax 21x x z +=⎪⎪⎩⎪⎪⎨⎧=≥≤+≤+≤+.2,1,0,8058,3032,9023212121j x x x x x x x j (1)使用图解法易得其最优生产方案只有一组(这是因为所有约束条件所在直线的斜率与目标函数直线的斜率均不相等),从而最优方案没有可选择余地.计算知:最优解为 ,)740,745(T*=X 目标值为 753300max =z (万元).(2)利用图解法求解中只用到了后两个约束条件,故羊毛有剩余量,将解代入可检验而知羊毛有7259单位的剩余量. 2. 本问题是一个产销平衡的运输问题,可以利用表上作业法直接求解,其次对方案进行最优性检验:λ11 = 10-4+6-7=5 > 0, λ12 = 6-4+6-5=3 > 0, λ31 = 8-7+5-3=3 > 0, λ33 = 9-3+5-6=5 > 0,故上述方案已是最优方案,即总运费最低的调运方案为:21503310223021160231701,,,,B A B A B A B A B A −→−−→−−→−−→−−→− 总费用为 2460150310630516071704=⨯+⨯+⨯+⨯+⨯(百元).数学建模模拟试题(二)一、填空题(每题5分,共20分)1. 设S 表示挣的钱数,x 表示花的钱数,则“钱越多花的也就越多”的数学模型可以简单表示为 .2. 假设,,21x C Y Y C S ∝∝则S 与x 的数学关系式为 ,其中21,C C 是常数.3. 在建立人口增长问题的罗捷斯蒂克模型时,假设人口增长率r 是人口数量)(t x 的递减函数,若最大人口数量记作,m x 为简化模型,采用的递减函数是 .4. 一次晚会花掉100元用于食品和饮料,其中食品至少要花掉40%,饮料起码要花30元,用f 和d 列出花在食品和饮料上的费用的数学模型是 .二、分析判断题(每题15分,满分30分)1. 作为经济模型的一部分,若产量的变化率与生产量和需求量之差成正比,且需求量中一部分是常数,另一部分与产量成正比,那么相应的微分方程模型是什么?.2. 考虑在一片面积为定数的草地上进行牛的养殖问题.为了获得最大经济效益,指出建立该问题数学模型应该考虑的相关因素至少5个.三、计算题(每题25分,满分50分)1. 设某小型工厂使用A ,B 两种原料生产甲、乙两种产品,按工艺,生产每件产品甲需要原料A ,B 依次为6、5个单位,生产每件产品乙需要原料A ,B 依次为2、10个单位,两种原料的供给量依次为18和40个单位,两种产品创造的产值分别为1万元和2万元,试建立其生产规划模型,并回答以下问题:(1)产值最大的生产方案是什么?最大产值是多少?方案是否有可选择余地?若有请至少再给出一个.(2)依你所给最优方案,说明原料的利用情况.2. 如图一是某村镇9个自然屯(用91,,v v 表示)间可架设有线电视线路的最短距离示意图,边旁数字为距离(单位:km ).若每km 的架设费用是定数20元/m ,试协助有线电视网络公司设计一个既使得各村屯都能看到有线电视又使架设费用最低的路线,并求出最小架设费用.数学建模模拟试题(二)参考答案一、填空题(每题5分,共20分) 1. 0,>=k kx S ;2. kx x C C k k S ==2121,其中2121C C k k k =;3. )1()(mx xr x r -=; 4. 30,4.0)/(,100≥≥+≤+d d f f f d .二、分析判断题(每题15分,满分30分)1. 令x 表示产量,y 表示需求量,则有)(d d x y k tx-=以及,bx a y +=其中k b a ,,均为常数.将后一式代入前一式即可得到d cx tx x b a k t x +=⇒-+=d d ))1((d d2. 饲料来源、公羊与母羊的比例、饲料冬储、繁殖问题、羊的养殖年限、出售时机、v 1 v 2 v 3 v 4 v 6 v 5 v 7v 9 v 8 3 4 6 2 5 4 11 3 6 4 2 8 7 5图一羊制品及其深加工等.三、计算题(每题25分,满分50分)1. 设生产甲、乙两种产品的数量依次为,,21x x z 表示总产值,则有模型如下:212m ax x x z +=⎪⎩⎪⎨⎧=≥≤+≤+.2,1,0401051826..2121j x x x x x t s j使用图解法易得其产值最大的生产方案将有无穷多组(这是因为第二个约束条件所在直线的斜率与目标函数直线的斜率相等),其中的两个方案可以选为该直线段上的两个端点:,)4,0(,)3,2(T 2T1==XX最大产值均为 8=z (万元)(2)按照上面的第一个解,原材料全部充分利用;而按照第二个解,原材料A 将有10个单位的剩余量,原材料B 将被充分利用(但产品甲不生产).2. 由题意可知,只需求出该网络图的最小树即可.利用破圈法容易得树形图(图二):故得架设路线为:总架线长度为27km ,故总架设费用为 5420100027=⨯⨯(万元)图二 v 1 v 2 v 3 v 4 v 6 v 5 v 8 v 7 v 9 4 32 43 42 5。
破圈法
![破圈法](https://img.taocdn.com/s3/m/12eb3225cfc789eb172dc8fe.png)
第二步 :破圈
比较由 i到 j所有路径的路长 (即路径上所需时间之和),把路长较短 , 且流进结点 J的一条或几条箭线断开 (或去掉),留下路长最长的路径 , 即破掉了由这向几条路径构成的圈.如找圈图中, 路径①A/3→② C/4→④的路长为3+ 4=7; 路径① B/4→③ D/6→④路长的为4+ 6=10. 所以 应该断开 (或去掉) 箭线 c ,而留下路径① B/4→③ D/6→ ④.这就破掉了由这两条路径构成的圈
第三出能从始点结点,顺着箭线方 向,到达终点结点的所有路径 ,这些路径都是关键路 线.关键路线上的工序都是关键工序.我们从破 圈图或 总结果 图中都 可以明显地看到图1 的关键路线 ① B/4→③ D/6→ ④ F/8 →⑤ H/7→⑦
LOGO
Thank you
破圈图 5 表示将箭线 C 断开,结果图 6 表示去掉了箭 线 C .如果出现两条或几条路长相同的路径 ,则保留不 动.比较完流进结点 j 的所有路径之后 ,再用同样的办法 考察 j 以后的结点,一直到终点结点为止
总破圈图是将箭式网络图 1 从始点结点开始,顺着箭 线方向,按结点编号由小到大的顺序 ,完成破圈
破圈法
LOGO
介绍
破法圈:是网络计划技术中,用来确定关 方法之一
特点:方法简单而又直观 评价:是一种比较贪心的算法
键路线的
如何正确使用破圈法 当一张只有一个始点结点,且只有一个终点结 点的网络图画好以后 ,按照给结点编号的原则和 方法,首先给各结点编号,形成一个完整的网络 图,如箭式网络图 1.这时就可以用破圈法找关 键路线了
方法步骤
第一步 :找圈. 第二步 :破圈. 第三步:确定关键路线.
第一步 :找圈
一般都是从零点结点开始,顺着箭线方向,按结点编号由小到 大的顺序 ,逐个考察每一个结点.首先找出结点编号较大 (和始点结 点相 比),且又有两条或两条 以上的箭线 流进 的结点 ,设为结点 Y (如箭式网络图 1 中的结点④).然后,从结点 i逆着流进 j的箭线往回 走 ,一定可以找到发出两条或几条箭线的结点 ,设为 i (如箭式网络 图 1 中的结点①). 由结点 i到结点 j必定有两条或两条以上的路 径.也就是说 ,结点 i、j 之间必定 出现一个或几个由结点和箭线形 成的圈 (如图 )
图论模型及其解答
![图论模型及其解答](https://img.taocdn.com/s3/m/5a2a9413a76e58fafab003da.png)
各种图论模型及其解答摘要:本文用另一种思路重新组织《图论及其应用》相关知识。
首先,用通俗化语言阐述了如何对事物间联系的问题进行图论建模;接着从现实例子出发,给出各种典型图论模型,每种图论模型对应于图论一个重要内容;再者,介绍相关知识对上述提到的图论模型涉及的问题进行解答;最后,补充一些图论其他知识,包括图论分支、易混概念。
符号约定:Q(Question)表示对问题描述,M(Modeling)表示数学建模过程,A(Answer)表示原问题转化为何种图论问题。
一、引言图论是研究点、线间关系的一门学科,属于应用数学的一部分。
现实生活中,凡是涉及到事物间的关系,都可以抽象为图论模型。
点表示事物,连线表示事物间的联系。
整个求解过程如下:原问题——>图论建模——>运用图论相关理论求解——>转化为原问题的解整个过程关键在于图论建模,所谓图论建模,就是明确点表示什么,连线表示什么,原问题转化为图论中的什么问题。
存在以下两种情况:①若事物间联系是可逆的(比如双行道,朋友),则抽象成无向图②若事物间联系是不可逆的(比如单行道,状态转化不可逆),则抽象成有向图如果需要进一步刻画事物间的联系(比如城市间的距离),就给连线赋一个权值,从而抽象成赋值图。
综上,根据实际问题,可建模成下列图论模型的一种:无向赋权图、有向赋权图、无向非赋权图、有向非赋权图。
例1.宴会定理:任何一宴会中,一定存在两个人有相同的数量朋友M:点表示人,连线表示当且仅当该两个人是朋友A:问题转化为任何一个图一定存在两个顶点的度相等二、图论模型接下来介绍若干典型的图论模型,每种模型几乎对应于图论的一个重要内容,这些内容将在第三章进行讨论,也就给出了这些模型的解答思路。
2.1 偶图模型凡涉及两类事物间的联系(即只考虑两类事物间的联系,而不考虑同类事物间的联系),均可抽象成偶图模型。
作图时,将两类事物分成两行或者两列。
这类模型通常被包含在后续的模型中,但因许多现实问题可抽象成该模型,所以单列出来讨论。
数学建模常用的十种解题方法
![数学建模常用的十种解题方法](https://img.taocdn.com/s3/m/ab05e446f11dc281e53a580216fc700abb6852a2.png)
数学建模常用的十种解题方法 摘要当需要从定量的角度分析和研究一个实际问题时,人们就要在深入调查研究、了解对象信息、作出简化假设、分析内在规律等工作的基础上,用数学的符号和语言,把它表述为数学式子,也就是数学模型,然后用通过计算得到的模型结果来解释实际问题,并接受实际的检验。
这个建立数学模型的全过程就称为数学建模。
数学建模的十种常用方法有蒙特卡罗算法;数据拟合、参数估计、插值等数据处理算法;解决线性规划、整数规划、多元规划、二次规划等规划类问题的数学规划算法;图论算法;动态规划、回溯搜索、分治算法、分支定界等计算机算法;最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法;网格算法和穷举法;一些连续离散化方法;数值分析算法;图象处理算法。
关键词:数学建模;蒙特卡罗算法;数据处理算法;数学规划算法;图论算法 一、蒙特卡罗算法蒙特卡罗算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法。
在工程、通讯、金融等技术问题中, 实验数据很难获取, 或实验数据的获取需耗费很多的人力、物力, 对此, 用计算机随机模拟就是最简单、经济、实用的方法; 此外, 对一些复杂的计算问题, 如非线性议程组求解、最优化、积分微分方程及一些偏微分方程的解⑿, 蒙特卡罗方法也是非常有效的。
一般情况下, 蒙特卜罗算法在二重积分中用均匀随机数计算积分比较简单, 但精度不太理想。
通过方差分析, 论证了利用有利随机数, 可以使积分计算的精度达到最优。
本文给出算例, 并用MA TA LA B 实现。
1蒙特卡罗计算重积分的最简算法-------均匀随机数法二重积分的蒙特卡罗方法(均匀随机数)实际计算中常常要遇到如的()dxdy y x f D ⎰⎰,二重积分, 也常常发现许多时候被积函数的原函数很难求出, 或者原函数根本就不是初等函数, 对于这样的重积分, 可以设计一种蒙特卡罗的方法计算。
数学建模十大常用算法介绍
![数学建模十大常用算法介绍](https://img.taocdn.com/s3/m/f5feefe343323968011c92de.png)
结为一组不等式作为约束条件、几个函数表达式作为目标函数的问题, 遇到这类问题,求解就是关键了,比如 98 年 B 题,用很多不等式完 全可以把问题刻画清楚,因此列举出规划后用 Lindo 、 Lingo 等软 件来进行解决比较方便,所以还需要熟悉这两个软件。
遗传算法这三类算法发展很快。近几年的赛题越来越复杂,很多问题 没有什么很好的模型可以借鉴,于是这三类算法很多时候可以派上用 场,比如: 97 年 A 题的模拟退火算法, 00 年 B 题的神经网络分 类算法, 01 年 B 题这种难题也可以使用神经网络,还有美国竞赛 89 年 A 题也和 BP 算法有关系,当时是 86 年刚提出 BP 算法, 89 年就考了,说明赛题可能是当今前沿科技的抽象体现。 03 年 B 题伽 马刀问题也是目前研究的课题,目前算法最佳的是遗传算法。
比如 97 年 A 题、 99 年 B 题都可以用网格法搜索,这种方法 最好在运算速度较快的计算机中进行,还有要用高级语言来做,最好 不要用 MATLAB 做网格,否则会算很久的。
穷举法大家都熟悉,就不说了。
8. 一些连续数据离散化方法 大部分物理问题的编程解决,都和这种方法有一定的联系。物
8. 一些连续数据离散化方法 很多问题都是实际来的,数据可以是连续的,而计算机只能处理离 散的数据,因此将其离散化后进行差分代替微分、求和代替积分等 思想是非常重要的。
9. 数值分析算法 如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的 算法比如方程组 求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。
10. 图象处理算法 赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会 需要图片来说明问题,这些图形如何展示以及如何处理就是需要解 决的问题,通常使用 MATLAB 进行处理。
数学建模选址问题
![数学建模选址问题](https://img.taocdn.com/s3/m/9b66cbb8f121dd36a32d824c.png)
摘要目前,社区的优化管理和最佳服务已经成为一种趋势,并且为城市的发展作出了一定的贡献。
本文针对在社区中选址问题及巡视路线问题,分别建立了多目标决策模型、约束最优化线路模型,并分别提供了选址社区和巡视路线。
对于问题一,我们建立了单目标优化模型,考虑到各社区居民到收费站点的平均距离最小,我们使用floyd 算法并通过matlab 编程,算出任意两个社区之间的最短路径,并以此作为工具,使用0-1变量列出了目标函数。
在本题中,我们根据收费站数、超额覆盖等确定了约束条件,以保证收费站覆盖每个社区,同时保证居民与最近煤气站之间的平均距离最小,最终利用lingo 软件求得收费站建在M、Q、W三个社区。
对于问题二,同样是单目标优化模型,较之问题一不同的是,问题二不需要考虑人口问题,但需要确定选址的个数。
接下来的工作分了两步,第一步,我们通过0-1变量列出目标函数,以超额覆盖等确定约束条件,用lingo 软件编程求出最小派出所站点的个数;第二步,我们利用第一步中求出的派出所个数作为新的约束条件,建立使总距离最小的优化模型,最终利用lingo 软件求得三个派出所分别建在W、Q、K社区。
对于问题三,我们建立了约束最优化线路模型,根据floyd 算法求得的任意两个社区之间的最短路径,建立了以w 点为树根的最短路径生成树,并据此对各点的集中区域进行划分,再利用破圈法得到最短回路。
在本题中,我们初定了两种方案,并引入均衡度α对两种方案进行比较,最终采用了方案二。
最后,我们用matlab编程求解方案二中各组的巡视路线为113百米,123百米,117百米,均衡度α=8.13%。
具体路线见关键词:最短路径hamilton圈最优化floyd算法在社区中缴费站的选址对于居民快速缴费和充分的利用公共设施的资源有很重要的指导意义。
某城市共有24个社区,各社区的人口(单位:千人)如下:(注:横线上的数据表示相邻社区之间的距离,单位:百米)本题要解决的问题如下:(1)方便社区居民缴纳煤气费,煤气公司现拟建三个煤气缴费站,问煤气缴费站为了怎样选址才能使得居民与最近煤气站之间的平均距离最小。
破圈法
![破圈法](https://img.taocdn.com/s3/m/02fac33eb90d6c85ec3ac6fe.png)
破圈法,是网络计划技术中,用来确定关键路线的方法之一,方法简单而又直观.那么,应该如何正确使用破圈法呢? 当一张只有一个始点结点,且只有一个终点结点的网络图画好以后,按照给结点编号的原则和方法,首先给各结点编号,形成一个完整的网络图,如箭式网络图1.这时就可以用破圈法找关键路线了,其方法是:第一步:找圈.一般都是从零点结点开始,顺着箭线方向,按结点编号由小到大的顺序,逐个考察每一个结点.首先找出结点编号较大(和始点结点相比),且又有两条或两条以上的箭线流进的结点,设为结点Y (如箭式网络图1 中的结点④).然后,从结点i逆着流进j的箭线往回走,一定可以找到发出两条或几条箭线的结点,设为i (如箭式网络图1 中的结点①).由结点i到结点j必定有两条或两条以上的路径.也就是说,结点i、j 之间必定出现一个或几个由结点和箭线形成的圈(如图4).第二步:破圈.比较由i到j所有路径的路长(即路径上所需时间之和),把路长较短,且流进结点J的一条或几条箭线断开(或去掉),留下路长最长的路径,即破掉了由这向几条路径构成的圈.如找圈图中,路径①A/3→②C/4→④的路长为3+ 4=7;路径①B/4→③D/6→④路长的为4+ 6=10.所以应该断开(或去掉) 箭线 c ,而留下路径①B/4→③D/6→④.这就破掉了由这两条路径构成的圈6).破圈图5 表示将箭线C 断开,结果图6 表示去掉了箭线C .如果出现两条或几条路长相同的路径,则保留不动.比较完流进结点j 的所有路径之后,再用同样的办法考察j 以后的结点,一直到终点结点为止总破圈图是将箭式网络图1 从始点结点开始,顺着箭线方向,按结点编号由小到大的顺序,完成破圈工作并标出所有应该断开箭线的完整图形.总结果图是去掉所有断开箭线的完整图形.在实际工作中,如果不是要求画出去掉所有应该断开箭线的完整图形,那么,只画出总破圈图的图形就可以了.第三步:确定关键路线.破圈过程结束以后,找出能从始点结点,顺着箭线方向,到达终点结点的所有路径,这些路径都是关键路线.关键路线上的工序都是关键工序.我们从总破圈图或总结果图中都可以明显地看到图1 的关键路线是:① B/4→③ D/6→④ F/8 →⑤ H/7→⑦。
数学建模选址问题完整版
![数学建模选址问题完整版](https://img.taocdn.com/s3/m/89a52fcc7fd5360cba1adbc7.png)
数学建模选址问题 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】选址问题摘要目前,社区的优化管理和最佳服务已经成为一种趋势,并且为城市的发展作出了一定的贡献。
本文针对在社区中选址问题及巡视路线问题,分别建立了多目标决策模型、约束最优化线路模型,并分别提供了选址社区和巡视路线。
对于问题一,我们建立了单目标优化模型,考虑到各社区居民到收费站点的平均距离最小,我们使用floyd 算法并通过matlab 编程,算出任意两个社区之间的最短路径,并以此作为工具,使用0-1变量列出了目标函数。
在本题中,我们根据收费站数、超额覆盖等确定了约束条件,以保证收费站覆盖每个社区,同时保证居民与最近煤气站之间的平均距离最小,最终利用lingo 软件求得收费站建在M、Q、W三个社区。
对于问题二,同样是单目标优化模型,较之问题一不同的是,问题二不需要考虑人口问题,但需要确定选址的个数。
接下来的工作分了两步,第一步,我们通过0-1变量列出目标函数,以超额覆盖等确定约束条件,用lingo 软件编程求出最小派出所站点的个数;第二步,我们利用第一步中求出的派出所个数作为新的约束条件,建立使总距离最小的优化模型,最终利用lingo 软件求得三个派出所分别建在W、Q、K社区。
对于问题三,我们建立了约束最优化线路模型,根据floyd 算法求得的任意两个社区之间的最短路径,建立了以w 点为树根的最短路径生成树,并据此对各点的集中区域进行划分,再利用破圈法得到最短回路。
在本题中,我们初定了两种方案,并引入均衡度α对两种方案进行比较,最终采用了方案二。
最后,我们用matlab编程求解方案二中各组的巡视路线为113百米,123百米,117百米,均衡度α=%。
具体路线见关键词:最短路径 hamilton圈最优化 floyd算法1问题重述在社区中缴费站的选址对于居民快速缴费和充分的利用公共设施的资源有很重要的指导意义。
数学建模十大经典算法(__数学建模必备资料)
![数学建模十大经典算法(__数学建模必备资料)](https://img.taocdn.com/s3/m/3452b36b9b6648d7c1c74697.png)
n
其中
p( x ; )是来自 X 的样本 X , X
i 1 i
1
2
,
X n 的联合分布律。
若 L( ) L( x1 , x2 ,
ˆ) max L( x , x , , xn ; 1 2
, xn ; )
ˆ( x , x , 则称 1 2
ˆ( X , X , , xn ) 为 的最大似然估计值,称 1 2
2
10 12.9
20 16.3
30 20.1
40 26.8
程序(Mathematica) : data={{3,2.4},{10,12.9},{20,16.3},{30,20.1},{40,26.8}}; a1=Fit[data,{1,x,x^2,x^3},x] Show[ListPlot[data,Filling->Axis],Plot[{a1},{x,0,60}]] 结果: -3.68428+2.38529 x-0.0934637 x2+0.00132433 x3
图论
赛题发展的特点:
1.对选手的计算机能力提出了更高的要求:赛题的解决依赖计算机,题目的数据较多,手工 计算不能完成,如 03B,某些问题需要使用计算机软件,01A。问题的数据读取需要计算机 技术,如 00A(大数据) ,01A(图象数据,图象处理的方法获得) ,04A(数据库数据,数 据库方法,统计软件包) 。计算机模拟和以算法形式给出最终结果。 2.赛题的开放性增大 解法的多样性, 一道赛题可用多种解法。 开放性还表现在对模型假设和 对数据处理上。 3.试题向大规模数据处理方向发展 4.求解算法和各类现代算法的融合 从历年竞赛题来看,常用的方法: 线性规划 整数规划 非线性规划 图论方法 拟合方法 插值方法
数学建模运筹学模型(一)汇总
![数学建模运筹学模型(一)汇总](https://img.taocdn.com/s3/m/da7eaaf8162ded630b1c59eef8c75fbfc77d949d.png)
数学建模运筹学模型(⼀)汇总运筹学模型(⼀)本章重点:线性规划基础模型、⽬标规划模型、运输模型及其应⽤、图论模型、最⼩树问题、最短路问题复习要求:1. 进⼀步理解基本建模过程,掌握类⽐法、图⽰法以及问题分析、合理假设的内涵.2. 进⼀步理解数学模型的作⽤与特点.本章复习重点是线性规划基础模型、运输问题模型和⽬标规划模型. 具体说来,要求⼤家会建⽴简单的线性规划模型,把实际问题转化为线性规划模型的⽅法要掌握,当然⽐较简单. 运输问题模型主要要求善于将⾮线性规划模型转化为运输规化模型,这种转化后求解相当简单. 你⾄少把⼀个很实际的问题转化为⽤表格形式写出的模型,⾄于求解是另外⼀回事,⼀般不要求. ⽬标模型⼀般是⽐较简单的线性规模模型在提出新的要求之后转化为⽬标规划模型. 另外,关于图论模型的问题涉及到最短路问题,具体说来⽤双标号法来求解⼀个最短路模型. 这之前恐怕要善于将⼀个实际问题转化为图论模型. 还有⼀个最⼩数的问题,该如何把⼀个⽹络中的最⼩数找到. 另外在个别场合可能会涉及⼀笔划问题.1. 营养配餐问题的数学模型m i Z n =C 1x 1+C 2x + C n x na 11x 1+a 12x 2+ +a 1n x n ≥b 1, a 21x 1+a 22x 2+ +a 2n x n ≥b 2, s ta x +a x + +a x ≥b , m 22mn n m m 11x j ≥0(j =1, 2, , n或更简洁地表为m i Z n =∑C x jj =1n jn ∑a ij x j ≥b i j =1s tx ≥0(i =1, 2, , m j j =1, 2, , n其中的常数C j 表⽰第j 种⾷品的市场价格,a ij 表⽰第j 种⾷品含第i 种营养的数量,b i 表⽰⼈或动物对第i 种营养的最低需求量.2. 合理配料问题的数学模型有m 种资源B 1,B 2,…,B m ,可⽤于⽣产n 种代号为A 1,A 2,…,A n 的产品. 单位产品A j 需⽤资源B i 的数量为a ij ,获利为C j 单位,第i 种资源可供给总量为b i 个单位. 问如何安排⽣产,使总利润达到最⼤?设⽣产第j 种产品x j 个单位(j =1,2,…,n ),则有m a Z x =C 1x 1+C 2x 2+ +C n x na 11x 1+a 12x 2+ +a 1n x n ≤b 1, a 21x 1+a 22x 2+ +a 2n x n ≤b l , s ta x +a x + +a x ≤b , m 22mn n m m 11x j ≥0(j =1, 2, , n或更简单地写为m a z x =∑Cj =1n j x jn ∑a ij x j ≤b i j =1 s t i =1, 2, , m x ≥0 j =1, 2, , n j3. 运输问题模型运输问题也是⼀种线性规划问题,只是决策变量设置为双下标变量. 假如问题具有m 个产地和n 个销地,第i 个产地⽤A i 表⽰,其产量为a i (i =1,2,…,m ),第j 个销地⽤B j 表⽰,其销量为b j (j =1,2,…,n ),从A i 运往B j 的运价为c ij ,⽽写成为∑a i =1m i =∑b j =1n j 表⽰产销平衡. 那么产销平衡运输问题的⼀般模型可以min Z =∑∑c ij x iji =1j =1m nn ∑x ij =a i j =1m s t ∑x ij =b j i =1i =1, 2, , m x ij ≥0 j =1, 2, , n4. ⽬标规划模型某⼯⼚⽣产代号为Ⅰ、Ⅱ的两种产品,这两种产品都要经甲、⼄两个车间加⼯,并经检验与销售两部门处理. 已知甲、⼄两车间每⽉可⽤⽣产⼯时分别为120⼩时和150⼩时,每⼩时费⽤分别为80元和20元,其它数据如下表表4-1⼯⼚领导希望给出⼀个可⾏性⽣产⽅案,使⽣产销售及检验等⽅⾯都能达标.问题分析与模型假设经与⼯⼚总经理交谈,确定下列⼏条:p 1:检验和销售费每⽉不超过4600元;p 2:每⽉售出产品I 不少于50件;p 3:两车间的⽣产⼯时充分利⽤(重要性权系数按两车间每⼩时费⽤⽐确定);p 4:甲车间加班不超过20⼩时;p 5:每⽉售出产品Ⅱ不少于80件;p 6:两车间加班总时数要有控制(对权系数分配参照第三优先级).模型建⽴设x 1,x 2分别为产品Ⅰ和Ⅱ的⽉产量,先建⽴⼀般约束条件组,依题设50x 1+30x 2≤4600x 1≥50 售出量x 2≥80 2x 1+x 2≤120 两车间总⼯时x 1+3x 2≤150+ 设d 1表检验销售费偏差,则希望d 1达最⼩,有p 1d 1+, 相应的⽬标约束为 5x 1+30x 2+d 1--d 1+ = 4600; --达最⼩,有p 2d 2, 相应的⽬标约束 d 2表产品I 售量偏差,则希望d 2-+x 1+d 2-d 2=50,以d 3、d 4表两车间⽣产⼯时偏差,则由于充分利⽤,故希望d 320=4:1,有--p 3(4d 3+d 4 . 相应的⽬标约束应为 --达最⼩,考虑到费⽤⽐例为80:, d 4-+-+=150, -d 42x 1+x 2+d 3-d 3=120和x 1+3x 2+d 4以d 5表甲车间加班偏差,则有+-+d 3+d 5-d 5=20, p 4d 5+, 相应⽬标约束为以d 6表产品Ⅱ售量偏差,则希望d 6达最⼩,有相应约束为-+x 2+d 6-d 6=80.++++表⽰,考虑到权系数,有p6(4d 3+d 4, 其⽬标约束由于利⽤超⽣+d 4- 最后优先级p 6可利⽤d 3产⼯时,已在⼯时限制中体现,于是得到该问题的⽬标规划模型为---+-++m i z n =p 1d 1++p 2d 2+p 3(4d 3+d 4 +p 4d 5+p 5d 6+p 6(4d 3+d 4 ?50x 1+30x 2+d 1--d 1+?-+x 1+d 2-d 2??-+2x +x +d -d 1233??-+s ?t ??x 1+3x 2+d 4-d 4?+-+d +d -d 355??x 2+d 6--d 6+?-+??x 1, x 2≥0, d l , d l≥0=4600=50=120=150=20=80(l =1, 2, , 65. 最⼩树问题⼀个图中若有⼏个顶点及其边的交替序列形成闭回路,我们就说这个图有圈;若图中所有连顶点间都有边相接,就称该图是连通的;若两个顶点间有不⽌⼀条边连接,则称该图具有多重边. ⼀个图被称为是树意味着该图是连通的⽆圈的简单图. .在具有相同顶点的树中,总赋权数最⼩的树称为最⼩树.最⼩树的求法有两种,⼀种称为“避圈法”,⼀种是“破圈法”,两法各具优缺点,它们具有共同的特征——去掉图中的圈并且每次都是去掉圈中边权较⼤的边.6. 最短路问题的数学模型最短路问题⼀般描述如下:在⼀个图(或者说⽹络)中,给定⼀个始点v s 和⼀个终点v t ,求v s 到v t 的⼀条路,使路长最短(即路的各边权数之和最⼩).狄克斯屈(E.D.Dijkstra )双标号法该法亦称双标号法,适⽤于所有权数均为⾮负(即⼀切w ij ≥0 w ij 表⽰顶点v i 与v j 的边的权数)的⽹络,能够求出⽹络的任⼀点v s 到其它各点的最短路,为⽬前求这类⽹络最短路的最好算法.该法在施⾏中,对每⼀个点v j 都要赋予⼀个标号,并分为固定标号P (v j )和临时标号T (v j )两种,其含义如下:P (v j )——从始点v s 到v j 的最短路长;T (v j )——从始点v s 到v j 的最短路长上界.⼀个点v j 的标号只能是上述两种标号之⼀. 若为T 标号,则需视情况修改,⽽⼀旦成为P 标号,就固定不变了.开始先给始点v s 标上P 标号0,然后检查点v s ,对其⼀切关联边(v s ,vj )的终点v j ,给出v j 的T 标号w ij ;再在⽹络的已有T 标号中选取最⼩者,把它改为P 标号. 以后每次都检查刚得到P 标号那点,按⼀定规则修改其⼀切关联边终点的T 标号,再在⽹络的所有T 标号中选取最⼩者并把它改为P 标号. 这样,每次都把⼀个T 标号点改为P 标号点,因为⽹络中总共有n 个结点,故最多只需n -1次就能把终点v t 改为P 标号. 这意味着已求得了v s 到v t 的最短路.狄克斯屈标号法的计算步骤如下:1°令S ={v s }为固定标号点集,=V \{v s }为临时标号点集,再令P (v i =0,v t ∈S ; 2°检查点v i ,对其⼀切关联边(v i , vj )的终点v j∈,计算并令 min{T (v j , P (v i +w ij }?T (v j3°从⼀切v j∈中选取并令 min{T (v j }=T (v r ?T (v r 选取相应的弧(v i , vr ). 再令 S {v r }?S , \{v r }?=?,则停⽌,P (v j 即v s 到v j 的最短路长,特别P (v t 即v s 到v t 的最短路长,⽽已选出 4°若的弧即给出v s 到各点的最短路;否则令v r ?v i ,返2°. 注意:若只要求v s 到某⼀点v t 的最短路,⽽没要求v s 到其他各点的最短路,则上述步骤4°可改为 4°若r = t 则结束,P (v r 即为所求最短路长;否则令v r ?v i ,返2°.。
破圈法解扫雪问题
![破圈法解扫雪问题](https://img.taocdn.com/s3/m/2bf4a011bb68a98271fefa21.png)
破圈法解扫雪问题作者:陈兴婉来源:《中国·东盟博览》2013年第05期【摘要】扫雪问题最优路径的选择是现实工作中经常遇到的问题,最优的路径可以节省资源和减少重复路线,对此提出以下模型寻找最优路径。
为了寻找扫雪车有效的作业路径,使得扫雪车的空驾路程最小,首先把地图分为南、北两个工作量基本相等的区域,分别由两台扫雪车负责,从而把问题转化为单车双车道问题。
然后利用破圈法找出两工作区的生成树,把不属于生成树的边作为新的树枝嫁接到生成树上,构造出两棵伪树(见附录二)。
在此基础上,即把寻找有向图欧拉回路的问题简化为根树的深度优先遍历问题,进而把遍历序列作为扫雪车的行驶路径。
模型结论为:北工作区的工作量为124.45英里,南工作区的工作量为121.15英里,扫雪车的空驾距离为0,达到有效工作的目的.【关键词】欧拉回路;破圈法文章编号:1673-0380(2013)05-0073-02一、问题重述地图中实线表示马里兰州(Maryland)威克米克市(Wicomico)清除积雪区域双行的道路,虚线是州高速公路;雪后,两辆扫雪车从地图*号标出的两点的每一地点以西约6.44(4 mile)处出发清扫道路上的积雪。
试为两车找出有效的路径。
扫雪车可以通过高速公路进出市内道路。
假定扫雪过程中车子不会损坏或停止,并且道路交叉处不需要附加扫雪程。
二、问题分析把道路的交点作为顶点集V,道路作为边集E,把所给地图定义为有向图,利用图论的知识进行分析,有向图D是一个欧拉图,图中存在欧拉回路。
扫雪车遵守交通规则且靠右行驶,扫雪车经过路面一次就能把该单行道彻底地清扫干净,那么,扫雪车要完成任务就等价于扫雪车把所有的单向道路都至少行驶一遍。
为了使两台同时进行的扫雪车高效率地完成工作,根据模型假设十,两扫雪车功率一样且作业过程以匀速进行。
首先把地图分为南、北两个工作区,分别由两辆扫雪车负责。
尽量使得两工作区的工作量相近,即道路的总长相当,两扫雪车同时进行工作,结束时间相近,缩短工作时间。
数学建模选址问题
![数学建模选址问题](https://img.taocdn.com/s3/m/bf5a0293b14e852458fb57ca.png)
数学建模选址问题摘要目前,社区的优化管理和最佳服务已经成为一种趋势,并且为城市的发展作出了一定的贡献。
本文针对在社区中选址问题及巡视路线问题,分别建立了多目标决策模型、约束最优化线路模型,并分别提供了选址社区和巡视路线。
对于问题一,我们建立了单目标优化模型,考虑到各社区居民到收费站点的平均距离最小,我们使用floyd 算法并通过matlab 编程,算出任意两个社区之间的最短路径,并以此作为工具,使用0-1变量列出了目标函数。
在本题中,我们根据收费站数、超额覆盖等确定了约束条件,以保证收费站覆盖每个社区,同时保证居民与最近煤气站之间的平均距离最小,最终利用lingo 软件求得收费站建在M、Q、W三个社区。
对于问题二,同样是单目标优化模型,较之问题一不同的是,问题二不需要考虑人口问题,但需要确定选址的个数。
接下来的工作分了两步,第一步,我们通过0-1变量列出目标函数,以超额覆盖等确定约束条件,用lingo 软件编程求出最小派出所站点的个数;第二步,我们利用第一步中求出的派出所个数作为新的约束条件,建立使总距离最小的优化模型,最终利用lingo 软件求得三个派出所分别建在W、Q、K社区。
对于问题三,我们建立了约束最优化线路模型,根据floyd 算法求得的任意两个社区之间的最短路径,建立了以w 点为树根的最短路径生成树,并据此对各点的集中区域进行划分,再利用破圈法得到最短回路。
在本题中,我们初定了两种方案,并引入均衡度α对两种方案进行比较,最终采用了方案二。
最后,我们用matlab编程求解方案二中各组的巡视路线为113百米,123百米,117百米,均衡度α=8.13%。
具体路线见关键词:最短路径hamilton圈最优化floyd算法在社区中缴费站的选址对于居民快速缴费和充分的利用公共设施的资源有很重要的指导意义。
某城市共有24个社区,各社区的人口(单位:千人)如下:编号A B C D E F G H I J K L人口1121861154 8 7111311 编号M N P Q R S T U V W X Y人口118 922148 7115281813VCDGUFEIQSRATWXBJYLHNKMP101587971410611128920241615182211661223810118111510251519928810911819(注:横线上的数据表示相邻社区之间的距离,单位:百米)本题要解决的问题如下:(1)方便社区居民缴纳煤气费,煤气公司现拟建三个煤气缴费站,问煤气缴费站为了怎样选址才能使得居民与最近煤气站之间的平均距离最小。
数学建模中图论方法
![数学建模中图论方法](https://img.taocdn.com/s3/m/f9d3baa969eae009591beccb.png)
数学建模中的图论方法一、引言我们知道,数学建模竞赛中有问题A和问题B。
一般而言,问题A是连续系统中的问题,问题是离散系统中的问题。
由于我们在大学数学教育内容中,连续系统方面的知识的比例较大,而离散数学比例较小。
因此很多人有这样的感觉,A题入手快,而B题不好下手。
另外,在有限元素的离散系统中,相应的数学模型又可以划分为两类,一类是存在有效算法的所谓P类问题,即多项式时间内可以解决的问题。
但是这类问题在MCM中非常少见,事实上,由于竞赛是开卷的,参考相关文献,使用现成的算法解决一个P类问题,不能显示参赛者的建模及解决实际问题能力之大小;还有一类所谓的NP问题,这种问题每一个都尚未建立有效的算法,也许真的就不可能有有效算法来解决。
命题往往以这种 NPC问题为数学背景,找一个具体的实际模型来考验参赛者。
这样增加了建立数学模型的难度。
但是这也并不是说无法求解。
一般来说,由于问题是具体的实例,我们可以找到特殊的解法,或者可以给出一个近似解。
图论作为离散数学的一个重要分支,在工程技术、自然科学和经济管理中的许多方面都能提供有力的数学模型来解决实际问题,所以吸引了很多研究人员去研究图论中的方法和算法。
应该说,我们对图论中的经典例子或多或少还是有一些了解的,比方,哥尼斯堡七桥问题、中国邮递员问题、四色定理等等。
图论方法已经成为数学模型中的重要方法。
许多难题由于归结为图论问题被巧妙地解决。
而且,从历年的数学建模竞赛看,出现图论模型的频率极大,比方:AMCM90B-扫雪问题;AMCM91B-寻找最优 Steiner树;AMCM92B-紧急修复系统的研制(最小生成树)AMCM94B-计算机传输数据的最小时间(边染色问题)CMCM93B-足球队排名(特征向量法)CMCM94B-锁具装箱问题(最大独立顶点集、最小覆盖等用来证明最优性)CMCM98B-灾情巡视路线(最优回路)等等。
这里面都直接或是间接用到图论方面的知识。
要说明的是,这里图论只是解决问题的一种方法,而不是唯一的方法。
应用破圈法求图的最优树的一种新算法
![应用破圈法求图的最优树的一种新算法](https://img.taocdn.com/s3/m/a6a64006443610661ed9ad51f01dc281e53a56fd.png)
应用破圈法求图的最优树的一种新算法
魏丽侠
【期刊名称】《辽宁石油化工大学学报》
【年(卷),期】1992(000)003
【摘要】本文依据破圈法的原理提出了求图的最优树的一种新算法,并给出了具体的实现步骤。
【总页数】5页(P60-64)
【作者】魏丽侠
【作者单位】抚顺石油学院基础部
【正文语种】中文
【中图分类】TE65
【相关文献】
1.一种新的调度算法-变换数据流程图法 [J], 雷海燕;林争辉
2.一种求解二部图最大匹配问题新算法及其应用 [J], 唐敏;关健;邓国强;王海刚
3.一种求单源单汇点无环图最短路径的新算法 [J], 归宝琪
4.“破圈法”求最优树的一个简单证明 [J], 陈正一
5.求图的最优树破圈法算法的一个实现 [J], 魏丽侠[1];孔毅[2]
因版权原因,仅展示原文概要,查看原文内容请购买。
2022年研究生数学建模答案范本
![2022年研究生数学建模答案范本](https://img.taocdn.com/s3/m/b3cac5c49fc3d5bbfd0a79563c1ec5da50e2d680.png)
2022年研究生数学建模答案范本数学建模题目:A队号:2022045A2022年5月25题目A:通信网络的设计问题摘要本文主要研究通信网络在铺设线路上遇到的总铺设成本,及网络结点和链路可靠性问题的建模建立并对某通信公司所建立的80个结点所铺设线路提出最优铺设方案。
问题1是网络设计常见的成本最低化问题,通过简化将问题转为寻找权值最小的最小生成树问题,并利用避圈法和破圈法得到最小生成树(结果见8页图2)。
最终求得最省铺设费用为294.78万元。
并通过仿真计算对该方案的可靠性检验,结果表明,任意一条链路被破坏时,能够保证通信畅通的结点数最低只有结点数的53.75%,网络链路不太稳定。
通过模拟结点出现故障,发现若22号结点出现故障,能够保证通信畅通的结点数只有结点数的46%(结果见14页表2)。
由此可见利用最小生成树模型涉及网络铺线优点是成本低,缺点是保证结点通信畅通的可能性低.对问题2,根据邻接矩阵计算了可达矩阵,并根据可达矩阵与链路连通性的关系,将结点出现故障时的最小生成树,分解为若干组内联通的子树。
然后,在保证90%以上的结点通信畅通的条件下,对分解后的图进行了连接修复,对每一结点出现故障时,为保证通信畅通90%以上,建立了0-1整数规划规划模型(12页)。
考虑整数规划模型求解的复杂性,设计了贪婪算法,对其中17个结点出现故障后结点的具体连接方法见(详见14页表2)。
若结点出现故障后,网络本身仍能保持90%则无需在连链路,故在表2中未进行考虑。
由表2知,贪婪算法的结果能保证92.5%的结点通信畅通。
对于问题3,要求任意一条链路破坏时,为保证90%以上的结点通信畅通分两种情况进行考虑。
如果任意一条链路破坏后,仍有90%以上的结点保持通信畅通,这些链路无需追加链接(详15页见表3)。
另外一些链路在破坏后,不能保证90%的结点通信畅通,需追加链接,即加边。
要加边时,若允许某些结点连2条边,则只需对原最小生成树的某些结点连两条一样边(复制某最小生成树的某两结点间的被破坏的边,使之形成回路即可),该链路仍然为总铺设费用最省方案。