数学や統計の本を読んでいると固有値というのが出てきますが、APL/J言語でどうやって解くのだろうと思っていました。英語ではなぜかドイツ語みたいな単語でeigenvalueと呼ぶらしいのですが、英語でも日本語でも調べていてしっくりこないでいたところ、ネットで中野嘉弘先生のJAPLAのペーパーがみつかったので、それをなぞりながら勉強します。まず「はしがき」がわからないので飛ばします。統計分析(多変量解析)、線形代数、行列などが関係あるらしい。
課題:
連立方程式AX=λX解の条件はdet|A - λI|=0である。Aは係数行列、Iは単位行列である。この式を固有方程式、λラムダを固有値と呼ぶ。
n次の行列においてλを求める。
TeXでラムダの字の書き方がわからないのでとりあえずこんな表記にしておきます。
参考;
j言語と固有値問題 中野嘉弘
1:http://www.ae.keio.ac.jp/lab/soc/takeuchi/japla/works/regular/07/nakano0704.pdf
2:http://www.ae.keio.ac.jp/lab/soc/takeuchi/japla/works/regular/07/nakano0705.pdf
3:http://www.ae.keio.ac.jp/lab/soc/takeuchi/japla/works/regular/07/nakano0706_1.pdf
4:http://www.ae.keio.ac.jp/lab/soc/takeuchi/japla/works/regular/07/nakano0706_2.pdf
5:http://homepage3.nifty.com/asagaya_avenue/apl/association/nakano_sept2007.pdf
6:http://homepage3.nifty.com/asagaya_avenue/apl/association/nakano_oct2007.pdf
すこし実験です。
a=:2 2$3 2 4 1 NB.2x2の行列を作ります a 3 2 4 1 NB.det|a - xi| 固有方程式を解きます NB.(3 - x) * (1 - x) - 4 * 2 NB.3 - 8 - 4x + x^2 NB.-5 - 4x + x^2 p. _5 _4 1 p.(ピードット)はxの多次元方程式の解を求めます +-+----+ |1|5 _1| 解は5と_1であることがわかります +-+----+
ある選択肢があって選択すための評価基準として素直さと能力の二つの選択基準があって、素直さを能力の3倍の重み付けで評価したいという場合に応用してみます。
a=:2 2$1 3 1r3 1 a 1 3 1r3 1 NB.(1 - x)*(1 - x) - 1r3 * 3 NB. 0 _2x + x^2 p. 0 _2 1 +-+---+ |1|2 0| +-+---+ NB.AV=2V NB. x + 3y = 2x NB. 1r3x + y = 2y NB. x=0.75, y=0.25 mp =: +/ . * a mp (0.75 0.25) 1.5 0.5 v =: 0.75 0.25 a mp v 1.5 0.5 2 * v 1.5 0.5 (a mp v) = 2 * v 1 1
きょうはここまで。