02.11.2013 Aufrufe

PDF, 97KB - Westfälische Wilhelms-Universität Münster

PDF, 97KB - Westfälische Wilhelms-Universität Münster

PDF, 97KB - Westfälische Wilhelms-Universität Münster

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Kapitel 2: Das Konzept „Algorithmus“<br />

verstehen. Vielmehr handelt es sich auf einer sehr hohen Abstraktionsstufe um<br />

konzeptionelle und gedankliche Skizzen eines Algorithmus, welche aber schon die<br />

wesentliche Idee und das Konzept der Lösungsstrategie dokumentieren und damit<br />

insofern präzise sind, als dass aus dieser algorithmischen Skizze unmittelbar jeweils<br />

detailliertere Beschreibungen abgeleitet werden können (-> hinreichende Präzision).<br />

Der Aspekt der Effektivität der Arbeitsschritte ist ebenso von Bedeutung. Effektivität in<br />

diesem Sinne ist dann gegeben, wenn alle Operationen oder Einzelschritte eines<br />

Algorithmus hinreichend einfach und elementar sind, so dass sie prinzipiell auch von<br />

einem Menschen mit Bleistift und Papier exakt und in einer endlichen Zeit ausgeführt<br />

werden könnten [Kn73 S. 6].<br />

Bei der Beschreibung eines Algorithmus ist zwischen den elementaren Operationen<br />

einerseits und den Vorschriften, wie und in welcher Reihenfolge sie angewandt werden<br />

sollen, zu unterscheiden [Wi97 S. 11]. Ein Elementarschritt ist von einer Maschine in<br />

einem Schritt (als unteilbare Aktion) auszuführen. Bezüglich der Beschreibung der<br />

Abfolge der Elementarschritte sind folgende Strukturelemente eines Algorithmus<br />

anwendbar: Sequenz; Auswahl von Fällen mit anschließender Entscheidung, was als<br />

nächstes ausgeführt wird; feste Wiederholungen von Schrittfolgen sowie bedingte<br />

Wiederholungen.<br />

Nachdem nun die prinzipielle Art der Beschreibung von Algorithmen diskutiert wurde,<br />

sollen jetzt noch einige Eigenschaften von Algorithmen besprochen werden.<br />

Ein Algorithmus heißt terminierend genau dann, wenn der Algorithmus für alle<br />

erlaubten Eingaben nach endlich vielen Schritten beendet wird. Für die praktische<br />

Anwendung sind in den meisten Fällen primär terminierende Algorithmen interessant.<br />

Einige (nicht unbedeutende) Ausnahmen bilden hier Betriebssystemfunktionen oder<br />

Prozess-Steuerungsalgorithmen [He92, S. 21]. Tatsächlich ist eine Forderung nach der<br />

Terminierung nicht präzise genug für die praktische Verwendung [Kn73, S. 6]. Ein<br />

Algorithmus, welcher beispielsweise ermitteln soll, ob bei einer Partie Schach der<br />

Spieler „weiß“ zwingend gewinnt, ist zwar endlich und terminiert, aber wir werden das<br />

Ergebnis in unserem Leben vielleicht niemals erfahren, da ein solcher Algorithmus sehr<br />

viel Berechnungszeit beanspruchen wird. Ein brauchbarer Algorithmus sollte daher<br />

nicht irgendwie oder irgendwann, sondern möglichst in einer akzeptablen Anzahl von<br />

Schritten terminieren.<br />

5

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!