Algorithmus – Kochrezept für Handlungsabläufe

Ein Algorithmus beschreibt eindeutig einen Ablauf.

„Algorithmus – Kochrezept für Handlungsabläufe“ ist Teil der Artikelserie „Methoden der Wirtschaftsinformatik von Null auf Hundert

Stand: 23.09.2021

Das ist ein Algorithmus

Ein Algorithmus ist die Beschreibung einer Folge von Handlungen, die eine Aufgabenstellung lösen. Das Merkmal eines Algorithmus ist, dass er bei gleichen Startbedingungen und gleichen Durchführungsbedingungen auch immer zum gleichen Ergebnis führt. So liefert die Berechnung des Bruttobetrages aus dem Nettobetrag mit einem gegebenen Mehrwertsteuersatz immer das gleiche Ergebnis, wenn der Nettobetrag und der Mehrwertsteuersatz gleich bleiben (Abb. 1).

1. Multipliziere den Nettobetrag mit (1+Mehrwertsteuersatz)
2. mNotiere das Ergebnis und nenne es Bruttobetrag.

Abb. 1: Einfachster Algorithmus für die Berechnung des Bruttobetrages.

Algorithmen gibt es schon sehr lange, sie sind nicht auf das Vorhandensein von Computern angewiesen. Der Begriff „Algorithmus“ wird der Lateinisierung des Namens Al-Chwarizmi, eines persischen Mathematikers aus dem 9 Jahrhundert, zugeschrieben. Ein mit 2300 Jahren sehr alter Algorithmus ist der euklidische Algorithmus, der den größten gemeinsamen Teiler zweier Zahlen ermittelt. Dieser Algorithmus wird in Abb. 2 vorgestellt.

Beispiele

Ein weiteres Beispiel für einen Algorithmus ist ein Kochrezept. Ein Kochrezept führt gerade nicht zuverlässig zum immer gleichen Ergebnis. Das ist der Tatsache geschuldet, dass Sie die Voraussetzungen (Eigenschaften der Zutaten) und die Rahmenbedingungen (bei Eierspeisen wie Salzburger Nockerln oder Kaiserschmarrn z.B. der Luftdruck, beim Brotbacken z.B. die Luftfeuchte) nicht präzise genug kontrollieren können. Einfacher zu kontrollieren sind Handlungsanweisungen für Computer, sogenannte Computerprogramme. Computerprogramme setzen – einfache und komplizierte – Algorithmen so um, dass ein Computer damit das dazu passende Problem lösen kann.

Das Problem, einen Algorithmus geeignet darzustellen, wird durch unterschiedliche Ansätze gelöst:

  1. Präzise verbale Beschreibung
  2. Grafische Visualisierung durch z.B. Flußdiagramme nach DIN 66001
  3. Pseudocode
  4. Darstellung in Quelltextform einer Programmiersprache.

Euklid suchte nach einem gemeinsamen Maß für die Längen zweier Linien. Dazu zog er wiederholt die kleinere der beiden Längen von der größeren ab. Der euklidische Algorithmus lautet in der übersetzten Originalform:

„Wenn CD aber AB nicht misst, und man nimmt bei AB, CD abwechselnd immer das kleinere vom größeren weg, dann muss (schließlich) eine Zahl übrig bleiben, die die vorangehende misst.“

Das wäre dann die präzise verbale Beschreibung. Etwas übersichtlicher wird es mit Pseudocode wie in Abb. 2.

1 Sei A die größere der beiden Zahlen A und B (gegebenenfalls vertauschen).
2 Setze A := A - B.
3a Wenn A und B ungleich sind, dann mit Schritt 1 fortfahren;
3b Wenn sie gleich sind, dann den Algorithmus beenden (Diese Zahl ist der größte gemeinsame Teiler.)

Abb. 2.: Der euklidische Algorithmus

Ausprobiert mit den Zahlen A=6 und B=8 ergibt sich der konkrete Ablauf in Abb. 3.

A=6, B=8, tauschen, A=8, B=6.
A = 8-6 = 2. A<>B,
also tauschen A=6, B=2.
A = 6-2 = 4. A<>B, A=4, B=2.
A = 4-2 = 2. A=B. fertig, 
A = größter gemeinsamer Teiler

Abb. 3:Umsetzung des euklidischen Algorithmus in eine konkrete Rechnung

Algorithmen sind heute manchmal wesentlich komplizierter. Für viele Problemstellungen hat man Algorithmen gefunden, z. B. den QuickSort- Algorithmus für die Sortierung von Listen, den Ramer-Douglas-Peucker-Algorithmus, der zur Reduktion der Koordinatenmenge bei GPS-Tracks verwendet werden kann oder der Canny-Algorithmus für die Kantendetektion bei der Bilderkennung.

 

Teile diesen Beitrag.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.