Strukturen und Constraints
Inhalt
Vorwort: Constraints als Zwangsbedingungen - Freiheit 'mal minus eins'
1. Mathematische Definition von Constraints
2. Constraints der analytischen Mechanik
2.1 Holonome Constraints
2.2 Nichtholonome Constraints
3. Contstraints und die Systementwicklung komplexer dynamischer Systeme
3.1 Constraints als Ursache für eine dynamische Systementwicklung
3.2 Orientierte Systementwicklung innerhalb interner und externer Constraints
4. Contstraintsolver in der Informatik
4.1 Constraintprogrammierung als Programmierparadigma
4.2 Constraints und KI-Forschung
5. Die "Theory of Constraints" als Systemoptimierung in der Wirtschaftswissenschaft
6. Die Constraints der Evolution
Vorwort: Constraints als Zwangsbedingungen - Freiheit 'mal minus eins'
Bildlizenz-Info: Wikipedia (Chaine.jpg); Public
Domain
Insbesondere die Phänomene von komplexen Systemen, die sich auf Vorgänge zur Selbstorganisation und Evolution von Systemen beziehen, legen es nahe, für die Modellierung einige weitergehende Ideen und Verfahren zu entwerfen.
Man kann auf der einen Seite Relationen als etwas Positives sehen, welche Systeme mit neuen Fähigkeiten ausstatten, auf der anderen Seite ist jedoch jedes Relationengebilde auch als ein System anzusehen, welches gerade durch diese Relationen immer auch gleichzeitig inneren und äußeren Zwängen unterliegt. Genau so, wie neue Möglichkeiten entstehen, entstehen eben auch neue Abhängigkeiten und Zwänge, welche eine nachhaltige Wirkung auf die jeweilige Systementwicklung ausüben. Zwangsbedingungen bzw. Randbedingungen schränken auf der einen Seite die Freiheitsgrade eines Systems ein, indem sie selektiv auf die Dynamik einwirken - und ermöglichen auf der anderen Seite damit auch erst ganz neue (System-)Funktionen.
Die abstrakte Welt der Randbedingungen
Betrachten wir dazu zunächst beispielhaft die Chaostheorie. Sie ist geradezu zum Aushängeschild für die (theoretisch sogar unendlich hohe) Empfindlichkeit von dynamischen Systemen von den Anfangsbedingungen geworden. In chaotischen Systemen können sich diese nämlich lawinenartig verstärken und der Systementwicklung einen einzigartigen Verlauf geben.
Weiterhin sind Anfangsbedingungen auch dort besonders zu beachten, wo die Dynamik des Systems auf die Anfangsbedingungen selbst innerhalb von Rückkopplungsschleifen zurückwirkt. In der Biologie nennt man diesen Vorgang "Autokatalyse", was soviel wie Selbstverstärkung bedeutet. In einem solchen Loop verlieren sich jedoch die "Anfangsbedingungen" als Ausgangszustand, und werden statt dessen von permanenten "Randbedingungen" abgelöst, welche die Entwicklung des Systems kanalisieren. Der Begriff der Randbedingungen wird in der Physik dazu verwendet, um die potentiell unbegrenzte Vielfalt naturgesetzlich möglicher Prozesse einzugrenzen, weswegen man auch von inneren und äußeren "Zwangsbedingungen" spricht.
In autokatalytischen Systemen können sich solche Zwangsbedingungen sogar selbstständig aufbauen, optimieren und auf ein höheres Organisationsniveau heben. Die Zwangsbedingungen bestimmen demnach ganz entscheidend die Entwicklung eines sich selbstorganisierenden Systems. Damit wird schließlich der Begriff der Zwangsbedingung "zu einem Zentralbegriff für das Verständnis komplexer Systeme und ihrer Entwicklung."1 Denn Randbedingungen sind immer Träger von Informationen über die materielle Organisation eines Systems. Und diese Organisation kann im Einzelfall über immer neue Rückkopplungsschleifen zu einer starken hierarchischen Ordnung unter Randbedingungen führen, die zudem stark kontextabhängig sind.
Michael Polanyi hatte als erster auf die grundlegende Bedeutung der Randbedingungen hingewiesen, die für ihn jedoch eine separate ontologische Existenz besaßen. Küppers konnte hingegen zeigen, dass Randbedingungen auf die Prozesse der Selbstorganisation zurückzuführen sind, und dabei von selbst schrittweise im Rahmen der Evolution aus vormals unspezifischen Anfangsbedingungen hervorgehen können.
Die Theorie der Selbstorganisation spielt in der strukturwissenschaftlichen Forschung derzeit eine überragende Rolle. In der Naturwissenschaft möchte man damit von der Entstehung von großräumigen Strukturen im Universum bis hin zur neuronalen Gehirnorganisation universelle strukturbildende Prozesse modellieren können. Auch auf soziale Systeme kann man das Konzept der Randbedingungen vielleicht ebenfalls ausbauen, da menschliches Handeln stets kontextabhängig, d. h. in eine komplexe Hierarchie von Randbedingungen (und inneren und äußeren Zwängen) eingebunden ist. Diese Randbedingungen kanalisieren dann das menschliche Handeln, etwa durch den kulturellen Horizont, der jeweiligen Persönlichkeitsstruktur oder der biologischen Konstitution, und bestimmen damit maßgeblich das Sozialverhalten.
B. O. Küppers sieht in dieser universellen Anwendbarkeit dieses modellbildenden Verfahrens sogar die Chance für einen neuen strukturwissenschaftlichen Forschungszweig, der in Anlehnung an das griechische Wort "peras" (Grenze, Rand) "Peranetik" genannt werden könnte.2
1. Mathematische Definition von Constraints
Ein geometrischer Constraint schränkt beispielsweise die relativen Bewegungsmöglichkeiten zwischen zwei oder mehr geometrischen Elementen ein. Mathematisch wird ein geometrischer Constraint durch eine Gleichung ausgedrückt, der die Lage eines Körpers bezüglich der Lage eines anderen Körpers einschränkt. Praktische Beispiele für Constraints in der Mechanik sind Gelenke (Kugelgelenke oder Scharniere). Constraints können jedoch nicht nur durch Gleichungen beschrieben werden, sondern auch durch Ungleichungen. So dürfen sich beim mechanischen Kontaktproblem zwei Körper im Berührpunkt nicht durchdringen, jedoch sich jederzeit wieder auseinanderbewegen.
Zwangsbedingungen oder Constraints äußern sich in einem System durch das Wirken von Kräften. Diese Kräfte werden bestimmt und dann dem (constraintlosen) System als zusätzliche Kräfte hinzugefügt.
Mit Constraints werden Beziehungen zwischen Elementen festgelegt. Dies kann mit Hilfe von Verbindungspunkten, Vektoren, Punkten oder Flächen geschehen. Dabei sind eine kleine Menge an Basisconstraints definiert, die über Komposition zu höherwertigen Constraints zusammengesetzt werden können.
Allgemein gesehen werden die in beliebiger Anzahl n vorhandenen Freiheitsgrade durch m Constraints auf n-m Freiheitsgrade reduziert. Das System kann dann durch n-m Dimensionen (bzw. generalisierte Koordinaten) beschrieben werden, die jedoch alle voneinander unabhängig sein müssen. Anschließend kann man dann ein n-m-dimensionales Gleichungssystem von gewöhnlichen Differentialgleichungen aufstellen, um es beispielsweise mit numerischen Integrationsverfahren zu lösen.
2. Constraints der analytischen Mechanik
Als Zwangsbedingung wird in der klassischen Mechanik eine Einschränkung der Bewegungsfreiheit eines Massenpunktes bezeichnet. Dadurch nimmt die Anzahl der Freiheitsgrade eines Systems ab. Werden zu viele Zwangsbedingungen gestellt, kann es passieren, dass keine physikalische Lösung existiert.
Die Lagrangesche und die Hamiltonsche Formulierung der klassischen Mechanik sind besonders geeignet, Systeme mit Zwangsbedingungen zu beschreiben. Dabei werden die folgenden beiden Arten von Zwangsbedingungen unterschieden (Rischke u. a. 3):
2.1 Holonome Constraints
Holonome Constraints reduzieren die Anzahl der Freiheitsgrade eines Systems im Raum um eine bestimmte, constraintabhängige Zahl. Ein Element im Raum hat beispielsweise drei Freiheitsgrade für seine Bewegung. Soll sich dieses Element jedoch lediglich auf einer Ebene bewegen, so reduziert sich die Zahl der Freiheitsgrade um eins. Die Bewegung kann dann durch die x- und z-Komponente beschrieben werden.
Es gibt sozusagen bei holonomen Constraints Orte, die nicht erreicht werden können. Mann könnte sich auch einen Roboter vorstellen, der durch einen stark zugestellten Raum manövrieren muss, und dem dabei nur einen Teilbereich des gesamten Raumes zur Verfügung steht.
Weiterhin unterscheidet man innerhalb der holonomen Constraints in
- holonom-skleronome (starre) Zwangsbedingungen, die nicht explizit von der Zeit abhängen
- holonom-rheonome (fließende) Zwangsbedingungen, bei denen mindestens eine Bedingung zeitabhängig ist
Basale holonome Constrainttypen sind:
- Punkt-zu-Punkt-Constraint
- Distanz-Constraint
- Orientierungs-Constraint
- Punkt-auf-Linie
- Punkt-auf-Ebene
- Orthogonalität
- Punkt-auf-Funktion
- Kugelgelenk
- Scharnier
2.2 Nichtholonome Constraints
Nichtholonome Constraints beschränken Elemente und Systeme nicht auf einen bestimmten Ort, sondern schränken sie hinsichtlich der Geschwindigkeit ein, die als Vektor aus einem Geschwindigkeitsbetrag und einer Richtung bestehen.
Bei Nichtholonomen Constraints gibt es sozusagen Richtungen, in die man sich nicht bewegen kann, jedoch kann im Prinzip jeder Ort innerhalb eines gegebenen Raums erreicht werden. Ein Beispiel wäre ein mit Gas gefüllter Raum, bei dem sich die Gasatome zwar im ganzen Raum verteilen können, wenn sie auf die Wände treffen, werden sie jedoch zu einer Richtungsänderung gezwungen, analog zu einem Billardtisch, bei dem die Kugeln an der Bande reflektiert werden. Man könnte sich alternativ auch einen Roboter vorstellen, der durch ein Labyrinth von Gängen in einem Raum manövrieren muss. Es ist dabei zwar prinzipiell möglich, alle Orte im Raum zu erreichen, jedoch müssen dafür lokal stets bestimmte, vom Labyrinth vorgegebene Richtungsänderungen vorgenommen werden. Weiterhin gibt es die Beschränkung des Geschwindigkeitsbetrages, d. h. es gibt beispielsweise eine Begrenzung bei der maximalen Geschwindigkeit (wie etwa die Lichtgeschwindigkeit).
Weiterhin unterscheidet man innerhalb der nichtholonomen Constraints in
- Ungleichungen (Beispiel: Kontaktproblem)
- Zwangsbedingungen in differentieller, nicht-integrierbarer Form (Beispiel: rollendes Rad)
Basale nichtholonome Constrainttypen sind:
- Geschwindigkeit bezogen auf die mögliche Bewegungsrichtung
- Geschwindigkeitsbetrag, maximale Geschwindigkeit (dabei jedoch alle Richtungen möglich)
- Geschwindigkeitsfunktionen
Weitere spezielle Constrainttypen:
- Punkt auf Kurve
- Punkt auf Fläche
- Zahnrad
3. Constraints und die Systementwicklung komplexer dynamischer Systeme
3.1 Constraints als Ursache für eine dynamische Systementwicklung
Neben den "klassischen" Constrainttypen sind weiterhin im Rahmen der Theorie komplexer dynamischer Systeme einige weitere Typen entwickelt worden, die primär im Zusammenhang mit dissipativen Systemen und Selbstorganisationseffekten stehen. Juarrero 4 teilt diese folgendermaßen ein:
- Informationstheoretische Constraints
- kontextfreie Constraints
- kontext-sensitive Constraints
- Constraints erster und höherer Ordnung
- Buttom-Up und Top-Down-Constraints
Ausgehend von der informationstheoretischen Sichtweise, dass nur ein zufälliges Signal ein völlig constraintfreies Signal ist, und daher auch keine Informationen tragen kann, ist jede Art der Beschränkung der Zufälligkeit ein Constraint und ermöglich damit erst eine „In-Formierung“.
Die unterste Hierarchiestufe bildet dabei das kontextfreie Contraint, welches lediglich einige Verteilungs- oder Kontrollparameter auf einen gewissen Wert beschränkt. Damit kann man dann zwar relative Anhäufungen bilden, die abseits der stochastischen Normalverteilung liegen, jedoch noch keine komplexen Systeme formen. Dies bewerkstelligen erst die kontextsensitiven Constraints, welche bereits eingeschränkte Elemente wiederum dadurch einschränken, indem begrenzende Interdependenzen zwischen diesen Elementen eingebracht werden. Somit werden beispielsweise nachfolgende Ereignisse von den Vorgängern beeinflusst oder eine relative Position oder Funktion eines Elements ist von der umgebenden Nachbarschaft abhängig und eingeschränkt.
Juarrero nennt diese Constraints auch First-Order-Constraints. Schließlich folgen die Second-Order-Constraints, welche als Top-Down-Constraints zusätzliche Einschränkungen für das Gesamtsystem bilden, und in der Synergetik als Ordnungsparameter bekannt sind.
Kurz gesagt bilden sich durch Buttom-Up-Constraints Möglichkeiten für das System aus, welche dann einer Selektion durch die Top-Down-Constraints unterliegen.
3.2 Orientierte Systementwicklung innerhalb interner und externer Constraints
Die Gesamtheit aller Kriterien, an denen sich eine Systementwicklung orientieren kann oder muss, kann man nach Bossel 5 beispielsweise als Orientoren bezeichnen. Sie sind die für ein System zu beachtenden Aspekte, an denen sich das entsprechende Systemverhalten ausrichtet. Dabei spielen drei Kriterien eine wichtige Rolle:
- Beschränkungen (im Sinne von Constraints)
- Gütemaße zur Unterscheidung von besseren und schlechteren Lösungen
- Wichtungen von Gütemaßen
Von der Kausalität zur Leitwertabstimmung
Aufsteigend nach der Komplexität der Veränderung von Systemen sortiert, gibt es folgende Reaktionsmöglichkeiten auf Zwänge innerhalb und zwischen Systemen:
- Die einfachste Art einer Systementwicklung besteht in einer Systemreaktion auf eine lineare Ursache-Wirkungsbeziehung (lineare Kausalität). Hierbei kann der Output direkt zum Input in Beziehung gesetzt werden.
- Die nächste Stufe beinhaltet Reaktionen, die über Rückkopplungen im System selbst erzeugt werden, also mindestens über eine Zustandsgröße laufen. Dazu gehören sämtliche Regelungsvorgänge. An den Wirkstrukturen und an den Parametern eines Systems ändert sich hier jedoch noch nichts.
- Als nächstes finden wir die Prozesse der Anpassung. Hier wird zwar die Wirkstruktur eines Systems beibehalten, aber es werden Parameter verändert, die das Verhalten selbst ändern.
- Dann folgen die Prozesse der Selbstorganisation. Dies ist stets mit einem Strukturwandel im System verbunden, d. h. einer Veränderung der Wirkstruktur. Der Funktions- oder Systemzweck bleibt jedoch trotz Strukturwandel erhalten.
- Die höchste Hierarchiestufe ist dann die der Evolution eines Systems. Hierbei wird der Funktions- und Systemzweck mit der Zeit verändert, meist als Reaktion auf veränderte Umweltbedingungen, welche eine massive Neuausrichtung der Zielfunktionen des Systems zur Folge hat.
All diese Systemreaktionen auf Anforderungen der Umwelt stellen den Versuch dar, die Systemintegrität zu waren. Jedes System ist dabei gewisser Maßen gezwungen sich an "Leitwerten" bzw. Orientoren auszurichten, um seine langfristige Entfaltung und Erhaltung zu sichern.
Innere Beschränkungen (Constraints) im Sinne von Orientoren sind:
- Existenzfähigkeit des Systems
- Koexistenzfähigkeit mit anderen Systemen bzw. der Umwelt
- Sicherung der eigenen Stabilität hinsichtlich kurzfristigen Umweltschwankungen
- Kurzfristige Handlungsfreiheit gegenüber der Umweltvielfalt und den daraus resultierenden Chancen und Risiken
- Anpassungsfähigkeit und Wandlungsfähigkeit im Laufe der Zeit
- Effizienz und Wirksamkeit
Äußere Beschränkungen (Constraints) im Sinne von Orientoren sind:
- gegebener Normalzustand der Umwelt
- Vorhandensein anderer Systeme in der Umwelt
- kurzfristige Umweltschwankungen
- gegebene Umweltvielfalt
- langfristiger Umweltwandel
- Ressourcenknappheit der Umwelt
All diese inneren und äußeren Beschränkungen führen dazu, dass jedes System sich an gewissen Orientoren ausrichtet, die das jeweilige Systemverhalten und die Systementwicklung zielgerichtet steuern.
Orientoren und komplexe biologische, soziale Systeme
Ein bewusst agierendes komplexes System, wie beispielsweise der Mensch wird seine Handlungen an gewissen eigenen (oder vorgegebenen) Orientoren ausrichten, und dabei auf die möglichst optimale Erfüllung von Mindest-Gütemaßen achten, die er nach verschiedenen Gewichtungskriterien ordnet. So kann dann ein gewisser allgemeiner oder spezieller "Zufriedenheitsindex" maximiert werden.
4. Constraintsolver in der Informatik
4.1 Constraintsprogrammierung als Programmierparadigma
Die Constraintprogrammierung (engl.: Constraint Programming) ist ein Programmierparadigma, das seit Mitte der 1980er Jahre entwickelt wird und sich als natürliche Weiterentwicklung der logischen Programmierung versteht. Logische und Constraintprogrammierung werden typischerweise in Kombination eingesetzt, was zu einer erheblichen Steigerung der Ausdrucksstärke, Flexibilität und Effektivität der Paradigmen führt.
Ziel der Constraintprogrammierung ist es, eine Menge Informationen, die aus mathematischen Gleichungen oder logischen Prädikaten besteht, auf Widerspruchsfreiheit zu prüfen und gegebenenfalls zu vereinfachen. Diese Vereinfachungen werden von einem speziellen Algorithmus, dem Constraintlöser (engl. constraint solver) durchgeführt, welcher ein fest implementierter Teil der Constraint-Programmiersprache ist. Verschiedene Versuche, das Lösen von Constraints flexibler zu machen und dem Benutzer mehr Einflussmöglichkeiten zu geben, haben in den 1990er Jahren zur Entwicklung der Programmiersprache CHR (Constraint Handling Rules) geführt.
Constraintorientierte visuelle Programmiersprachen
Constraintorientierte visuelle Programmiersprachen bilden Programme aus einer Menge von Werten und Variablen, die als Objekte bezeichnet werden und einer Menge von Beziehungen zwischen diesen Objekten die ständig gelten müssen. Der Constraint-Satisfier ist ein automatischer Mechanismus, der dauerhaft dafür sorgt, dass die Beziehungen, die als Constraints bezeichnet werden, ständig bestehen bleiben, wenn sich Objektattribute ändern. In constraintorientierten Programmiersprachen gibt es keine algorithmischen Programmkonstrukte wie Wertzuweisungen, Prozeduren oder Ablaufstrukturen, auch zwischen Eingabe und Ausgabe wird nicht unterschieden. Nur die Einhaltung der Constraints ist wichtig.
4.2 Constraint-Satisfaction-Problem und Optimierung innerhalb der Erforschung der künstlichen Intelligenz und des Operations Research
Ein Constraint-Satisfaction-Problem (dt.: Bedingungserfüllungsproblem, abgekürzt CSP) ist eine Aufgabenstellung aus der künstlichen Intelligenz und aus dem Operations Research. Aufgabe ist es, einen Zustand (d. h. Belegungen von Variablen) zu finden, der alle aufgestellten Bedingungen (Constraints) erfüllt. Beispiele für solche Probleme sind das Damenproblem, das Vier-Farben-Problem, Sudoku, oder das Erfüllbarkeitsproblem der Aussagenlogik.
Ein Constraint-Satisfaction-Problem besteht aus einer Menge von Variablen, ihren Wertebereichen und den Bedingungen, die Verknüpfungen zwischen den Variablen herstellen und dadurch festlegen, welche Kombinationen von Werten der Variablen zulässig sind. Auf diese Weise lassen sich eine Vielfalt von Problemen aus Informatik, Mathematik und weiteren Anwendungsgebieten formulieren. Ein CSP wird gelöst, indem eine Belegung der Variablen gefunden wird, die allen Bedingungen genügt. Sind die aufgestellten Bedingungen widersprüchlich, so gibt es keine Lösung des Problems.
5. Die "Theory of Constraints" als Systemoptimierung in den Wirtschaftwissenschaften
Die Theory of Constraints (TOC), auch Engpasstheorie oder Durchsatz-Management, bezeichnet die Gesamtheit der Denkprozesse und Methoden zur Verbesserung der Leistungsfähigkeit (Durchsatz) von Systemen basierend auf den Ideen Eliyahu M. Goldratts.
Die Engpasstheorie geht von der Erkenntnis der Systemtheorie aus, dass der Durchsatz eines Systems ausschließlich von einem begrenzenden Faktor (dem Engpass oder englisch: Constraint) bestimmt wird. Eine Verbesserung des Durchsatzes kann nur erfolgen, wenn das Gesamtsystem, ausgehend vom begrenzenden Faktor, übergreifend optimiert wird.
Basierend auf den Denkprozessen der Engpasstheorie sind erfolgreiche praxistaugliche Methodologien zu Produktionssteuerung (Drum-Buffer-Rope), für Marketing und Vertrieb, für den Handel, für das Supply-Chain-Management, für Finanzen und Controlling, zur Strategieentwicklung und vor allem für das Projektmanagement (Critical-Chain-Projektmanagement) entstanden.
6. Die Contraints der Evolution
Die Evolution besitzt viele Constraints. Schon das Vorhandensein der meisten Constraints für sich und die Ausrichtung von Produkten der Evolution an Contraints ist bereits ein starker Hinweis und letztlich auch Beweis für die Existenz von Evolution selbst.
Innerhalb der biologischen Evolution können wir an dem Bauplan vieler Lebewesen ablesen, wie diese durch die Beschränkungen der äußeren Umwelt (beispielsweise durch einen Klimawandel) entstanden sind. Doch es gibt auch innere Constraints, wie diejenigen, die es verhindern, das artfremde Lebewesen erfolgreich Nachwuchs hervorbringen können. Die Biologie der Vererbung beschränkt die Möglichkeiten zur Nachkommenschaft dann auf die eigene Art als Fortpflanzungsgemeinschaft und schließt alle anderen Arten konsequent aus.
Die Genforschung kennt noch weitere Mechanismen von effektiven Constraints. Einer dieser Mechanismen ist das Konzept der Epistase, bei der ein Gen die phänotypische Ausprägung eines anderen Gen unterdrücken kann. Kontrolliert ein einziges Gen sogar mehrere phänotypische Merkmale, so spricht man von Pleiotropie.
All diese Mechanismen sogen dafür, dass im Prozess der Evolution auf der einen Seite zwar viele kreative Dinge geschehen können, aber dennoch bei weitem nicht auch alles erlaubt und möglich ist. Die Natur erlegt sich daher durch die Evolution immer auch selber eigene Schranken und Begrenzungen auf.
Einzelnachweise
1 Küppers, B. O.: Die Berechenbarkeit der Welt; 2012, sowie Küppers Understanding Complexity in Beckermann Emergence or Reduction?; 1992
2 Küppers, B. O.: Die Berechenbarkeit der Welt; 2012, S. 272
3 siehe dazu bsp. Rischke 2010 online
4 Juarrero, Alicia: Dynamics in Action; 2002, S. 131
5 Bossel, Hartmut: Systeme, Dynamik, Simulation; 2004, S. 232