Was sind Algorithmen und wie werden sie in der Regelungstechnik eingesetzt?

31. Mai 2024
Jeder hat schon vom so genannten "Google Algorithmus" und anderen Algorithmen für soziale Medien gehört, die dazu dienen, die interessantesten Inhalte für jede Person zu finden. Aber was bedeutet das eigentlich? Wie funktioniert es und was geht in Ihrem Computer vor?
Working at a computer

Jeder hat vom "Google-Algorithmus" und anderen Social-Media-Algorithmen gehört, die verwendet werden, um für jede Person die interessantesten Inhalte zu finden. Diese Algorithmen (Google, Facebook, Tik Tok usw.) verhalten sich wie ein virtueller Bibliothekar, der die besten Dinge auswählt, die man sehen oder lesen sollte. Dieser intelligente Bibliothekar weiss, welche Bücher Sie in der Vergangenheit gelesen haben, er weiss, welches Buch Sie gerade auswählen, und er verfügt über Informationen über neue Dinge, die Sie in der Zukunft interessieren werden. Mit diesem Wissen kann er Ihnen Bücher, Zeitschriften und Videos empfehlen, die Sie wahrscheinlich interessieren werden. 

Ein Algorithmus ist im Allgemeinen eine Reihe von Anweisungen oder Regeln, die Schritt für Schritt zur Lösung eines Problems oder zur Durchführung einer Aufgabe dienen. Nach dieser einfachen Definition ist ein Rezept in einem Kochbuch ein Algorithmus, ebenso wie ein Geschäftsprozess, ein Softwareprogramm oder ein Organigramm.

Mathematiker und Ingenieure verstehen unter einem Algorithmus in der Regel eine Reihe logischer und klar definierter Schritte in einem Rechenprozess. Algorithmen werden in vielen Bereichen, wie z. B. in der Informatik, der Mathematik und im Alltag, eingesetzt, um Prozesse und Aufgaben effizienter zu gestalten.

Einfache Beispiele für Algorithmen

Ein sehr einfacher Algorithmus besteht darin, S, die Summe der beiden Zahlen X und Y, zu berechnen.

  Prozess starten :

  X und Y addieren, um S zu berechnen (d. h. X+Y = S)

  Prozess beenden.

Ein anspruchsvolleres Beispiel ist ein Algorithmus, der verwendet wird, um zu bestimmen, ob eine bestimmte Zahl (N) eine Primzahl ist :

  Prozess starten :

  Dividiere die Zahl (N) durch 2, dann

  Dividiere die Zahl (N) durch 3, dann

  ... den Prozess fortsetzen, bis schliesslich ...

  Die Zahl (N) durch N-1 teilen

  Wenn keine dieser Berechnungen zu einer ganzen Zahl führt, dann ist N eine Primzahl.

  Prozess beenden.

(Hinweis: In der Praxis nur bis √N rechnen)

Eine andere Art von Algorithmus ist eine logische Aussage, wie z. B. "Wenn etwas wahr ist, dann erledige Aufgabe A"; und "Wenn etwas falsch ist, dann erledige Aufgabe B". Zum Beispiel: "Wenn eine Person schuldig ist, muss sie ins Gefängnis"; und "Wenn eine Person unschuldig ist, muss sie nicht ins Gefängnis".

  Prozess    starten :

  Ist die Person schuldig? 

  Ist die Antwort "Ja", kommt sie ins Gefängnis.

  Ist die Antwort "Nein"; kommt sie frei.

  Prozess beenden.

Die Verwendung von Algorithmen in der Regelungstechnik

Bild
lady changing a thermostat

Betrachten wir die Verwendung von Algorithmen in der Regelungstechnik, beginnend mit dem Befehl "Ein/Aus". Beispielsweise kann die Temperatur in einem Raum durch einen Thermostat mithilfe eines einfachen Ein/Aus-Algorithmus gesteuert werden:

  • Wenn der Raum zu warm ist, schaltet die Heizung aus.
  • Wenn es im Raum zu kalt ist, schaltet die Heizung ein.

Diese Art der Kontrolle ähnelt dem "Ins Gefängnis gehen"-Algorithmus: Wenn A wahr ist, passiert X; wenn B wahr ist, passiert Y, wie oben beschrieben. Es handelt sich um einen "Ein/Aus"-Regelungsalgorithmus, da die Heizung (in diesem Fall) entweder vollständig ein- oder vollständig ausgeschaltet wird, bis der gewünschte Zustand (Temperatur) erreicht ist.

Proportionaler Regelungsalgorithmus

