2012高教社杯全国大学生数学建模竞赛承诺书我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。我们参赛选择的题号是(从A/B/C/D中选择一项填写):D我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):参赛队员(打印并签名):1.2.3.指导教师或指导教师组负责人(打印并签名):日期:2012年9月10日赛区评阅编号(由赛区组委会评阅前进行编号):2012高教社杯全国大学生数学建模竞赛编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):1机器人避障问题模型摘要本文主要研究了机器人行走避障最短(时间)路径问题,使机器人能够更好地接受人类指挥,从而更好地协助或取代人类的工作。问题一:根据两点间直线段最短,最终我们建立了以直线路径为主,圆弧为辅的路径模型,以保证总距离最短。其中,所经圆弧的半径都取最小转弯半径(10个单位)。其模型为:mjjniilsl11min1010..drts通过MATLAB软件编程求解得起点到各个目标点的最短路径及其时间如下表:起点到终点机器人行走总距离机器人行走总时间(秒)O→A471.037296.01764O→B853.7002179.08O→C1063.3212.5381O→A→B→C→O2698.9551.8524问题二:结合问题一,我们从路线相切与对称方面入手建立最短时间路径模型:0021/)2^*1.010(^1(***2/)(minvrervrr利用LINGO软件编程求解得最短时间路径,其总时间为94.22830秒,总距离为471.1293。本文在问题一中只建立一个模型就可求解所有可能最短路径的总距离和总时间,使模型简洁、精确度高,而在问题二中,通过巧妙运用相切与对称的相关性质建立模型求得最短时间路径。关键词:线圆结构最短路径总距离总时间2一、问题重述图1是一个800×800的平面场景图,在原点O(0,0)点处有一个机器人,它只能在该平面场景范围内活动。图中有12个不同形状的障碍物是机器人不能与之发生碰撞的,障碍物的数学描述如下表:编号障碍物名称左下顶点坐标其它特性描述1正方形(300,400)边长2002圆形圆心坐标(550,450),半径703平行四边形(360,240)底边长140,左上顶点坐标(400,330)4三角形(280,100)上顶点坐标(345,210),右下顶点坐标(410,100)5正方形(80,60)边长1506三角形(60,300)上顶点坐标(150,435),右下顶点坐标(235,300)7长方形(0,470)长220,宽608平行四边形(150,600)底边长90,左上顶点坐标(180,680)9长方形(370,680)长60,宽12010正方形(540,600)边长13011正方形(640,520)边长8012长方形(500,140)长300,宽60在图1的平面场景中,机器人以由直线段和圆弧组成的行走路径,到达障碍物外指定与障碍物距离至少超过10个单位的目标点。其中机器人不能折线转弯,只能以圆弧路径转弯。转弯路径由与直线路径相切的一段圆弧组成,也可以由两个或多个相切的圆弧路径组成,但每个圆弧的半径最小为10个单位。为了不与障碍物发生碰撞,同时要求机器人行走线路与障碍物间的最近距离为10个单位,否则将发生碰撞,若碰撞发生,则机器人无法完成行走。机器人直线行走的最大速度为50v个单位/秒。机器人转弯时,最大转弯速度为21.0100e1)(vvv,其中是转弯半径。如果超过该速度,机器人将发生侧翻,无法完成行走。以下需要我们建立避障最短路径和最短时间路径的数学模型,对场景图中4个点O(0,0),A(300,300),B(100,700),C(700,640),求:(1)从O(0,0)出发,O→A、O→B、O→C和O→A→B→C→O的最短路径。(2)从O(0,0)出发,到达A的最短时间路径。3图1800×800平面场景图二、问题分析问题一,要求从原点O按照一定的行走规则绕过障碍物到达目标点的最短路径。我们首先考虑在各个拐角处画出若干个半径为10个单位的圆弧,然后建立线圆结构,再通过拉绳子的方法找出可能的最短路径,同时利用穷举法列出从原点O到每个目标点的可能路径,最后通过比较大小得出最短路径。若要求从原点O按照一定的行走规则绕过障碍物到达目标点的最短路径的过程中需要经过中间若干个点,那我们将不仅要考虑如何避开障碍物,同时也要考虑在途中转弯的问题。最后通过建立模型求解比较,最终得出最短路径。问题二,要求机器人从O(0,0)出发,到达A的最短时间路径,要考虑到机器人走直线和避开障碍物走圆弧路径问题,这是一种路线的组合问题。也就是要考虑行走过程中要走的直线段和圆弧的段数,而这些直线和圆弧又要怎么组合才能使得机器人以最短的时间到达目标点,依据题目我们可以知道圆弧的速度是其半径的函数,走圆弧的半径越大(在一定范围内)机器人转弯速度就越快,转弯所用的时间就越短,所以我们考虑到要么全以圆弧走,直线和圆弧混合走两种情况,但由于机器人走圆弧半径和圆弧圆心没有确定,要求出最短时间优化模型是非常困难的,所以为了简化模型我们设想在机器人执行转弯时圆弧与以该点障碍物为圆心,半径为10的圆内切,再设想把所求圆弧圆心假设在已知直线段上,再利用圆弧上两个切点坐标来确定圆弧弦的中点坐标,最后根据相切与对称原理求得最优化模型。三、基本假设1.假设机器人能够抽象成一个点来处理。2.假设机器人拐弯时所走的圆弧弧长无论多小都可转弯成功。3.假设机器人以最大速度50v个单位/秒直线匀速行走,且转弯时匀速行走。4四、符号说明符号符号说明单位备注l路径的总长度个单位变量jl第j段直线段的长度个单位变量is第i段圆弧的长度个单位变量r转弯半径个单位变量d障碍物上的任意点与行走路径之间的最短距离个单位变量五、模型建立(一)问题一模型:已知两点间直线段最短,所以为了实现机器人从原点行走到达目地的路径最短这一目标,我们首先考虑机器人行走时以走直线段为主。同时考虑到行走过程中需要转弯且转弯时只能走圆弧路线,为了使得总行走路径最短,还要求尽可能的减少走圆弧,保证机器人在整个行走过程中能顺利进行,机器人随时要与障碍物保持至少10个单位的距离,基于路径最短目标我们首先考虑转弯时的圆弧的半径都取最小拐弯半径(10个单位),另外假设途经的所有圆弧都以障碍物的拐角点为圆心。目标函数:由于路径是由直线段和圆弧组成,即可设有m条直线段,n条圆弧,那么目标函数即可表示为:mjjniilsl11min1010..drts用此模型就可以求出原点O(0,0)到目标点之间的最短路径。(二)问题二模型:由题意得,随着半径的改变,转弯时的速度如下:转弯半径r101112131415转弯速度v2.54.45454.93944.99504.99975.0000分析以上表格的数据可得:当12r时,转弯速度越来越接近5。机器人从O(0,0)出发,到达A(300,300)的最短时间路径的有三种可能:5情况一:在问题一中我们已经知道从O到达A的最短路径如图1:图1从问题一结果进行分析我们知道机器人在转弯时的速度是关于圆弧半径的函数,圆弧半径越大,21.0100e1)(vvv就越大,机器人转弯就越快,而情况一是用圆弧半径最小来求路径最短问题,并不适用于解决时间最短问题的优化模型。所以我们不对它进行具体考虑。情况二:我们已经设想到圆弧半径大小会影响到机器人行走最终时间长短问题,所以我们假设机器人行走经过障碍物P点时转弯的圆弧圆心在直线HP上。决策目标:设圆弧圆心Q为(x,y),圆弧半径为r,分别连接QO、QA,其中圆弧上两个切点坐标分别为),(11yx、),(22yx位于P点左右圆弧上,长度分别为21,rr,QO、QA的长度分别为43,rr,设),(33yx为圆弧弦的中点坐标,为圆弧夹角的一半。具体做法如图2所示:图2目标函数:)2^*1.010(^1/(**2/)(min021rervrr从O到A机器人行走总距离:**221rrrl6直线HP的方程:)23080/()60210()230/()60(xy圆弧半径长度:2)^210(2)^80(10yxr切线21,rr,QO、QA的长度43,rr的长度:2)^300(2)^300(2^2^2)^300(2)^300(2^2^43222111yxryxryxryxr约束条件:)5/arccos(2)^(2)^(2/)(2/)(0)*()*(2^2)^(2)^(0)(*)300()(*)300(2^)(2)^(2^2^2^2^2^2^53352132131111222222114231ryyxxryyyxxxyyyxxxryyxxyyyxxxryyxxrrrrrr210802308021yxx情况三:用同样的方法假设机器人绕过障碍物H点处转弯的圆弧圆心也在直线HP上。决策目标:设圆弧圆心M(x,y),圆弧半径为r,分别连接MO、MA,其中圆弧上两个切点坐标分别为、位于H点左右圆弧上,长度分别为,MO、MA的长度分别为,设),(33yx为圆弧弦的中点坐标,为圆弧夹角的一半。具体做法如下图3所示:7图3目标函数:)2^*1.010(^1/(**2/)(min021rervrr从O到A机器人行走总距离:**221rrrl直线HP的方程:)23080/()60210()230/()60(xy圆弧半径长度:2)^60(2)^230(10yxr切线21,rr,MO、MA的长度43,rr的长度:2^2^2)^300(2)^300(2^2^2)^300(2)^300(43222111yxryxryxryxr约束条件:)5/arccos(2)^(2)^(2/)(2/)(0)*()*(2^2)^(2)^(0)(*)300()(*)300(2^2)^(2)^(2^2^2^2^2^2^53352132132222221111114231ryyxxryyyxxxyyyxxxryyxxyyyxxxryyxxrrrrrr602302308021yxx六、模型求解(一)问题一模型求解:1.原点O(0,0)到达目标点A(300,300)可能的最短路径(如图4)图4图5我们通过MATLAB软件进行求解比较得出从原点O(0,0)到达目标点A(300,300)2的最短路径为路径一(具体程序见附录)。(1)路径一总距离L的求解(如图5))()()(R)(cL(AE)bL(OD)A--OPD-2)cRarccos(A)bRarccos(OPD)2a-cbarccos(PEPDRAPcOPbOAa2222222DESAELODLAOLDP