Initialversion: Forschungsprojekte 'HRT meets' und 'Grundsymbole' integriert

This commit is contained in:
2025-07-10 19:18:22 +02:00
commit 7608350141
84 changed files with 20080 additions and 0 deletions

View File

@ -0,0 +1,16 @@
Um die Konsistenz und Robustheit des entwickelten Simulationsmodells weiter zu überprüfen, können wir mehrere spezifische Tests durchführen. Hier sind einige Vorschläge und Methoden, die angewendet werden können:
Sensitivitätsanalyse:
- Parameteränderungen: Variieren Sie die Schlüsselparameter wie die bereitschafts_std, die Koeffizienten für Motivation (-0.3 und 0.4) und Neugier (0.2, -0.1, 0.1, -0.05). Überprüfen Sie, wie empfindlich das Modell auf diese Änderungen reagiert, insbesondere in Bezug auf die Endresultate der Kompetenzentwicklung.
- Auswirkungen auf die Gesamtfläche unter der Kurve: Analysieren Sie, wie sich die Fläche unter der Kurve verändert, wenn Sie die Eingabeparameter variieren. Dies gibt Aufschluss darüber, welche Parameter das Modellverhalten am stärksten beeinflussen.
Replikation der Simulation mit verschiedenen Seeds:
- Führen Sie die Simulation mehrmals mit unterschiedlichen Zufallsseeds durch, um die Variabilität der Ergebnisse zu beobachten. Dies hilft zu verstehen, wie stabil das Modell unter verschiedenen Zufallseinflüssen ist.
Vergleich mit theoretischen Erwartungen:
- Theoriebasierte Erwartungen: Stellen Sie sicher, dass die Simulationsergebnisse mit theoretischen Erwartungen und bekannten Lerntheorien übereinstimmen. Zum Beispiel sollten Phasen des schnellen Wachstums von Kompetenzen von Perioden der Konsolidierung gefolgt sein.
- Konsistenz mit empirischen Daten: Wenn möglich, vergleichen Sie die Ergebnisse mit realen Daten oder Studien zur Kompetenzentwicklung, um zu überprüfen, ob das Modell realistische Muster reproduziert.
Statistische Analysen:
- Konfidenzintervalle und Variabilität: Berechnen Sie Konfidenzintervalle für den mittleren Kompetenzwert am Ende der Simulationsperiode, um die Unsicherheit in den Ergebnissen zu quantifizieren.
- Histogramme der Endkompetenz: Erstellen Sie Histogramme oder Dichtefunktionen der Kompetenzwerte am Ende der Simulationsperioden, um die Verteilung der Ergebnisse zu visualisieren und auf Anomalien zu untersuchen.
Robustheitschecks:
- Test auf Extremwerte: Überprüfen Sie, wie das Modell auf extrem hohe oder niedrige Werte bei der initialen Kompetenz oder bei den Parametern für Motivation und Neugier reagiert.
- Null- und Negativtests: Setzen Sie spezifische Parameter wie die Motivations- oder Neugierkoeffizienten auf Null oder negative Werte, um zu sehen, ob das Modell wie erwartet reagiert und keine unplausiblen Werte produziert.
Diese Tests helfen dabei, das Vertrauen in das Modell zu stärken und seine Grenzen zu verstehen. Falls du eine dieser Analysen durchgeführt sehen möchtest oder spezifische Anpassungen benötigst, lass es mich wissen, und ich kann den entsprechenden Python-Code bereitstellen oder die Analyse durchführen.

View File