Ein weiterer einfacher Algorithmus, der als Proportionalregelung bezeichnet wird, wird z. B. beim Tempomat im Auto verwendet:

Bild
graph showing error
Die Differenz zwischen der gewünschten und der tatsächlichen Geschwindigkeit wird als Fehler (ε) bezeichnet.
  • Wenn die Geschwindigkeit zu gering ist, mehr Gas geben; und
  • Wenn die Geschwindigkeit zu hoch ist, weniger Gas geben.

Die Differenz zwischen der gewünschten und der tatsächlichen Geschwindigkeit wird als Fehler (ε) bezeichnet, wie rechts dargestellt. Dieser Fehler (ε) ändert sich, je nachdem, wie sich die tatsächliche Geschwindigkeit im Laufe der Zeit verändert. Er ist natürlich null, wenn die tatsächliche Geschwindigkeit gleich der gewünschten Geschwindigkeit ist.

 

Bild
Working of the speed controller
Die tatsächliche Geschwindigkeit zu jedem Zeitpunkt wird an den Tempomaten zurückgegeben.

Die tatsächliche Geschwindigkeit zu jedem Zeitpunkt wird an den Tempomaten zurückgegeben (wie links gezeigt), der dann die Differenz (Fehler ε) zwischen der tatsächlichen und der gewünschten Geschwindigkeit berechnet und dann "proportional" zur Grösse dieses Fehlers (ε) Gas gibt: Ist der Fehler gross, muss viel Gas gegeben werden; ist der Fehler klein, nur wenig.

Proportionale Regelungsalgorithmen, die eine Eingangsgrösse eines Systems (in diesem Fall des Fahrzeugs) proportional zum Fehler erhöhen oder verringern, funktionieren in vielen Fällen gut. Es kann jedoch Probleme geben, die einen ausgefeilteren Regelungsalgorithmus erfordern. Bei einem proportionalen Regelungsalgorithmus kann es zu grossen Abweichungen oder Überschreitungen kommen, bevor die gewünschte Geschwindigkeit erreicht wird, oder zu einer bleibenden Differenz zwischen gewünschter und tatsächlicher Geschwindigkeit.  

Bild
Speed control with P (Proportional) algorithm
Geschwindigkeitsregelung mit P-Algorithmus (Proportional)

Regelung mit dem PID-Algorithmus

In Regelsystemen, wo diese Abweichungen nicht akzeptabel sind, wird Algorithmus benötigt, der PID-Regler (Proportional, Integral, Differential). Der PID-Regler verhält sich im Prinzip so wie der virtuelle Bibliothekar, indem er die Gegenwart, die Vergangenheit und den zukünftigen Zustand eines Systems berücksichtigt. 

Der "proportionale" Teil des Algorithmus stellt die Gegenwart dar: d. h. er regelt die Beschleunigung proportional zum aktuellen Fehler: d. h. proportional zur aktuellen Differenz zwischen der tatsächlichen und der gewünschten Geschwindigkeit.

Der "integrale" Teil des Algorithmus reagiert auf die Vergangenheit: Er summiert die Fehler der Vergangenheit und nimmt zusätzliche kleine Anpassungen vor, sodass die tatsächliche genau auf die gewünschte Geschwindigkeit zuläuft, ohne bleibende Differenz.

Der "differentielle" Teil des Algorithmus stellt die Zukunft dar: Er prüft, ob sich der Fehler so schnell entwickelt, dass das System den gewünschten Ausgabewert überschreiten wird, und nimmt dann entsprechend weitere Anpassungen vor.

Hier (in der Abbildung unten) sehen wir das Ergebnis der Geschwindigkeitssteuerung mit einem PID-Regler. Es gibt keine grossen Abweichungen oder Überschreitungen. Die Geschwindigkeit konvergiert präzise und sanft zur gewünschten Geschwindigkeit, und es gibt keine bleibende Differenz.

Speed control with PID algorithm.  (Proportional, Integral, Differential)
Geschwindigkeitssteuerung mit dem PID-Algorithmus. (Proportional, Integral, Differential).

Es gibt andere, viel ausgefeiltere Algorithmen, die in komplexen Situationen Anwendung finden, z. B. bei der Steuerung eines Roboterarms in einer Fabrik, wo es mehrere Ausgänge zu steuern gilt, oder bei Systemen, bei denen es nicht nur einen richtigen Ausgang gibt, ähnlich wie bei den Algorithmen für soziale Medien, wo man einfach nach einer guten Lösung sucht.

By Jonathan Copley