クラメールの公式


競馬@Wikiへ戻る

初歩的な電気回路の話

多分どんな人でも中学校の理科でオームの法則ってのを習った事と思います。
そうですね、次のような公式に見覚えのある人もいるのではないでしょうか?

V=RI

「電圧は電流に比例する」とか言うヤツですね。まあ、これは簡単なお話です。
ところで、高校物理程度になると、この「オームの法則」ってのが「キルヒホッフの法則」とか言うものにバケます。
基本的には「オームの法則」そのものなんですが、例えばここにある、電池が2個で回路内で逆向きにセットされているような捻くれた回路を扱ったりするんですね(笑)。まあ、あくまで「受験の為」なんですが。
ちとそこから回路図借りてきますか?

clip_image002_1.gif

さて、そこで問題。

回路に流れる電流を求めなさい

・・・・・・いや、別に本当に求める必要は全然無いんですが(笑)。
ただ、単にこう言う問題がある、って事を知って欲しいだけです(笑)。
大体ここは一応「競馬サイト」ですし、競馬サイトでいきなり電気回路の話をされても面喰らうだけでしょう(笑)。これは単に「例」なんです。
何の例か?と言われれば、「難しそうな問題だな」と思ってもらえればそれが本意です。しかもそれは「物理を知ってる/知らない」に関係無いトコロでのお話なんです。
一応、解き方に付いてはここに載っていますが、何が難しいのか、と言われれば、

計算しなければいけない電流が基本的に全部で3つある

って部分がポイントなんです。
こう言う「計算しなければいけない」数値を数学的には「変数」と呼んだりします。そして、変数が2つの場合は意外と人間は簡単に解く事が出来るんです。が、3つ、4つ、・・・・と増えていくと途端に難しくなる。
ここではそう言う話を競馬の「投資金算出」に絡めて思いつくままに書いていきたいと思います。

中学校の数学の問題

ではちとここで、中学校の数学の計算問題を紹介します。

(問)x、yを求めよ。
3x+2y=7~\\~x+y=3

正確には「2元1次連立方程式」と言われるものです。 さて、みなさんは解けるでしょうか?ちょっとやってみて下さい。

解法

  • 2つ目の式を3倍にする。
3x+2y=7~\\~3x+3y=9
  • 2つ目の式から1つ目の式を引く
3x+2y=7~\\~y=2
  • 1つ目の式から2×2つ目の式を引く
3x=3~\\~y=2
  • 1つ目の式を3で割る
\therefore~x=1~\\~y=2

如何でしょうか?解けたでしょうか?
正直、この程度の問題だったら、他にも色々な解法があると思います。
そして、数学なんてのは原理的には解答があってさえいれば解き方なんてどうだってイイのです。はい。

ところがですね、次のような式と文字を一つ増やしただけで、問題の難易度がムチャクチャ上がります。ちょっと見てみましょうか。

x、y、zを求めよ。
5x-5y+4z=-2~\\x-5y+z=-3~\\4x+5y+3z=6

解答募集中

  • 普通に連立方程式を解くと、x=-5、y=1、z=7ですね。行列を使えばAの逆行列、A-1を求めて掛ければいいんだったっけ?。ところが私は線形代数が一番の苦手でした。 -- むーてん? 2006-06-29 (木) 17:30:50
  • 線形代数のクラメールの公式を使えばいいんじゃないっすか? -- みそちる? 2008-09-06 (土) 16:17:46
  • 線形代数のクラメールの公式を使えばいいんじゃないっすか? -- みそちる? 2008-09-06 (土) 16:17:49

掃き出し法(Gaussian Elimination)

さて、上の連立方程式(変数、式の数が3つあるので、3元1次連立方程式)の解き方は、中学校の数学での連立方程式の解法と基本的には同じです。
ところが、式をそのまま弄くっていくのはちょっとメンドくさい。そこで代わりに行列(Matrix)と言うものが発案されたのです。
特に下のように変数にくっついてる係数と定数だけに着目したものを係数行列(Co-efficient Matrix)と呼びます。これが世界で一番最初に発案された行列なんですね。

\left[~\begin{array}{lcr}~5~&~-5~&~4~&~-2\\~1~&~-5~&~1~&~-3~\\~4~&~5~&~3~&~6~\end{array}~\right]

この方がx、とかy、とか余計な文字が無いので、比較的集中しやすいです。あとは解き方としては前々項の通り解いていけばいい。
ちょっとやって行ってみましょうか?

  • 全部の行を先頭が1になるように割る。
\left[~\begin{array}{lcr}~1~&~-1~&~\frac{4}{5}~&~-\frac{2}{5}~\\~1~&~-5~&~1~&~-3~\\~1~&~\frac{5}{4}~&~\frac{3}{4}~&~\frac{3}{2}~\end{array}~\right]
  • 第2行目、第3行目から第1行目を引く。