@ -0,0 +1,86 @@
## **Um die statistischen Analysen in dein bestehendes Modell einzufügen, darunter die Berechnung von Konfidenzintervallen und das Erstellen von Histogrammen zur Visualisierung der Endkompetenzwerte, kannst du den Code wie folgt erweitern:**
## **Ergänzung zum Code**
## **Nach der Simulation und grundlegenden Analyse können die folgenden Schritte implementiert werden:**
Berechnung von Konfidenzintervallen für den mittleren Kompetenzwert am Ende der Simulationsperiode.
- Erstellung von Histogrammen der Endkompetenzwerte, um die Verteilung zu visualisieren.
## **Hier ist der vollständige Code mit den zusätzlichen statistischen Analysen:**
python
<p style="text-align:center;margin:0">
</p>
Copy code
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import scipy.stats as stats
# Definiere die Startbedingungen und Parameter
start_kompetenz = 1.25
quartale = 12
bereitschafts_std = 0.1
bereitschafts_steigerung_phase = {
'Anpassung': -0.1,
'Verfestigung': 0.2,
'Wachstum': 0.5,
'Plateau': 0.7
}
# Funktionen zur Anpassung der Bereitschaft, Motivation und Neugier
def anpassung_der_bereitschaft(aktuelles_quartal):
if aktuelles_quartal <= 4:
return bereitschafts_steigerung_phase['Anpassung']
elif 5 <= aktuelles_quartal <= 6:
return bereitschafts_steigerung_phase['Verfestigung']
elif 7 <= aktuelles_quartal <= 10:
return bereitschafts_steigerung_phase['Wachstum']
else:
return bereitschafts_steigerung_phase['Plateau']
def motivation(aktuelles_quartal):
if aktuelles_quartal == 8:
return -0.3
elif aktuelles_quartal == 12:
return 0.4
return 0
def neugier(aktuelles_quartal, start_kompetenz):
if start_kompetenz < 5:
return 0.2 if aktuelles_quartal <= 6 else -0.1
return 0.1 if aktuelles_quartal <= 6 else -0.05
# Simulation der Kompetenzentwicklung
simulations_durchläufe = 1000
ergebnisse = pd.DataFrame()
for durchlauf in range(simulations_durchläufe):
kompetenz = [start_kompetenz]
for quartal in range(1, quartale + 1):
steigerung = anpassung_der_bereitschaft(quartal) + motivation(quartal) + neugier(quartal, start_kompetenz)
bereitschaft = np.random.normal(steigerung, bereitschafts_std)
neue_kompetenz = np.clip(kompetenz[-1] + bereitschaft, 1, 10)
kompetenz.append(neue_kompetenz)
ergebnisse[f'Quartal_{durchlauf}'] = kompetenz
# Berechnung von Konfidenzintervallen
end_kompetenzen = ergebnisse.iloc[-1]
mittelwert = end_kompetenzen.mean()
std_abweichung = end_kompetenzen.std()
konfidenzintervall = stats.norm.interval(0.95, loc=mittelwert, scale=std_abweichung / np.sqrt(len(end_kompetenzen)))
# Visualisierung von Histogramm der Endkompetenz
plt.figure()
plt.hist(end_kompetenzen, bins=10, color='blue', alpha=0.7)
plt.title('Histogramm der Endkompetenzwerte')
plt.xlabel('Kompetenzniveau')
plt.ylabel('Häufigkeit')
plt.grid(True)
plt.show()
# Ausgabe der Analyseergebnisse
print("Durchschnittliche Endkompetenz:", mittelwert)
print("Standardabweichung der Endkompetenz:", std_abweichung)
print("95% Konfidenzintervall für die mittlere Endkompetenz:", konfidenzintervall)
## **Erklärung**
- Konfidenzintervalle: Das 95% Konfidenzintervall gibt an, wo die wahre mittlere Endkompetenz mit 95% Sicherheit liegt. Es wird unter der Annahme berechnet, dass die Endkompetenzen normalverteilt sind.
- Histogramm: Dieses visualisiert die Verteilung der Endkompetenzwerte aller Simulationsdurchläufe, was hilft, die Form der Verteilung zu erkennen und auf Anomalien zu prüfen.
## **Dieser Code fügt deinem Simulationsmodell wichtige statistische Analysen hinzu, um die Unsicherheit und Verteilung der Ergebnisse zu verstehen.**