1

2 つの変数と 1 つの定数を持つ非線形複素関数を最小化しようとしています。複雑な関数を最小化する方法についての質問を見つけましたが、うまくいくと思います (?) 多変数 1 つの引数の問題を最初に解決したいので、まだ試していません。

たとえば、非常に単純な実関数:

def function(param):
    x, y, a = param
    return(x**2 + y**2 + a*x)

3 つのパラメーターに関しては最小化できますが、2 つの変数 1 つの定数に関してはできません。私が行った場合

minimize(function, [2,4,5])

それは正常に動作します。

誰かが私に似たものに尋ねたこの質問を見つけましたが、答えは私にはうまくいきません。

def function(x, y, a):
    return(x**2 + y**2 + a*x)
minimize(function, 2, 4 args=5)

しかし、これによりエラーが発生します。このように3で最小化するだけでもminimize(function, 2, 4, 5)、多くのエラー行が発生し、このようにしminimize(function, (2,4,5))>missing 2 required positional arguments: 'y' and 'a'..

次に複雑なことですが、答えでは、関数を2つの実際の関数に分割し、それらを最小化して解決し、両方の結果を1つに融合すると言われているように見えました。しかし、誰かが私を助けてくれるなら、私が理解しているかどうかはわかりません。関数は複素関数 (実部と虚部) ですが、入力 (2 変数 1 定数) は実数です。

多分これを行うパッケージがありますか?

4

1 に答える 1