平成22年2月14日

[流れ星]

     第236回数学的な応募問題解答

      <解答募集期間:124日〜214

[確率は面積比(3)]

皆さん、場合の数が無数にある確率の問題を考えたことがありますか。

ここで、問題です。

 

 床一面に等間隔な平行線群がひかれています。いま、1本の針を任意に床上に落とすとき、
針が平行線の1つと交わる確率を求めよ。ただし、平行線の間隔を4、針の長さを2とする。

 注:ビフォンの針という問題です。

 ヒント:針の中点から一番近い平行線と交わる条件を考えてみる。

 

NO1uchinyan  01/24 1419分受信

uchinyan  01/26 1442分受信

uchinyan  01/26 2152分受信 更新2/14

 

第236回数学的な応募問題

[確率は面積比(3)]

 

手間は同じなので,平行線の間隔を d,針の長さを L,ただし,d > L > 0,として考えてしまいましょう。

針の中点から針に最も近い平行線へ下ろした垂線の長さを h,この垂線と針のなす角度をθとします。

すると,対称性から,0 <= h <= d/20 <= θ <= π/2 を考えれば十分です。

そして,針が平行線と交わるのは,h <= L/2 * cosθ です。

そこで,(h,θ) 座標系で表してみると,d/2 > L/2 >= L/2 * cosθ より,

 全体は (0,0)(π/2,0)(π/2,d/2)(0,d/2) を頂点とする長方形

 針が平行線と交わるのは 0 <= θ <= π/2 及び 0 <= h <= L/2 * cosθ となる領域

になります。

ここで,すべての点 (h,θ) は等確率と考えられるので,求める確率は領域の面積に比例します。

そこで,

針が平行線の一つと交わる確率 = [θ=0,π/2]{L/2 * cosθ}dθ/(π/2 * d/2) = 2L/πd

になります。

この問題では,d = 4L = 2 なので,1/π = 0.3183... ですね。

 

(考察1)

0 < d <= L の場合は,d/2 = L/2 * cosθ となる場合があるので,cosα = d/L とすると,

全体は (0,0)(π/2,0)(π/2,d/2)(0,d/2) を頂点とする長方形

針が平行線と交わるのは

 ((0 <= θ <= α) 及び (0 <= h <= d/2)) 又は ((α <= θ <= π/2) 及び (0 <= h <= L/2 * cosθ)

となる領域

になります。そこで,

針が平行線の一つと交わる確率

= (α * d/2 + [θ=α,π/2]{L/2 * cosθ}dθ)/(π/2 * d/2)

= 2(αd + L(1 - sinα))/πd

= 2L/πd + 1 - 2/πd * ((π/2 - α)d + L * sinα)

= 2L/πd + 1 - 2/πd * (d * arcsin(d/L) + sqrt(L^2 - d^2))

となるようです。

 

(考察2)

明らかだと思いますが,対称性を考慮せずに,単に,

針の中点が平行線の間又は線上にあり,中点と固定された一方の平行線との距離を h

その平行線と針又はその延長のなす角度をθとした場合でも考えておきましょう。

この場合は,0 <= h <= d0 <= θ <= π を考えることになります。

そして,針が平行線と交わるのは,h <= L/2 * sinθ 又は d <= h + L/2 * sinθ です。

そこで,(h,θ) 座標系で表してみると,d/2 > L/2 >= L/2 * sinθ より,

 全体は (0,0)(π,0)(π,d)(0,d) を頂点とする長方形

 針が平行線と交わるのは

 0 <= θ <= π 及び ((0 <= h <= L/2 * sinθ) 又は (d/2 < d - L/2 * sinθ <= h <= d)

 となる領域

になります。

ここで,すべての点 (h,θ) は等確率と考えられるので,求める確率は領域の面積に比例します。

そこで,

針が平行線の一つと交わる確率

= ([θ=0,π]{L/2 * sinθ}dθ + [θ=0,π]{d - (d - L/2 * sinθ)}dθ)/(π * d)

= (2 * [θ=0,π]{L/2 * sinθ}dθ)/(πd)

= 2L/πd

になります。当然ですが,同じ結果を得ます。

 

(考察3)

計算結果からして,実際に針を落とす実験をして,近似的にπを求める手法として使えます。

本当は実際にやってみる方がいいのですが,ここでは,プログラムでシミュレートしてみましょう。

ただ,プログラムで三角関数を使うと,内部的に弧度法でπを使っている可能性が高いので,

πを使ってπを計算するというナンセンスなプログラムになってしまいます。

そこで,針と平行線のなす角度θを,平行線とそれに垂直な方向の傾きで表現する,

という手法をとってみました。

この場合,針の中点と一方の端点の位置の座標を,

 まず,0 d/2 の範囲で乱数を発生させて中点の位置 h を決め,

 次に,中点を (0,0) として,0 L/2 の範囲で乱数を発生させて端点の x 座標を決め,

 y = sqrt((L/2)^2 - x^2) で端点の y 座標を決める,

とすればいいのですが,このままでは,傾き = 角度方向,の発生確率が一様になりません。

x = L/2 * cosθ より dx/dθ = - L/2 * sinθ = - L/2 * y/L = - y/2 なので,

θ 〜 θ + dθ の分布に対して x x + dx の分布は 1(2/y) の比になります。

つまり,2/y の重みがつきます。

そこで,これを補正するために 2/y の重みをつけて事象をカウントしてみました。

その結果の十進ベーシックでのプログラムと,シミュレーション結果が次のとおりです。

10,000,000 = 1000 万回の試行を 10 回行い,平均を取っています。

 

RANDOMIZE

LET m = 10

LET n = 10000000

LET d = 4

LET L = 2

LET s = 0

FOR k = 1 TO m

 LET c = 0

 LET w = 0

 FOR i = 1 TO n

  LET h = RND * d/2

  LET x = RND * L/2

  LET y = SQR((L/2)^2 -x^2)

  IF y >= h THEN

   LET c = c + 2/y

  END IF

  LET w = w + 2/y

  REM IF MOD (i,1000) = 0 THEN

  REM  PRINT i; 2 * L/d * w/c

  REM END IF

 NEXT i

 LET t = 2 * L/d * w/c

 LET s = s + t

 PRINT t

NEXT k

PRINT "平均"; s/m

END

 

 3.14118583801628

 3.14678237919597

 3.14101464940287

 3.14096585980993

 3.14088210257434

 3.14106006048444

 3.14197668355961

 3.14102708383091

 3.13884511593518

 3.14007985274632

平均 3.14138196255558

 

これを見ると,実際のπの値 3.14159... に,ほぼ近い値が得られています。

なお,重みは,結果には,分母,分子の両方に現れるので,実は,1/y で評価しても十分ですね。

 

(感想)

これは有名な問題ですね。知っていました。

プログラムのシミュレーションで,角度方向に一様な乱数をどう発生させ,三角関数を使わずに行うか,

結構苦労しました。でも,まぁ,なんとかできたようです。

もっとも,乱数の発生にπを使っていたらダメですが...(^^;

 

<お詫び:上の解答は214日夜7時に更新しました。

これ以前は、私の不手際で01/26 1442分受信 を載せてしまいました。大変迷惑をおかけしましたことを深くお詫び申し上げます。>

 

 

 

No2「スモークマン」    01/28 1953分受信 

「スモークマン」    01/30 0001分受信更新2/14

 

回答


針は、半径1の円を回転する確率は均等。
そのとき、平行線に垂直な距離を考える。
明らかに...2*sinθ・・・0≦θ≦π/2
2*sin
θ の平均値は...
[0~π/2] 2sinθ dθ=[-2cosθ]・・・[0~π/2]
                             =0+2
から...平均値は...2/(π/2)=4/π となり、


長さ2の針が幅4の平行線と交わる確率は...

平行線の幅の4が分母で、針の長さ 2sinθの平均値 2/(π/2)=4/π が分子だから

(4/
π)/4=1/π


たしか...ビュフォンの針の確率のシミュレーションでπの値を求める話の記憶ある
ので...  こんな感じでよさそうかな...^^

 

No3kashiwagi 01/28 2045分受信 更新2/14

  

236

 平行線の間隔を2H、針の長さを2Lとする。題意よりLHである。

今、針を落とした時、針の中点Mから最も近い平行線までの距離をXとし、平行線と直交する直線と針の角度をθとする。

即ち、右のような関係となる。

因って、

0XH ・・・・・@

0≦θ≦π/2 ・・・・・A

これら@およびAよりXとθの

存在範囲は黄色の部分、πH/2

 ところで針が交わるには図より

XLcosθ ・・・・B

つまり、その存在範囲は

Xをdθで積分したもので

ある。

その面積をSとすると、

 となる。

 

 

 

 

 

 

 

 

 

因って、求める確率は L/(πH/2)となる。ここで、H2L1を代入し、1/πとなる。

 

 

No4「再出発」   02/07 1402分受信 更新2/14 

 

236回の答案を送ります。
ヒントにある「針の中点から・・・」とはちょっとだけ違います。
[解答]
図のように針が平行線となす角をφとするとき平行線L1L2・・・が針と交わるのは
線分ACのうち線分BCを通るとき。
つまり、長さで4のうち|2sinφ|となり、
「針を任意に落とす」ので平行線は線分AC上に一様に存在するから
偏角φのときの平行線と交わる確率は
BC/AC =
|2sinφ|/
であり、対称性を考えると
0
≦φ≦π/2
で考えるだけで十分なので、その範囲での面積比を計算します。
図の緑の部分は
2
[0,π/2]sinθdθ = 2

             

 

全体の部分は
4
×π/2 = 2π
よって求める確率は
2 / 2
π = 1 / π ・・・(答)

<
コメント:再出発>
通常は針を動かすのだろうと思いますが、この答案では平行線を動かしてみました。
その方が説明しやすかったから、だけの理由ですが。

 

皆さん、答えがわかったら、一部でも構いませんから、解答とペンネームを添えて、
メールで送ってください。待っています。