レッスン
理論 — 連立方程式707語
二つの二元一次方程式は二本の直線を表します。そしてそれを解くということは、直線がどこで交わるのかを見つけ出す作業にほかなりません。しかし、交点が存在するかどうかと、その場所がどれほど正確に特定できるかはまったく別の問題であり、この正確さを測るための専用の数値が存在するのです。
各記号の意味
Δ- 行列式
a₁b₂ − a₂b₁です。ゼロなら二直線は平行であり、ゼロでなければ交点がただ一つ存在します。 κ- 条件数 です。係数のわずかな揺らぎに対して解がどれだけ動きうるかを示します。方程式の両辺を十倍しても、Δ とは違ってこの値が変わることはありません。
- 前提
- 係数が厳密に正しいという前提です。もし係数が測定から得られたものであれば、交点はその不確かさを受け継ぎ、さらに増幅させてしまいます。
- 成り立たない場合
- 行列式は、解の存在を教えてはくれます。しかし、その解の信頼性までは語りません。語ることすらできないのです。方程式の一つを 10 倍にすれば Δ も 10 倍に膨らみますが、背後にある幾何学的な関係は何も変わらないからです。Δ にできないこの役割を、条件数が担います。このページのプリセット Almost parallel では、その値は 312 に達します。これが意味するのは、誤差への許可証です。四つの係数のどこかにあるわずか 0.1% の相対誤差が、交点ではおよそ 31% の誤差となって現れることを許してしまうのです。橋の設計なら誰もがはねつけるような大きなブレですが、行列式にも、代数の式にも、導かれた解そのものにも、この危うさは一切姿を見せません。この次のステップでは、方程式の行数を増やして再びこの指標に向き合います。そこでは、そもそも計算を実行する価値があるのかどうかを、条件数が決定することになります。
全プロセスの詳細解説
-
コーヒーが1多くかかる場合に8となる2つのコーヒーと1つのケーキ 7 ステップ
コーヒー二杯とケーキ一個の代金は 8 です。コーヒー一杯からケーキ一個を引くと 1 になります(コーヒーはケーキより 1 だけ高い)。それぞれの値段はいくらでしょうか。また、もしこの金額が不鮮明なレシートから読み取られたものだとしたら、その答えをどの程度信用できるでしょうか。
-
この二つの事実を、同じ二つの未知数を用いて式に表します。これらの二本の直線を正しく引くことこそがモデリングであり、その後の計算はすべて機械的な作業に過ぎません。
-
方程式を解く前に行列式を確認してください。値は 0 ではないので、解はただ一つ存在し、それを探す価値があることが分かります。
-
y を消去します。二つ目の式に 1 を掛けて足し合わせるか、あるいは一つ目の式に −1 を掛けて引きます。どちらにせよ y の項は相殺されるようにできています。
-
コーヒーの値段は 3 と求まります。これをどちらかの式に代入してケーキの値段を出し、確認にはもう一方の使わなかった式を用いてください。先ほど使ったばかりの式に代入しても、正しいかどうかの証明にはならないからです。
-
次にレシートの話に戻りましょう。二つ目の方程式に読み間違いがあり、ケーキの係数が −1 から 0.49 に変わってしまったとします。すると行列式は −3 から −0.02 へと落ち込みます。
-
解がただ一つであることに変わりはなく、その値は (−146, 300) に移動しました。つまりコーヒーが −146 という値段になったのです。代数計算は不平一つこぼしませんでした。警告する術を持たないからです。
-
ここから先は単なる代数学ではありません。価格がマイナスになるということは、コーヒーがおかしいのではなく、作成したモデルが間違っていると計算結果が教えてくれているのです。ツールは喜んでその解を報告してきますが、行列式は事前により静かに警告を発してくれます。そして方程式を解く手法そのものは、価格がマイナスになり得ないという現実を知りません。
解答
コーヒーは 3、ケーキは 2。 行列式は −3 なので交点は一つであり、最初の二つの方程式も両方とも成り立ちます。係数の一つを直線が平行になる方向へ少しずらすと、全く同じ計算手法が不平一つこぼさずに −146 という解を返してきます。だからこそ、行列式は解を出した後ではなく、出す前に確認する価値があるのです。
-
-
二本の平行線が、解を持つことにどれだけ近づけるか 6 ステップ
2x + y = 8 と 4x + 2y = 10 です。行列式は 0 ですが、これでは行列式が 0 のときの二つの判定のどちらに当たるかが分かりません。どちらなのかを求め、そのうえでこの連立方程式が解を持つことにどれだけ近いのかを判断してください。
-
行列式が 0 なので、一点で交わることはありません。それ以上のことは言えません。平行で別々の二直線も、同じ直線を二度書いたものも、どちらも 0 を与えるからです。
-
それでも消去してみると答えが出ます。第一の式を 2 倍して第二の式に揃え、引きます。残った式に未知数は含まれていません。グラフの下の手順では 0x + 0y = 6 と表示され、0 は 6 ではありません。
-
比を見れば、計算をまったくせずに同じことが言えます。二つの左辺は 1 : 2 の比にありますが、二つの定数はそうではありません。つまり二直線は向きを共有し、位置だけが違うのです。
-
では、どれだけ離れているのでしょうか。第二の式を 2 で割ると二直線は同一の左辺を持つので、隔たりは定数の差を係数の組の長さで割ったものになります。
-
ここで、ツールが手前で止まる問いが出てきます。どの点も両方を満たさないなら、最も近い点はどこでしょうか。二つの残差の平方をまとめて最小化します。2x + y を u と書くと、どの u でも第二の残差は第一の 2 倍なので、重みは 4 倍かかります。最小値は真ん中の 6.5 ではなく u = 5.6 に来ます。
-
これは、この二直線についてではなく最小二乗法についての警告です。答えが動いたのは、第二の式が大きな数で書かれていたからであって、それがより良い証拠だからではありません。それぞれの式を係数の組の長さが 1 になるように正規化すると、最も近い点はちょうど真ん中、どちらの直線からも 0.671 の位置に落ち着きます。
解答
解なし。そして二直線の隔たりは 1.342 です。 行列式は交点が消えたことを告げ、定数はそれがどちらの意味で消えたのかを告げます。両方に最も近い点は、式がたまたまどう書かれていたかに左右されます。与えられたままなら最小二乗法は 2x + y = 5.6 に落ち、両方を正規化して初めて真ん中の 6.5 に落ち着きます。
-
学習の道すじ
xについて解く:マイナス記号からの積み上げ
参考文献 (1)
- The paper that named the quantity, and worked out what it costs you: A. M. Turing, "Rounding-off Errors in Matrix Processes." The Quarterly Journal of Mechanics and Applied Mathematics 1:1 (1948), 287–308.