Wie sieht ein Algorithmus aus?

Wie sieht ein Algorithmus aus?
⌛ Reading Time: 5 minutes

Wir wissen, dass Facebook, Google und Amazon über Algorithmen verfügen, die uns Updates, Suchergebnisse und Produktempfehlungen liefern. Aber was bedeutet das eigentlich? Was ist ein Algorithmus? Kannst du einen aufschreiben? Wie würde es aussehen, wenn Sie es tun würden? Da sie so viele Teile unseres täglichen Lebens bestimmen, ist es wichtig, ein grundlegendes Gefühl dafür zu haben, was genau unter der Haube vor sich geht – und es ist wirklich nicht so einschüchternd, wie es oft scheint.

Informelle Definition: Algorithmen sind nur Rezepte

Im einfachsten Fall besteht ein Algorithmus einfach aus einer Reihe genau definierter Schritte, denen Sie folgen können. Im Allgemeinen werden einige Eingaben vorgenommen und eine andere Reihe von Ausgaben erstellt. Ein Cupcake-Rezept kann ein Algorithmus sein. Dies gilt auch für die Wegbeschreibung zum Haus eines Freundes, das Spielen eines Notenstücks oder das Nachschlagen eines Wortes in einem Wörterbuch. Raymond Queneau druckte sogar ein Buch mit zehn Sonetten mit Linien, die nahtlos gemischt und aufeinander abgestimmt werden können, um 100.000.000.000 Originalgedichte zu erstellen. Die Implementierung dieser Algorithmen ist sehr unterschiedlich, Sie müssen jedoch keine Programmiersprachen kennen, um die grundlegende Logik dahinter zu verstehen. Das Folgende ist beispielsweise ein Algorithmus zum Angeben einfacher Laufrichtungen.

  1. Biegen Sie nach dem Verlassen Ihrer Tür rechts ab.
  2. Gehen Sie die Straße entlang, bis Sie zur Market Street kommen
  3. Wenn Sie die Market Street erreichen, biegen Sie rechts ab.
  4. Gehen Sie geradeaus, bis Sie ein Backsteingebäude sehen.
  5. Geh in die Haustür.

Das ist ein sehr einfacher Algorithmus, der viele Eingaben verwendet, die Menschen leicht verarbeiten können. Wir wissen bereits über Gehen, Straßen, Materialien, Betreten und all diese anderen Dinge Bescheid. Wenn wir einen Richtungsalgorithmus für einen Roboter erstellen würden, müsste dieser viel länger und spezifischer sein, was viele Algorithmen für den Menschen so verwirrend erscheinen lässt.

Formaler: Algorithmen sind klare, eindeutige Formeln

Algorithmen-Quicksort

Ein Algorithmus, den Sie wahrscheinlich jeden Tag verwenden, ist der PageRank-Algorithmus von Google, der Hunderte von Faktoren einer Webseite untersucht, deren Formel durchläuft und ihr eine Punktzahl zuweist. Die Suchergebnisse, die Sie als Antwort auf Ihren Suchbegriff sehen, sind ein direktes Ergebnis dieser Bewertung. Es funktioniert so gut, weil es einem klar definierten Regelwerk folgt, das angibt, wonach zu suchen ist, was zu ignorieren ist und was mit den gefundenen Informationen zu tun ist.

Um einen sehr einfachen Suchvorgang zu visualisieren, finden Sie hier einen linearen Suchalgorithmus, der in einer Liste von Zahlen nach der Nummer 3 sucht.

list = [1, 3, 5]

  1. Überprüfen Sie jedes Element in der Liste.
  2. Sobald einer der Gegenstände drei entspricht, geben Sie seine Position zurück.
  3. Wenn drei nicht in der Liste enthalten sind, geben Sie “Drei ist nicht in der Liste!” Zurück.

Nach diesen Schritten sucht der Computer nach der ersten Nummer, bei der es sich um eine handelt. Da es nicht gleich drei ist, geht es weiter und überprüft die nächste Zahl. Da diese Zahl drei ist, wird etwa “Die Zahl drei ist das zweite Element in der Liste” zurückgegeben.