\left[~\begin{array}{lcr}~1~&~-1~&~\frac{4}{5}~&~-\frac{2}{5}~\\~0~&~-4~&~\frac{1}{5}~&~-\frac{13}{5}~\\~0~&~\frac{9}{4}~&~-\frac{1}{20}~&~\frac{19}{10}~\end{array}~\right]
  • 第2行目、第3行目の先頭が1になるように割る。
\left[~\begin{array}{lcr}~1~&~-1~&~\frac{4}{5}~&~-\frac{2}{5}~\\~0~&~1~&~-\frac{1}{20}~&~\frac{13}{20}~\\~0~&~1~&~-\frac{1}{45}~&~\frac{38}{45}~\end{array}~\right]
  • 第3行目から第2行目を引く。
\left[~\begin{array}{lcr}~1~&~-1~&~\frac{4}{5}~&~-\frac{2}{5}~\\~0~&~1~&~-\frac{1}{20}~&~\frac{13}{20}~\\~0~&~0~&~\frac{1}{36}~&~\frac{7}{36}~\end{array}~\right]
  • 第3行目の先頭が1になるように割る。
\left[~\begin{array}{lcr}~1~&~-1~&~\frac{4}{5}~&~-\frac{2}{5}~\\~0~&~1~&~-\frac{1}{20}~&~\frac{13}{20}~\\~0~&~0~&~1~&~7~\end{array}~\right]
  • 第1行目から第3行目の5分の4倍を引く。
\left[~\begin{array}{lcr}~1~&~-1~&~0~&~-6~\\~0~&~1~&~-\frac{1}{20}~&~\frac{13}{20}~\\~0~&~0~&~1~&~7~\end{array}~\right]
  • 第2行目に第3行目の20分の1倍を足す。
\left[~\begin{array}{lcr}~1~&~-1~&~0~&~-6~\\~0~&~1~&~0~&~1~\\~0~&~0~&~1~&~7~\end{array}~\right]
  • 第1行目に第2行目を足す。
\left[~\begin{array}{lcr}~1~&~0~&~0~&~-5~\\~0~&~1~&~0~&~1~\\~0~&~0~&~1~&~7~\end{array}~\right]~\\~\therefore~x=-5~\\~y=1~\\~z=7

かなりメンド臭いんですが、このようにして係数行列内の数値を変換していって、左上から右下にかけての正方形の部分の対角線上の数値が1になるようにしていけば解けるわけです。
この計算方法を掃き出し法、または発案者のF.ガウス*1の名を取って、Gaussian Eliminationと呼びます。
ちなみに、この計算方法を見て、

「意味は分かるけど、メンドくさいなあ。」

って思った貴方はマトモです(笑)。実はこの計算はコンピュータでさえ時間がかかって非常に苦手な分野なんです。*2


資金配分と線形代数

さて、F.ガウスと言う学者さんは、こう言う連立方程式の基礎固めをピップ・エレキバンを作ってる傍らで(笑)延々とやっていたのですね。この人が創設した数学の連立1次方程式に関する分野を線形代数と言います。
ところで、この話をここまで読んで、

「何で数学のつまんない話を延々と?」

と思った貴方もマトモです(笑)。
この「線形代数」ってジャンルの基本は、大体大学1〜2年次に習うんですが、これがまた何の為に役立つんだか良く分からない(笑)。理系の大学の教養過程でも、大変につまらない人気がない分野なんですね(笑)。

ところが次の問題となると、実は途端に線形代数の話になるんです。

(問)今、手元に資金1万円がある。この元手で3.5倍、6.4倍、8.3倍の馬券を3点買って、
どの馬券が当たっても払戻額を全て同じにしたい。
それぞれの馬券を一体いくらづつ買えば良いのか?
ただし、馬券の最低購入額は100円なので、答えは100円未満四捨五入で近似値でも良し
とする。

これは実は冒頭の「キルヒホッフの法則」と全く同じ数学的構造の問題なんです。つまり、変数が3つ存在する「連立方程式」の問題なんですね。

ここで「掃き出し法」を使って計算するのは数学的には正解なんですが、もっと簡易な方法論が無いのか、と言うのがここからの課題です。

余談ですが、競馬に於ける資金配分の問題と言うのは、数学的バックグラウンドは同じにも拘らず、人によっては、様々な悩みの種でもあるようです。
全然別のサイトの掲示板の話なんですが、以前このような質問があげられているのを見た事があります。

前回までの損失10,000円
当該レースでの利益目標5000円
狙い目は6点でそのうち押さえ2点の中に的中があれば元返し
前回までの損失分10,000円プラス当該レースの投票分(?円)
4点の中に的中があれば前回までの損失10,000円プラス当該レースでの
利益目標5,000円
前回までの損失がなければ2点は元返し4点で目標利益獲得。
合計15,000円の利益が出るような計算式というものはあるのでしょうか?

