x-y正答法を思いついたので述べておく。
x軸に解答、y軸に正解率をとる。
例えば今x軸の値として0以上10未満の整数(0,1,2,…,9)を考える。今正解は6だとする。Lisp言語で考える。
y軸の初期値はそれぞれのx軸の値に対して20だとする。これは0以上の整数に変化する。それをリストで表せば、
(20 20 20 20 20 20 20 20 20 20)
となる。
試行錯誤を行う。1回につき乱数を2つ発生させる。x軸について1つ、y軸について1つ。x軸については0以上10未満の
整数値の乱数。y軸については0以上100未満の整数値の乱数を発生させる。
例えば(x y)=(7 8)だとしよう。8は20未満の数値であるから(7 8)はサンプルとなり得る。7は6でなく不正解だから
7番の要素を1減じる。
(20 20 20 20 20 20 20 19 20 20)
となる。
例えば乱数値(x y)=(6 4)を得たとする。4は20未満だからサンプルになり得る。6の要素を1増加させる。
(20 20 20 20 20 20 21 19 20 20)
このように乱数値を発生させyが現在の確率値未満の場合のみアクション(サンプル)とする。
乱数値(x y)=(1 22)は確率値に入っていないからアクションとはせず、グラフは増減させない。
乱数を次々と発生させるとやがて
(0 0 0 0 0 0 81 0 0 0)
のようになると予想される。コンピュータのアクションは6に収束するだろう。こうして正答値が得られる。
コンピュータは正しい答を出すようになる。これをx-y正答法ということにする。
以下は作成したLispプログラムである。
以下はそのプログラムをclispで実行し、終わりの十数行を表示した例である。アクションが6に収束している。