Die Planung und Durchführung von Versuchsreihen (Design of Experiments, DOE) kann eine komplexe Aufgabe sein, die mehrere Spezialisten erfordert. Auch nach Abschluss der Versuche bestehen weiterhin Herausforderungen bei der Analyse, Interpretation und Kommunikation der Ergebnisse, insbesondere wenn die Beteiligten über unterschiedliche Fachkenntnisse verfügen. Um diesen Prozess zu optimieren und unseren Workflow zu standardisieren, haben wir ein Skript entwickelt, das DOE-Ergebnisse automatisch visualisiert. Das Skript generiert zwei intuitive Diagramme, die die Ergebnisse anschaulich darstellen.
Die erste Grafik veranschaulicht die Gesamtvariabilität jeder interessierenden Variable und zeigt, inwieweit diese gemäß dem Versuchsdesign beeinflusst werden kann. Die zweite Grafik fasst die Sensitivität der interessierenden Variable gegenüber Änderungen der Eingangsvariablen zusammen.
Unser Skript ist flexibel gestaltet und ermöglicht das Hinzufügen neuer Berechnungen sowie die Normalisierung von Diagrammen nach Bedarf. Dieses Tool hat unsere Effizienz deutlich gesteigert und spart im Vergleich zu manuellen Methoden etwa zwei Stunden pro Diagramm. Darüber hinaus verbessert das standardisierte Visualisierungsformat die Kommunikation mit nicht-technischen Stakeholdern und macht die Ergebnisse des Energieministeriums zugänglicher und verständlicher.
Wir bei NNE unterstützen viele unserer Kunden bei der Versuchsplanung (Design of Experiments, DoE) aus verschiedenen Gründen. Beispiele hierfür sind Robustheitstests, Prozessverbesserungen und Validierungen. Eine der größten Herausforderungen besteht darin, die Ergebnisse den Stakeholdern zu vermitteln. Dabei können verschiedene Schwierigkeiten auftreten. Manche Stakeholder verfügen möglicherweise nicht über so ausgeprägte statistische oder mathematische Kenntnisse wie wir.
In manchen Fällen mag es sich sogar um eine leichte Mathematikphobie handeln. Viele werden mit der JMP-Oberfläche nicht vertraut sein, was etwas einschüchternd wirken kann, oder die Komplexität des erstellten Modells könnte einfach eine Herausforderung für die Analyse oder das Verständnis darstellen.
Ein weiterer wichtiger Aspekt ist, dass einige unserer Analysen recht zeitaufwendig und arbeitsintensiv waren. Die Durchführung kann mitunter etwas eintönig sein. Und wenn man sich langweilt, macht man auch Fehler, und das ist nicht gut.
Wir wollten eine Methode entwickeln, mit der wir schnell und einfach Diagramme erstellen können. Diese können wir Stakeholdern präsentieren und die Ergebnisse kommunizieren. Die Erstellung sollte automatisch erfolgen, um Fehler zu minimieren, und die Geschwindigkeit sollte hoch sein, damit wir nicht unnötig lange auf die Ergebnisse warten müssen. Da wir mit vielen Modellen arbeiten, sollte die Methode auch eine Vielzahl von Modellen verarbeiten können.
Wir hatten die Diagramme bereits erstellt. Das hat trotzdem lange gedauert. Im Allgemeinen haben wir zwei Diagramme erstellt: eines zur Visualisierung der Ergebnisspanne und ein weiteres zur Visualisierung der Sensitivität des Ergebnisses gegenüber den Variablen, die wir in unserem Versuchsplan verwenden.
Wir haben einen Weg gefunden, die Analyse zu automatisieren, indem wir die erforderlichen Berechnungen durchführen, indem wir unsere Modelle nach Python exportieren, einige globale Optimierungsprobleme lösen und die Ergebnisse dann in JMP visualisieren und dort auch normalisieren, um Vergleiche zu ermöglichen.
Hier sehen Sie eines der Diagramme. Das ist das Diagramm, das wir hier erstellen. Das ist das Spannweitendiagramm. Hier haben wir ein Sensitivitätsdiagramm. Für das Spannweitendiagramm haben wir ein kleines Beispiel erstellt. Die Daten stammen von Sojabohnensorten, verschiedenen Sojabohnenarten, für die wir den Ernteertrag modelliert und anschließend dieses Diagramm erstellt haben.
Ich kann Ihnen den Prozess der Diagrammerstellung zeigen. Er ist recht einfach. Wir haben hier die Daten. Wir haben auf irgendeine Weise ein Modell erstellt. Dieses Komma erscheint hier. Dann drücken wir in unserem Tool einfach einen kleinen Knopf, und es wird ausgeführt. Bei manchen Modellen, insbesondere wenn einige der nominalen Variablen viele Ausprägungen haben, kann dies etwas rechenintensiv sein. Es muss für jede Kombination ein globales Optimierungsproblem gelöst werden, aber selbst in den größeren Fällen erhalten wir die Ergebnisse recht schnell.
Hier sehen Sie das Ergebnis. Es hat etwa 20 Sekunden gedauert. Von hier aus können wir die gewünschten Daten grafisch darstellen. Im Allgemeinen wird ein Diagramm erstellt. Sie können es nach Belieben anpassen. Einige dieser Variablen dienen nur bestimmten Analysen. Hier erhalten wir fast sofort ein Diagramm, in dem wir die gewünschten Informationen sehen und sie den Stakeholdern leicht präsentieren können.
Für diesen Datensatz möchten wir beispielsweise je nach Jahreszeit die optimale Anbaupflanze ermitteln. Der hier dargestellte Punkt ist der Nominalwert. Das ist der Ertrag, den wir erzielen, wenn wir die jeweilige Anbaupflanze wählen und alle anderen Einstellungen auf den Mittelwert setzen. Der Balken zeigt den möglichen Wertebereich an.
Für diese Ernte kann der Wert zwischen 4.700 und etwa 4.000 liegen. Die gestrichelten Linien stellen die Kontrollgrenzen dar, also die nominale Standardabweichung plus/minus, zusammen mit den Ziel- und Spezifikationsgrenzen. Wir sehen sofort, dass wir für die erste Saison drei oder vier gute Kandidaten haben, die deutlich innerhalb unserer Grenzen liegen, und sogar einen, der fast genau im Zielbereich liegt.
Wir können das in Staffel 2 wiederholen, wo die Werte im Allgemeinen etwas niedriger liegen, aber wir können trotzdem noch einige passende finden. Dies war ein Anwendungsfall dafür. Jetzt können wir das alles schließen. Denn außerdem hatte diese Funktion nur eine Ausgabevariable.
Ein weiterer Fall ist, dass wir mehrere Ausgaben haben können, die unterschiedliche Skalen aufweisen können. Hier ist ein weiteres Beispiel. Es handelt sich um simulierte Daten, die jedoch auf einem realen Beispiel basieren. Wir wollten ein Produkt analysieren. Es war ein industriell gefertigtes Produkt. Es wurden viele Dimensionen gemessen, und wir wollten herausfinden, welche Dimensionen für das Ergebnis am wichtigsten waren.
Hier haben wir zwei erklärende Variablen und fünf Dimensionen mit unterschiedlichen Skalen. Ich kann diesen Schritt überspringen. Wir können unser Modell erneut ausführen. Die Darstellung dauert etwa fünf Sekunden, und wir erhalten sofort unsere Ergebnisse. Hier wird auch schnell das Problem mit den unterschiedlichen Skalen deutlich: Wenn wir versuchen, die Daten darzustellen, sehen wir nur die Dynamik der vierten Dimension, da diese so viel größer ist als die anderen. Wir könnten versuchen, sie zu skalieren, aber das Problem bliebe bestehen. Die Dimensionen 1 und 2 sind größer als die dritte, daher sehen wir immer nur eine oder zwei gleichzeitig.
Stattdessen normalisieren wir unsere Diagramme auf irgendeine Weise. Wir könnten sie beispielsweise hier auf den Zielwert normalisieren. Hier tragen wir unsere Variable einfach ein. Jetzt ist sie normalisiert, sodass der Zielwert immer bei Null liegt, die obere Spezifikationsgrenze bei Eins und die untere Spezifikationsgrenze bei -1. Nun können wir sofort sehen: Wenn wir Dimension 2 für 3 festgelegt haben, liegen wir immer außerhalb der Spezifikation.
Wir sehen, dass die Dimensionen 1 und 2 im Vergleich zur Spezifikationsgrenze nur geringe Abweichungen aufweisen. In Konfiguration 2 variiert Dimension 2 jedoch stark, abhängig von den Eingangsvariablen. In dieser Konfiguration ist eine präzise Temperaturregelung unerlässlich.
Diese Methode funktioniert, wenn wir Zielvorgaben haben. Andernfalls gibt es andere Möglichkeiten. Wir haben eine weitere Methode, die lediglich auf den Achsenabschnitt und die Zielvorgaben normiert ist. Wenn wir kein spezifisches Ziel haben, wollen wir nur sicherstellen, dass wir innerhalb der Zielvorgaben liegen; dies wird hier normiert. Wir können eine letzte Methode verwenden, die auf die Standardabweichung des Achsenabschnitts normiert ist. Diese funktioniert immer, aber es kann trotzdem zu Problemen mit unterschiedlichen Skalen kommen.
Hier sehen wir beispielsweise, dass die Dimension 4 im Vergleich zur Restvarianz recht groß ist, während die Spezifikationsgrenzen der Dimension 1 im Vergleich zur Restvarianz nicht sehr groß sind.
Schließlich interessiert Sie vielleicht nicht nur, welche Werte Sie annehmen können, sondern auch, wie Sie diese Ergebnisvariablen beeinflussen möchten. Hier haben wir einen weiteren Datensatz, der den Kalorienverbrauch in Abhängigkeit von Alter, Größe, Gewicht, Geschlecht usw. darstellt. Wir möchten wissen, wie viele Kalorien ich unter diesem Einfluss verbrennen könnte.
Wir haben den Datensatz. Wir haben unser Modell, das hier eingegeben wird. Wir drücken den Knopf. Es dauert ein paar Sekunden, und dann erscheint ein Diagramm. Hier stellen wir die Sensitivitäten dar. Was sind Sensitivitäten? Sie zeigen, wie stark sich die Zielvariable in Abhängigkeit von den nominalen Einstellungen und den einzelnen kontinuierlichen Variablen verändert.
Beispielsweise könnten wir hier sehen, dass ich, wenn ich in meinem Fall Sport treibe und eine Minute länger trainiere, etwa 5,5 Kalorien mehr verbrennen würde. Würde ich die Intensität steigern und meine Herzfrequenz um einen Schlag erhöhen, würde sich der Kalorienverbrauch um etwa 2,5 Kalorien erhöhen.
Die anderen Variablen im Modell sind für die Praxis möglicherweise weniger relevant. Mein Alter spielt vielleicht keine so große Rolle … Mein Gewicht vielleicht auch nicht. Das hängt natürlich vom jeweiligen Ausmaß der Variablen ab. Wenn ich meine Herzfrequenz stärker variieren kann als die Dauer, könnte das durchaus erhebliche Auswirkungen haben.
Wir haben noch eine andere Normalisierungsmethode, die darin besteht, den Gradienten zu nehmen, die Empfindlichkeit zu ermitteln und das Ergebnis mit der maximalen Bandbreite zu multiplizieren… Wie stark kann ich meine Herzfrequenz im Vergleich zur Dauer variieren?
Hier sehen wir, wo die Herzfrequenz zuvor nicht so entscheidend war. Wir sehen nun, dass die Herzfrequenz einen ebenso großen Einfluss auf den Kalorienverbrauch haben könnte wie die Dauer, da ich meine Herzfrequenz stärker variieren könnte als meine Dauer.
Wir können auch sehen, dass ich allein durch die Dauer des Trainings fast mehr Kalorien verbrennen könnte. Durch intensiveres Training könnte ich voraussichtlich etwa 60 Kalorien mehr verbrennen. Wir können auch sehen, wie stark ich mein Gewicht oder mein Alter variieren kann. Das könnte immer noch praktische Auswirkungen haben, die wir vorher nicht erkennen konnten, da wir nur die individuellen, geschätzten Langzeitwirkungen betrachtet haben.
Jetzt schließen wir das Ganze. Wenn wir von vorne anfangen: Wir wollten eine automatische Methode zur Analyse von Experimenten entwickeln. Wir haben jetzt eine funktionierende Methode. Sie ist relativ schnell und lässt sich an die eigenen Bedürfnisse anpassen, je nachdem, wie die Diagramme aussehen sollen. Das war's im Wesentlichen.