Technische Details der OKSIMO-Modelle

Für die Spieltheorie sind die Details der Modellierung unwichtig. Für das eigene Experimentieren wird man aber wohl nicht darum herum kommen, dass man sich bis zu einem gewissen Grad auch mit der Erzeugung von lauffähigen Modellen auseinandersetzt. Vor diesem Hintergrund seien hier ein paar der technischen Details der benutzten Modelle erläutert. Diese Erläuterungen bildenallerdings keinen Ersatz für eine eigene Benutzung der OKSIMO-Software, die im Kursbereich zum Herunterladen bereitsteht.

Das Bild 5.38 zeigt das Innere von Agent A mit der einfachen zeilenbasierten Strategie. Dazu ein kurzes testprotokoll von der Konsole.

Figure 5.38: OKSIMO Modell Agent A mit einfacher Zeilenstrategie
\includegraphics[width=4.0in]{agent_A_diffrowssumsmeans.eps}

The simulation of the lmodel 'agent_A_diffrowsmeans' provides the following results:

1 Output: MEANR1, contains 1 FLOAT: 1.500000e+00
1 Output: MEANR0, contains 1 FLOAT: 5.000000e+00
1 Output: SUMR1, contains 1 FLOAT: 3.000000e+00
1 Output: SUMR0, contains 1 FLOAT: 1.000000e+01
1 Output: ACTIONA, contains 1 INT: 0
2 Input : ACTIONA, contains 1 INT: 0
2 Input : ACTIONB, contains 1 INT: 0
2 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
2 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00
2 Output: MEANR1, contains 1 FLOAT: 1.500000e+00
2 Output: MEANR0, contains 1 FLOAT: 5.000000e+00
2 Output: SUMR1, contains 1 FLOAT: 3.000000e+00
2 Output: SUMR0, contains 1 FLOAT: 1.000000e+01
2 Output: ACTIONA, contains 1 INT: 0
3 Input : ACTIONA, contains 1 INT: 0
3 Input : ACTIONB, contains 1 INT: 0
3 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
3 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00
3 Output: MEANR1, contains 1 FLOAT: 1.500000e+00
3 Output: MEANR0, contains 1 FLOAT: 5.000000e+00
3 Output: SUMR1, contains 1 FLOAT: 3.000000e+00
3 Output: SUMR0, contains 1 FLOAT: 1.000000e+01
3 Output: ACTIONA, contains 1 INT: 0
4 Input : ACTIONA, contains 1 INT: 0
4 Input : ACTIONB, contains 1 INT: 0
4 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
4 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00

Simulation time: 0 h 0 m 0 s 90 ms

Die einfache Strategie von Agent A basiert darauf, dass er zunächst einmal die Werte von sich selbst -DOMA genannt- und die Werte von seinem Gegenspieler -DOMB genannt- liest und die Punkte des Gegenspielers von seinen eigenen Punkten abzieht. Er bildet praktisch aus zwei 2x2-Matrizen DOMA und DOMB eine neue 2x2-Matrix DIFFAB (die Differenzmatrix des Gegenspielers heisst hier DIFFBA). Dieses Vorgehen wird im Bild 5.39 im Überblick gezeigt. Die Differenzbildung zeigt das Bild 5.40 von aussen und das Bild 5.41 von 'innen'. Man kann erkennen, wie unter dem Management einer while-Struktur mittels getMatrixValue Wetrte aus den beiden Matrizen DOMA und DOMB gelesen werden, dann voneinander subtrahiert werden (für A mit A-B, für B mit B-A) und dann jeweils in zwei neue Differenzmatrizen DIFFAB und DIFFBA geschrieben werden.

Figure 5.39: OKSIMO Modell Differenzbildung und dann Mittelwerte für Zeilen von A
\includegraphics[width=4.0in]{mtrxAB_diff_rowsA_means.eps}

The simulation of the lmodel 'mtrxAB_diff_rowsA_means' provides the following results:

1 Output: SUMR1, contains 1 FLOAT: 3.000000e+00
1 Output: MEANR1, contains 1 FLOAT: 1.500000e+00
1 Output: MEANR0, contains 1 FLOAT: 5.000000e+00
1 Output: SUMR0, contains 1 FLOAT: 1.000000e+01
2 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
2 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00

Simulation time: 0 h 0 m 0 s 77 ms

Figure 5.40: OKSIMO Modell für die Subtraktion der Matrizen A-B und B-A
\includegraphics[width=4.0in]{Loop_MTRX2_SELECT_MTRX2_SET.eps}

Figure 5.41: OKSIMO Modell für die Subtraktion mit interner Struktur
\includegraphics[width=4.0in]{MTRX2_SELECT_MTRX2_SET.eps}

The simulation of the lmodel 'mtrx_diff_AminusB' provides the following results:

1 Output: DIFFBA, contains 4 FLOAT: -1.000000e+00 -9.000000e+00 -2.000000e+00 -1.000000e+00
1 Output: DIFFAB, contains 4 FLOAT: 1.000000e+00 9.000000e+00 2.000000e+00 1.000000e+00

