(解決報告)円形の池の周りに鬼がいて、池の中心にAさんがいて、鬼に捕まらずに逃げるには?
半径 R の円形の池があり、中心にAさんがいます。
Aさんは一定の速度 v で泳げます。
池の周りには鬼がいて、速度 V で池の周囲のみを走ることができます。
鬼は可能な限りAさんを捕まえようと最善の方法で走ります。
Aさんは可能な限り鬼に捕まらないように池の外に最善の方法で出ようとします。
(鬼の位置によって進む方向を変えてもかまいません。)
このとき、
(1) Aさんの泳ぐ速度が鬼の何倍以上なら
Aさんは鬼に捕まらずに池の外に出ることができるでしょうか?
その場合の戦略はどのようなものでしょうか?
(2) Aさんの速度が v で鬼の速度が V であるとき、
どのような戦略をとれば、最短時間で逃げられるでしょうか?
(3) Aさんの速度が v で鬼の速度が V であるとき、
どのような戦略をとれば、
鬼より最も離れたところで陸に上がることができるでしょうか?
上記質問を
http://okwave.jp/qa3304342.html (← (1) と (3) が解決)
http://okwave.jp/qa3331684.html (← (2) が解決)
でしたのですが、皆様のおかげで解決することができました。
でも、解決に協力してくださった皆様や
この質問に最初は興味を持ってご覧になっておられた方に
ぜひお伝えできればと思い、この場をお借りして解決報告させて頂きます。
(解答のまとめも、末尾に書いておきます)
ただ、OKWave はあくまでもわからないことを尋ねるための場所ですので、
1つ質問したいと思います。
***** 質問 *****
理論的には下記の通り解くことができたのですが、
実践では果たしてこのような戦略で逃げることは可能でしょうか?
もしそうでないなら、どんな要素を考える必要があるでしょうか?
このほかにも、感想や率直な疑問などありましたら、
ぜひ回答をお寄せ下さい。
私は答えにたどり着く過程でいろいろ学ばせて頂いたのですが、
ちょっとした疑問等でも、さらに学ぶためのよいヒントになるかもしれません。
また、前質問、前々質問で回答してくださった方は、
コメントをお寄せいただければうれしいです。
回答してくださった皆さんのおかげで答えにたどり着くことができたので、
本当に感謝しています。
********** 以下、解答のまとめ **********
前半戦略を開始する時点で、Aさんは当然、原点にいます。
そして、鬼は ( -R , 0 ) にいるものとします。
(今までの皆さんの回答とは違う位置から始まっていますので、ご注意下さい。)
前半戦略では、Aさんは鬼と同じ直径上にいながら
(つまりAさんと原点と鬼が一直線上にいる位置を保ちながら)
鬼から遠ざかる方向に逃げます。
もし鬼が正方向の回転を続けるとすれば、
前半戦略を開始して t 秒後には、
鬼は ( -R cos(Vt/R) , -R sin(Vt/R) ) に、
Aさんは ( (1/2)(v/V)R sin(2Vt/R) , (1/2)(v/V)R { 1 - cos(2Vt/R) } ) に
いることになり、Aさんの軌道は半径が (1/2)(v/V)R で
( 0 , (1/2)(v/V)R ) を中心とする半円になります。
この前半戦略を適切なところまで行い、後半戦略に移ります。
(鬼より最も離れたところで陸に上がりたいなら)
前半戦略を最後まで( t = (π/2)(R/V) まで )行うと、
Aさんは ( 0 , (v/V)R ) にたどり着きます。
鬼は ( 0 , -R ) にいます。
その後Aさんは、今まで通ってきた半円の接線上を直進します。
v/V が
(3/2)π - √{ (V/v)^2 - 1 } - Arcsin(v/V) = 0
を満たす v/V の値を超えていれば、
Aさんは鬼に捕まらずに池の外周にたどり着くことができます。
上記方程式を数値的に解くと、v/V ≒ 0.2172336282 となります。
つまり、v/V > 0.2172336283 であれば逃げ切れることになります。
一見不思議に思えますが、Aさんが上記の戦略をとった場合でも
鬼の最適戦略は正方向の回転を続けることです。
もしある時点で鬼が反転したら、Aさんは、
鬼と原点とAさんが一直線上になるまで、そのまま直進します。
一直線上になったら、今まで向かっていた向きから、
鬼とAさんを結ぶ直線を軸として線対称移動した向きに変えて、直進を続けます。
そうすれば鬼との距離をさらに離すことができます。
(最短時間で陸に上がりたいなら)
v/V > 1/π の場合は自明ですので、
(下限)< v/V ≦ 1/π であるとします。
このとき、
sin{ θ - Arcsin{ (v/V)(sinθ)^2 } / sinθ
= (v/V)(π + θ) - (v/V)Arcsin{ (v/V)(sinθ)^2 }
を満たすθ( θ = Vt/R ) をわずかに過ぎた時点で、
今まで通ってきた半円(の一部)の接線上を直進すると、
鬼に捕まらずに最短時間で陸に上がることができます。
上記解答はまとめに過ぎませんので、
詳しくは上記アドレスの前質問・前々質問をご覧下さい。
お礼
あ