Ich arbeite an einem Projekt, wo ich Funktionen durch mehrere Variablen wie func(input_parameters, variable_parameters) -> min(variable_parameters)
minimieren muss.Wie schreibt man Tests für mathematische Optimierungsverfahren?
ich Optimierungsfunktionen von SciPy, so Minimierungsprozess ist ein graues Feld: ich den Code auf GitHub sehe und über die verwendeten Algorithmen lesen, aber ich würde gerne glauben, dass es okay ist, und dem Testen von meinem eigenen Projekt zielt . Allerdings sollten bestimmte Bibliotheken in dieser Frage keine Rolle spielen.
Im Moment benutze ich einige Ansätze:
- einfache Beispiele Erstellen und Steigungen global/lokale Minima von Hand und schaffen Test, die Optimierung durchführt und vergleicht seine Lösung mit dem rechten
- Wenn Verfahren benötigt finden , zu vergleichen, analytisch mit ihrer numerischen Approximation berechnet Gradienten in Tests
- Für iterative Algorithmen auf denjenigen von
SciPy
Überprüfen, dass Sequenz von Funktionswerten vorgesehen eingebaut ist in nichtwachsende monoton Tests
Gibt es ein Buch oder einen Artikel über das Testen mathematischer Optimierungsverfahren?
P.S. Ich spreche nicht über Test functions for optimization , ich frage über Ansätze verwendet, um Optimierungsverfahren zu testen, um Fehler schneller zu finden.
Eine sehr gute Frage. Ich kämpfe seit Jahren damit; Was Sie beschreiben, ist ziemlich genau das, was ich in der Vergangenheit getan habe, und ich würde gerne andere Vorschläge hören. – TimChippingtonDerrick