UNIVERSELLE PROZESSE PLANEN – Simulationen mergen (= kombinieren, vereinigen); Parallelprogrammierung als Standard

UNIVERSELLE PROZESSPLANUNG
3.Aug 2021 – 3.Aug2021
URL: oksimo.org
Email: info@oksimo.org

Autor: Gerd Doeben-Henisch (gerd@oksimo.org)

KONTEXT

Dieser Text ist Teil des Themas UNIVERSELLE PROZESSE PLANEN – Wie geht das? im oksimo.org Blog.

SIMULATIOINEN MERGEN (= KOMBINIEREN, VEREINIGEN); Parallelprogrammierung als Standardfall

In einem früheren Post ist schon ein einfaches Beispiel vorgestellt worden, in dem zwei verschiedene Simulationen zu einer einzigen Simulation vereinigt worden sind. Dazu wurden aus dem oksimo Menü

Welcome to Oksimo v0.11.aba5

MAIN MENU
1 is NEW VISION
2 is MANAGE VISIONS
3 is VISION COLLECTIONS
4 is NEW STATE
5 is MANAGE STATES
6 is STATE COLLECTIONS
7 is NEW RULE
8 is MANAGE RULES
9 is RULE DOCUMENT
10 is NEW SIMULATION
11 is MANAGE SIMULATIONS
12 is LOAD SIMULATION
13 is COMBINE SIMULATIONS
14 is SHARE
15 is EXIT SIMULATOR
Enter a Number [1-15] for Menu Option

die Option 13 is COMBINE SIMULATIONS benutzt.

Vorausgesetzt, man hat mindestens zwei Simulationen S1 undS2, dann kann man diese gegebenen Simulationen mit ‚combine‘ (‚kombinieren‘) zu einer Simulation vereinigen und unter einem neuen Namen abspeichern.

Getrennt trotz Vereinigung

In dem zitierten Beispiel war dies einmal die Simulation zeit1-SIM1 gewesen und die Simulation time1-SIM1. Im Prinzip waren diese beiden Simulationen sehr ähnlich. In zeit1-SIM1 ist der Hauptakteur allerdings ein Mann und die Simulation ist in Deutscher Sprache, und in time1-SIM1 ist die Hauptakteurin eine Frau und die Simulation ist in Englisch. Nach der Vereinigung beider Simulationen laufen beide Simulationen als eine Simulation ab. Man erkennt dies nur darin, dass sich der Deutsche und der Englische Text mischen. Die Abläufe der beiden Simulationen ändern sich aber ansonsten inhaltlich nicht.

Echte Interaktion = Parallelprogrammierung als Multithreading

Das Kombinieren von getrennten Simulationen macht allerdings erst richtig Sinn, wenn man mögliche Wechselwirkungen zwischen unterschiedlichen Prozessen sichtbar machen und ausnutzen kann. Wie im Abschnitt Simulatorkern beschrieben wird, bearbeitet der oksimo Simulator Prozesse grundsätzlich parallel, und zwar so, dass sich die Wirkungen überlagern können. Dies hat Vor- und Nachteile. Als nachteilig kann man empfinden, dass man als Drehbuchschreiber unerwünschte Überlagerungseffekte explizit neutralisieren muss. Andererseits ist es ein Vorteil, Überlagerungseffekte zu haben, da diese im realen Alltag den Normalfall bilden. Die bisherigen Experimente sprechen dafür, dieser Überlagerungseffekte als Vorteil zu sehen.

So kann man im folgenden sehr einfachen — Beispiel erkennen, wie zwei individuelle Prozesse jeder für sich eine Art normalen Ablauf haben. Vereinigt man aber beide Prozesse, so können sie unmittelbar eine Interaktion/ Wechselwirkung entfalten, einfach nur, weil sie simultan ausgeführt werden.

STORY für S1

  1. Es ist Mittags 12:00. Gerd ist hungrig.
  2. Gerd beschließt 100% zur Pizzeria zu gehen.
  3. Gerd isst.
  4. Wenn Gerd Chris trifft dann 100% redet er mit Chris.
    1. Wenn Gerd mit Chris redet, dann 100% haben beide neue Ideen.
  5. Gerd ist nicht hungrig.
  6. Es ist Nachmittag
  7. Weiter zu (1)

