変数が3個あり、ランダムに値を入れていき、最終的に求める値に近くなるかを再帰的に行いたいです。
たとえば、変数3個を、x1,x2,x3とし、近づける値がz1,z2,z3=1000,1000,1000とします。
また、固定の値y1,y2,y3を122,154,167とします。
この固定されたyの3個に対して、xの3個をかけることで、z1,z2,z3となるようにしたいです。
y1 * x1 ⇒ x1_1 これがz1に近い値
y2 * x2 ⇒ x2_1 これがz2に近い値
y3 * x3 ⇒ x3_1 これがz3に近い値
x1,x2,x3にそれぞれ50と最初に与え、x1_1,x2_1,x3_1がz1,z2,z3に近づけるように、
再帰的にx1,x2,x3を加減して代入し、近づけたく思います。
参考になるサイトなどありましたらご教示ください。
固定値 x 変数 = 仮の答え ≒ 目標値
となるものを3対計算したい、ということですよね。目標値 ÷ 固定値 = 「目標値に限りなく近づけるための変数」がえられるように見えます。再帰的に加減する必要はあるのでしょうか?
―-実際の値を得るには実験しないとどうなるか分からない、的な制約があるのであれば実験計画法だとかベイズ推定とかしないといけないかもですが。
あくまでも例をあげまして、再帰的に行う必要があります。
入力する値に対して、フィルターがあり、そのフィルターを通った値が目標値に近づくのかを再帰的に行います。入力する値はランダムにした方がよく、たとえば50としました。フィルターを通った値が500でした。目標値は1000なので、入力する値に500足しました。フィルターの値が1000となり、目標値に近づきましたという感じです。
実際には、おそらくですが、500足したところで目標値の1000にはならず、800となると思うのです。そのため、1000になるために、入力値をさらに変えて、出力値をみて、1000に近づけるという試行錯誤しなければなりません。そのため、再帰的な加減システムをつくりたく思います。
https://utokyo-ipp.github.io/appendix/3-recursion.html
「差があった時に差が詰まるように修正する」関数を定義する漢字ですよね?
もうgoki_gottanさんの頭には何となくアルゴリズムが組みあがっているのではないでしょうか?
y_waiwaiさんは恐らく主体性(投げやりではなく、できるところまでやった人)を応援したいのだと思います。30点くらいのできでもいいのでできるところまでPythonで書いてみて、その結果を載せてはいかがでしょうか?