Was ist ein Algorithmus?

von | 12. März 2019 | Grundlagen

Der Algorithmus spielt in vielen Bereichen des Lebens bereits eine bedeutende Rolle. Dennoch ist das Wissen über sie und was dahinter steckt noch nicht sehr ausgeprägt. Der Begriff taucht immer häufiger im Alltag auf. Dabei handelt es sich keineswegs um eine neue Bezeichnung. Ganz im Gegenteil, der Begriff stammt aus dem Altertum und entstand in der Mathematik und Philosophie.
Zunächst war ein Algorithmus nichts anderes als eine bestimmte Art philosophischer Abhandlungen. Genauer gesagt, handelte es sich um ein mathematisches Lehrbuch.

Die Mutter des Algorithmus

Der Text im Bild unten beginnt mit den Worten: „Dixit Algorismi“ übersetzt so viel wie: „Algorismi hat gesagt“. Bis um 1600 bedeutete das Wort Algorithmus so viel wie „Lehrbuch“.

Bild altes Dokument "Algorithmus"

Die Lehrbücher enthielten Vorschriften zum Zählen, Rechnen oder zur Vermittlung von Lösungswegen für mathematische Aufgaben. Der erste für einen Computer bestimmte Algorithmus stammt von Ada Lovelace. Sie ist die Pionierin moderner Programmiersprachen.

Schon zu Lebzeiten wurde sie „Zahlenzauberin“ genannt. Ihr erster Algorithmus datiert aus dem Jahr 1843 und sollte zur Berechnung der Bernoulli-Zahlen dienen. Da es Computer zu der Zeit noch nicht gab, kam er letztlich aber nicht zum Einsatz.

Unterschied zur Software / Programm

Heute wird der Begriff immer wieder als Synonym für „Software“ verwendet. Die Zuschreibung ist aber nicht ganz korrekt. Die Definition lautet: Eine Regel oder ein Set aus Regeln und mathematischer Operationen oder einer Logik, die zur Lösung eines bestimmten Problems gebraucht werden. Ein Algorithmus ist damit so etwas wie ein Programmablaufplan.
Ein Programm bzw. eine Software wiederum lässt sich definieren als ein Instrument mit einer visuellen Eingabe- und Ausgabeoberfläche, das im Hintergrund auf einem Set von festgelegten Regeln besteht. Ein Programm ist also eher das Resultat eines Algorithmus, aber nicht identisch damit.

Einer der berühmtesten und einflussreichsten Algorithmen ist der Google-Suchalgorithmus. In seiner ursprünglichsten Form sieht der „RankPage-Algorithmus“ folgendermaßen aus:

Google Algorithmus Ursprungsform
Larry Pages Formel, die den „PageRank“-Algorithmus definiert – auf ihr basiert die Google-Suche bis heute (wenngleich in abgeänderter Form).

Die moderne Definition von Algorithmen

Der Unterschied zwischen Programm und Algorithmus wird deutlich, wenn man den Aspekt der Programmiersprache hinzunimmt. Ein Algorithmus existiert unabhängig von einer Programmiersprache. Ein Programm hingegen ist immer in einer bestimmten Programmiersprache programmiert.

Alan Turing – ebenfalls einer der Pioniere der modernen Informatik – definierte als Erster den Begriff für das Computer-Zeitalter:

„Eine Berechnungsvorschrift zur Lösung eines Problems heißt genau dann Algorithmus, wenn eine zu dieser Berechnungsvorschrift äquivalente Turingmaschine existiert, die für jede Eingabe, die eine Lösung besitzt, stoppt.“

Neben dieser Kurzform gibt es eine ausführlichere Definition von Turin, bei der er vor allem auf vier Eigenschaften hinweist:

  1. Das von einem Algorithmus beschriebene Verfahren muss in einem endlichen Text eindeutig beschreibbar sein.
  2. Jeder Schritt dieses Verfahrens muss tatsächlich ausführbar sein.
  3. Das Verfahren darf zu jedem Zeitpunkt nur endlich viel Speicherplatz benötigen.
  4. Das Verfahren darf nur endlich viele Schritte benötigen.
YouTube

By loading the video you accept YouTube’s privacy policy.
Learn more

load Video

Der Unterschied zu einem Code

Der Code beschreibt eine Folge von Einzelschritten, die eine Maschine ausführen kann. In vielen Fällen ist Code in einer bestimmten Programmiersprache geschrieben. Diese wird dann automatisch in Befehle übersetzt, die eine Maschine versteht. Der Code besetzt also die Schnittstelle zwischen Algorithmus und Computer, der die Rechenschritte durchführt.

  • Algorithmus: Eine gut durchdachte Abfolge von Schritten zur Lösung eines größeren Problems
  • Code: Anweisungen für die Ausführung durch Maschinen

Beispiele aus dem Bereich Data Science & Machine Learning

Algorithmen gibt es – auch unabhängig von Data-Science- und Machine-Learning-Kontexten – in zahlreichen Bereichen. Insbesondere natürlich in der Mathematik, wo es Algorithmen in den Bereichen Geometrie, Graphentheorie und Kalenderrechnung gibt. Beispiele, die im Bereich Machine-Learning-Anwendung finden, sind unter anderem:

In der Praxis ist hinsichtlich des Einsatzes eines Algorithmus folgende Fragestellung leitend: Wie gelingt es, ein bestehendes Problem zu erkennen, zu formulieren und – wenn möglich – eine passende mathematische Lösung dafür zu finden. Erst dann kann ein Algorithmus entwickelt und sinnvoll in der Praxis eingesetzt werden.

Autor:innen

Michaela Tiedemann

Michaela Tiedemann ist seit den jungen Startup Tagen der Alexander Thamm GmbH mit im Team. Sie hat die Entwicklung vom schnelllebigen, spontanen Startup hin zum erfolgreichen Unternehmen aktiv mitgestaltet. Mit der Gründung einer eigenen Familie begann für Michaela Tiedemann dann parallel dazu ein ganz neues Kapitel. Den Job an den Nagel zu hängen, kam für die frisch gebackene Mutter aber nicht in Frage. Stattdessen entwickelte sie eine Strategie, wie sie ihre Stelle als Chief Marketing Officer mit ihrer Rolle als Mutter in Einklang bringen kann.

0 Kommentare

Einen Kommentar abschicken