Optimierung Lernketten

Aus Eressea
Zur Navigation springen Zur Suche springen

Vorüberlegungen

Als allererstes sollte man sich bei der Optimierung von Lernketten im klaren sein, welche Zuordnungen von Lehrern zu Schülern man bevorzugt. Erst dann kann man entweder ein Regelwerk erstellen (sogenanntes Expertenwissen) oder einen Optimierungsalgorithmus schreiben, der den besten oder zumindest einen möglichst guten Zustand (Zuordnungen von Lehrern und Schülern) erzeugt.

Alle anderen Ansätze die ich bisher gesehen habe, gehören eher in die Kategorie Expertenwissen. Zu nennen seien hier das Techer-Plugin von Magellan oder auch die FF-Tools (2). Die Einheiten werden nach einem Kriterium sortiert und anschliessend abgearbeitet. Dabei werden Sukzessive die Zuordnungen erstellt. Eine Bewertung bzw. Vergleich verschiedener Möglichkeiten findet wenn dann nur auf unterster Ebene statt.

Diese Vorgehensweise ist keineswegs schlecht, da sie gute Ergebnisse in einer super Zeit liefert. Ausserdem ist das Regelwerk klar und verständlich und niemand wird sich wundern, warum eine Zuordnung zustande gekommen ist.

Eine andere Möglichkeit möchte ich hier aber auch aufzeigen: Jeder Teilzustand lässt sich ähnlich wie bei der Wegfindung mit einer Kosten- bzw. Gewinn und einer Schätzfunktion bewerten. Somit lässt ein meist nicht erreichbares Optimum definieren, auf welches man versucht die Zuordnungen hin zu trimmen. Das Wichtigste dabei ist also als erstes die Kosten- bzw. Gewinnfunktion und daraus abgeleitet später die Schätzfunktion.

Kosten- Gewinnfunktion

Lernen verursacht Kosten, soweit ist das denke ich jedem klar. In Eressea ist es das Silber für den Unterhalt oder auch das für die teuren Talente. Wird man gelehrt, bleiben die Kosten zwar absolut gleich, aber der Lerneffekt ist grösser. Also kann man sagen die Kosten pro Lernwoche sinken auf die Hälfte - Richtig, nicht ganz, denn der Lehrer will ja auch bezahlt sein.

Man kann auch anders rum herangehen und den Lerngewinn maximieren und davon ausgehen die Kosten sind konstant (was ja meist stimmt). Dieser Fall kommt uns entgegen, da lehren dann nicht mehr unendliche Kosten bedeutet (da wir ja nichts lernen).

Eine einfache Gewinnfunktion könnte also folgende Werte pro Person zurückgeben (Beispiel 1):

Lehrer            = 0
Lernt ohne Lehrer = 1
Lernt mit Lehrer  = 2

Soviel kann ich bestätigen, diese Funktion tut was man erwartet - Sie sorgt dafür das möglichst viele Schüler einen Lehrer bekommen. Leider bewertet sie nicht die Talente von Lehrern oder Schülern und sorgt damit dafür, dass über kurz oder lang alle Einheiten innerhalb eines Bereiches von 2-3 Talentstufen sind. Es wird ebenfalls passieren, dass ein Lehrer eine 2 Personen Einheit lehrt.

Es ist also wie anfangs erwähnt wichtig, sich über einige Grenzen im klaren zu werden. Dann müssen diese Grenze, die sich leider oft auch gegenteilig auswirken, in die Kostenfunktion integriert werden.

Grenzfälle für die Kostenfunktion

Als erstes sollte man festlegen wie viele Schüler ein Lehrer mindestens haben soll, selbst wenn der Talentunterschied lediglich 2 Stufen ist. Desweiteren sollte man klären bis zu welcher Stufe Rekruten gelehrt werden dürfen, d.h. ob T20er auch T0er lehren dürfen. Allgemeiner spezifiziert man, bis zu welcher Talentdifferenz in Abhängigkeit vom Talent des Lehrers wie viele Schüler mindestens gelehrt werden müssen, damit diese Zuordnung günstiger ist, als Lehrer und Schüler lernen zu lassen. Am besten erstellt man sich hier ein kleines Diagramm mit der gewünschten Linie/Kurve und entwickelt dann eine Funktion die diese möglichst gut abdeckt.

Ich habe für mich folgende Funktion entwickelt:

A = 1.2
B = 15
C = 0.34
Lehrer            = 0
Lernt ohne Lehrer = (A^Stufe + B) * (3^C)
Lernt mit Lehrer  = (A^Stufe + B) * (6^C)

Die Parameter A, B und C sind nach langen Tests und teils durch gleichsetzen diverser Formeln entstanden. Die Formel lässt sich problemlos auch fürGehirnschmalz und Akademienutzung verwenden, indem die 3, bzw. 6 durch die Anzahl der Lernversuche * 3 ersetzt wird. Lernen mit Gehirnschmalz ergibt also (1 + 1/3) * 3 = 4.

Wir man sich ausrechnen kann, ist lernen mit Lehrer durch Faktor C nicht doppelt so gewinnbringend wie ohne Lehrer, sondern nur ca. 27% mehr wert. Und dadurch, dass die Stufe als Potenz in die Formel eingeht, gewinnt man weit mehr wenn man 8 hochstufe Leute lehrt statt 10 Neulinge.

Schätzfunktion

Wie erwähnt sollte diese den Gewinn möglichst gut vorhersagen. Wichtig dabei ist, das Optimum nicht zu unterschätzen. Wo aber liegt unser Optimum? Offenbar können nicht alle Leute gelehrt werden, ohne dass es einen Lehrer gibt. D.h. wir können zwar für jede Einheit annehmen sie wird komplett gelehrt, müssen dann aber gleichzeitig das Minimum dessen abziehen, das ein Lehrer als Gewinn hätte erreichen können. Eine sehr gute Näherung dafür ergibt sich also aus:

Geschätzter Gewinn = Lernt_mit_Lehrer(Stufe) - 0.1 * Lernt_mit_Lehrer(Stufe+2) + 0.01 * Lernt_mit_Lehrer(Stufe+4)

Damit liegen wir definitiv leicht über dem möglichen Optimum.

A*-Suche

... kommt später ...