Pibach hat geschrieben:derSammy hat geschrieben:
Nö, wenn die Zielfunktion nicht klar benannt werden kann, würde ich nicht von Optimierung sprechen.
Und dies ist genau der Kern der Diskussion, um den es hier seit 4 Seiten geht und woran sich Mac (nicht nur in deinem) Sprachgebrauch stört.
Es ist ein Unterschied, ob man das Optimum kennt, oder nur eine Bewertungsfunktion, die einen bei der Suche nach dem Optimum leitet.
Wenn man das Optimum kennt, gibt es schon mal sicher keinen Optimierungsprozess, der wäre ja schon direkt fertig. Und ab gewisser Komplexität, für die der Begriff ja gedacht ist, gibt es kein Optimum. Das gilt gesichert nach Grundlagen der Komplexitätstheorie. Das sollte hoffentlich klar sein.
Nö, ist mir ganz und gar nicht klar. Was bitte ist die Komplexitätstheorie?
Und ich tue mich auch schwer mit dem Begriff "Optimierungsprozess". Optimieren ist meines erachtens eher einer statische Sache, keine dynamische. Das Optimimum berechne ich oder mache von mir aus verschiedene Versuche, bei denen ich die optimale Konfiguration ermittle. Ein wirklicher Prozess ist das nicht, da ich alle Konfigurationen gleichzeitig testen könnte.
Was mir klar ist: Einerseits gibt es häufig verschiedene Kriterien, die man verbessern möchte, allen gleichzeig kann man in der Regel nicht gerecht werden. Aber hier würde ich wie gesagt nicht von Optimierung sprechen.
Und andererseits kann es sowohl aus mathematischer Sicht, aber auch ganz praktisch vorkommen, dass eine optimale Konfiguration nicht existiert (weil im theoretischen Optimum z.B. eine Singularität vorliegt). Das Finden einer "fast" optimalen Konfiguration kann ich hier noch als Optimierung verstehen, aber ich glaube eher weniger, dass du an diesen Fall gedacht hast.
Pibach hat geschrieben:
Es gibt aber auch sehr viele Optimierungsprozesse, wo die Bewertungsfunktion nicht so klar ist. Z.B. natürliche Evolution, Geschäftsmodelloptimierung, Prozessoptimierung, usw. Man versucht das irgendwie auf eine mathematische Funktion abzubilden, z.B. nach monetären Kriterien, muss aber dann teilweise nachkorrigieren, weil es nicht passte, z.B. Qualitätskriterien und langfristige Ziele nicht berücksichtigt wurden. Im Grunde ist das ein Problem, die Bewertung explizit zu machen, implizit ist sie u.U. schon vorhanden, aber nicht bewusst explizit formuliert oder mit den Mitteln der Mathematik nicht (so leicht) formulierbar.
Du listest sehr schön auf, wo ich den Begriff der Optimierung als ziemlich deplaziert betrachte. Ein Geschäftsmodell kann ich nicht optimieren. Ein Geschäftsmodell ist ein theoretisches Konzept, welches Dinge beinhaltet, die per se erstmal gar nicht in Zahlen abzubilden sind.
Natürliche Evolution ist im besten Sinne ein dynamischer Prozess, keine Optimierung (man beachte übrigens die tautologie in der ganzen Geschichte -> Was gilt als "besser angepasst"? Na letztlich dass, was überlebt hat. Und was überlebt? Na das was "besser angepasst" ist. So kann man die Theorie überhaupt nicht widerlegen...).
Einen Prozess kann ich auch nur hinsichtlich eines Kriteriums (und womöglich bezüglich Rahmenparameter) optimieren.
Mit der unbekannten Zielfunktion gebe ich dir recht und erachte es als eines der großen Übel der BWLer und Berater, alle möglichen Dinge immer bezüglich irgendwas "optimieren" zu wollen, indem man z.B. alles in Zahlen umrechnet. Währung ist eine eindimensionale Achse, aber unsere Welt ist wesentlich komplexer. Man kann eben nicht alles in einen einzelnen Score umwandelnt und dann optimieren. Also man kann schon, aber das ist quasi nie sinnvoll.
Pibach hat geschrieben:
Aus einer anderen Sicht ist die Bewertung a posteriori zwar immer möglich, aber nicht zum Zeitpunkt des Optimierungsprozesses.
Nö, die Zielfunktion ändert sich durch die Optimierung nicht. Ob eine Konfiguration optimal ist, ist vorher wie hinterher klar.
Pibach hat geschrieben:
Also z.B. beim Schach weiß man erst, wie gut ein Zug war, wenn man alle Folgezüge und Reaktionsvarianten des Gegners durchgerechnet hat, was ja bekanntlich nicht zu Lebzeiten des Universums beendet sein wird. Sowas wie Tempovorteil, Figurwerte, Mittendominanz usw. sind Bewertungsfunktionen, die einen bei der Suche unterstützen sollen. Die sind aber nicht sicher, d.h. es könnte sein, dass sie einen manchmal falsch leiten, oder dass jemand mal geeignetere Bewertungsfunktionen ermittelt.
Deshalb sollte man sauber unterscheiden, nach welchen Kriterien man einen Zug optimal nennen will. Theoretisch ist klar, dass es beim Schach einen optimalen Algorithmus geben muss, d.h. wenn beide Spieler den kennen, endet das Spiel immer als Sieg für Weiß, als Sieg für Schwarz oder als Remis. Wäre der Algorithmus bekannt, würden die Kriterien wie Tempovorteil, Figurwerte, etc. hinfällig. Es ist schlicht klar, welchen Zug man jeweils auf den Zug des Gegners erwiedern muss. Da dies eine theoretische Überlegung ist und du bereits dargestellt hast, dass es beim Schach derart viele Spielverläufe gibt, die man auch mit Rechentechnik nie komplett wird überblicken können, so behelfen sich Schachcomputer mit anderen Mitteln und beziehen die genannten Kriterien in irgendeiner Art und Weise mit ein. Hinsichtlich der im Schachcomputer hinterlegten Funktion ist dann der vorgeschlagene Zug optimal. Allerdings kommen unterschiedliche Schachcomputer, mit anderen Bewertungen des "optimalen Zuges" (im Sinne ihrer anderen hinterlegten Funktion) natürlich zu unterschiedlichen Ergebnissen. Die Frage, welche Bewertungsfunktion in einem Schachcomputer "optimal" ist, ist eigentlich obsolet. Optimal wäre nur die Funktion, die stets den "optimalen Zug" nach der abstrakten Theorie liefern würde. Alle anderen Bewertungsfunktionen sind schlicht unvollkommen.
Pibach hat geschrieben:
Was spricht dagegen einerseits von optimieren (im Sinne von Ergebnis kann nicht verbessert werden) oder andererseits von verbessern (Ergebnis ist jetzt besser, aber es kann nicht spezifiziert werden, in welchem Sinne es "optimal" ist) zu sprechen?
Wenn man das Optimum finden kann, war die Situation nicht komplex. Z.B. TickTackToe ist vollständig berechenbar. Schach aber nicht. Daher ist für TickTackToe immer der optimale Zug bekannt, für Schach nicht. Praktisch alle Probleme, die uns im Leben interessieren, sind viel komplexer als Schach, und NP-vollständig, also nicht effizient lösbar. D.h. de facto ist kein Optimum auffindbar zu Lebzeiten des Universums. Daraus folgt, man kann immer beliebig lange weiter optimieren und sich dem Optimum beliebig nähern ohne es je erreichen zu können. Selbst wenn die Rahmenbedingungen statisch wären (was sie natürlich nicht sind).
Dem möchte ich entschieden widersprechen! Es gibt durchaus Optimierungsprobleme, die höchstkomplex sind, wo man das Optimum aber berechnen kann. Es gibt weit mehr Optimierungsprobleme als nur in der Spieltheorie. Aber wenn wir schon dabei bleiben: Wenn ich recht informiert bin, ist "4 gewinnt" berechenbar - dort die optimale Strategie zu finden ist aber auch leicht einsichtig nicht elementar.
Bei der Frage um NP-Vollständigkeit ist zunächst nur für Entscheidungsprobleme definiert (Optimierungsprobleme sind wesentlich allgemeiner) und dabei geht es im Wesentlichen um die numerische Berechenbarkeit des Optimums. Auch wenn ein Problem NP-vollständig ist, so mag es (auch praktisch) dennoch berechenbar sein - zumindest solange das Problem "überschaubar" klein ist. Das alles hat aber nichts damit zu tun, ob man von Optimierung sprechen sollte oder nicht. NP-vollständigen Problemen liegt eine Zielfunktion zu Grunde und das Finden des Optimums würde ich als Optimierung bezeichnen. Das hat aber mit den Wischiwaschi-Bezeichungen wie Prozess- oder Geschäftsmodelloptimierung nichts zu tun.