赞
踩
在自动驾驶行驶过程中,包含Free space场景和停车场景,在这种不规则道路结构中,无人驾驶车辆可以使用不同的曲线来表示车辆的行驶轨迹,而常见且经典的曲线则就是Dubins曲线和Reeds-Shepp曲线。
参考文章:Dubins曲线详细笔记
https://zhuanlan.zhihu.com/p/414753861
Dubins曲线限制车辆只能向前行驶,规划出的曲线由三段直线或圆弧组成,能够满足车辆的最小转弯半径、起点航向角、终点航向角和车辆动力学约束,但规划出的曲线在两段交点处曲率不连续。
对于指定起点
q
i
q_i
qi到终点
q
g
q_g
qg 的最短路径,可以写成求解如下优化问题:
min
L
(
q
,
u
)
=
min
∫
0
t
F
x
˙
(
t
)
2
+
y
˙
(
t
)
2
d
t
\min L(q,u) = \min \int_0^{t_F} \sqrt{\dot{x}(t)^2 + \dot{y}(t)^2} \text{d}t
minL(q,u)=min∫0tFx˙(t)2+y˙(t)2
dt
假设车辆运行速度恒定,那么,上式中的代价函数
L
(
q
,
u
)
L(q, u)
L(q,u) 只与
t
F
t_F
tF 相关。
已经证明,给定任意的起点和终点,Dubin car的最短路径总是可以表示为不超过三种的motion primitives.
Dubin car 的action 只有
u
∈
{
−
1
,
0
,
1
}
u\in\{-1, 0, 1\}
u∈{−1,0,1}. 并且可以证明,只有六种motion primitives 是最优的。
{
L
α
R
β
L
γ
,
R
α
L
β
R
γ
,
L
α
S
d
L
γ
,
L
α
S
d
R
γ
,
R
α
S
d
L
γ
,
R
α
S
d
R
γ
}
\{L_\alpha R_\beta L_\gamma, R_\alpha L_\beta R_\gamma,L_\alpha S_d L_\gamma,L_\alpha S_dR_\gamma,R_\alpha S_d L_\gamma,R_\alpha S_d R_\gamma\}
{LαRβLγ,RαLβRγ,LαSdLγ,LαSdRγ,RαSdLγ,RαSdRγ}
其中
α
∈
[
0
,
2
π
)
,
γ
∈
[
0
,
2
π
)
,
β
∈
(
π
,
2
π
)
,
d
≥
0
\alpha\in [0, 2\pi), \gamma \in [0, 2\pi), \beta \in (\pi, 2\pi), d \geq 0
α∈[0,2π),γ∈[0,2π),β∈(π,2π),d≥0.
设起点为 s ( x i , y i , α i ) s(x_i, y_i, \alpha _i) s(xi,yi,αi),终点为 g ( x g , y g , β g ) g(x_{g}, y_{g}, \beta _{g}) g(xg,yg,βg),通过坐标变换将起点和终点放置于x轴,则起点终点连线逆时针旋转 θ \theta θ角,此时起点坐标为 s ( 0 , 0 , α ) s(0,0,\alpha) s(0,0,α),终点坐标为 g ( d , 0 , β ) g(d, 0, \beta ) g(d,0,β),则
θ
=
arctan
(
y
g
−
y
i
x
g
−
x
i
)
D
=
(
x
i
−
x
g
)
2
+
(
y
i
−
y
g
)
2
d
=
D
R
α
=
m
o
d
(
α
i
−
θ
,
2
π
)
β
=
m
o
d
(
β
g
−
θ
,
2
π
)
\theta =\arctan (\tfrac{y_g-y_i}{x_g-x_i}) \\ D=\sqrt{(x_i-x_g)^{2}+(y_i-y_g)^{2}} \\ d=\frac{D}{R} \\ \alpha =mod(\alpha_i-\theta,2\pi) \\ \beta=mod(\beta_g-\theta,2\pi) \\
θ=arctan(xg−xiyg−yi)D=(xi−xg)2+(yi−yg)2
d=RDα=mod(αi−θ,2π)β=mod(βg−θ,2π)
θ
\theta
θ为起点和终点的航向差,以上角度的取值均在
[
0
,
2
π
]
[0,2\pi]
[0,2π]之间。上述第三式是为了将半径归一化,在后续的计算中将转弯半径都作为1,便于从角度计算弧长,简化计算。
t
l
s
l
=
−
α
+
arctan
(
cos
β
−
cos
α
d
+
sin
α
−
sin
β
)
[
m
o
d
2
π
]
p
l
s
l
=
2
+
d
2
−
2
cos
(
α
−
β
)
+
2
d
(
sin
α
−
sin
β
)
q
l
s
l
=
β
−
arctan
cos
β
−
cos
α
d
+
sin
α
−
sin
β
[
m
o
d
2
π
]
t_{lsl}=-\alpha+\arctan(\frac{\cos\beta-\cos\alpha}{d+\sin\alpha-\sin\beta})[mod2\pi] \\ p_{lsl}=\sqrt{2+d^2-2\cos(\alpha-\beta)+2d(\sin\alpha-\sin\beta)} \\ q_{lsl}=\beta-\arctan{\frac{\cos\beta-\cos\alpha}{d+\sin\alpha-\sin\beta}}[mod2\pi]
tlsl=−α+arctan(d+sinα−sinβcosβ−cosα)[mod2π]plsl=2+d2−2cos(α−β)+2d(sinα−sinβ)
qlsl=β−arctand+sinα−sinβcosβ−cosα[mod2π]
总长度等于:
L
l
s
l
=
t
l
s
l
+
p
l
s
l
+
q
l
s
l
=
−
α
+
β
+
p
l
s
l
L_{lsl}=t_{lsl}+p_{lsl}+q_{lsl}=-\alpha+\beta+p_{lsl}
Llsl=tlsl+plsl+qlsl=−α+β+plsl
t l r l = ( − α + arctan ( cos β − cos α d + sin α − sin β ) + p l r l 2 ) [ m o d 2 π ] p l r l = arccos 1 8 ( 6 − d 2 + 2 cos ( α − β ) + 2 d ( sin α − sin β ) ) [ m o d 2 π ] q l r l = β [ m o d 2 π ] − α + 2 p l r l [ m o d 2 π ] L l r l = t l r l + p l r l + q l r l = − α + β + 2 p l r l t_{lrl}=(-\alpha+\arctan(\frac{\cos\beta-\cos\alpha}{d+\sin\alpha-\sin\beta})+\frac{p_{lrl}}{2})[mod2\pi] \\ p_{lrl}=\arccos\frac{1}{8}(6-d^2+2\cos(\alpha-\beta)+2d(\sin\alpha-\sin\beta))[mod 2\pi] \\ q_{lrl}=\beta[mod 2\pi]-\alpha+2p_{lrl}[mod 2\pi] \\ L_{lrl}=t_{lrl}+p_{lrl}+q_{lrl}=-\alpha+\beta+2p_{lrl} tlrl=(−α+arctan(d+sinα−sinβcosβ−cosα)+2plrl)[mod2π]plrl=arccos81(6−d2+2cos(α−β)+2d(sinα−sinβ))[mod2π]qlrl=β[mod2π]−α+2plrl[mod2π]Llrl=tlrl+plrl+qlrl=−α+β+2plrl
t r s r = α − arctan cos α − cos β d − sin α + sin β [ m o d 2 π ] p r s r = 2 + d 2 − 2 cos ( α − β ) + 2 d ( sin β − sin α ) q r s r = − β [ m o d 2 π ] + arctan ( cos α − cos β d − sin α + sin β ) [ m o d 2 π ] L r s r = t r s r + p r s r + q r s r = α − β + p r s r t_{rsr}=\alpha-\arctan\frac{\cos\alpha-\cos\beta}{d-\sin\alpha+\sin\beta}[mod 2\pi] \\ p_{rsr}=\sqrt{2+d^2-2\cos(\alpha-\beta)+2d(\sin\beta-\sin\alpha)} \\ q_{rsr}=-\beta[mod 2\pi]+\arctan(\frac{\cos\alpha-\cos\beta}{d-\sin\alpha+\sin\beta})[mod 2\pi] \\ L_{rsr}=t_{rsr}+p_{rsr}+q_{rsr}=\alpha-\beta+p_{rsr} trsr=α−arctand−sinα+sinβcosα−cosβ[mod2π]prsr=2+d2−2cos(α−β)+2d(sinβ−sinα) qrsr=−β[mod2π]+arctan(d−sinα+sinβcosα−cosβ)[mod2π]Lrsr=trsr+prsr+qrsr=α−β+prsr
t l s r = ( − α + arctan ( − cos α − cos β d + sin α + sin β ) − arctan ( − 2 p l s r ) ) [ m o d 2 π ] p l s r = − 2 + d 2 + 2 cos ( α − β ) + 2 d ( sin α + sin β ) q l s r = − β [ m o d 2 π ] + arctan ( − cos α − cos β d + sin α + sin β ) − arctan ( − 2 p l s r ) [ m o d 2 π ] L l s r = t l s r + p l s r + q l s r = α − β + 2 t l s r + p l s r t_{lsr}=(-\alpha+\arctan(\frac{-\cos\alpha-\cos\beta}{d+\sin\alpha+\sin\beta})-\arctan(\frac{-2}{p_{lsr}}))[mod 2\pi] \\ p_{lsr}=\sqrt{-2+d^2+2\cos(\alpha-\beta)+2d(\sin\alpha+\sin\beta)} \\ q_{lsr}=-\beta[mod 2\pi]+\arctan(\frac{-\cos\alpha-\cos\beta}{d+\sin\alpha+\sin\beta})-\arctan(\frac{-2}{p_{lsr}})[mod 2\pi] \\ L_{lsr}=t_{lsr}+p_{lsr}+q_{lsr}=\alpha-\beta+2t_{lsr}+p_{lsr} tlsr=(−α+arctan(d+sinα+sinβ−cosα−cosβ)−arctan(plsr−2))[mod2π]plsr=−2+d2+2cos(α−β)+2d(sinα+sinβ) qlsr=−β[mod2π]+arctan(d+sinα+sinβ−cosα−cosβ)−arctan(plsr−2)[mod2π]Llsr=tlsr+plsr+qlsr=α−β+2tlsr+plsr
t r s l = α − arctan ( cos α + cos β d − sin α − sin β ) + arctan ( 2 p r s l ) [ m o d 2 π ] p r s l = d 2 − 2 + 2 cos ( α − β ) − 2 d ( sin α + sin β ) q r s l = β [ m o d 2 π ] − arctan ( cos α + cos β d − sin α − sin β ) + arctan ( 2 p r s l ) [ m o d 2 π ] L r s l = t r s l + p r s l + q r s l = − α + β + 2 t r s l + p r s l t_{rsl}=\alpha-\arctan(\frac{\cos\alpha+\cos\beta}{d-\sin\alpha-\sin\beta})+\arctan(\frac{2}{p_{rsl}})[mod 2\pi] \\ p_{rsl}=\sqrt{d^2-2+2\cos(\alpha-\beta)-2d(\sin\alpha+\sin\beta)} \\ q_{rsl}=\beta[mod 2\pi]-\arctan(\frac{\cos\alpha+\cos\beta}{d-\sin\alpha-\sin\beta})+\arctan(\frac{2}{p_{rsl}})[mod2\pi] \\ L_{rsl}=t_{rsl}+p_{rsl}+q_{rsl}=-\alpha+\beta+2t_{rsl}+p_{rsl} trsl=α−arctan(d−sinα−sinβcosα+cosβ)+arctan(prsl2)[mod2π]prsl=d2−2+2cos(α−β)−2d(sinα+sinβ) qrsl=β[mod2π]−arctan(d−sinα−sinβcosα+cosβ)+arctan(prsl2)[mod2π]Lrsl=trsl+prsl+qrsl=−α+β+2trsl+prsl
t r l r = α − arctan ( cos α − cos β d − sin α + sin β ) + p r l r 2 [ m o d 2 π ] p r l r = arccos 1 8 ( 6 − d 2 + 2 cos ( α − β ) + 2 d ( sin α − sin β ) ) q r l r = α − β − t r l r + p r l r [ m o d 2 π ] L r l r = t r l r + p r l r + q r l r = α − β + 2 p r l r t_{rlr}=\alpha-\arctan(\frac{\cos\alpha-\cos\beta}{d-\sin\alpha+\sin\beta})+\frac{p_{rlr}}{2}[mod2\pi] \\ p_{rlr}=\arccos\frac{1}{8}(6-d^2+2\cos(\alpha-\beta)+2d(\sin\alpha-\sin\beta)) \\ q_{rlr}=\alpha-\beta-t_{rlr}+p_{rlr}[mod2\pi] \\ L_{rlr}=t_{rlr}+p_{rlr}+q_{rlr}=\alpha-\beta+2p_{rlr} trlr=α−arctan(d−sinα+sinβcosα−cosβ)+2prlr[mod2π]prlr=arccos81(6−d2+2cos(α−β)+2d(sinα−sinβ))qrlr=α−β−trlr+prlr[mod2π]Lrlr=trlr+prlr+qrlr=α−β+2prlr
参考文章:自动驾驶运动规划-Reeds Shepp曲线
https://zhuanlan.zhihu.com/p/122544884
Reeds-Shepp曲线允许车辆向前或向后行驶,对于指定起点
q
i
q_i
qi到终点
q
g
q_g
qg 的最短路径,一定是由下面的状态表示的:
{
C
∣
C
∣
C
,
C
C
∣
C
,
C
∣
C
C
,
C
S
C
,
C
C
β
∣
C
β
C
,
C
∣
C
β
C
β
∣
C
,
C
∣
C
π
/
2
S
C
,
C
S
C
π
/
2
∣
C
,
C
∣
C
π
/
2
S
C
π
/
2
∣
C
}
\{C|C|C, CC|C, C|CC, CSC, CC_\beta|C_\beta C, C|C_\beta C_\beta|C, C|C_{\pi /2} SC, CSC_{\pi /2}|C, C|C_{\pi /2}SC_{\pi /2}|C\}
{C∣C∣C,CC∣C,C∣CC,CSC,CCβ∣CβC,C∣CβCβ∣C,C∣Cπ/2SC,CSCπ/2∣C,C∣Cπ/2SCπ/2∣C}
其中,“|” 表示转向。Reeds-Shepp 曲线的word组合通过一一枚举可以表示为:
其中,
L
+
L^+
L+ 表示车辆左转前进,
L
−
L^-
L−表示车辆左转后退,
R
+
R^+
R+表示右转前进,
R
−
R^-
R−表示右转后退,
S
+
S^+
S+表示直行前进,
S
−
S^-
S−表示直行后退。
起始姿态:
q
I
=
(
0
,
0
,
0
)
q_I = (0, 0, 0)
qI=(0,0,0);
目标姿态:
q
G
=
(
x
,
y
,
ϕ
)
q_G = (x, y, \phi)
qG=(x,y,ϕ);其中,
ϕ
=
θ
2
−
θ
1
\phi = \theta_2 - \theta_1
ϕ=θ2−θ1
车辆的转弯半径: r = 1;
假设车辆的初始姿态为 q I = ( x 1 , y 1 , θ 1 ) q_I = (x_1, y_1, \theta_1) qI=(x1,y1,θ1),目标姿态 q G = ( x 2 , y 2 , θ 2 ) q_G = (x_2, y_2, \theta_2) qG=(x2,y2,θ2),车辆的转向半径为r = ρ \rho ρ
通过旋转平移后即可得到目标姿态:
G
=
[
x
y
ϕ
]
=
[
(
d
x
c
o
s
θ
1
+
d
y
s
i
n
θ
1
)
/
ρ
(
−
d
x
s
i
n
θ
1
+
d
y
c
o
s
θ
1
)
/
ρ
θ
2
−
θ
1
]
G =
相较于Dubins曲线,Reeds-Shepp曲线有48种组合,为了降低求解的工作量,可以利用其对称性进行求解。
以转向不同的CSC类型为例,它包含4种曲线类型: L + S + R + L^+S^+R^+ L+S+R+、 L − S − R − L^-S^-R^- L−S−R−、 R + S + L + R^+S^+L^+ R+S+L+、 R − S − R − R^-S^-R^- R−S−R−,我们只需要编码推导得到 L + S + R + L^+S^+R^+ L+S+R+的计算过程,其它几种直接可以通过对称性关系得到车辆运动路径。
给定车辆起始姿态 q I = ( 160 , 160 , 0 ) q_I = (160, 160, 0) qI=(160,160,0),目标姿态 q G = ( 190 , 180 , 30 ) q_G = (190, 180, 30) qG=(190,180,30),可以得到 L + S + R + L^+S^+R^+ L+S+R+的运动路径如下:
{ Steering: left Gear: forward distance: 0.63 }
{ Steering: straight Gear: forward distance: 4.02 }
{ Steering: right Gear: forward distance: 0.11 }
时间变换通过交换字母上标符号+和−,即车取反向的行进方向。也就是说, L − R + S + L + L^-R^+S^+L^+ L−R+S+L+ 表达式可以通过 L + R − S − L − L^+R^- S^-L^- L+R−S−L− 表达式通过时间变换获得。其中+,-交换。
如果原始路径从(0,0,0)到 ( x , y , ψ ) (x,y,ψ) (x,y,ψ) ,显而易见时间变换的路径将从 ( 0 , 0 , 0 ) (0,0,0) (0,0,0) 到 ( − x , y , − ψ ) (−x,y,−ψ) (−x,y,−ψ) 。因此,如果一个路径表达式 L + t R − S − u L v − L^+tR^-S^-uL^-_v L+tR−S−uLv− 从点 ( 0 , 0 , 0 ) (0,0,0) (0,0,0) 到 ( − x , y , − ψ ) (−x,y,−ψ) (−x,y,−ψ) ,查找的合适弧长为t、u、v。这就等效于路径表达式 L t − R + S u + L v + L^-_tR^+S^+_uL^+_v Lt−R+Su+Lv+ 从点 ( 0 , 0 , 0 ) (0,0,0) (0,0,0) 到 ( x , y , ψ ) (x,y,ψ) (x,y,ψ) 查找相应的弧长。
所以,通过时间变换将上述列表中第一个字母符号为”−“的字段消除。
假设我们推导出从起始姿态 q I = ( x 1 , y 1 , θ 1 ) q_I = (x_1, y_1, \theta_1) qI=(x1,y1,θ1)达到目标姿态 q G = ( x 2 , y 2 , θ 2 ) q_G = (x_2, y_2, \theta_2) qG=(x2,y2,θ2)的路径计算方法:
p a t h = c a l c P a t h ( x 1 , y 1 , θ 1 , x 2 , y 2 , θ 2 ) path = calcPath(x_1, y_1, \theta_1, x_2, y_2, \theta_2) path=calcPath(x1,y1,θ1,x2,y2,θ2)
利用对称性,将目标Pose修改为 q G = ( − x 2 , y 2 , − θ 2 ) q_G = (-x_2, y_2, -\theta_2) qG=(−x2,y2,−θ2),代入同样的Path计算函数:
p a t h = c a l c P a t h ( x 1 , y 1 , θ 1 , − x 2 , y 2 , − θ 2 ) path = calcPath(x_1, y_1, \theta_1, -x_2, y_2, -\theta_2) path=calcPath(x1,y1,θ1,−x2,y2,−θ2)
就得到从 q I = ( x 1 , y 1 , θ 1 ) q_I = (x_1, y_1, \theta_1) qI=(x1,y1,θ1)到 q G = ( x 2 , y 2 , θ 2 ) q_G = (x_2, y_2, \theta_2) qG=(x2,y2,θ2)的 L − S − R − L^-S^-R^- L−S−R−类型的运动路径。
计算出的 L − S − R − L^-S^-R^- L−S−R−的车辆运动路径如下:
{ Steering: left Gear: backward distance: -2.85 }
{ Steering: straight Gear: backward distance: 4.02 }
{ Steering: right Gear: backward distance: -2.32 }
反射变换通过交换字母L和R,即取反车辆转向。也就是说,一个路径表达式 R + L − S − R − R^+L^−S^−R^− R+L−S−R− 的解可以通过反射变换从路径表达式 L + R − S − L − L^+R^−S^−L^− L+R−S−L− 的解中获得,即沿着该路径交换L和R。相应的参考路径由 ( x , y , ψ ) (x,y,ψ) (x,y,ψ) 变为 ( x , − y , − ψ ) (x,−y,−ψ) (x,−y,−ψ) 。
假设已知路径 L + t R − S u − L v − L^+tR^-S^-_uL^-_v L+tR−Su−Lv− 解的表达式,从点 ( 0 , 0 , 0 ) → ( x , − y , − ψ ) (0,0,0) \to (x,-y,-\psi) (0,0,0)→(x,−y,−ψ) 的最优弧长为t、u、v。
则从点 ( 0 , 0 , 0 ) → ( x , y , ψ ) (0,0,0) \to (x,y,\psi) (0,0,0)→(x,y,ψ) 的最优弧长为t、u、v,对应路径 R + t L − S u − R v − R^+tL^-S^-_uR^-_v R+tL−Su−Rv− 的解, 所以,通过反射变换可以将上述列表中以 L + L^+ L+ 开头的字段消除。
将目标姿态修改为
q
G
=
(
x
2
,
−
y
2
,
−
θ
2
)
q_G = (x_2, -y_2, -\theta_2)
qG=(x2,−y2,−θ2),代入同样的Path计算函数:
p
a
t
h
=
c
a
l
c
P
a
t
h
(
x
1
,
y
1
,
θ
1
,
x
2
,
−
y
2
,
−
θ
2
)
path = calcPath(x_1, y_1, \theta_1, x_2, -y_2, -\theta_2)
path=calcPath(x1,y1,θ1,x2,−y2,−θ2)
就得到从 q I = ( x 1 , y 1 , θ 1 ) q_I = (x_1, y_1, \theta_1) qI=(x1,y1,θ1)到 q G = ( x 2 , y 2 , θ 2 ) q_G = (x_2, y_2, \theta_2) qG=(x2,y2,θ2)的 R + S + L + R^+S^+L^+ R+S+L+类型的运动路径。
计算出的 R + S + L + R^+S^+L^+ R+S+L+的车辆运动路径如下:
{ Steering: right Gear: forward distance: -0.56 }
{ Steering: straight Gear: forward distance: 5.28 }
{ Steering: left Gear: forward distance: -0.03 }
结合timeflip对称性和reflect对称性,将目标姿态修改为
q
G
=
(
−
x
2
,
−
y
2
,
θ
2
)
q_G = (-x_2, -y_2, \theta_2)
qG=(−x2,−y2,θ2),代入同样的Path计算函数:
p
a
t
h
=
c
a
l
c
P
a
t
h
(
x
1
,
y
1
,
θ
1
,
−
x
2
,
−
y
2
,
θ
2
)
path = calcPath(x_1, y_1, \theta_1, -x_2, -y_2, \theta_2)
path=calcPath(x1,y1,θ1,−x2,−y2,θ2)
就得到从 q I = ( x 1 , y 1 , θ 1 ) q_I = (x_1, y_1, \theta_1) qI=(x1,y1,θ1)到 q G = ( x 2 , y 2 , θ 2 ) q_G = (x_2, y_2, \theta_2) qG=(x2,y2,θ2)的[公式]类型的运动路径。
计算出的 R − S − L − R^-S^-L^- R−S−L−的车辆运动路径如下:
{ Steering: right Gear: backward distance: -1.86 }
{ Steering: straight Gear: backward distance: 5.28 }
{ Steering: left Gear: backward distance: -2.38 }
通过对称性,48种不同的Reeds Shepp曲线通过不超过12个函数就可以得到全部运动路径。
逆向变换通过将原路径按照相反方向行走。也就是说,路径
L
−
S
−
R
−
L
+
L^-S^-R^-L^+
L−S−R−L+ 的公式可以使用逆向变换从路径
L
+
R
−
S
−
L
−
L^+R^-S^-L^-
L+R−S−L− 的公式中获得,即按照相反的顺序运动。逆向变换将目标点
(
x
,
y
,
ψ
)
(x,y,\psi)
(x,y,ψ) 转化为
x
′
=
(
x
cos
(
ψ
)
+
y
sin
(
ψ
)
,
x
sin
(
ψ
)
−
y
cos
(
ψ
)
,
ψ
)
x' = \bigl(x\cos(\psi)+y\sin(\psi),x\sin(\psi)-y\cos(\psi),\psi\bigr)
x′=(xcos(ψ)+ysin(ψ),xsin(ψ)−ycos(ψ),ψ)
所以可以通过公式
L
+
R
−
S
−
L
−
L^+R^-S^-L^-
L+R−S−L− 到达点
x
′
x'
x′,从而获得
L
−
S
−
R
−
L
+
L^-S^-R^-L^+
L−S−R−L+ 到达点
(
x
,
y
,
ψ
)
(x,y,\psi)
(x,y,ψ) 的解。通过这个变换可以消除上述列表中一些字段
参考论文:Optimal paths for a car that goes both forwards and backwards, J Reeds, L Shepp - Pacific journal of mathematics, 1990
论文中将不同的状态,按照Base word分类为了以下几种:
(8.1)
L
+
S
+
L
+
L^+S^+L^+
L+S+L+
(
u
,
t
)
=
R
(
x
−
s
i
n
ϕ
,
y
−
1
+
c
o
s
ϕ
)
v
=
M
(
ϕ
−
t
)
L
=
∣
t
∣
+
∣
u
∣
+
∣
v
∣
(u, t) = R(x - sin\phi, y - 1 + cos\phi) \\ v = M(\phi - t) \\ L = |t| + |u| + |v|
(u,t)=R(x−sinϕ,y−1+cosϕ)v=M(ϕ−t)L=∣t∣+∣u∣+∣v∣
(8.2)
L
+
S
+
R
+
L^+S^+R^+
L+S+R+
(
u
1
,
t
)
=
R
(
x
+
s
i
n
ϕ
,
y
−
1
−
c
o
s
ϕ
)
(u_1, t) = R(x+sin\phi, y-1-cos\phi)
(u1,t)=R(x+sinϕ,y−1−cosϕ)
if
u
1
2
<
4
u_1^2 < 4
u12<4,
L
=
∞
L = \infin
L=∞, else:
u
=
s
q
r
t
(
u
1
2
−
4
)
(
T
,
θ
)
=
R
(
u
,
2
)
t
=
M
(
t
1
+
θ
)
v
=
M
(
t
−
ϕ
)
L
=
∣
t
∣
+
∣
u
∣
+
∣
v
∣
u = sqrt(u_1^2 - 4) \\ (T, \theta) = R(u,2) \\ t = M(t_1+\theta) \\ v = M(t - \phi) \\ L = |t| + |u| + |v|
u=sqrt(u12−4)(T,θ)=R(u,2)t=M(t1+θ)v=M(t−ϕ)L=∣t∣+∣u∣+∣v∣
(8.3)
L
+
R
−
L
L^+R^-L
L+R−L
ξ
=
x
−
s
i
n
ϕ
η
=
y
−
1
+
c
o
s
ϕ
(
u
1
,
θ
)
=
R
(
ξ
,
η
)
\xi = x-sin\phi \\ \eta = y-1 + cos\phi \\ (u_1, \theta) = R(\xi, \eta)
ξ=x−sinϕη=y−1+cosϕ(u1,θ)=R(ξ,η)
if
u
1
2
<
4
u_1^2 < 4
u12<4,
L
=
∞
L = \infin
L=∞, else:
A
=
a
r
c
s
i
n
(
u
1
2
/
4
)
,
π
/
2
≤
A
≤
π
u
=
M
(
A
+
θ
)
(
T
,
v
)
=
R
(
2
−
ξ
s
i
n
u
+
η
c
o
s
u
,
ξ
c
o
s
u
+
η
s
i
n
u
)
w
=
M
(
ϕ
+
v
−
u
)
L
=
∣
t
∣
+
∣
u
∣
+
∣
v
∣
A = arcsin(u_1^2/4), \pi/2 \leq A \leq \pi \\ u = M(A + \theta) \\ (T, v) = R(2 - \xi sin u + \eta cos u, \xi cos u + \eta sin u) \\ w = M(\phi + v -u) \\ L = |t| + |u| + |v|
A=arcsin(u12/4),π/2≤A≤πu=M(A+θ)(T,v)=R(2−ξsinu+ηcosu,ξcosu+ηsinu)w=M(ϕ+v−u)L=∣t∣+∣u∣+∣v∣
(8.7)
L
+
R
u
+
L
u
−
R
−
L^+R_u^+L_u^-R^-
L+Ru+Lu−R−
ρ
=
2
+
ξ
2
+
η
2
4
\rho = \frac{2+\sqrt{\xi^2 + \eta ^2}}{4}
ρ=42+ξ2+η2
if
0
≤
ρ
≤
1
0 \leq \rho \leq 1
0≤ρ≤1,
u
=
a
r
c
c
o
s
(
ρ
)
,
0
≤
u
≤
π
/
2
t
=
τ
(
u
,
−
u
)
u
=
w
(
u
,
−
u
)
L
=
∣
t
∣
+
2
∣
u
∣
+
∣
v
∣
u = arccos(\rho) , 0 \leq u \leq \pi/2 \\ t = \tau(u, -u) \\ u = w(u, -u) \\ L = |t| + 2|u| + |v|
u=arccos(ρ),0≤u≤π/2t=τ(u,−u)u=w(u,−u)L=∣t∣+2∣u∣+∣v∣
else:
L
=
∞
L = \infin
L=∞
(8.8)
L
+
R
u
−
L
u
−
R
+
L^+R_u^-L_u^-R^+
L+Ru−Lu−R+
ρ
=
(
20
−
ξ
2
−
η
2
)
/
16
\rho = (20 - \xi^2 - \eta^2)/16
ρ=(20−ξ2−η2)/16
if
0
≤
ρ
≤
1
0 \leq \rho \leq 1
0≤ρ≤1,
u
=
−
a
r
c
c
o
s
(
ρ
)
,
0
≤
u
≤
π
/
2
t
=
τ
(
u
,
u
)
v
=
w
(
u
,
u
)
u = -arccos(\rho), 0 \leq u \leq \pi/2 \\ t = \tau(u, u) \\ v = w(u, u) \\
u=−arccos(ρ),0≤u≤π/2t=τ(u,u)v=w(u,u)
else:
L
=
∞
L = \infin
L=∞
(8.9)
L
+
R
−
π
/
2
−
S
−
L
−
L^+R_{-\pi /2}^-S^-L^-
L+R−π/2−S−L−
ξ
=
x
+
s
i
n
ϕ
η
=
y
−
1
−
c
o
s
ϕ
(
ρ
,
θ
)
=
R
(
−
η
,
ξ
)
\xi = x+sin\phi \\ \eta = y - 1 - cos\phi \\ (\rho, \theta) = R(-\eta, \xi)
ξ=x+sinϕη=y−1−cosϕ(ρ,θ)=R(−η,ξ)
if
ρ
<
2
\rho< 2
ρ<2,
L
=
∞
L = \infin
L=∞, else:
(
T
,
θ
1
)
=
R
(
ρ
2
−
4
−
2
)
t
=
M
(
θ
−
θ
1
)
u
=
2
−
θ
1
v
=
M
(
ϕ
−
π
/
2
−
t
)
L
=
∣
t
∣
+
π
/
2
+
∣
u
∣
+
∣
v
∣
(T, \theta_1) = R(\sqrt{\rho^2-4}-2) \\ t = M(\theta - \theta_1) \\ u = 2 - \theta_1 \\ v = M(\phi - \pi/2 - t) \\ L = |t| + \pi/2 + |u| + |v|
(T,θ1)=R(ρ2−4
−2)t=M(θ−θ1)u=2−θ1v=M(ϕ−π/2−t)L=∣t∣+π/2+∣u∣+∣v∣
(8.10)
L
+
R
−
π
/
2
−
S
−
R
−
L^+R_{-\pi /2}^-S^-R^-
L+R−π/2−S−R−
t
=
θ
u
=
2
−
ρ
v
=
M
(
t
+
π
/
2
−
ϕ
)
L
=
∣
t
∣
+
π
/
2
+
∣
u
∣
+
∣
v
∣
t = \theta \\ u = 2 - \rho \\ v = M(t + \pi/2 - \phi) \\ L = |t| + \pi/2 + |u| + |v|
t=θu=2−ρv=M(t+π/2−ϕ)L=∣t∣+π/2+∣u∣+∣v∣
(8.11)
L
+
R
−
π
/
2
−
L
−
π
/
2
−
R
+
L^+R_{-\pi /2}^-L_{-\pi /2}^-R^+
L+R−π/2−L−π/2−R+
ξ
=
x
+
s
i
n
ϕ
η
=
y
−
1
−
c
o
s
ϕ
(
ρ
,
θ
)
=
R
(
ξ
,
η
)
\xi = x + sin\phi \\ \eta = y - 1 - cos\phi \\ (\rho, \theta) = R(\xi, \eta)
ξ=x+sinϕη=y−1−cosϕ(ρ,θ)=R(ξ,η)
if
ρ
<
2
\rho< 2
ρ<2,
L
=
∞
L = \infin
L=∞, else:
t
=
M
(
θ
−
a
r
c
c
o
s
(
−
2
/
ρ
)
)
,
−
π
/
2
≤
t
≤
π
/
2
t = M(\theta - arccos(-2/\rho)), -\pi/2 \leq t \leq \pi/2 \\
t=M(θ−arccos(−2/ρ)),−π/2≤t≤π/2
if
t
≤
0
t \leq 0
t≤0,
L
=
∞
L = \infin
L=∞, else:
u
=
4
−
(
ξ
+
2
c
o
s
t
)
/
s
i
n
t
w
=
M
(
t
−
ϕ
)
u = 4 - (\xi + 2cost)/sint \\ w = M(t - \phi)
u=4−(ξ+2cost)/sintw=M(t−ϕ)
疑似论文印刷错误? 代码中公式如下:
ξ
=
x
+
s
i
n
ϕ
η
=
y
−
1
−
c
o
s
ϕ
(
ρ
,
θ
)
=
R
(
ξ
,
η
)
\xi = x + sin\phi \\ \eta = y - 1 - cos\phi \\ (\rho, \theta) = R(\xi, \eta)
ξ=x+sinϕη=y−1−cosϕ(ρ,θ)=R(ξ,η)
if
ρ
<
2
\rho< 2
ρ<2,
L
=
∞
L = \infin
L=∞, else:
u
=
4
−
ρ
2
−
4
u = 4 - \sqrt{\rho^2 - 4} \\
u=4−ρ2−4
if
u
<
0
u < 0
u<0,
L
=
∞
L = \infin
L=∞, else:
t
=
M
(
a
r
c
t
a
n
(
(
4
−
u
)
ξ
−
2
η
−
2
ξ
+
(
u
−
4
)
η
)
)
v
=
M
(
t
−
ϕ
)
L
=
∣
t
∣
+
∣
u
∣
+
∣
v
∣
t = M(arctan(\frac{(4 - u)\xi - 2 \eta}{-2\xi + (u-4)\eta})) \\ v = M(t - \phi) \\ L = |t| + |u| + |v|
t=M(arctan(−2ξ+(u−4)η(4−u)ξ−2η))v=M(t−ϕ)L=∣t∣+∣u∣+∣v∣
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。