|
请大家指教我的分析对不对(只作了第一问) - B8 M2 C/ M B! H! O! C4 d
分析:简化的题目,已知有A(0,800),B(4000,2000),C(2000,4000)三点,求从A点出发,经过B,C点的最佳路径(找出最省线的路径)。路径选择的问题,即某一段是选择道路或架桥梁或挖隧道的问题,每条路径包括的属性值有:路径类型、造价、坡度、起始点高程、起始坐标。
$ t Z* ?" g$ M, T* p % Y, }: N' V9 `
v: E3 g* k) N" ] ]
路径选择采用穷举法。如下:
5 a4 [% ]2 u" D% ?1 q
+ r) N3 f2 g' c: x 8 v* p' E! c+ R- J/ S. Z+ T- j+ m" U
1、由A点出发,向X、Y增大的方向(指东方、北方、东北方向)前进,计算出两点之间的坡度值,并以坡度值按以下方法选择类型。! d6 g. _6 V% q- Q; B) \
2 H7 {6 L' V3 |9 n; d& K
5 A5 X5 [' t0 v# }: \9 e
A)、如果彼度值满足道路要求,类型选择道路。# Q% O, @0 ?% G4 B
8 i. j- I' e/ V; b% ~% g8 G
' `. P5 U! R9 ]+ P4 ?9 _3 i4 c B)、如果彼度不满足道路要求,分两种情况: C6 r$ {2 |- b7 t) ^
6 y/ ?; M! o# z" }7 P 4 y" A- Q/ t0 |3 y9 b
如果前一个高程高于后一个高程,选择挖隧道类型。如果低于后一个高程,选择架桥梁。
8 T6 h: ?9 H. x8 Q1 \- x, R% l
0 p" u) b+ v$ Z; R! Z 4 x9 ~! J; N" o2 W* e9 G6 j
C)、当X=4800或Y=4800时的路径去掉。
1 |2 F- H* M; a( |' ^ 1 S: C7 G2 `* @5 p+ B& O! M
# @1 R& q, c8 q9 A( _1 M D)、如果到达B、C点时,验算其有效性,如果B、C点高程不符合根据坡度计算的有效高程范围内,该路径去掉,路径去掉至结点处。
' A7 V1 S, K" v9 L7 v
9 w$ U1 e# x- n# J7 D
0 X1 R( C5 p5 w" t& e' T+ O 2、得出从A点出发,经过B、C点的所有有效路径,并计算总造价。
# D5 v9 E- F: j$ B( |7 V0 C# f; E ; o2 S4 U' ~/ T1 `, e$ ~4 J
s, h1 J2 C$ n8 g+ f! u5 d 3、计算出造价最低的路径为最终路径。* Z- F q+ f+ N9 c1 } ^
# k0 j. |1 Y) u$ I# y
6 y( \, B0 r! x, O0 [
- @9 Q* ^) j; X7 X! d0 d( a9 e 9 A7 z" d% @/ |, F4 T$ ]! t3 _. }1 n
总造价:Cmin=Min(X,Y,Z)其中X为路段的总造价,Y为桥梁的总造价,Z为隧道的总造价:
% _4 S0 I2 H0 R! Z
2 H8 _. _2 c; g# {! z
4 L/ Z9 E w7 P& _ X=总长度*300 Y=总长度*20002 X. G6 J/ E, w1 \0 n. E# r
[6 J* R: M9 Y, n7 w! Q$ k! C 5 U0 S' ?" F/ o5 i* ?+ l4 I( z+ [" U
Z=总长度*1500(长度小于等300)或Z=总长度*3000(大于300); f: h) e# N H/ p8 L
+ [9 s* x( a" @) H: u
7 S+ b7 @% g6 a6 d1 }, n# h" Y [此贴子已经被作者于2005-7-24 0:10:01编辑过] |