Ich möchte mit scipy optimize optimieren, wusste aber nicht, wie ich eine Variable eingeben soll, die nur Ganzzahlen wie die Anzahl der Dinge akzeptiert, also in diesem Memorandum
Ich fand die Antwort in der Scipy-Formel. https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.optimize.brute.html scipy.optimize.brute (Minimize a function over a given range by brute force.) Brute Force bedeutet gewaltsam, und es bedeutet, weltweit mit Gewalt nach dem optimalen Wert zu suchen.
scipy.optimize.brute(func, ranges, args=(), Ns=20, full_output=0, finish=<function fmin at 0x2b45cb917e60>, disp=False) Da dieses Finish jedoch die Umgebung nach dem Runden weiter optimiert, wird, wenn dies auf Keine gesetzt ist, nur das in Bereichen definierte Gitter berechnet und die minimale Position und der Wert zu diesem Zeitpunkt werden zum Finish zurückgegeben. Masu Wenn Sie damit Slice () so definieren, dass nur Ganzzahlen in Bereichen wie (Slice (0,15,1), Slice (0,10,1)) verwendet werden, ist der Mindestwert nur Ganzzahlen. Finden.
Um ehrlich zu sein, sollten Sie np.meshgrid und dann die for-Anweisung für Round-Robin verwenden. Wenn diese jedoch als API bereitgestellt wird, können unnötige Fehler vermieden werden. Ich denke, es ist okay, also würde ich es gerne bequem benutzen
Recommended Posts