この人は、要するに、6点買いした場合、的中した時の回収率を当たった馬券によって細かく変えたい、と言った希望を持っていたようです(この場合は2グループですが)。 いやはや、色々な事を考える人がいるものです。そして、これも「線形代数」の話なんですね。*3

平たく言うと、

  1. ある条件に従った払戻金を手に入れたい⇒連立方程式の設定
  2. その解を知る⇒資金マネージメントの開発

と言うのは、純粋な数学的な話ですし、それは全て線形代数の範疇の話題なんです。
では線形代数の世界をちょっとだけご紹介したいと思います。

連立方程式の設定と行列

さて、ここで先程の問題をちょっと一般化してみたいと思います。

(問)今、手元に資金S円がある。この元手でa倍、b倍、c倍の馬券を3点買って、
どの馬券が当たっても払戻額を全て同じにしたい。
それぞれの馬券を一体いくらづつ買えば良いのか?
ただし、馬券の最低購入額は100円なので、答えは100円未満四捨五入で近似値でも良し
とする。

単に資金をS円、オッズをa、b、cとアルファベットに直しただけです。
意外と文字式が苦手な人が多いみたいなんですが、こうやって文字式に修正しておけば、一般的な解を求めた場合、アトで実値を色々代入して即座に結果を引き出せるので大変便利です。*4
ここで、オッズaの馬券にx円、オッズbの馬券にy円、オッズcの馬券にz円投入するとすると、次の連立方程式が問題文の条件に沿った連立方程式になります。

投資総額は決まっている⇒x円とy円とz円を合わせればS円になる
x+y+z=S
どの馬券が的中しても払戻額は同じである⇔払戻金はオッズ×投資金額で決定される
ax=by=cz

この2つの式(正確には4つありますが)が題意を満たす連立方程式になります。
上の二つを少々書き換えると、

x+y+z=S~\\~ax-by=0~\\~by-cz=0

となります。
これを解けば、問題の解となり、それは上で紹介した掃き出し法を使えば達する事が出来ます。
ですが、ここで、係数行列ではなく、もうちょっと現代的な、ベクトル*5を利用した行列表記にトライしてみたいと思います。
それは、やはり各式の係数に着目して

\left(~\begin{array}{lcr}~1~&~1&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right)~\left(\begin{array}{lcr}~x~\\~y~\\~z~\end{array}~\right)~=~\left(~\begin{array}{lcr}~S~\\~0~\\~0~\end{array}~\right)

と書き表す方法です。
これは別に「3元一次方程式を計算していくと結果こうなる」ってわけでも何でも無くって、単にこの表記をバラすと元の3元1次連立方程式に戻る、と言う約束をしただけです。*6だからあんまり難しく考える必要はありません。所詮「人間が決めた約束事」なのですから。
ここで、

A~=~\left(~\begin{array}{lcr}~1~&~1&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right)~\\~X~=~\left(\begin{array}{lcr}~x~\\~y~\\~z~\end{array}~\right)~\\~B~=~\left(~\begin{array}{lcr}~S~\\~0~\\~0~\end{array}~\right)

として、取り合えず暫定的にAをオッズ行列、Xを投資金ベクトル、Bを総資金ベクトルとでも呼んでみましょう。
この様にA、X、Bを定義する事によって、問題の連立方程式は

AX=B

と書き表される事となり、この行列とベクトルで表された方程式も広義では一次方程式と見なす事が出来るのです。
このような、「一次」を別名「線形」と言い*7、だから行列とベクトルを用いた一次方程式に対しての解法の研究を線形代数(Linear Algebra)と呼ぶわけです。

逆行列

さて、前項のように

AX=B

と書いて、これを「一次方程式の一種」と考える事に何かメリットがあるのでしょうか?
これは、実に重要な指摘であり、また、「数学者の考え方」の根底に関わる疑問だと思います。
平たく言うと、これは数学の宿命と言っても過言ではないのですが、要するに、

計算規則の一般性を定義したい

と言うような、数学者の欲求と深く関係しています。
間違ってもらっちゃ困りますが、原則的に一般性とは、「自然界がそうなっている」と言うのではなく、あくまでどちらかと言うと「人間側の都合」(と言うより数学者の方の欲求)って側面が強いです。人間が「物事には整然とした規則性がある」と考えるのが好きなんですね*8
その辺りの「数学の一般性」と言った抽象的な話はさておき、ここでは取りあえず「一次方程式の一般性」って事に焦点を絞ってみたいと思います。
仮に行列ではなく、普通の数a、x、bがあって、

  • xはいくらか?
    ax=b

と言われればこれは答えは簡単です。

x~=~\frac{b}{a}

ただし

a~\neq~0

では行列を用いた一次方程式、