STORY für S2

  1. Es ist Mittags 12:00. Chris ist hungrig.
  2. Chris beschließt 100% zur Pizzeria zu gehen.
  3. PIZZERIA: Chris isst.
  4. Wenn Chris Gerd trifft dann 100% redet er mit Gerd.
    1. Wenn Christ mit Gerd redet, dann 100% haben beide neue Ideen.
  5. Chris ist nicht hungrig.
  6. Es ist Nachmittag
  7. Weiter zu (1)

Wie man unschwer erkennen kann, sind beide Geschichten nahezu gleich. Es gibt allerdings zwei verschiedenen Akteure (Gerd, Chris), die jeweils individuell, separat ihren Prozess leben können.

SIMULATION Story S1 alleine

dev GERD-PIZZERIA2-SIM1

Enter maximum number of simulation rounds

10

Your vision:
Gerd ist nicht hungrig.
Initial states:
Gerd ist hungrig.,Es ist Mittags 12:00.

Round 1

Rules:
GERDMEETSCHRIS1 not applied (conditions not met)
INPIZZERIA2 not applied (conditions not met)
GERDNACHMITTAG2 not applied (conditions not met)
ZURPIZZERIA2 applied (Prob: 100 Rand: 0/100)
GERDNACHESSEN1 not applied (conditions not met)
Current states: Gerd beschließt zur Pizzeria zu gehen.,Es ist noch Mittags.,Gerd ist hungrig.

0.00 percent of your vision was achieved by reaching the following states:
None

Round 2

Rules:
GERDNACHESSEN1 not applied (conditions not met)
ZURPIZZERIA2 not applied (conditions not met)
INPIZZERIA2 applied (Prob: 100 Rand: 13/100)
GERDMEETSCHRIS1 not applied (conditions not met)
GERDNACHMITTAG2 not applied (conditions not met)
Current states: Gerd ist in der Pizzeria.,Es ist noch Mittags.,Gerd ist hungrig.,Gerd isst.

0.00 percent of your vision was achieved by reaching the following states:
None

Round 3

Rules:
GERDNACHESSEN1 applied (Prob: 100 Rand: 64/100)
GERDNACHMITTAG2 not applied (conditions not met)
ZURPIZZERIA2 not applied (conditions not met)
GERDMEETSCHRIS1 not applied (conditions not met)
INPIZZERIA2 not applied (conditions not met)
Current states: Gerd ist nicht hungrig.,Gerd ist in der Pizzeria.,Es ist noch Mittags.,Gerd isst.

100.00 percent of your vision was achieved by reaching the following states:
Gerd ist nicht hungrig.,

Round 4

Rules:
INPIZZERIA2 not applied (conditions not met)
ZURPIZZERIA2 not applied (conditions not met)
GERDNACHESSEN1 applied (Prob: 100 Rand: 75/100)
GERDNACHMITTAG2 applied (Prob: 100 Rand: 27/100)
GERDMEETSCHRIS1 not applied (conditions not met)
Current states: Es ist Nachmittag.,Gerd ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Gerd ist nicht hungrig.,

Round 5

Rules:
GERDNACHMITTAG2 not applied (conditions not met)
ZURPIZZERIA2 not applied (conditions not met)
GERDNACHESSEN1 not applied (conditions not met)
GERDMEETSCHRIS1 not applied (conditions not met)
INPIZZERIA2 not applied (conditions not met)
Current states: Es ist Nachmittag.,Gerd ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Gerd ist nicht hungrig.,

Round 6

Rules:
ZURPIZZERIA2 not applied (conditions not met)
GERDMEETSCHRIS1 not applied (conditions not met)
GERDNACHMITTAG2 not applied (conditions not met)
GERDNACHESSEN1 not applied (conditions not met)
INPIZZERIA2 not applied (conditions not met)
Current states: Es ist Nachmittag.,Gerd ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Gerd ist nicht hungrig.,

Round 7

Rules:
GERDNACHMITTAG2 not applied (conditions not met)
GERDNACHESSEN1 not applied (conditions not met)
INPIZZERIA2 not applied (conditions not met)
GERDMEETSCHRIS1 not applied (conditions not met)
ZURPIZZERIA2 not applied (conditions not met)
Current states: Es ist Nachmittag.,Gerd ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Gerd ist nicht hungrig.,

Man kann aus den aktuellen Zuständen (‚current states‘) entnehmen, dass Gerd Mittags zur Pizzeria gegangen ist, weil er hungrig ist, dort gegessen hat und er dann nicht mehr hungrig war. Mittlerweile war es Nachmittag. Die andere Geschichte verläuft sehr ähnlich:

SIMULATION Story S2 alleine

Enter the name of the wanted simulation:

dev CHRIS-PIZZERIA2-SIM11

Enter maximum number of simulation rounds

10

Your vision:
Chris ist nicht hungrig.
Initial states:
Chris ist hungrig.,Es ist Mittags 12:00.

Round 1

Rules:
INPIZZERIA2b not applied (conditions not met)
CHRISNACHESSEN1 not applied (conditions not met)
ZURPIZZERIA2b applied (Prob: 100 Rand: 0/100)
CHRISNACHMITTAG2 not applied (conditions not met)
CHRISMEETSGERD1 not applied (conditions not met)
Current states: Chris ist hungrig.,Chris will zur Pizzeria zu gehen.,Es ist noch Mittags.

0.00 percent of your vision was achieved by reaching the following states:
None

Round 2

Rules:
CHRISMEETSGERD1 not applied (conditions not met)
CHRISNACHMITTAG2 not applied (conditions not met)
INPIZZERIA2b applied (Prob: 100 Rand: 20/100)
CHRISNACHESSEN1 not applied (conditions not met)
ZURPIZZERIA2b not applied (conditions not met)
Current states: Chris ist hungrig.,Chris ist in der Pizzeria.,Es ist noch Mittags.,Chris isst.

0.00 percent of your vision was achieved by reaching the following states:
None

Round 3

Rules:
CHRISMEETSGERD1 not applied (conditions not met)
INPIZZERIA2b not applied (conditions not met)
CHRISNACHESSEN1 applied (Prob: 100 Rand: 34/100)
ZURPIZZERIA2b not applied (conditions not met)
CHRISNACHMITTAG2 not applied (conditions not met)
Current states: Chris ist in der Pizzeria.,Es ist noch Mittags.,Chris isst.,Chris ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Chris ist nicht hungrig.,

Round 4

Rules:
CHRISNACHESSEN1 applied (Prob: 100 Rand: 12/100)
CHRISMEETSGERD1 not applied (conditions not met)
INPIZZERIA2b not applied (conditions not met)
ZURPIZZERIA2b not applied (conditions not met)
CHRISNACHMITTAG2 applied (Prob: 100 Rand: 81/100)
Current states: Es ist Nachmittag.,Chris ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Chris ist nicht hungrig.,

Round 5

Rules:
INPIZZERIA2b not applied (conditions not met)
CHRISMEETSGERD1 not applied (conditions not met)
ZURPIZZERIA2b not applied (conditions not met)
CHRISNACHMITTAG2 not applied (conditions not met)
CHRISNACHESSEN1 not applied (conditions not met)
Current states: Es ist Nachmittag.,Chris ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Chris ist nicht hungrig.,

Round 6

Rules:
ZURPIZZERIA2b not applied (conditions not met)
CHRISMEETSGERD1 not applied (conditions not met)
CHRISNACHMITTAG2 not applied (conditions not met)
CHRISNACHESSEN1 not applied (conditions not met)
INPIZZERIA2b not applied (conditions not met)
Current states: Es ist Nachmittag.,Chris ist nicht hungrig.

Round 7

Rules:
INPIZZERIA2b not applied (conditions not met)
CHRISNACHESSEN1 not applied (conditions not met)
CHRISNACHMITTAG2 not applied (conditions not met)
ZURPIZZERIA2b not applied (conditions not met)
CHRISMEETSGERD1 not applied (conditions not met)
Current states: Es ist Nachmittag.,Chris ist nicht hungrig.

100.00 percent of your vision was achieved by reaching the following states:
Chris ist nicht hungrig.,

Kombination von zwei Drehbüchern mit Wechselwirkung

Die Frage ist, ob diese beiden Prozesse, die isoliert ohne besondere Vorkommnisse ablaufen, bei Vereinigung neue (‚emergente‘) Eigenschaften zeigen? [1] – [3] Ein kurzer Test zeigt zunächst, dass dies der Fall ist.

Vereinigte Simulation S12 aus S1 und S2 herstellen

Enter the name of the wanted simulation:

> GERD-PIZZERIA2-SIM1

Enter the name of another simulation or leave empty to save:

> CHRIS-PIZZERIA2-SIM11

Enter the name of another simulation or leave empty to save:

>

Enter name for combined simulation:

> GERD-CHRIS-PIZZARIA-2

Saved!

Testen der neuen vereinigten Simulation S12

Enter the name of the wanted simulation:

> dev GERD-CHRIS-PIZZARIA-2

Enter maximum number of simulation rounds

> 15

Your vision:

Chris ist nicht hungrig.,Gerd ist nicht hungrig.

Initial states:

Es ist Mittags 12:00.,Gerd ist hungrig.,Chris ist hungrig.

Round 1

Rules:

CHRISMEETSGERD1 not applied (conditions not met)

INPIZZERIA2b not applied (conditions not met)

ZURPIZZERIA2 applied (Prob: 100 Rand: 73/100)

CHRISNACHMITTAG2 not applied (conditions not met)

INPIZZERIA2 not applied (conditions not met)

GERDNACHMITTAG2 not applied (conditions not met)

GERDMEETSCHRIS1 not applied (conditions not met)

CHRISNACHESSEN1 not applied (conditions not met)

ZURPIZZERIA2b applied (Prob: 100 Rand: 87/100)

GERDNACHESSEN1 not applied (conditions not met)

Current states: Gerd ist hungrig.,Chris ist hungrig.,Gerd beschließt zur Pizzeria zu gehen.,Chris will zur Pizzeria zu gehen.,Es ist noch Mittags.

0.00 percent of your vision was achieved by reaching the following states:

None

Round 2

Rules:

CHRISNACHMITTAG2 not applied (conditions not met)

GERDNACHESSEN1 not applied (conditions not met)

GERDNACHMITTAG2 not applied (conditions not met)

ZURPIZZERIA2b not applied (conditions not met)

GERDMEETSCHRIS1 not applied (conditions not met)

INPIZZERIA2b applied (Prob: 100 Rand: 73/100)

CHRISMEETSGERD1 not applied (conditions not met)

INPIZZERIA2 applied (Prob: 100 Rand: 20/100)

CHRISNACHESSEN1 not applied (conditions not met)

ZURPIZZERIA2 not applied (conditions not met)

Current states: Gerd ist hungrig.,Chris ist hungrig.,Es ist noch Mittags.,Gerd ist in der Pizzeria.,Chris ist in der Pizzeria.,Chris isst.,Gerd isst.

0.00 percent of your vision was achieved by reaching the following states:

None

Round 3

Rules:

GERDMEETSCHRIS1 applied (Prob: 100 Rand: 30/100)

INPIZZERIA2 not applied (conditions not met)

GERDNACHMITTAG2 not applied (conditions not met)

ZURPIZZERIA2b not applied (conditions not met)

CHRISNACHESSEN1 applied (Prob: 100 Rand: 78/100)

ZURPIZZERIA2 not applied (conditions not met)

CHRISMEETSGERD1 applied (Prob: 100 Rand: 57/100)

CHRISNACHMITTAG2 not applied (conditions not met)

GERDNACHESSEN1 applied (Prob: 100 Rand: 70/100)

INPIZZERIA2b not applied (conditions not met)

Current states: Gerd hat gute Ideen.,Chris redet mit Gerd.,Chris hat gute Ideen.,Gerd ist in der Pizzeria.,Chris isst.,Gerd isst.,Gerd redet mit Chris.

,Chris ist nicht hungrig.,Chris ist in der Pizzeria.,Gerd ist nicht hungrig.,Es ist noch Mittags.

100.00 percent of your vision was achieved by reaching the following states:

Chris ist nicht hungrig.,Gerd ist nicht hungrig.,

Round 4

Rules:

CHRISNACHMITTAG2 applied (Prob: 100 Rand: 81/100)

CHRISNACHESSEN1 applied (Prob: 100 Rand: 61/100)

GERDNACHESSEN1 applied (Prob: 100 Rand: 82/100)

ZURPIZZERIA2 not applied (conditions not met)

GERDNACHMITTAG2 applied (Prob: 100 Rand: 85/100)

INPIZZERIA2 not applied (conditions not met)

GERDMEETSCHRIS1 applied (Prob: 100 Rand: 86/100)

INPIZZERIA2b not applied (conditions not met)

CHRISMEETSGERD1 applied (Prob: 100 Rand: 42/100)

ZURPIZZERIA2b not applied (conditions not met)

Current states: Gerd ist nicht hungrig.,Gerd redet mit Chris.,Gerd hat gute Ideen.,Chris ist nicht hungrig.,Chris redet mit Gerd.,Chris hat gute Ideen.

,Es ist Nachmittag.

100.00 percent of your vision was achieved by reaching the following states:

Chris ist nicht hungrig.,Gerd ist nicht hungrig.,

Resultate

In Runde 3 geschieht etwas Neues im Vergleich zu den Einzelausführungen. Beide Akteure reden miteinander und haben gute Ideen.

Wie ist dies möglich?

Im Entwicklermodus (dev) zeigen Simulationen alle Regeln an, die jeweils angewendet oder nicht angewendet wurden, dabei fallen die folgenden vier Regeln auf:

GERDMEETSCHRIS1 applied (Prob: 100 Rand: 30/100)

CHRISNACHESSEN1 applied (Prob: 100 Rand: 78/100)

CHRISMEETSGERD1 applied (Prob: 100 Rand: 57/100)

GERDNACHESSEN1 applied (Prob: 100 Rand: 70/100)

Im Gegensatz zu den Einzelausführungen gibt es bei der simultanen Ausführung für jeden Akteur zwei Regeln, die zusätzlich ausgeführt werden. Diese nehmen explizit Bezug auf das mögliche Ereignis, dass der eine den anderen trifft.

Schauen wir uns beispielhaft eine Regel an:

Rule:GERDMEETSCHRIS1

Conditions:

Chris ist in der Pizzeria.

Gerd ist in der Pizzeria.

Probability: 1.0

Positive Effects:

Gerd redet mit Chris.

Gerd hat gute Ideen.

Negative Effects: —

Diese Regel besagt, dass wenn sowohl Gerd als auch Chris in der Pizzeria sind (Condition, Bedingung), dann soll mit einer 100%-Wahrscheinlichkeit der Fall eintreten, dass beide miteinander reden (= Positiver Effekt). Ein negativer Effekt wird nicht notiert.

Bei Einzelausführung tritt der Fall nicht ein, wohl aber bei kombinierter Ausführung.

Es liegt als beim Drehbuchautor, welche Fälle dieser vorsiehet, damit sie — wenn es dann soweit ist — aktiv werden.

Erinnert man die anderen Beispiele, die in diesem Blog schon vorgestellt wurden, dann kann man sich leicht vorstellen, wie man solche kombinierten Drehbücher sehr leicht weiter mit Komplexität vollpacken kann (unterschiedliche Wahrscheinlichkeiten, mehr Fallunterscheidungen, …).

ANMERKUNGEN

[1] Parallele Programmierung, Wikipedia [DE]: https://de.wikipedia.org/wiki/Parallele_Programmierung

[2] Multithreading, Wikipedia [DE]: https://de.wikipedia.org/wiki/Multithreading

[3] Wenn zwei Systeme S1 und S2 gegeben sind, die zusammen ein Phänomen P zeigen, das bei Einzelausführung nicht vorkommt, dann kann man dieses Phänomen P als ‚emergent‚ charakterisieren.

OKSIMO ROADMAP – Überblick

UNIVERSELLE PROZESSPLANUNG
20.Juni 2021 – 27. Juli 2021
URL: oksimo.org
Email: info@oksimo.org

Autor: Gerd Doeben-Henisch (gerd@oksimo.org)[*]

KONTEXT

Dieser Text ist Teil des Themenfeldes Oksimo Roadmap des oksimo.org Blogs.

VERSIONEN

Da das oksimo Projekt ein autopoietisches Projekt ist, das sich ‚aus sich heraus‘ entwickelt [1], gibt es zu Beginn kein fertiges Gesamtkonzept. Es gibt eine grobe Zielrichtung (Vision), die eine Richtung angibt, in die sich das Projekt entwickeln sollte. Die genaue Ausführung des Weges zum Ziel wird schrittweise, phasenweise angenähert.

Die Periodisierung des Projektes in die groben Phasen ‚Basis‘, ‚Standard‘ und ‚Standard+KI‘ hat sich in den zurückliegenden Monaten heraus kristallisiert. Weitere Versionen sind nicht ausgeschlossen; sie sind sogar hoch wahrscheinlich.

BILD: Übersicht über die wichtigsten Anwendungsszenarien, die auf Basis der oksimo Software möglich sind bzw. sein sollen. Die angegebenen Zeitmarken sind geschätzt, da es bei der komplexen Materie nicht möglich ist,exakte Daten zu bestimmen. Insgesamt handelt es sich bei der Software bislang um einen experimentellen Prototyp.

BASIS

Basis-Version bis 23.Juni 2021

Als Basis Version wird alles angesehen, was bis Juni 2021 entwickelt und beschrieben wurde.

Die Grundidee der Basisversion bis 23.Juni 2021 lässt durch zwei Ableitungsversionen beschreiben:

(1) S ⊩ ∑ R S‘

(2) S ⊩ ∑ V %Goal

Die Formel (1) beschreibt den Sachverhalt, dass der oksimo Simulator bei Vorgabe eines aktuellen Zustands S mit den gegebenen Veränderungsregeln R einen Nachfolgezustand S‘ ermittelt.

Die Formel (2) beschreibt den Sachverhalt, dass der oksimo Simulator bei Vorgabe eines aktuellen Zustands S mit dem gegebenen Zielzustand V errechnete, wie viel %vom Zielzustand V im aktuellen Zustand S schon vorkommen.

Anwendung: Erst wird mit Formel (1) aus einem gegebenen Zustand S ein Nachfolgezustand S‘ ermittelt und dann wird für diesen neuen aktuellen Zustand S‘ mit Formel (2) ermittelt, wie viel vom Zielzustand im neuen aktuellen Zustand S‘ schon realisiert wurde.

Die aktuellen Befehle der oksimo Software zur Basis-Version bis 23.Juni 2021 zeigt das folgende Menü:

Welcome to Oksimo v0.11.77dea

MAIN MENU
1 is NEW VISION
2 is MANAGE VISIONS
3 is NEW STATE
4 is MANAGE STATES
5 is NEW RULE
6 is MANAGE RULES
7 is RULE DOCUMENT
8 is NEW SIMULATION
9 is MANAGE SIMULATIONS
10 is LOAD SIMULATION
11 is COMBINE SIMULATIONS
12 is SHARE
13 is EXIT SIMULATOR
Enter a Number [1-13] for Menu Option

Die Basis-lernende Algorithmus (KI)Version ist vollständig Konsolen-orientiert. Die Erstellung einer oksimo Anwendung verlangt die Angabe von mindestens einem Visions- und mindestens einem Zustands-Dokument, ergänzt um beliebig viele einzelne Veränderungs-Regeln, die man auch in Regel-Dokumenten zusammenfassen kann. Normale Simulation mit automatischer Evaluation ist möglich. Dateien lassen sich unter den Benutzern teilen, auch ganze Simulationen, die gespeichert wurden. Aus verschiedenen Simulationen lässt sich direkt eine vereinigte Simulation herstellen und ausführen. Alle Dokumente lassen sich im Nachhinein editieren und verändern.

Basis-Version nach 23.Juni 2021 + x Tage

In der Basis-Version bis zum 23.Juni 2021 hat sich ergeben, dass die ‚Konservierung‘ des Zielzustandes V die Realität von Alltagsprozessen mit Zielen nur unzureichend wiedergibt. Im Alltag kommt es immer wieder vor, dass Akteure ihr Visionen [V] — d.h. ihre Vorstellungen von möglichen Zielzuständen — aus unterschiedlichsten Gründen abändern. Dies hat dann meistens Auswirkungen auf den gesamten Prozess. Das, was vorher ‚gut‘ war, gilt plötzlich nicht mehr. Dies kann eine Verschlechterung bedeuten. Wenn aber die Vision vorher ’schlecht‘ war, dann kann diese Änderungen eine Verbesserung bedeuten.