In Python-Code würde ein linearer Sortieralgorithmus wie im folgenden Bild aussehen.

Algorithmen-lineare-Suche

Algorithmen-Linear-Ausgabe

Der Code erstellt lediglich eine Liste mit Zahlen, überprüft jedes Element in der Liste und prüft, ob es mit dem Suchbegriff übereinstimmt. Wenn nichts passiert, wird nur “False” zurückgegeben. Dies ist ein äußerst einfacher Algorithmus. Unabhängig davon, ob es sich um eine Codezeile oder eine Million handelt, arbeitet jeder existierende Algorithmus nach demselben Grundprinzip: Informationen erfassen, nach einer voreingestellten Logik verarbeiten und Ergebnisse erhalten.

Alltägliche Algorithmen

Die meisten Algorithmen, die unseren Alltag tatsächlich steuern, sind keine Open Source-Algorithmen. Wir wissen nicht genau, wie Google bestimmt, welche Suchergebnisse angezeigt werden sollen oder wie Facebook Ihren Newsfeed zusammenstellt, aber wir können die Ergebnisse dieser Berechnungen trotzdem sehen. Trotzdem sind sie wichtig, und wir haben eine ziemlich gute Vorstellung von der grundlegenden Logik, die dahinter steckt.

Algorithmen-Pagerank

  • Google PageRank Dies funktioniert anhand der Anzahl und Qualität der Links, die zu und von einer Webseite führen. Es gibt jedoch eine Vielzahl geheimer Kriterien, die ständig aktualisiert werden, um die Ergebnisse zu verbessern und zu verhindern, dass jemand das System spielt.
  • Facebooks Newsfeed Misst die Stärke Ihrer Beziehung zu Personen und Gruppen basierend auf Ihrer Aktivität und verwendet diese und einige andere Faktoren, um Ihren Newsfeed zu generieren.
  • Amazon und Netflix Verwenden Sie Empfehlungsalgorithmen, die Benutzerdaten anzeigen, Dinge herausfinden, die jeder Benutzer haben möchte, und dem Benutzer diese Dinge zeigen.
  • Das ORION-System von UPS ist ein enorm (1000+ Seiten!) Algorithmus, der jedoch die effizienteste Route für jede Lieferung berechnen kann, wobei auch alle Arten von Echtzeitdaten und Betriebsparametern wie angeforderte Lieferfenster berücksichtigt werden.
  • Anwendungen für künstliche Intelligenz Wie selbstfahrende Autos stützen sich Gesichtserkennung, Verarbeitung natürlicher Sprache, prädiktive Analysen und vieles mehr auf Algorithmen, die visuelle, akustische oder digitale Daten erfassen, herausfinden, was vor sich geht, und entsprechende Ergebnisse liefern können.
  • Werbung Algorithmen sind überall. Während Menschen die Anzeigen erstellen, die Sie sehen, ist es ein Algorithmus, der letztendlich entscheidet, ob Sie das richtige Publikum sind.

Alles ist ein Algorithmus

Sobald Sie wissen, wie ein Algorithmus aussieht, können Sie nicht aufhören, sie zu bemerken. Sie sind nicht nur in unserer Technologie, sondern auch in unserem Gehirn. Alles, was wir tun, ist das Ergebnis des Empfangens, Verarbeitens und Erzeugens von Ausgaben. Die meisten dieser Prozesse werden in einer ständig neu geordneten Blackbox gespeichert, aber sie befinden sich hinter den Kulissen und helfen uns, herumzulaufen, die Sprache zu verstehen und Entscheidungen über Dinge zu treffen. Menschen sind in der Lage, Algorithmen auf instinktiver Ebene zu verstehen. Selbst wenn Computeralgorithmen in nicht entzifferbarer Mathematik und Code geschrieben sind, können sie alle in Begriffe übersetzt werden, die wir verstehen.

Bildnachweis: Mandelbrot Set Bild, Websites, die miteinander verknüpft sind, um den PageRank zu veranschaulichen, CTP TheoryOfComputation Lineare Suche, Farbbalken des Shell-Sortieralgorithmus

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.