AX=B

の場合はどうしたらいいのでしょう?
直感的には

X=\frac{B}{A}

としても良さそうです。が、Aが行列の上、これと総資金ベクトルBで分数を作る、なんてのはいくら何でも・・・・・・あたまがこんがらがって来ますね。
しかし、いいトコロは突いてるかもしれません。
そこで、もう一度、普通の一次方程式の解に付いて考えてみます。

x~=~\frac{b}{a}

これは次のような書き換えが出来ます。

x~=~a^{-1}b

これを利用すれば、行列の方の一次方程式も

X=A^{-1}B

と全く同じ形で解を定義できるのです。*9
ではそんな行列

A^{-1}

が存在するのかどうか、と言った話は取りあえず後回しにしておいて、こう言った行列を逆行列と名付けます(これは普通の一次方程式の場合

a^{-1}

をaの逆数と呼ぶのに対応しています)。

解が存在する条件

では逆行列とはどんな行列なんでしょうか?
その中身に付いては敢えて説明しません(笑)。
と言うのも、「競馬」と言う文脈では「線形代数の全て」をここで説明するのは本意ではありませんし、大体僕は数学者ではありません(笑)。
かつ、普通の線形代数の入門書でさえ、あの量なのですから、この競馬@Wikiで全部解説するのは不可能です。
と言うわけで、オイシイトコ取りで簡易な結論だけ述べます*10

逆行列は存在する場合もあるし存在しない場合もある。

これだけです(笑)。
もうちょっと具体的に書くと、

  • 逆行列が存在する場合
    X=A^{-1}B
    が解となる。
  • 逆行列が存在しない場合
    解が存在しない。*11

2番目の方が、普通の方程式でのa=0の場合に対応しているのです。
では、どんな場合に逆行列が存在するのか?これは、逆行列がどんな形をしているか知らないにも関わらず、ある一つの条件さえ満たせば、逆行列が存在する事が数学的に知られています。
それは、行列式

\det~A~\neq~0

が条件です。これさえ満たしていれば、少なくとも解が

X=A^{-1}B

である事が保障されるのです。
ところで、行列式とは一体何でしょうか?

行列式

行列式とは計算の約束事で、2行2列の行列Aの行列式の場合は、

\det~A~=~\left|~\begin{array}{lcr}~a~&~b~\\~c~&~d~\end{array}~\right|~\\~=~ad-bc

と定義されています*12
つまり、2行2列の行列を用いた一次方程式

AX=B

の場合、

ad-bc~\neq~0

の時、列ベクトルXが何だか分からないけど解を持つ、という事になります。
では3行3列以上の行列式の場合は一体どうなるのでしょうか?
ここで、次のような3行3列の行列

A~=~\left(~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right)

の行列式detAを以下のように定義します。

\det~A~=~\left|~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right|~\\~=~a_{11}~\left|~\begin{array}{lcr}~a_{22}~&~a_{23}~\\~a_{32}~&~a_{33}~\end{array}~\right|~-~a_{12}~\left|~\begin{array}{lcr}~a_{21}~&~a_{23}~\\~a_{31}~&~a_{33}~\end{array}~\right|~+~a_{13}~\left|~\begin{array}{lcr}~a_{21}~&~a_{22}~\\~a_{31}~&~a_{32}~\end{array}~\right|

ここまで来ればあとは2行2列の行列式をそれぞれ計算すればいいです。
上の計算規則を見てピンと来ない人も多いと思いますので、取りあえずは各項がどのような計算法則に則っているのかちょっと見てみましょう。
3行3列の行列式の各項は、次の表にある、赤い数字と青い行列式の積になっているのです。

  • 第1項
    ココ
    ココココ
    ココココ
  • 第2項
    ココ
    ココココ
    ココココ
  • 第3項
    ココ
    ココココ
    ココココ

3行3列以上の行列式の各項は全てこの計算規則に従っています。あとはそれに従って展開していけばいいのです。
また、+−の符号は1行目の各数字に

   
   

と交互に符号が付いていく形になっているのです。*13
以上を鑑みて、問題のオッズ行列Aの行列式detAは

\det~A~=~\left|~\begin{array}{lcr}~1~&~1&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right|~\\~=~\left|~\begin{array}{lcr}~-b~&~0~\\~b~&~-c~\end{array}~\right|~-~\left|~\begin{array}{lcr}~a~&~0~\\~0~&~-c~\end{array}~\right|~+~\left|~\begin{array}{lcr}~a~&~-b~\\~0~&~b~\end{array}~\right|~\\~=~ab~+~bc~+~ca

となります。
そして、オッズは全て1以上の値しかとり得ませんので、

ab~+~bc~+~ca~>~0

と言うのは自明ですので、

ab~+~bc~+~ca~\neq~0

です。
つまり、投資金ベクトルXは解を持つ、と言うのが結論となります。