2 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
2 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00

Simulation time: 0 h 0 m 0 s 93 ms

Im weiteren Verlauf werden die Werte von B noch nicht ausgewertet, sondern nur die von Agent A. Im Bild 5.42 sieht man, wie wieder unter der Kontrolle eines while-Konstruktes die Differenzmatrix von Agent A zeilenweise summiert und dann am Schluss durch die Anzahl der Elemente gemittelt wird.

Figure 5.42: OKSIMO Modell Summenbildung der Zeilen und Mittelwerte
\includegraphics[width=4.0in]{get_2mtrx_rows_sums_means.eps}

Figure 5.43: OKSIMO Modell Summenbildung der Zeilen und Mittelwert
\includegraphics[width=4.0in]{get_2mtrx_rows_sums.eps}

The simulation of the lmodel 'get_2mtrx_rows_sums_means' provides the following results:

1 Output: MEANR1, contains 1 FLOAT: 1.500000e+00
1 Output: MEANR0, contains 1 FLOAT: 5.000000e+00
1 Output: SUMR1, contains 1 FLOAT: 3.000000e+00
1 Output: SUMR0, contains 1 FLOAT: 1.000000e+01
2 Input : MTRXIN, contains 4 FLOAT: 1.000000e+00 9.000000e+00 2.000000e+00 1.000000e+00

Simulation time: 0 h 0 m 0 s 44 ms

Figure 5.44: OKSIMO Modell Agent B entscheidet sich für besten Mittelwert
\includegraphics[width=4.0in]{agent_B_diffcolsmeans.eps}

The simulation of the lmodel 'agent_B_diffcolsmeans' provides the following results:

1 Output: MEANR1, contains 1 FLOAT: -5.000000e+00
1 Output: MEANR0, contains 1 FLOAT: -1.500000e+00
1 Output: SUMR1, contains 1 FLOAT: -1.000000e+01
1 Output: SUMR0, contains 1 FLOAT: -3.000000e+00
1 Output: ACTIONA, contains 1 INT: 0
2 Input : ACTIONA, contains 1 INT: 0
2 Input : ACTIONB, contains 1 INT: 0
2 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00
2 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00

Simulation time: 0 h 0 m 0 s 71 ms

Figure 5.45: OKSIMO Modell Matrixdifferenz B-A und Mittelwerte der Spalten
\includegraphics[width=4.0in]{mtrxAB_diff_colsB_means.eps}

The simulation of the lmodel 'mtrxAB_diff_colsB_means' provides the following results:

1 Output: SUMC1, contains 1 FLOAT: -1.000000e+01 1 Output: MEANC1, contains 1 FLOAT: -5.000000e+00 1 Output: MEANC0, contains 1 FLOAT: -1.500000e+00 1 Output: SUMC0, contains 1 FLOAT: -3.000000e+00 2 Input : DOMA, contains 4 FLOAT: 2.000000e+00 9.000000e+00 1.000000e+00 9.000000e+00 2 Input : DOMB, contains 4 FLOAT: 1.000000e+00 0.000000e+00 -1.000000e+00 8.000000e+00

Simulation time: 0 h 0 m 0 s 92 ms

Figure 5.46: OKSIMO Modell Summenbildung der Spaltent mit Mittelwerte
\includegraphics[width=4.0in]{get_2mtrx_cols_sums_means.eps}

The simulation of the lmodel 'get_2mtrx_cols_sums_means' provides the following results:

1 Output: MEANC1, contains 1 FLOAT: 5.000000e+00
1 Output: MEANC0, contains 1 FLOAT: 1.500000e+00
1 Output: SUMC1, contains 1 FLOAT: 1.000000e+01
1 Output: SUMC0, contains 1 FLOAT: 3.000000e+00
2 Input : MTRXIN, contains 4 FLOAT: 1.000000e+00 9.000000e+00 2.000000e+00 1.000000e+00

Simulation time: 0 h 0 m 0 s 41 ms

Figure 5.47: OKSIMO Modell Summenbildung der Spaltent
\includegraphics[width=4.0in]{get_2mtrx_cols_sum.eps}

The simulation of the lmodel 'get_2mtrx_cols_sum' provides the following results:

1 Output: SUMC1, contains 1 FLOAT: 9.000000e+00
1 Output: SUMC0, contains 1 FLOAT: 1.000000e+00
1 Output: CLCK, contains 1 INT: 0
2 Input : MTRXIN, contains 4 FLOAT: 1.000000e+00 9.000000e+00 2.000000e+00 1.000000e+00
2 Input : SUMC0, contains 1 FLOAT: 1.000000e+00
2 Input : CLCK, contains 1 INT: 0
2 Input : COL, contains 1 INT: 0
2 Input : SUMC1, contains 1 FLOAT: 9.000000e+00
2 Output: SUMC1, contains 1 FLOAT: 1.000000e+01
2 Output: SUMC0, contains 1 FLOAT: 3.000000e+00
2 Output: CLCK, contains 1 INT: 1

Simulation time: 0 h 0 m 0 s 90 ms

Gerd Doeben-Henisch 2009-12-09