Um diesem Alltagsgeschehen besser gerecht zu werden, wird die grundlegende Veränderungsbeziehung in der oksimo Software wie folgt angepasst:

(0) S,V ⊩ ∑ R V‘

(1) S ⊩ ∑ R S‘

(2) S ⊩ ∑ V %Goal

Während die Formeln (1-2) nicht geändert werden, gibt es eine Änderung mit der neuen Formel (0): Ein Visions-Dokument V, das einen Zielzustand beschreibt, kann mit Hilfe von Veränderungsregeln R genauso abgeändert werden wie ein Zustandsdokument S. Dabei wird sowohl das ‚alte‘ Visionsdokument V berücksichtigt wie auch der aktuelle Zustand S.

R, S und V Dokumente

Bis zur der Basis-Version vom 23.Juni 2021 kann man zwar beliebige Regel-Dokumente bilden, indem man einen neuen Namen RN vergibt und dazu beliebige vorhandene Regeln angibt, die dann unter RN als Gruppe aufgerufen werden können. Bei einer Simulation kann man dann statt der vielen einzelnen Regeln R beliebig viele Regel-Dokumente RNi angeben.

In der praktischen Arbeit zeigt sich, dass es zur Strukturierung komplexer Zustände S und komplexer Visionen V auch hilfreich ist, viele einzelne Zustandsdokumente S1, …, Sn bzw. Visions-Dokumente V1, …, Vm analog zu den Regel-Dokumenten unter einem neuen Namen zu Teilgruppen zusammen fassen zu können. Bei dem Start einer neuen Simulation kann man dann nach Bedarf auch kollektive Zustands- oder Visions-Dokumente angeben.

Die verschiedenen Sammlungen von R, S oder V Dokumenten kann man als Makros verstehen, die mit einem Namen viele Elemente aktivieren oder als Kollektoren.

STANDARD

In der Standard-Versionen sollen folgende Anforderungen neu hinzukommen:

  1. Man kann eine oksimo Anwendung statt direkt über Veränderungs-Regeln hier auch zunächst als reines ‚Drehbuch‘ (’story board‘) entwickeln. (Letzte Änderung: 12.Juli 2021) Man beschreibt beliebig lange und beliebig verzweigte Folgen von Szenen. Oksimo generiert dazu automatisch die benötigten Veränderungsregeln. Natürlich kann man die automatisch generierten Regeln individuell nach-bearbeiten und fein justieren. Simulationen sind genau so möglich wie in der Basis-Version. Für die Entwicklung der Szenenfolgen wird ein Szenen-Editor bereitgestellt, der auch eine visuelle Komponente beinhalten soll.[3]
  2. Die Entwicklung eines Drehbuchs erfolgt im Kollaborations-Modus: beliebig viele individuell eingeloggte Benutzer können gleichzeitig an dem gleichen Drehbuch arbeiten. Parallel wird angenommen, dass diese Benutzer über eine Online-Kommunikation untereinander Kontakt haben. Weitere Optionen sind geplant.
  3. Der normale Simulationsmodus wird um einen Spiel-Modus Level 1 erweitert: Angemeldete oksimo-Benutzer können sich beim Simulator als Spieler anmelden. Hier kann man zwei Vorgehensweisen unterscheiden: Passiv und Aktiv. In der passiven Vorgehensweise fragt der Simulator in jeder Simulations-Runde vor der Ausführung der aktuellen Regeln die angemeldeten Spieler, welche der aktuell möglichen Regeln sie mit welcher Option anwenden wollen. Die Entscheidungen werden vom Simulator übernommen. Der Spieler hat allerdings nicht die Möglichkeit, Regeln abzuändern bzw. ganz neue Regeln einzuführen. In der aktiven Vorgehensweise ist dies möglich: die Spieler können während des Spielens die Regeln ändern.
  4. Es soll sowohl im Simulations Modus wie auch im Spiel-Modus ein Level 2 bereit gestellt werden. Dies beinhaltet, dass man zu einer oksimo-Anwendung künstliche Akteure aus einer bestehenden Sammlung laden und dadurch aktivieren kann. [2] Dies geschieht mittels einer Veränderungs-Regel RA, die wie eine normale Veränderungsregeln aussieht, tatsächlich aber einen künstlichen Akteur aufruft, der die aktuelle Situation S samt Vision V als Input nimmt, und dann anhand einer vordefinierten Verhaltensfunktion φ einen Output erzeugt, der Eplus und Eminus realisiert. In der Standardversion kann man diese Akteure innerhalb der oksimo Software noch nicht editieren. Die geladenen künstlichen Akteure können beliebige Funktionen beinhalten, also auch lernende Algorithmen KI.
  5. Die Ausgabe von ergänzenden Bildern soll möglich sein.
  6. Die Verarbeitung von numerischen Werten (Zahlen) soll möglich sein.