クラメールの公式(Cramer's Rule)

では実際に投資金ベクトルXを求めてみましょう。
とは言っても、逆行列を使った計算法はメンド臭くってしょーがないです。
そこで、行列式を利用した次の公式を利用してみます。
例えば3行3列の行列Aと列ベクトルX、Bが

A~=~\left(~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right)~\\~X~=~\left(\begin{array}{lcr}~x_1~\\~x_2~\\~x_3~\end{array}~\right)~\\~B~=~\left(~\begin{array}{lcr}~b_1~\\~b_2~\\~b_3~\end{array}~\right)

で、次の関係

AX=B~\\

を満たし、かつdetA≠0の時、列ベクトルXの成分は行列式を用いて

x_1~=\frac{\left|~\begin{array}{lcr}~b_1~&~a_{12}~&~a_{13}~\\~b_2~&~a_{22}~&~a_{23}~\\~b_3~&~a_{32}~&~a_{33}~\end{array}~\right|}{\left|~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right|}~\\~x_2=\frac{\left|~\begin{array}{lcr}~a_{11}~&~b_1~&~a_{13}~\\~a_{21}~&~b_2~&~a_{23}~\\~a_{31}~&~b_3~&~a_{33}~\end{array}~\right|}{\left|~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right|}~\\~x_3=\frac{\left|~\begin{array}{lcr}~a_{11}~&~a_{12}~&~b_1~\\~a_{21}~&~a_{22}~&~b_2~\\~a_{31}~&~a_{32}~&~b_3~\end{array}~\right|}{\left|~\begin{array}{lcr}~a_{11}~&~a_{12}~&~a_{13}~\\~a_{21}~&~a_{22}~&~a_{23}~\\~a_{31}~&~a_{32}~&~a_{33}~\end{array}~\right|}

と書き表されます。これをクラメールの公式(Cramer's Rule)と呼びます。*14
このクラメールの公式は別に3行3列の行列Aに関しての一次方程式だけに対して成り立つ公式ではなくって、当然2行2列であるとか、4行4列であるとか、全て成り立ちます(最初の中学生の数学問題もクラメールの公式を利用して解いてみてください)。気をつけなければならないのは、分子の行列式の列ベクトルBの成分の挿入位置だけです。
これが連立方程式の解法としては掃き出し法や逆行列を用いた手法に比べると最も強力な手法です。*15
では実際このクラメールの公式を投資金算出の問題に当て嵌めてみましょう。

x~=\frac{\left|~\begin{array}{lcr}~S~&~1~&~1~\\~0~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right|}{\left|~\begin{array}{lcr}~1~&~1~&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right|}~\\~y~=\frac{\left|~\begin{array}{lcr}~1~&~S~&~1~\\~a~&~0~&~0~\\~0~&~0~&~-c~\end{array}~\right|}{\left|~\begin{array}{lcr}~1~&~1~&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right|}~\\~z~=\frac{\left|~\begin{array}{lcr}~1~&~1~&~S~\\~a~&~-b~&~0~\\~0~&~b~&~0~\end{array}~\right|}{\left|~\begin{array}{lcr}~1~&~1~&~1~\\~a~&~-b~&~0~\\~0~&~b~&~-c~\end{array}~\right|}

ここで、各成分の分母は先程求めたdetA=ab+bc+caである事は分かっています。
分子に関しては各自実際に計算してみて確認して欲しいので端折りますが、計算結果は、

x=\frac{bcS}{ab+bc+ca}~\\~y=\frac{caS}{ab+bc+ca}~\\~z=\frac{abS}{ab+bc+ca}

となります。
そして、xの分子と分母をbc、yの分子と分母をca、zの分子と分母をabでそれぞれはらうと、

x=\frac{S}{1+\frac{a}{b}+\frac{a}{c}}~\\~y=\frac{S}{1+\frac{b}{c}+\frac{b}{a}}~\\~z=\frac{S}{1+\frac{c}{a}+\frac{c}{b}}

となります。
ところで、以上の3点買いの場合、投資金算出で、いくら総投資金額Sが分かっていて、オッズa、b、c、が既知でも、上の3つの式を全部そのまま計算していたのでは、いくら時間があっても足りなそうです。
しかしながら、実際は上の3つの式をそのまま計算する必要性はないのです。
と言うのも、最初の連立方程式の設定で、

ax=by=cz

が条件でした。
書き換えると、

x=\frac{by}{a}=\frac{cz}{a}~\\~y=\frac{cz}{b}=\frac{ax}{b}~\\~z=\frac{ax}{c}=\frac{by}{c}

です。
これが指し示す事は

どれか一点の投資金を求められれば、芋づる式に他の投資金も把握できる

と言う事です。すなわち、例えばxの投資金が分かれば、

x=\frac{S}{1+\frac{a}{b}+\frac{a}{c}}~\\~y=\frac{ax}{b}~\\~z=\frac{ax}{c}

と計算して構わない、と言うことを言っているのです。
なお、この結果を一般化すると、総投資金S円で任意のn点買いを試みて、それぞれの馬券のオッズを

a_1,~a_2,~a_3,~\dots,~a_{n-1},~a_n

とする時、1番目の馬券の投資金は

x_1=\frac{S}{1+\frac{a_1}{a_2}+\frac{a_1}{a_3}+~\dots~+\frac{a_1}{a_{n-1}}+\frac{a_1}{a_n}}

で書き表され、その他の馬券の投資金は

x_k=\frac{a_1~x_1}{a_k}

で求める事が出来るわけです。*16

合成オッズ

合成オッズと言う言い方がいつ出て来たのか分かりませんが、恐らくこれはTARGET frontier JVの作者、BLITZ氏がネーミングしたんじゃないか、と思います。
なかなか秀悦なネーミングですし、また数学的にも面白い議論なので、ここでちょっとご紹介したいと思います。
ところで、JRAのオッズがどうやって計算されているかと言うと、これがなかなか計算式がヤヤコシイんですが、簡易式としては次のものが知られています。
投票された馬券の全体からの支持率をV、オッズをO、控除率をDとすると、

O=\frac{1-D}{V}

で近似する事が出来ます。
この式を書き換えると、

V=\frac{1-D}{O}

となって、オッズを利用すれば、買いたい馬券の全体に対する支持率(得票率)を概算できるのです。*17
さて、ここに3つの馬券AとBとCがあって、この3つの馬券の全部の支持率に付いて考えてみましょう。馬券Aのオッズをa、馬券Bのオッズをb、馬券Cのオッズをcとします。
当然、支持率は全部で1(100%)で、かつ、分母の数(総投票数)はあるレースの投票可能時間の単位時間毎には一定であるので、支持率同士には単純な加算が成り立ちます。
すなわち、

V_A+V_B+V_C=\frac{1-D}{a}+\frac{1-D}{b}+\frac{1-D}{c}~\\~=~(1-D)(\frac{1}{a}+\frac{1}{b}+\frac{1}{c})

となります。
この式を移項して少々書き換えると、

\frac{1-D}{V_A+V_B+V_C}=\frac{1}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}}

となるんですが、ここで左辺の意味を考えてみましょう。
この左辺は100%−控除率を馬券A、B、Cの支持率の和で割ったものです。しかしながら、支持率の和は依然支持率(単位が特に変わっているわけではない)なので、要するに、数学的にはオッズの定義式、

O=\frac{1-D}{V}

に一致しています。
つまり、上で計算した式はいずれにせよ、数学的な仮想的なオッズを表しており、馬券A、B、Cの3点を同時に買った場合、

O_{composite}=\frac{1}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}}

がこの馬券の組み合わせの価値(馬券が当たった時の期待回収値)を表しています。この数値を通称合成オッズと呼ぶのです。
では、この合成オッズと言うのは一体何の役に立つのでしょうか?
ここで次のように考えてみます。
仮に馬券A、B、Cの3点を資金S円で買うとしたら、期待できる払戻はオッズ×投資金より、

O_{composite}~\times~S~=~\frac{1}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}\times~S~\\~=~\frac{S}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}

これは現時点、馬券A、B、Cを一体いくらづつ買うのか不問なんですが、少なくともこの3点買いをしてどれか当たった場合の払戻期待値(平均値)だと考えられます。 さて、では馬券Aにx円、Bにy円、Cにz円投資するとして、この払戻の期待値を計画的に手に入れたいとする。そうすると、各馬券と各オッズの関係はオッズ×投資金より、

a~\times~x~=\frac{S}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}~\\~b~\times~y~=\frac{S}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}~\\~c~\times~z~=\frac{S}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}

上式を整理すると、

x~=~\frac{~\frac{S}{~\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}~}{a}~=~~\frac{S}{~a~\times~(\frac{1}{a}+\frac{1}{b}+\frac{1}{c})~}~=~\frac{S}{~1~+\frac{a}{b}+\frac{a}{c}~}\\~~y~=~\frac{~\frac{S}{~\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}~}{b}~=~~\frac{S}{~b~\times~(\frac{1}{a}+\frac{1}{b}+\frac{1}{c})~}~=~\frac{S}{~1~+\frac{b}{c}+\frac{b}{a}~}~\\~z~=\frac{~\frac{S}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}~}~}{c}~=~\frac{S}{c~\times~(\frac{1}{a}+\frac{1}{b}+\frac{1}{c})~}~=~\frac{S}{~1~+~\frac{c}{a}+\frac{c}{b}~}

となり、これは前項で求めたクラメールの公式での解に一致します。
すなわち、前項の解とは、馬券A、B、Cを同時に買った場合での期待払戻金を各馬券のオッズで割った値

x=\frac{O_{composite}~\times~S}{a}~\\~y=\frac{O_{composite}~\times~S}{b}~\\~z=\frac{O_{composite}~\times~S}{c}

に一致するのです。

補足

この一連のクラメールの公式と言うのは理系(数学は当たり前ですが、特に物理や電子工学系の連中)なら大学1〜2年生辺りでも誰でも知ってるワリとポピュラーな公式なんですが、一方文科系の人間は殆ど知らないようなのです。特に競馬をしている人間で知ってる人間にお目にかかった事がありません(競馬やってる人間の殆どが文系なのかもしれませんが)。
別に「知らない事」が悪い事だと言ってるわけではないのです。お間違いなく。
ただし、どう言うわけか、こと競馬に於いては、競馬をやってる人間がこの公式を知らない事をいい事に、前々項で見せたような「クラメールの公式に拠る解」を

××の方程式

等と勝手に名付けて「資金マネージメント」と称して売ってしまう。かつそれを「買ってしまう」人間がいる事にビックリしているのです。そう言う至極「奇妙な商売が成り立つ」のが競馬の怖ろしいトコロなんですね。
当然これは大昔から存在している公式なので、著作権等発生するわけが無いのです。ヘタすれば数研出版の&amazon(4410102818);にさえ初歩的な説明なら載っているシロモノです。
ただでさえ、競馬はお金がかかるので、これを読んだ人はヘンな「資金マネージメントビジネス」に引っ掛からないようにして下さい。かつ、貴方が解きたい問題に関しては貴方が方程式を設定して貴方が解いてみるのが一番イイのです。それが貴方だけの「資金マネージメント法」なのです。

  • XXの方程式。資金マネージメントと称して売っているのを買ってしまいます。でもそれらは私の中では画期的でした。。。 -- ヒロ? 2006-07-11 (火) 12:18:16
面白い内容ですね。合成オッズに絡み、一つ疑問なのは、各個人の持っている競馬知識
あるいは競馬観による主観的勝率と支持率による客観的勝率と単勝の場合を考えますと、
馬の真の勝率との関係をどのように捉えたら良いかという事です。 -- [[HRPTV5C]] &new{2006-07-13 (木) 12:25:35};

>HRPTV5Cさん

上の議題は面白いですし、結構長くなりそうなんで、別のページに議論を移しましょう。 -- 亀田? 2006-07-13 (木) 18:55:35


競馬@Wikiへ戻る


*1 ピップ・エレキバンの発明者。ウソです(笑)。
*2 例えば、3D画像の計算をする場合、原理的にはコンピュータではこの“掃き出し法”を用いて3次元座標の行列を計算していく。しかしながら、汎用CPUはこの計算が大の苦手。これが汎用パソコンはPlay Station等のゲーム専用機にCG能力で負けている理由です。Play StationやGAME CUBE等のゲーム専用機はこの掃き出し法による行列計算の為の特殊なカスタムチップを内臓しており、それによって飛躍的に高速度でリアルタイムに3D画像を計算できる仕組みになっているのです。
*3 これはなかなか歯ごたえのある面白い問題だったので、このページを読み終えた方は各自考えてみて下さい。答えは教えません(笑)。
*4 物理なんかでは文字式で解を求める問題が結構多いです。これも一般化の発想でしょう。
*5 実は中学校の理科で初めて出てくるベクトルも数学では単に行列の一種です。1行m列の行列を特に行ベクトル、n行1列の行列を列ベクトルと呼んでるだけです。
*6 この辺りの表記法は少なくとも現在30代くらいの方々なら理系文系問わず“お馴染みの”表記法だと思います。現在30代の人々はこう言う表記法を高校2年辺りで“数学II”か、もしくは“代数・幾何”で一通り習っている筈です。一方最近の若い世代(あまりゆとり教育世代、って言い方は好きじゃないんですが)では理系の“数学III・C”を習ってないと知らないのです。
*7 一次方程式はそのまま図面にすると、直線の式になるのは、中学校の数学で習った通りです。ですから一次=直線で“線形”と名付けられたのです。英語のLinear AlgebraのLinearはまさしくLine(線)が語源です。また、ちなみにこのLinearはリニアモーターカーの“リニア”です。
*8 これは競馬予想に照らし合わせて考えてみると良く分かるでしょう。“競馬に規則性があるかどうか?”それが事実かどうかは実はあんまり関係ないわけで、規則性があって欲しい、と思うのはどちらかと言うと予想する側の人間の都合によります。そして単にデタラメに馬券を買うより、“規則性を見つけて予想理論を組み立てたい”と思う方が遥かに“人間らしい欲求”なのです。データに意味を求めたがるのも人間の本質的な欲求なんですね。
*9 実は相当議論を端折ってます。と言うのも、行列A、Bがあった時、一般にAB≠BAだからです。つまり、掛ける順番によって結果が変わると言った奇妙な性質を行列は持っています。ですから、こう言う式展開は“かける順番”に気をつけて下さい。左辺と右辺の行列Aに逆行列を左側からかけて、と言うのがここでの式の成り立ちです。決して右側からかけてはなりません。
*10 逆に言うと、実は線形代数の入門書の一番オイシイエッセンスだけを纏めると、このWikiのこの1ページにだけなってしまうのです(笑)。これには自信があります(笑)。では何で線形代数の入門書はあんなに厚いのでしょうか?みんな勘違いしていますが、大学の一般教養の数学の授業でさえ“数学者を育成する為の”カリキュラムを編纂してるのです(笑)。はい、これホント(笑)。つまり、線形代数入門の結論は至極簡単なんですが、“数学的に厳密かつ面白いトピック”を網羅しようとすると、あの量になってしまうのですね(笑)。そしてついていけない生徒は切っちゃって構わないのです(笑)。それが“大学教育”と言うものなんです。また、“数学的に面白いトピック”が実生活に役立つか、と言うとこれも実はあんまり関係ありません(笑)。それどころか、例えば応用数学の範疇、例えば物理であるとか、にも役立たない話がイッパイ書いてあります(笑)。と言うわけで、実際物理学者が書いた“簡易な”線形代数の書籍も数学者の手を通らないで出版されている例も存在するのですね。大学の縦割り業務の一面が見れて大変興味深いと思います(笑)。生徒の立場ではたまったもんではありません(笑)。
*11 正確に言うと、同次方程式AX=0の場合は“自明な解”が存在します。“自明な解”とは、ちょっと競馬で置き換えると、オッズaの馬券への投資金が0円、オッズbの馬券への投資金が0円、オッズcの馬券への投資金が0円、総当資金が0円で、どの馬券が的中しても払戻は全て0円の事で、確かに問題の題意は“数学的には”満たしています。こう言う当たり前のバカバカしい解を特に“自明な(初めから分かりきった)解”と呼ぶわけです。
*12 detAのdetは英語で言う行列式determinantの意味。本来、determinantの意味は、どちらかと言うと「決定項(determine=決定)」と言うニュアンスで、英語で言う行列matrixとは字面は全然関係がありません。これは実は歴史的にはその通りで、実際、行列が定義される前に行列式が発見されていました。つまり、行列式の方が歴史が古く、当然元々行列と行列式は何の関係も無かったのです。日本語では行列に行列式、と関連がある単語が当てられたのは、当然線形代数自体が明治維新以降での“輸入学問”だったからに他なりません。
*13 この項に対する規則と、符号に対する規則だけで、どんな大きなn行n列の行列式でも計算可能です。4行4列でも5行5列でも思いのまま。
*14 ちなみに英語では本当はクレイマーズルール(Cramer's Rule)と発音します。何で日本語ではクラメールの公式、と呼ぶのかイマイチ分かりません。スペル見る限りドイツ人とも思えないですしね(ドイツ人だったら恐らく文頭はKでしょう)。
*15 とは言っても4行4列、5行5列・・・・と増えていくとやっぱり計算は大変です(特に行列式の展開が)。しかしながら、それでも手計算では掃き出し法なんかより早く済むのです。
*16 正確にはn点買いの場合、この式が成り立つかどうかは数学的帰納法でも用いて証明するべきなんですが、そこまでするのはメンド臭いです(笑)。なお、他の競馬サイトでは、僕はこのn点買いの式を良く“クラメールの公式”として紹介していますが、正確に言うと、これは今まで見てきたら分かるように、ある条件の下での“クラメールの公式で求めた解”と言うべきものです。ただ、別に悪意があって言ってたわけではなくって、競馬に於いて実用的にはこの式そのものをクラメールの公式、として紹介した方が、線形代数の行列を用いた議論の複雑さを避ける為には良いだろう、と言った判断が一つ。もう一つは単に自分で新しいキャッチーなネーミングをつけるのがメンド臭かった、と言った理由に拠ります(笑)。
*17 昔のJRAではいくらくらい馬券に投入されたのか(得票数)、そして全体の投票額も現在のオッズのように事細かく見る事が出来た、と言うのを聞いたことがあります。しかし古い話のようなので、僕のような新参者には真偽の程は分かりませんが。オッズ推移の分析マニアの方もたくさんおられるようなので、こう言ったリアルタイムでのサーヴィスがあれば嬉しいですよね。なお、大井競馬場等の(多分)一部の地方競馬場では、オッズ情報以外に得票数自体もデータとしてリアルタイムでモニターに映し出されます。いわゆる大口投票も一目で分かりますのでなかなか面白いです(笑)。