的坐标为(x1,y1),圆心 的坐标(x2,y2), 点坐标为(x3,y3),根据各线段之间的位置关系以及线段与角的位置关系,列出了以下的函数关系式:
22 (1) r?(x?80)?(y?210)?10 (2) y?210??1(x?80)22 (3) r?10(1)(2)取等号联立利用导数求得r的极值 利用 求解
得x2=87.0711 y 202.92892?202.9289把(x2=87.0711 y)代入求得 2?然后把 代入求得最短时间94.2697秒
( 程序见附录模型二的求解)
七、模型评价
一、模型优点
1、本模型简单易懂,便于实际的检验与应用,易于推广。 2、模型优化后运用解析几何进行求解,精确度比较高。
3、 运用多个方案对路径进行优化求解,对相对优化的解进行比较得到最优解。 总的来说,该模型科学合理,考虑仔细,精确度高。比如在求解过程中全面的考虑了机器人所要途经的各种路线情况,然后依据题目要求,优化选择了与题意紧密相关的路线进行求解分析,找出了符合题目要求的最佳路径。 二、模型改进
在障碍物较多时且形状不规则时,模型还需进一步改进。在本题中有12个障碍物,从起点到终点的路径是有限的,我们利用线圆结构、枚举法求解比较科学合理,求得结果较符合提意要求。当障碍物增多时,我们可以考虑采用另为一种求解方式,如dijkstra算法等。
八、模型推广
该模型科学合理,首先全面地考虑了机器人在到达各目标点时所要行走的所有路线,然后根据题目要求,选择与题目紧密关联的路线进行分析求解,最终求出符合题意要求的最短路径。求解过程中简单易懂,便于实际问题的求解与应用,易于推广。虽然本模型是为计算机器人行走的最短路问题而建立的,但根据本模型的特点,仍然可以运用到现实生活中的最短路问题的求解。如:油气管道的布置问题、城市交通的规划问题、排水系统的规划问题等。
九、参考文献
[1]韩忠庚,数学建模使用教程,北京:高等教育出版社, . [2]尤承业,解析几何,北京:北京大学出版社, .
[3]黄玉清,梁靓,机器人导航系统中的路径规划算法[J],微计算机信息, :
17
.
[4]王沫然,MATLAB与科学计算,北京:电子工业出版社, [5]胡海星,RPG游戏中精灵的移动问题,杂志《程序员》, 。 [6]邦迪,图论及其应用,西安,西安科学出版社, 。
十、附录
附表一
计算线圆结构模型5.21
syms a b c x1 x2 x3 y1 y2 y3 a1 b1 c1 d1 r L1
x1=0;y1=0;x2=80;y2=210;x3=300;y3=300;r=10; (输入对应已知数据) a=sqrt((x2-x1)^2+(y2-y1)^2); b=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((b^2+a^2-c^2)/(2*b*a)); b1=acos(r/b); c1=acos(r/a); d1=2*pi-a1-b1-c1;
L1=sqrt(b^2-r^2)+sqrt(a^2-r^2)+r*d1
(线圆结构模型5.22分解为两个模型5.21进行计算) 计算线圆结构模型5.23
Syms x1 x2 x3 x4 y1 y2 y3 y4 a b c d f g h m n a1 a2 b1 b2 d1 d2 L3 x1=0;y1=0;x2=50;y2=40;x3=20;y3=23;x4=30;y4=20;r=10;(输入对应已知数据) a=sqrt((x2-x1)^2+(y2-y1)^2); g=sqrt(a^2-r^2); b1=acos(r/a);
f=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((a^2+f^2-c^2)/(2*a*f)); d1=2*pi-a1-b1-pi/2; m=r*d1;
b=sqrt((x4-x3)^2+(y4-y3)^2); d=sqrt((x4-x2)^2+(y4-y2)^2); a2=acos((f^2+b^2-d^2)/(2*f*b)); b2=acos(r/b);
d2=2*pi-a2-b2-pi/2; n=r*d2;
18
h=sqrt(b^2-r^2);
L3= sqrt(a^2-r^2)+ r*d1+ sqrt((x3-x2)^2+(y3-y2)^2)+ r*d2+ sqrt(b^2-r^2)
路径O→A第一条:
syms a b c x1 x2 x3 y1 y2 y3 a1 b1 c1 d1 r L1 x1=0;y1=0;x2=80;y2=210;x3=300;y3=300;r=10; a=sqrt((x2-x1)^2+(y2-y1)^2); b=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((b^2+a^2-c^2)/(2*b*a)); b1=acos(r/b); c1=acos(r/a); d1=2*pi-a1-b1-c1;
L1=sqrt(b^2-r^2)+sqrt(a^2-r^2)+r*d1 L1 =
471.0372
路径O→A第二条:
syms a b c x1 x2 x3 y1 y2 y3 a1 b1 c1 d1 r L1 x1=0;y1=0;x2=230;y2=60;x3=300;y3=300;r=10; a=sqrt((x2-x1)^2+(y2-y1)^2); b=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((b^2+a^2-c^2)/(2*b*a)); b1=acos(r/b); c1=acos(r/a); d1=2*pi-a1-b1-c1;
L1=sqrt(b^2-r^2)+sqrt(a^2-r^2)+r*d1 L1 =
498.4259
路径O→B第一条:
syms a b c x1 x2 x3 y1 y2 y3 a1 b1 c1 d1 r L1 x1=0;y1=0;x2=80;y2=210;x3=157.5;y3=255;r=10; a=sqrt((x2-x1)^2+(y2-y1)^2); b=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((b^2+a^2-c^2)/(2*b*a)); b1=acos(r/b);
19
c1=acos(r/a); d1=2*pi-a1-b1-c1;
L1=sqrt(b^2-r^2)+sqrt(a^2-r^2)+r*d1 L1 =
321.9278
Syms x1 x2 x3 x4 y1 y2 y3 y4 a b c d f g h m n a1 a2 b1 b2 d1 d2 L3 x1=157.5;y1=255;x2=235;y2=300;x3=220;y3=530;x4=185;y4=565;r=10; a=sqrt((x2-x1)^2+(y2-y1)^2); g=sqrt(a^2-r^2); b1=acos(r/a);
f=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((a^2+f^2-c^2)/(2*a*f)); d1=2*pi-a1-b1-pi/2; m=r*d1;
b=sqrt((x4-x3)^2+(y4-y3)^2); d=sqrt((x4-x2)^2+(y4-y2)^2); a2=acos((f^2+b^2-d^2)/(2*f*b)); b2=acos(r/b);
d2=2*pi-a2-b2-pi/2; n=r*d2;
h=sqrt(b^2-r^2);
L3= sqrt(a^2-r^2)+ r*d1+ sqrt((x3-x2)^2+(y3-y2)^2)+ r*d2+ sqrt(b^2-r^2) L3 =
389.4767
syms a b c x1 x2 x3 y1 y2 y3 a1 b1 c1 d1 r L1 x1=185;y1=565;x2=150;y2=600;x3=100;y3=700;r=10; a=sqrt((x2-x1)^2+(y2-y1)^2); b=sqrt((x3-x2)^2+(y3-y2)^2); c=sqrt((x3-x1)^2+(y3-y1)^2); a1=acos((b^2+a^2-c^2)/(2*b*a)); b1=acos(r/b); c1=acos(r/a); d1=2*pi-a1-b1-c1;
L1=sqrt(b^2-r^2)+sqrt(a^2-r^2)+r*d1
20
相关推荐: