2009年8月31日月曜日

2009年8月24日月曜日

イアン・スチュワート「自然界の秘められたデザイン 雪の結晶はなぜ六角形なのか?」


 わくわくしながらほとんど一気読み。
 自分が理系で学んでいないということがくやまれてしかたがないほどだ。別の事象であっても通底する法則がある。宇宙、生物、モノ……。おもしれえな。
 そして、中で紹介されている様々な知見や発見の多くが九十年代後半から200年代というのが、興味深い。きっとそれらのものはパソコンやワークステーションが高性能になったからこそ、可能になったことだろうからだ。

 それにしても非ユークリッド幾何学によると、三角形の内角の和が180度ではない、というのには驚いた――というか、とてもこまった気分になった。というのも中学のとき、三角形の内角の和が180度である、ということを習ったとき、球面上ではならないよなぁ、と思ったからだ。おかしいな、と。そのときはきっと自分のかんちがいだと自分の納得させたのだけど、なんとそれは正しかったんだなぁ。
 おしかったなぁ。何がおしかったか、わからないが。

2009年8月22日土曜日

浮動小数点とか

 このところずっとelispのプログラミングにかまけていたのだけれど――ちょっと競馬の予想プログラムをつくってみていたのだ――、elispの小数点以下をふくむ数値は浮動小数点なので厳密には正確ではない。
 ちょっとそれが不満で、たしか、commonLispならfloatじゃなかったけかなぁ、と考えていたところ、はたと気づいた。
 無限に小数点を表現できる言語があったとしてもどこかの桁数で丸めるということは必要じゃないか、と。単純に1÷3とやっただけで0.3333……と3が無限につづくのだから、1÷3とやっただけで処理がもどってこなくなってしまうじゃないか。1÷3なら割る前に判断がつくけど、たまたま、円周率をだすようなものならあらかじめ――X÷YのXとYの値を見て判断はつかないだろうし。
 そうやって考えると、コンピュータで正確に小数点を表現するなんて不可能なのか。しょせんコンピュータの中なんて有限なんだから。

 いやぁ、それにしても数学って時々、穴ぼこみたいに無限に落ちこむんだなぁ。

 よく現実は数学のようには割り切れないなんていうけど、実は数学でも割り切れないことなんてよくあることだよなぁ、きっと。

2009年8月16日日曜日

read-from-file

bookmarkとか、Gnusのデータってlistでファイルに保存されているよなぁ、と思っていろいろとlispのソースを眺めていたら「read-from-file」というのを見つけた。rails-lib.elの中――ああ、そうか。Lispのreadって元々、Cとかのreadとはちがっているけど、pp-to-stringで変換したlistの情報をファイルへ書きこんでそれを「read-from-file」でlistとしてとりこみ直せるのか。

しかもrails-lib.elには「write-string-to-file」というのがあるし。
「(write-string-to-file (pp-to-string OBJ))」でOK。

これって簡易データベースをもっているのと同じことだよな。データを保存するためにcvsファイルにわざわざする必要がなく、まんま、listをファイルに吐き出せば、いいということじゃないか。こりゃ、便利だ。

2009年8月4日火曜日

払戻金(単勝)での発生数



とりあえず、5000円まで。それ以上はロングテールがきつすぎるので。
最高発生数は180円。680件。

1番人気が勝つ確率



2000年からの32479レースのデータを元に計算。
昔、競馬の本で1番人気と2番人気でくる確率は6割だと読んだことがあるような気がしていたけど、計算してみるとありゃ、52%しかないじゃないか。

# 人気  レース数  確率
1  10858  0.334308
2  6142  0.189107
3  4306  0.132578
4  3008  0.092614
5  2265  0.069737
6  1747  0.053789
7  1231  0.037901
8  870  0.026787
9  675  0.020783
10  458  0.014101
11  377  0.011608
12  220  0.006774
13  139  0.004280
14  80  0.002463
15  62  0.001909
16  27  0.000831
17  12  0.000369
18  2  0.000062

2009年8月1日土曜日