STANDARD+KI

Die künstlichen Akteure in Anforderung (4) der vorausgehend geschilderten der Standard-Version können auch schon Künstliche Intelligenz als Verhaltensteuernde KI enthalten. In der erweiterten Standard-Version kommen aber explizit noch zwei neue Formen von KI hinzu:

  1. Eine optimierende KI berechnet über einzelne Simulationen hinausgehend im Raum der möglichen Simulationen interessante Teilmengen im Sinne der vorgegebenen Visionen und bringt sie zur Kenntnis.
  2. Eine kreative KI kann den vorgegebenen Problemraum partiell variieren und dadurch neue Lösungsräume ermöglichen.

ANMERKUNGEN

[*] Bei diesem Text gehen implizit viele Gedanken von verschiedensten Personen mit ein, mit denen ich gesprochen habe. Diese im Detail auszuweisen ist aber im Nachhinein praktisch nicht möglich.

[1] Autopoiesis, Autopoiese, Autopoietisch, siehe Wikipedia [DE]: https://de.wikipedia.org/wiki/Autopoiesis UND in Wikipedia [EN]: https://en.wikipedia.org/wiki/Autopoiesis/* Ursprünglich wurde der Begriff in der (Evolutions-)Biologie vom Neurobiologen Huberto Maturana eingeführt. Er wurde dann auf weitere Kontexte angewendet, u.a. auch durch Luhmann auf die Soziologie. Die Verwendungsweisen in diesem Blog oksimo.org gehen zurück auf verschiedene Texte im Blog uffmm.org. Der zentrale Begriff im Blog uffmm.org ist der Systems Engineering Prozess in dem Akteure (Auftraggeber, Experten des Engineerings, Manager von Unternehmen, …) eine Problemstellung zusammen mit einer Vision (in Form von Anforderungen) in eine funktionierende Lösung (Gerät, Dienstleistung, komplexes System,…) transformieren. Dieses Konzept des Systems Engineerings ist in oksimo.org verallgemeinert zu einem System, in dem jeder Mensch als Experte gilt und als Akteur jedes beliebige Problemstellung und jede beliebige Vision in eine Lösung transformieren kann. Dieses Konzept hat aktuell das Label oksimo Paradigma. Die elementaren Faktoren innerhalb des oksimo Paradigmas sind die Akteure mit einer charakteristischen Binnenstruktur, die verbindende Kommunikation, deren Bedeutungsfunktion im Akteur verankert ist, und eine offene Umgebung, die Teil eines physikalischen Universums ist. Wesentliche Momente der Binnenstruktur ist mindestens eine im Gehirn fundierte Kognition, eine physiologische Bedürfnisstruktur, und eine emotionale Struktur. Die Binnenstruktur steht in kontinuierlicher Wechselwirkung mit dem eigenen Körper und der Umgebung des Körpers.

[2] Künstliche Akteure aus einer gegebenen Sammlung (‚library‘) laden setzt voraus, dass man in einer zuvor vereinbarten Vorgehensweise solche künstliche Akteure editieren kann. Aus den vielen Optionen, die hier gegeben sind, wird wenigstens eine ausgewählt.

[3] ‚Prozesse mit oksimo beschreiben‚: ein Paradigmenwechsel.(Letzte Änderung: 23.Juni 2021)