Heuristiken sind nichts Neues, sie spielen eine wichtige Rolle in unserem täglichen Leben, sowohl beim Problemlösen als auch bei der Entscheidungsfindung. Da die Welt heutzutage voller Informationen ist und unser Gehirn nur eine bestimmte Menge davon verarbeiten kann, helfen uns Heuristiken in diesem Sinne sehr. Denn wenn Sie versuchen würden, jeden einzelnen Aspekt jeder Situation oder Entscheidung zu analysieren, würden Sie nie etwas zustande bringen. Wir treffen jeden Tag Tausende von Entscheidungen und über die meisten denken wir nicht wirklich nach, wir „wissen“, wie wir uns in bestimmten Situationen aufgrund unserer Erfahrung verhalten sollen und genau das ist es, was Heuristiken ausmacht. Wenn wir versuchen, ein Problem zu lösen oder eine Entscheidung zu treffen, greifen wir oft auf diese mentalen Abkürzungen zurück, wenn wir eine schnelle Lösung brauchen.
So, was ist heuristische Programmierung?
Heuristiken sind mentale Abkürzungen, die uns helfen, schnell Entscheidungen und Urteile zu treffen, ohne viel Zeit mit der Recherche und Analyse von Informationen zu verbringen. Sie beinhalten normalerweise die Konzentration auf einen Aspekt eines komplexen Problems und das Ignorieren anderer. Sie funktionieren unter den meisten Umständen gut, aber sie können zu systematischen Abweichungen von Logik, Wahrscheinlichkeit oder rationaler Wahl führen. Beispiele für den Einsatz von Heuristiken sind die Verwendung einer Faustregel, einer begründeten Vermutung, eines intuitiven Urteils, einer Schätzung, eines Stereotyps, eines Profils oder des gesunden Menschenverstands.
In der Informatik, der künstlichen Intelligenz und der mathematischen Optimierung ist eine Heuristik eine Technik, die entwickelt wurde, um ein Problem schneller zu lösen, wenn klassische Methoden zu langsam sind, oder um eine ungefähre Lösung zu finden, wenn klassische Methoden keine genaue Lösung finden. Dies wird erreicht, indem man Optimalität, Vollständigkeit, Genauigkeit oder Präzision gegen Geschwindigkeit tauscht.
Eine heuristische Programmierung setzt eine praktische Methode ein, die nicht garantiert optimal, perfekt, logisch oder rational ist, sondern ausreicht, um ein unmittelbares Ziel zu erreichen. Es ist wichtig zu betonen, dass Heuristiken die Strategien sind, die aus früheren Erfahrungen mit ähnlichen Problemen abgeleitet wurden. Diese Strategien beruhen auf der Verwendung von leicht zugänglichen, wenn auch locker anwendbaren Informationen zur Steuerung von Problemlösungen bei Menschen, Maschinen und abstrakten Sachverhalten.
Das Ziel einer Heuristik ist es, in einem angemessenen Zeitrahmen eine Lösung zu erzeugen, die gut genug für die Lösung des vorliegenden Problems ist.
Die Abwägungskriterien für die Entscheidung, ob eine Heuristik für die Lösung eines gegebenen Problems verwendet werden soll:
- Optimität: Wenn mehrere Lösungen für ein gegebenes Problem existieren, garantiert die Heuristik, dass die beste Lösung gefunden wird? Ist es tatsächlich notwendig, die beste Lösung zu finden?
- Vollständigkeit: Wenn mehrere Lösungen für ein gegebenes Problem existieren, kann die Heuristik sie alle finden? Brauchen wir tatsächlich alle Lösungen? Viele Heuristiken sind nur dazu gedacht, eine Lösung zu finden.
- Genauigkeit und Präzision: Kann die Heuristik ein Konfidenzintervall für die vermeintliche Lösung liefern? Ist der Fehlerbalken der Lösung unverhältnismäßig groß?
- Ausführungszeit: Ist dies die beste bekannte Heuristik für die Lösung dieser Art von Problem? Einige Heuristiken konvergieren schneller als andere. Einige Heuristiken sind nur unwesentlich schneller als klassische Methoden.
Und nun die Hauptfrage: Warum verlassen wir uns auf Heuristiken?
Psychologen haben ein paar verschiedene Theorien vorgeschlagen:
- Aufwandsreduktion: Nach dieser Theorie nutzen Menschen Heuristiken als eine Art kognitiver Faulheit. Heuristiken reduzieren die mentale Anstrengung, die erforderlich ist, um eine Auswahl zu treffen und Entscheidungen zu treffen.
- Attributsubstitution: Andere Theorien besagen, dass Menschen einfachere, aber verwandte Fragen anstelle von komplexeren und schwierigeren Fragen ersetzen.
- Schnell und genügsam: Wieder andere Theorien besagen, dass Heuristiken tatsächlich genauer sind als sie voreingenommen sind. Mit anderen Worten: Wir verwenden Heuristiken, weil sie schnell und in der Regel richtig sind.
Dies steht im Gegensatz zur algorithmischen Programmierung, die auf mathematisch beweisbaren Prozeduren basiert. Wichtig zu verstehen ist hier aber, dass sich die heuristische Programmierung dadurch auszeichnet, dass die Programme selbstlernend sind; sie werden mit der Erfahrung besser. Heuristische Programme erreichen nicht immer das allerbeste Ergebnis, sondern liefern in der Regel ein gutes Ergebnis.