Als pdf oder txt herunterladen
Als pdf oder txt herunterladen
Sie sind auf Seite 1von 69

Abenteuer Informatik 5th Edition Jens

Gallenbacher
Visit to download the full and correct content document:
https://ebookstep.com/product/abenteuer-informatik-5th-edition-jens-gallenbacher/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

Abenteuer Informatik IT zum Anfassen für alle von 9 bis


99 vom Navi bis Social Media 5th Edition Jens
Gallenbacher

https://ebookstep.com/product/abenteuer-informatik-it-zum-
anfassen-fur-alle-von-9-bis-99-vom-navi-bis-social-media-5th-
edition-jens-gallenbacher/

Theoretische Informatik 5th Edition Dirk W Hoffmann

https://ebookstep.com/product/theoretische-informatik-5th-
edition-dirk-w-hoffmann/

Abenteuer Naturfotografie 1st Edition Markus Botzek


Frank Brehe

https://ebookstep.com/product/abenteuer-naturfotografie-1st-
edition-markus-botzek-frank-brehe/

52 Stunden Informatik: Was jeder über Informatik wissen


sollte 2nd Edition Timm Eichstädt

https://ebookstep.com/product/52-stunden-informatik-was-jeder-
uber-informatik-wissen-sollte-2nd-edition-timm-eichstadt/
Politeía Ein Abenteuer mit Platon 2nd Edition Joachim
Lege

https://ebookstep.com/product/politeia-ein-abenteuer-mit-
platon-2nd-edition-joachim-lege/

52 Stunden Informatik Was jeder über Informatik wissen


sollte Eichstädt Timm Spieker Stefan

https://ebookstep.com/product/52-stunden-informatik-was-jeder-
uber-informatik-wissen-sollte-eichstadt-timm-spieker-stefan/

Basiswissen Informatik 2nd Edition Eckart Zitzler

https://ebookstep.com/product/basiswissen-informatik-2nd-edition-
eckart-zitzler/

Grundkurs Theoretische Informatik 1st Edition Stefan


Neubert

https://ebookstep.com/product/grundkurs-theoretische-
informatik-1st-edition-stefan-neubert/

Mathematische Grundlagen der Informatik Wolfram Pohlers

https://ebookstep.com/product/mathematische-grundlagen-der-
informatik-wolfram-pohlers/
Jens Gallenbacher

Abenteuer
Informatik

IT zum Anfassen
für alle von 9 bis 99 –
vom Navi bis Social Media
5. Auflage
Abenteuer Informatik
Jens Gallenbacher

Abenteuer Informatik
IT zum Anfassen für alle von 9 bis 99 –
vom Navi bis Social Media

5. Auflage
Prof. Dr.-Ing. Jens Gallenbacher
Johannes Gutenberg-Universität Mainz
Didaktik der Informatik
Mainz
Deutschland
abenteuer@gallenbacher.de

8 Kapitel wurden unter der CC BY-NC-ND 4.0 International Lizenz veröffentlicht-(http://creativecom


mons.org/licenses/by-nc-nd/4.0/deed.de). 1. Sag mir wohin 2. Ordnung muss sein 3. Ich packe meinen
Koffer und ... 8. Erkennungsdienst 9. Paketpost 11. Ordnung im Chaos 12. Mit Sicherheit 15. Allmächtiger
Computer

Ergänzendes Material zu diesem Buch finden Sie auf


www.abenteuer-informatik.de sowie
www.inspiration-informatik.de
ISBN 978-3-662-63738-8 ISBN 978-3-662-63739-5 (eBook)
DOI 10.1007/978-3-662-63739-5
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie;
detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
Springer
1. und 2. Aufl.: © Spektrum Akademischer Verlag Heidelberg 2006, 2008
3. und 4. Aufl.: © Springer-Verlag GmbH Deutschland 2012, 2017
5. Aufl.: © Springer-Verlag GmbH Deutschland 2021
Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung, die nicht
ausdrücklich vom Urheberrechtsgesetz zugelassen ist, bedarf der vorherigen Zustimmung des Verlags.
Das gilt insbesondere für Vervielfältigungen, Bearbeitungen, Übersetzungen, Mikroverfilmungen und die
Einspeicherung und Verarbeitung in elektronischen Systemen.
Die Wiedergabe von allgemein beschreibenden Bezeichnungen, Marken, Unternehmensnamen etc. in
diesem Werk bedeutet nicht, dass diese frei durch jedermann benutzt werden dürfen. Die Berechtigung
zur Benutzung unterliegt, auch ohne gesonderten Hinweis hierzu, den Regeln des Markenrechts. Die
Rechte des jeweiligen Zeicheninhabers sind zu beachten.
Der Verlag, die Autoren und die Herausgeber gehen davon aus, dass die Angaben und Informationen in
diesem Werk zum Zeitpunkt der Veröffentlichung vollständig und korrekt sind. Weder der Verlag, noch
die Autoren oder die Herausgeber übernehmen, ausdrücklich oder implizit, Gewähr für den Inhalt des
Werkes, etwaige Fehler oder Äußerungen. Der Verlag bleibt im Hinblick auf geografische Zuordnungen
und Gebietsbezeichnungen in veröffentlichten Karten und Institutionsadressen neutral.
Planung: Dr. Andreas Rüdinger
Einbandabbildung: © getty-images, wsp design Werbeagentur GmbH, Heidelberg

Springer ist ein Imprint der eingetragenen Gesellschaft Springer-Verlag GmbH, DE und ist ein Teil von
Springer Nature.
Die Anschrift der Gesellschaft ist: Heidelberger Platz 3, 14197 Berlin, Germany
Inhalt
Einleitung VIII

Kapitel 1 – Sag mir wohin ... 1


Lösen Sie das Problem des kürzesten Weges: Welchen Weg muss ich nehmen, um mit
der kürzesten Strecke bzw. am schnellsten von Ort A nach Ort B zu kommen? Klei-
ne Krabbeltiere werden Ihnen dabei behilflich sein, auch den Geheimnissen der Na-
vi-Profis im Internet auf die Spur zu kommen.

Kapitel 2 – Ordnung muss sein! 49


Einstein und Freud bevorzugten einhellig das Chaos auf ihrem privaten Schreibtisch.
Damit ein Computer aber für uns schnell Informationen auffindet, müssen diese sor-
tiert werden. Lernen Sie, wie der Computer vom Menschen gelernt hat.

Kapitel 3 – Ich packe meinen Koffer und ... 85


Wenn ein Informatiker einen Rucksack füllt, dann sollte der zur Verfügung stehende
Platz bestens ausgenutzt sein! Vollziehen Sie die Kunst des Packens und dabei auch
noch die der dynamischen Programmierung nach.

Kapitel 4 – Der Trick mit dem Binären 111


Wie rechnet ein Computer? Auf diese Frage lautet eine – nur fast korrekte – Standard­
antwort „mit Nullen und Einsen“. Was es mit den Nullen und Einsen auf sich hat,
erfahren Sie hier und jetzt!

Kapitel 5 – 100000000000 Jahre Informatik? 119


Eine solche Geschichte kann nur diese Wissenschaft bieten. Lassen Sie sich überra-
schen und erfahren Sie auch noch das „Warum“ hinter Kapitel 4.

Kapitel 6 – Von Kamelen und dem Nadelöhr 137


Wie lassen sich Texte und Bilder schrumpfen, ohne dass Informationen verloren ge-
hen? Was hat es mit der Information – Namensgeber für das „Info“ in „Informatik“
– überhaupt auf sich? Kann man Information messen, so wie Längen, Gewichte oder
die Zuckerkonzentration im Kaffee eines Informatikers?

V
Kapitel 7 – Verluste gibt es doch immer! 173
Warum können manche Digitalkameras mit dem gleichen Speicherchip mehr Bilder
machen als andere und wie funktioniert MP3 eigentlich? Datenkomprimierung ist ein
sehr wichtiges Thema für die heutige Gesellschaft, in der immer mehr und immer
größere Informationsmengen versendet und gespeichert werden müssen. Nur so viel:
Alles hat seinen Preis ...

Kapitel 8 – Erkennungsdienst 187


Spiel oder Ernst? Identifizieren Sie mit Spürsinn anhand einfacher Fragen Ihr Gegen-
über. Können Sie sich besser tarnen, wenn Sie dann im Fokus der Enthüllungen ste-
hen? Auf jeden Fall ermitteln Sie dabei ganz automatisch ein paar wesentliche Grund-
lagen der Informatik.

Kapitel 9 – Paketpost 205


Bücher, Schuhe oder auch einfach die Pizza für den kleinen Hunger zwischendurch –
kaum eine Lieferung würde bei uns ankommen, wenn nicht vorher ganz andere Pake-
te sicher ihren Weg durch den Dschungel des Internets gefunden hätten. Erfahren Sie
hier, wie das auch in chaotischen Verhältnissen immer wieder gelingt.

Kapitel 10 – Alles im Fluss 229


Die Cloaca Maxima der alten Römer bestand aus riesigen Abwasserleitungen und
-systemen. Moderne Leitungsnetze kommen mit wesentlich weniger Platz aus, weil
ein einfaches Verfahren aus der Informatik genau bestimmen kann, wie viel durch
welche Leitungen von wo nach wo fließen kann. Aber was um alles in der Welt hat das
mit einer Partnervermittlungsagentur zu tun?

Kapitel 11 – Ordnung im Chaos 263


Hatte Einstein doch recht und Chaos ist besser als Ordnung? Informatiker nutzen seit
Langem ein Verfahren, das Informationen scheinbar chaotisch anordnet, sie jedoch
trotzdem auf Anhieb auffindbar macht. Vielleicht eine neue Möglichkeit, die Woh-
nung zu organisieren? Achtung: Ärger mit dem Partner ist vorprogrammiert...

Kapitel 12 – Mit Sicherheit 287


Safeknacker sind unmodern geworden. Ihre Kollegen des IT-Zeitalters bedienen sich
nur noch eines Computers und des Internets. Nur wer die Prinzipien hinter moder-
nen Sicherheitsmechanismen begreift, kann diese so einsetzen, dass die Diebe kaum
noch eine Chance haben! Aber hinter was sind sie eigentlich her – in den sozialen
Netzwerken hinterlassen wir doch kein Geld, nur Daten ... genau!

Kapitel 13 – Rechnen mit Strom 333


Mit Fingern rechnen – das können sich die meisten noch vorstellen. Ein Computer
arbeitet auf Basis elektrischer Ströme und Spannungen. Lernen Sie in diesem Kapitel,
wie das funktioniert.

VI
Kapitel 14 – Besser rechnen mit Strom 367
Addieren und subtrahieren – schön und gut. Der Computer kann aber so viel mehr
als einfache Rechenwerke. Kommen Sie dem Geheimnis der „denkenden Maschine“
auf die Spur.

Kapitel 15 – Allmächtiger Computer!? 391


Computer ohne Grenzen? Wohl kaum! Auch für die schlauen Kisten gibt es weiße
Flecken auf der Landkarte: Nicht alles ist von ihnen berechenbar. Erfahren Sie anhand
spannender Puzzlespiele, welche Dinge niemals per Computer ermittelbar sein wer-
den.

Kapitel 16 – Spielchen gefällig? 413


Computer sind die besseren Glücksspieler – das müssen sie auch sein, wenn es dar-
um geht, Bestellungen vorauszuahnen und die Produktion der entsprechenden Waren
schon einmal anzuregen oder auch Polizeistreifen zum Tatort zu schicken, bevor das
Verbrechen dort passiert. Spielen Sie mit in der Welt der Online-Algorithmen.

Kapitel 17 – Schnelle Antworten 439


Nicht alles ist fauler Zauber: Lernen Sie die Magie der Fehlerkorrekturmechanismen
kennen, die zum Beispiel dafür sorgen, dass sich auch verstaubte und verkratzte DVDs
noch einwandfrei abspielen lassen und QR-Codes erkennbar bleiben.

Kapitel 18 – Computer auf der Schulbank 461


Heißt nun Machine Learning, dass in unseren Klassenzimmern in Zukunft immer
mehr Computer ausgebildet werden? Wer lernt hier von wem und was? Gibt es so
etwas wie künstliche Intelligenz? Blicken Sie hinter die Kulissen dieser spannenden
Disziplin!

Glossar 491

Bildnachweis 499

VII
Einleitung
Informationstechnik ist unzweifelhaft ein dominierender Faktor unserer Zivilisation:
Sie steckt in normalen Haushaltsgeräten so selbstverständlich wie in Kleidung und
Spielen. Technische Geräte wie Autos und Telefone kommen schon lange nicht mehr
ohne IT aus. Vernetzung bestimmt bereits heute den alltäglichen Umgang, in dem wir
überall und jederzeit Zugriff auf Informationen haben. Auch wenn es nicht möglich
scheint: Die Zukunft wird davon noch viel stärker geprägt sein, wenn elektronische
Komponenten ganz selbstverständlich untereinander interagieren – solche, die als Ge-
räte sichtbar sind, wie Mobiltelefone, Fernseher oder Autoschlüssel, aber auch solche,
von denen wir diese Funktionalität heute noch nicht im Blick haben, wie Schuhe oder
Briefumschläge.
Der Fortschritt von Informationstechnik ist paradoxerweise vor allem an ihrer „Un-
sichtbarkeit“ messbar – ermöglicht durch Miniaturisierung und höhere Leistungs-
fähigkeit, aber insbesondere auch durch die Gestaltung von Benutzungsschnittstel-
len, die eine sehr „natürliche“ Bedienung ermöglichen. Gesten wie „Wischen“ oder
Sprachbefehle an das Mobiltelefon sind uns nicht mehr fremd. Ist das Informations-
technik? Aber die Systeme agieren zunehmend auch völlig autonom, indem sie unsere
Bedürfnisse anhand bestimmter Messwerte erkennen – oder zumindest das, was die
Schöpfer dieser Geräte als unsere Bedürfnisse identifizieren.
Genau aus diesem Grund sollte insbesondere immer unsichtbarer werdende Technik
zum Wohle von uns allen gestaltet werden, was nur durch Mitwirkung bzw. zumin-
dest informierte Meinungsbildung dazu gelingen kann. Die Entscheidung für oder
gegen die Nutzung einer neuen App, eines coolen Rückerstattungsangebots oder des
Sportarmbands für einen günstigeren Krankenkassentarif muss auf Basis der Kennt-
nis um die Wirkprinzipien und damit der Möglichkeit eines kritischen Umgangs mit
der Technologie gefällt werden.
Informatik ist der Schlüssel zum Verständnis der Informationstechnik und damit der
Schlüssel zum Verstehen unserer modernen Umwelt!
Die gute Nachricht: Informatik ist nicht nur cool, sondern auch eine Disziplin, die von
Menschen nach menschlichen Prinzipien gestaltet ist! Überraschend viele Prinzipien
sind Ihnen also schon bekannt. Schemata großer Datenbanksysteme beruhen auf den
gleichen Vorgehensweisen, wie sie auch Grundschülerinnen und Grundschüler beim
Sortieren von Spielkarten ganz implizit entwickeln, andere Ideen können wir uns aus
der Natur abschauen. Für das Verständnis komplexer Zusammenhänge haben wir ei-
gene Anschauungen entwickelt, wovon die Sprache der Mathematik nur eine ist.
Dieses Buch hilft Ihnen dabei, diese Potentiale zu erkennen und die Informatikerin
bzw. den Informatiker in sich zu entdecken. Dabei werden einerseits alltägliche Geräte
wie das Navi im Auto beleuchtet, andererseits bewusst spielerische Herangehenswei-
sen gewählt.

VIII
Ein Prinzip durchzieht dabei allerdings alle Kapitel: Das wörtliche „Begreifen“ steht
nicht nur am Anfang, sondern ist das zentrale Element. Das geht am besten ohne
Computer: mit Papier, Bleistift, einer Schere und den Vorlagen aus dem Buch. Die
„komplizierten“ Dinge brauchen dann noch ein Stück Holz, Nägel, Faden und einen
Hammer ...
Das Prinzip hat sich seit der ersten Auflage, die 2006 erschienen ist, bewährt und ich
habe es daher noch konsequenter in allen Kapiteln umgesetzt. Überhaupt ist diese
vierte Auflage nun zum ersten Mal nicht nur ergänzt, sondern komplett überarbeitet.
An dieser Stelle möchte ich auch den vielen Leserinnen und Lesern danken, die ei-
nerseits Fehler, andererseits auch Missverständnisse bei bestimmten Formulierungen
zurückgemeldet und damit geholfen haben, das Buch zu verbessern.
Im spielerischen Teil, bei dem es vor allem um den Spaß, das Experiment und die
Aha-Effekte geht, werden Sie nicht im Detail lernen, wie man einen Computer pro-
grammiert, aber Sie werden verstehen, was hinter vielen Standardprogrammen steckt.
Der Experimentierteil ist sehr einfach aufgebaut, erfordert praktisch kein Vorwissen
und ist daher auch für Kinder (etwa ab der 3. Klasse) geeignet, wenn er mit den Eltern
zusammen durchgearbeitet wird. Der Weg zur Lösung ist hier das Ziel: Wie geht ein
Informatiker vor, um ein Problem zu knacken?
Auch die Begründung ist meist noch recht einfach zu verstehen: Warum funktioniert
das Verfahren?
Wer dann (hoffentlich) ganz versessen darauf ist, noch mehr zu erfahren, kann am
Ende jedes Kapitels eine mehr wissenschaftlich gehaltene Zusammenfassung und
Vertiefung lesen. Dieser Teil ist mit „Was steckt dahinter?“ übertitelt. Im Mittelpunkt
stehen hier die Fragen, warum das Verfahren immer funktioniert (also der Beweis),
wo weitere Anwendungen liegen und wie in der Praxis das Verfahren noch verbessert
wird. Hier sind zum Verständnis oft Mathematikkenntnisse vonnöten, wie sie in der
gymnasialen Oberstufe vermittelt werden.
Dieses Buch kann also auf ganz verschiedene Weise gelesen bzw. – wie ich lieber sagen
möchte – erlebt werden. Um das zu unterstützen, sind ein paar kleine Details einge-
baut, die ich hier beschreiben möchte:
Beim Lesen von „Abenteuer Informatik“ können Sie eine mehr passive oder mehr ak-
tive Rolle wählen. Selbstverständlich ist es spannend und auch lehrreich, auf wichtige
Erkenntnisse der Informatik selbst zu kommen – zum Beispiel nach einem eigenhän-
dig durchgeführten Experiment.
Sehr oft finden Sie daher eine Frage, einen Denkanstoß oder einen Arbeitsauftrag
in blauer Schrift. Direkt dahinter steht das „Denk-Köpfchen“.

▶ ▶ ▶ ◀ ◀ ◀
Es soll Sie kurz daran hindern, hier schon weiterzulesen. Sie können sich nun ent-
scheiden, ob Sie selbst versuchen, zu einer Lösung zu kommen, oder diese einfach im
nächsten Abschnitt lesen. Lassen Sie sich davon leiten, wie spannend das Thema für
Sie ist.
Eine Quelle zusätzlicher Information ist die kleine linke bzw. rechte Spalte des Buches.
Hier finden Sie kurze Lebensläufe wichtiger Persönlichkeiten, Anekdoten und anderes
Wissenswerte im Zusammenhang mit dem Haupttext. Das Verständnis des Kapitels

IX
ist allerdings auch ohne diese Spalte gewährleistet. Sie können sich daher diesen Teil
für ein zweites Durchlesen aufsparen oder ihn als willkommene Ablenkung ansehen.
Den Anfang neuer Kapitel finden Sie im Buch übrigens recht einfach, wenn Sie es von
der Seite betrachten: Das große Bild auf der linken Seite ist auch hier zu erkennen und
lässt sich auf diese Weise als eine Art Index nutzen.

Wichtige Begriffe
Im Text sind immer wieder grundlegende Begriffe und Methoden der Informa-
tik kurz erklärt. Um sie leichter wiederzufinden, stehen sie in blauen Kästchen.
Wenn Sie möchten, legen Sie sich doch ein eigenes Merkblatt mit den Inhal-
ten dieser Kästchen an. Ganz hinten im Buch sind allerdings ein paar wichtige
Schlagwörter in einem Glossar zusammengefasst auch übersichtlich nachzu-
schlagen.

Die Reihenfolge der Kapitel ist übrigens recht lose. Auch wenn Sie das Buch nicht von
Vorderseite vorne nach hinten durchlesen, sondern sich von Ihrer „Abenteuerlust“ leiten lassen,
kann man die meisten Texte verstehen! Manchmal ist allerdings ein Hinweis auf eines
der vorhergehenden Kapitel gegeben, das dann eine wichtige Grundlage beinhaltet.
Mein Tipp ist, auf jeden Fall das erste Kapitel, vielleicht auch noch das zweite zu Be-
ginn zu lesen. Danach können Sie unbeschwert stöbern.
Eine weitere Ausnahme sind Kapitel 13 und 14, die eine Art Einheit bilden. Kapitel
13 ist auch alleine verständlich, aber vor 14 sollten Sie die Experimente aus Kapitel 13
durchführen. Außerdem ist es zwar nicht unbedingt nötig, aber empfehlenswert, vor
Rückseite Kapitel 18 zumindest Kapitel 13 durchzuarbeiten, da man auf diese Weise leichter auf
bestimmte Ideen kommen kann.
Kommen wir zu einem sehr wichtigen Teil, der dieses Buch auch von den allermeis-
ten anderen Informatik-Büchern unterscheidet: der Bastelbogen! Er ermöglicht das
wörtliche „Begreifen“ ohne zu viel Aufwand in der Herstellung eigener Materialien. Es
genügt meistens, diese auszuschneiden.
Abbildung
Gedruckte Bastelbögen

X
Jedes Kapitel enthält daher am Ende entsprechende Kopiervorlagen. Manche Spiel-
materialien – wie die Karten der binären Magie – brauchen zwingend Vorder- und
Rückseite. Da selbst Kopierer und Drucker mit Duplex-Einheit oft nicht schaffen, die
beiden Seiten wirklich deckungsgleich zu Papier zu bringen, habe ich diese Vorlagen
so angelegt, dass man sie nach dem Ausschneiden an der durchgezogenen Linie noch
an der gestrichelten Linie faltet und entweder zusammenklebt oder gefaltet laminiert.
Noch einfacher ist selbstverständlich, die fertigen Bastelbögen zu benutzen. Um noch
mehr Inhalt in das Buch zu bringen und die elektronische Ausgabe zu ermöglichen,
sind diese nicht mehr integraler Bestandteil, sondern gesondert zu beziehen. Das er-
leichtert auch Lehrerinnen und Lehrern, gleich einen ganzen Klassensatz zu bekom-
men. Leserinnen und Leser, die dieses Buch in einer Bücherei ausgeliehen haben, kön-
nen so ebenfalls unbeschwert schneiden und kleben. Die Bedingungen für den Bezug
sind zum Zeitpunkt des Drucks noch nicht ganz geklärt, bitte informieren Sie sich
über die Webseite

www.abenteuer-informatik.de
Diese ist auch die zentrale Seite für Korrekturen und zusätzliche Informationen zum
Buch sowie der gleichnamigen Ausstellung, die inzwischen auf Wanderschaft in Uni-
versitäten, Schulen und auch Häusern wie dem Heinz Nixdorf Forum in Paderborn
oder dem Ars Electronica Center in Linz ist. An der Johannes Gutenberg-Universität
in Mainz, an der TU Wien sowie im Science-Center Experiminta in Frankfurt am
Main ist sie darüber hinaus dauerhaft zu sehen.
Damit genug der Nutzungshinweise – ich wünsche Ihnen viel Spaß bei Ihrem ganz
persönlichen Abenteuer Informatik!

Jens Gallenbacher

XI
1. Sag mir wohin ...

Einführung
Routenplaner gehören heute schon fast zum Alltag: Viele Autos haben sie bereits ein-
gebaut, und auch wer keinen im Fahrzeug hat, lässt sich den günstigsten Weg zu sei-
nem Ziel vom Smartphone weisen.
Versuchen wir doch gleich einmal das nachzuvollziehen: Nehmen Sie einen großen
Straßenatlas und ermitteln Sie die günstigste Strecke von Stockheim nach Weilheim!
Zu viel Arbeit? Kein Atlas? Also gut – ich hatte in der Einleitung ja versprochen, dass
alle notwendigen Materialien hier im Buch zu finden sind. Daher arbeiten wir erst
einmal mit der folgenden kleinen Welt nach Abbildung 1.1.
Die Karte zeigt Orte, zwei Autobahnen, größere und kleinere Landstraßen. Die roten
und blauen Zahlen geben dabei immer die Länge der Straße an, wenn man sie mit
dem Auto fährt. Man kann sehen, dass kleine Straßen meistens viel länger sind, als sie
scheinen, weil die zahlreichen Kurven und Berge nicht eingezeichnet sind.
Welches ist denn nun der günstigste Weg von Imstadt nach Oppenheim?
Erster Ansatz wäre, zur nächsten Autobahn zu fahren. Aber geht das am besten über
Pappstadt oder die Auffahrt Budingen? Außerdem führt ja von Pappstadt aus auch
eine direkte Landstraße zum Ziel. Die ist aber wohl gewunden und ziemlich lang.
Oder doch lieber die gelbe Straße zum Flughafen und von dort die Autobahn nach
Oppenheim nehmen?
Versuchen Sie die Lösung selbst herauszufinden. Hinweis: Sie müssen 24,6 km zu-
rücklegen.
Geschafft? Gut! Dann lehnen Sie sich zurück und genießen Sie den Erfolg.
Wie sind Sie vorgegangen? Sie haben wahrscheinlich alle möglichen Wege durchpro-
biert und die Entfernung zum Ziel ermittelt. Dann haben Sie sich für den günstigsten
Weg entschieden.
Dieses Verfahren gibt es auch bei Computern – es hat sogar einen Namen: die Brute-
Force-Methode, also etwa „Brutale Macht“. Warum? Weil auf diese Weise etwas
umfangreichere Aufgaben nur mit extrem großer Rechenkraft gelöst werden können.
Überlegen Sie einmal, wie viele verschiedene Wege Sie schon bei der gegebenen, sehr
übersichtlichen Karte durchspielen mussten. Stellen Sie sich nun vor, wie das mit 1000
und mehr Städten wäre – hier wären normale Rechner gar nicht mehr zur Lösung
fähig.
Außerdem besitzt ein Rechner keine Intelligenz: Während Sie beim Durchprobieren
unbewusst alle absurden und unwahrscheinlichen Möglichkeiten verwerfen, muss er
diese durchrechnen.

1
Arlhausen Abbildung 1.1
Die Landkarte aus dem Atlas

6,7 eg -
6,6 - Forstw
3,8
Morbach
2,3 Niedergau 2,5
5,6 6,4 4
4,1
4,6
14,3 Delgar
Chelzey 18,9
9,0 31
13,0
5,8
8,2 4,9
Budingen Lupera
7,0 31
Imstadt 6,2 7,8

5,6

13,4
21,1
12
10,5
Hundorf 4,5 11,8
7,1 5,9
15,4 5,5
6,0 5
Pappstadt Giwelau
3,6
5,1 11,5

Krupsing
11,6
6,2
Quickstedt 12,1
6,1 8
18,2

15,6

2,9 Fluxing
5,3 Eindhofen
19,5

Oppenheim

2 1. Sag mir wohin ...


Vorüberlegungen
Wie kommt ein Informatiker nun zu einer besseren Lösung?
Zunächst sollte man mit der Methode der Abstraktion arbeiten!

Methode der Abstraktion


In zur Verfügung stehender Information stecken sowohl relevante als auch un-
wesentliche Anteile. Durch Abstraktion reduzieren Sie die Information auf das
für die aktuelle Problemlösung Wesentliche: Dadurch können Sie sich besser auf
Ihre Aufgabe konzentrieren.

Man könnte auch sagen: Werfen Sie alles Überflüssige über Bord und konzentrieren Auch abstrakte Malerei ist
Sie sich auf das Wesentliche. Was aber ist bei der gestellten Aufgabe wesentlich? die Konzentration auf das
Wesentliche. Der Künstler
Alle gegebenen Informationen stecken in der Karte. Welche Typen von Informati- stellt die Aspekte in den Mit­
telpunkt, die ihn bewegen,
onen kann man erkennen? Erstellen Sie eine Liste, bevor Sie weiterlesen. zum Beispiel ein Gefühl oder
ein Ereignis. Details wie die
▶ ▶ ▶ ◀ ◀ ◀ realistische Darstellung treten
dadurch in den Hintergrund.
Hier abgebildet ist das „Blaue
Die Informationen der Karte sind in folgender Tabelle zusammengefasst. Pferd“ von Franz Marc (1911).

wichtig?
Namen der Städte ☐
Position der Städte ☐
Größe der Städte ☐
Verlauf der Straßen ☐
Länge der Straßen ☐
Namen und Nummern der Straßen ☐
Straßentyp ☐
Straße führt von ... nach ... ☐
Landschaftliche Information ☐

An dieser Stelle fällt Ihnen eventuell auch bereits auf, dass unsere bisherige Formu-
lierung der Aufgabe, den „günstigsten“ Weg zu finden, nicht präzise genug ist. Genau
genommen suchen wir den (Strecken-)kürzesten Weg!
Überlegen Sie weiter, welche dieser Informationen wir benötigen, um den kürzes-
ten Weg zwischen zwei Städten zu suchen. Markieren Sie für jede Information, ob
diese Ihrer Meinung nach für die Aufgabenstellung wichtig oder nicht wichtig ist.
Der kürzeste Weg soll sich hierbei auf die zu fahrende Strecke beziehen, nicht auf
die gefahrene Zeit.

▶ ▶ ▶ ◀ ◀ ◀

Vorüberlegungen 3
Mein Ergebnis ist folgendes:
Linie 1
wichtig?
Hauptbahnhof Namen der Städte ☑ Wenn man nicht weiß, welche Stadt wie heißt,
0
kann auch nicht der kürzeste Weg zwischen Imstadt
Friedensbrücke und Oppenheim bestimmt werden.
2 Position der Städte ☐ Es ist uns egal, wo sich die Städte genau befin-
Lyoner Platz den. Relevant sind nur die Straßen zwischen den
5 Städten.
Größe der Städte ☐ Kommt in unserer Aufgabenstellung nirgendwo
Gewerbehof
6 vor.
Verlauf der Straßen ☐ Es kommt nur auf die Streckenlänge an, nicht
Erlenstraße
auf den Verlauf.
9
Länge der Straßen ☑ Um die Reisestrecke zu summieren, benötigen
Parkallee
wir die einzelnen Strecken zwischen den Orten.
11
Namen und Nummern der ☐ Zumindest zur Bestimmung der kürzesten
Schlossgarten Straßen Strecke irrelevant.
12
Straßentyp ☐ Da es nur auf die Entfernungen, nicht auf Zeit
Stadtmitte ankommt, ist egal, ob Autobahn oder Feldweg
15 gefahren wird.
Abstraktion begegnet uns Straße führt von ... nach ... ☑ Wir benötigen die Information, von welcher
ständig! Wegweiser, Straßen­
schilder, Fahrpläne, Info­ Stadt zu welcher anderen eine Straße führt.
broschüren und viele andere
Dinge des Alltags sind so
Landschaftliche Information ☐ Offensichtlich ...
aufbereitet, dass die nötigen
Informationen möglichst Nun kann die Karte neu gezeichnet werden, und zwar so, dass möglichst alle ir-
offen und gut erkennbar relevanten und damit störenden Informationen fehlen. Versuchen Sie es einmal
dargestellt sind.
selbst, bevor Sie weiterlesen!

▶ ▶ ▶ ◀ ◀ ◀
Aus Gründen der Übersichtlichkeit habe ich hier in Abbildung 1.2 die Städte auf ihren
ersten Buchstaben reduziert. Das ist jedoch nicht unbedingt notwendig. Wenn Ihre
Lösung die ausgeschriebenen Namen enthält, können Sie auch damit weiterarbeiten.
Man sieht, dass es noch ein paar Besonderheiten gibt: An vier Stellen kreuzen sich
zwei Straßen, ohne dass es Auf- oder Abfahrten von einer zur anderen gäbe (z. B.
eine Autobahnbrücke über einer Landstraße). Dies ist mit einem Bogen dargestellt.
Darüber hinaus gibt es weitere drei Stellen, an denen sich zwei Straßen schneiden und
es Auf- und Abfahrten gibt – gekennzeichnet mit einem Punkt. Außerdem ist unklar,
welches nun die „Straße zwischen I und P“ ist, denn hierfür gibt es zwei Kandidaten.
Informatiker wollen sich jedoch prinzipiell nicht mit Sonderfällen beschäftigen und
lieben es daher übersichtlich: Zu viele spezielle Fälle und Unterscheidungen machen
das Denken schwierig. Wie bei Mathematikern, die einen Bruch erst einmal auf den
gleichen Nenner bringen, wird auch hier versucht, ein Problem möglichst gleichför-
mig darzustellen.

4 1. Sag mir wohin ...


Abbildung 1.2
A Abstraktere Form der Land­
6, 7 3, 6,6 karte
8
M 4,1 2,5
5,
6 6,4 N D

2,
3
4,6
C 18

4,
,0 ,

14,3
9
13 9

8,2

9,0

5,8
6,2 7,8
7, 0 B L
I

4,5
13
,4 1
21,

5 ,6

11,8
10,
15,

5
4

H 5,9
1
7, 5, 5

P G

3, 6
6,0
5,1 5
11 ,

K
11,6

12,1
18,2

Q
1

6,2
6,
5,3

15,6
F E
9
2, 19,5
O

Methode der Gleichformung


Versuchen Sie die verschiedenen Facetten eines Problems auf die gleichen Grun-
delemente zurückzuführen. Dadurch wird einerseits das Problem übersichtli-
cher und andererseits benötigt man weniger Lösungsansätze: Für gleichförmige
Teilprobleme kann der gleiche Lösungsansatz verwendet werden.

Können Sie die Karte auf diese Weise noch einfacher gestalten?
Überlegen Sie, welches die Eigenschaften der „normalen“ Elemente sind und ob
man die speziellen Elemente nicht auch als normale Elemente darstellen kann.

▶ ▶ ▶ ◀ ◀ ◀
Auf der Karte sind Städte als Kreise eingezeichnet. Ohne dass dies speziell vermerkt
ist, kann man offenbar bei Städten problemlos von einer Straße auf eine angrenzende
Straße wechseln.
Genau das soll auch an den mit Punkt gekennzeichneten Stellen möglich sein. Also
tun wir einfach so, als ob sich dort Städte befinden. Um sie nicht mit den anderen
Städten zu verwechseln, nennen wir sie Ⓧ, Ⓨ und Ⓩ.
An allen weiteren Kreuzungspunkten zwischen zwei Straßen ist jetzt kein Wechsel
mehr möglich. Es ist daher auch keine Unterscheidung, also auch keine Kennzeich-
nung durch Bögen mehr notwendig.

Vorüberlegungen 5
Für die Bestimmung des kürzesten Weges kommt von zwei möglichen Strecken nur
die kürzeste in Frage. Rundfahrten wie von Delgar aus und zurück spielen hier keine
Rolle. Beides kann daher in unserer Arbeitskarte berücksichtigt werden. Den fertigen
Plan zeigt Abbildung 1.3.
Abbildung 1.3
Landkarte mit durch virtuelle
A
Orte ersetzten Knotenpunk­ 6, 7 3, 6,6
8

14,3
ten M 4,1
5,
6 6,4 N D

2,
3
4,6 X
C 18

4,
,0 ,9

9
13

9,0

5,8
8,2
6,2 7,8
7, 0 B Z L
I
13
,4

5 ,6
1
21,

11,8
10,

4,5
5
H 5,9
1
7, Y 5, 5

P G

6,0

3,6
5,1 5
11 ,

K
11,6

12,1
18,2

Q
1

6,2
6,
5,3

15,6
F E
2 ,9 19,5
O

Die Städte sind immer noch auf ihrer geographischen Position eingezeichnet. Da-
durch ergeben sich an manchen Stellen Ballungszentren. Die Straßenführung wird
unübersichtlich. Die geographische Position der Städte haben wir jedoch weiter vorne
als irrelevant deklariert. Um es Ihnen so einfach wie möglich zu machen, habe ich die
Karte in Abbildung 1.4 etwas entzerrt.
Bitte überprüfen Sie, dass die Inhalte immer noch übereinstimmen, also die Verbin-
dungen zwischen den Städten gleich sind und die gleiche Längenangabe aufweisen.
Lediglich die Darstellung hat sich geändert. Sie können auch erkennen, dass es sich
noch um die gleiche Karte handelt wie am Anfang des Kapitels – lediglich mit weniger
Leonhard Euler (1707–1783)
Detailinformationen.
Euler hat schon 1736 als Erster Mit dieser Karte werden wir ab jetzt weiterarbeiten, daher ist sie am Ende des Kapitels
Wegeprobleme durch abstrak­
te Darstellung vereinfacht, als als Abbildung 1.K1 nochmals besonders groß abgedruckt – zum Beispiel als Kopier-
er das Königsberger Brücken­ vorlage. Sie können sich vorstellen, dass wir zur Bestimmung des kürzesten Weges
problem löste: „Gibt es einen auch viel rechnen müssen, daher habe ich es uns zur Übung auch noch etwas einfa-
Rundweg, der alle sieben cher gemacht und die einzelnen Wegstrecken gerundet.
Brücken über den Fluss Pregel
genau einmal überquert und
wieder zum Ausgangspunkt
führt?“ Euler bewies, dass es
keinen solchen Weg geben
kann.

6 1. Sag mir wohin ...


Abbildung 1.4
6,7 A 6,6 Entzerrte Landkarte
M
3,
8 D

14,3
2,3 4,1

5,6
6,4 N
4,6 X
C

18
9,0

,9
,0

4,
13

5,8
8,2 B 6,2
Z 7,8
L
7, 0

5 ,6
13,4 1
21,

11,8
10

4,5
,5
H 5,9
1
7, Y 5, 5
P G

6,0

3, 6
5,1 5
11 ,

K
11,6

12,1
18,2

Q
6,

F 6,2
5, 15,6
3
,9
2 E
19,5
O

Dijkstra und die Ameisen


Wie ermitteln wir denn aber nun den kürzesten Weg von Imstadt nach Oppenheim?
Der direkte Ansatz, immer ganze Wege zu betrachten, ist ja bereits aufgrund des ho-
hen Aufwands gescheitert. Versuchen wir etwas anderes – vielleicht können wir ja hier
von der Natur lernen:
Ein Stamm Ameisen hat auf der Suche nach Futter ein ähnliches Problem: Eine Kund-
schafterin findet ein großes Stück Fleisch. Welchen Weg sollen die Arbeiterinnen neh-
men, um die Beute am schnellsten zu sichern?
Setzen wir also den Stamm Ameisen auf unseren Ausgangspunkt Imstadt bzw. Ⓘ.
Fünf Wege führen von dort weg, also teilen sich unzählige Ameisen auf, um diese zu
erkunden. Wir nehmen jetzt einmal an, dass alle Ameisen gleich schnell sind, zum
Beispiel 1 km pro Minute (okay, für unser Problem setzen wir offenbar Turbo-Amei-
sen ein ...).
Mit dem Finger auf der Landkarte verfolgen wir den Weg der Ameisen. Abbildung 1.5
zeigt in Rot ihren Fortschritt nach 7 Minuten.
Die Ameisen haben Ⓑ erreicht. Auf den anderen Strecken sind sie noch auf dem Weg.
Bitte lassen Sie sich nicht davon täuschen, dass die Strecke mit 7 km am längsten aus-
sieht: Wir verwenden ja explizit keinen maßstabsgetreuen Plan!
Was haben wir dadurch bisher von den Ameisen gelernt?

▶ ▶ ▶ ◀ ◀ ◀

Vorüberlegungen 7
Abbildung 1.5
Die Ameisen auf dem Weg 7 A 7
von Imstadt aus M
4 D
2 4

14
6.
6. N
5 X
C

19
9.
13

6.
8
6. 8
B Z L
7

6.
13
21

12
11

5
H 6.
7
Y 6.
P G

6.

4
5 12

12

12
6.
18
Q

6.
5 F 16
3 E
20
O

Genau! Um von Ⓘ nach Ⓑ zu kommen, gibt es garantiert keinen günstigeren Weg als
den mit 7 km. Die Ameisen haben ja sämtliche bisher für sie möglichen Wege auspro-
biert und sind nach 7 km zuerst bei Ⓑ angekommen.
Wie geht es jetzt weiter? Die Ameisen, die bisher nirgendwo angekommen sind, setzen
ihren Weg einfach fort. Die Ameisen bei Ⓑ teilen sich erneut auf: Wieder sind fünf
Wege möglich. Den bisherigen Erfolg dokumentieren sie, indem sie die bisher zurück-
gelegte Strecke bei Ⓑ vermerken. Abbildung 1.6 zeigt den Plan der Ameisen.
Nach insgesamt 8 Minuten kommt der nächste Ameisentrupp bei Ⓒ an. Die Insekten
sehen, dass sie die Ersten sind, markieren die Strecke, verzeichnen die Anzahl der bis-
her gelaufenen Kilometer und teilen sich auf die zwei bei Ⓒ weitergehenden Wege auf.
Am Ende der 9. Minute kommt dann auch der Trupp bei Ⓜ als Erster an. Auch dieser
Weg wird vermerkt (siehe Abbildung 1.7). Von hier aus sind drei weitere Strecken zu
erkunden.
So weit verlief alles nach dem gleichen Schema. Die kürzesten Strecken zu den Städten
Ⓑ, Ⓒ und Ⓜ stehen nun fest.
Vielleicht haben Sie bemerkt, dass nun Ameisentrupps sowohl von Ⓜ als auch von Ⓒ
ausgehend unterwegs sind – zwischen beiden Städten auf Kollisionskurs.
Was passiert jetzt, wenn sie sich irgendwo auf der Strecke dazwischen begegnen? Wel-
che Informationen können sie austauschen? Bringt ihnen das etwas für ihr Ziel, das
Gelände zu erkunden?

▶ ▶ ▶ ◀ ◀ ◀
8 1. Sag mir wohin ...
Abbildung 1.6
7 A 7 Die Ameisen bewegen sich
M von Budingen aus in alle
4 D
2 4 Richtungen.

14
6.
6. N
5 X
C

19
9.
13

6.
8
6. 8
B Z L
7 7

6.
0 13
21

12
11

5
H 6.
7
Y 6.
P G

6.

4
5 12

K
12

12
6.
18

Q
5 F 16 6.

3 E
20
O

Abbildung 1.7
7 A 7 Drei weitere Wege werden
M von Morbach aus erkundet.
9 4 D
2 4
14
6.

6. N
5 X
C
19
9.

8 13
5

6.
8

6. 8
B Z L
7 7

I
6.

0 13
21
12

11
5

H 6.
7
Y 6.
P G
6.

5 12

K
12

12
6.
18

Q
6.

5 F 16
3 E
20
O

Vorüberlegungen 9
Richtig! Der Trupp von Ⓒ weiß, dass dieses Ziel bereits erreicht ist, die kürzeste Stre-
cke dorthin also feststeht. Der Trupp, der von Ⓜ kommt, kann das Gleiche von sei-
nem Ausgangspunkt berichten. Es ist also sinnlos, weiterzumarschieren. Die Strecke
wird als „unbrauchbar“ markiert, die Ameisen können wieder zu ihrem Stamm zu-
rück, sie sind sozusagen aus dem Rennen. Abbildung 1.8 zeigt das gleich mit einem
dicken roten Kreuz.
Als Nächstes kommen zwei Erkundungstrupps gleichzeitig an: In der 11. Minute er-
reichen die Ameisen Ⓟ und Ⓧ. Ⓟ erreichen sie auf direktem Wege von Ⓘ aus. Bei Ⓧ
kommt der Trupp an, der über Ⓜ unterwegs ist (9 km bis Ⓜ plus 2 bis Ⓧ).
Wieder teilen sich die Ameisen auf. Von Ⓧ gibt es nur noch einen erfolgversprechen-
den Weg, bei den anderen treffen sie recht schnell auf Kameraden und geben die Stre-
cke auf. Die von Ⓟ ausgehenden Touren sind alle noch offen. Abbildung 1.9 zeigt den
aktuellen Stand.
Haben Sie das Prinzip verstanden?
Statt immer nur einen Weg auszuprobieren und wieder zu verwerfen, wenn sich ein
besserer gefunden hat, erkunden die Ameisen gleichzeitig alle sich bietenden Mög-
lichkeiten.
Kommen sie als Erste bei einer Stadt an, wissen sie, dass der genommene Weg der
kürzeste ist, denn sonst wäre ja ein anderer Erkundungstrupp bereits da. (Zur Erinne-
rung: Alle bewegen sich mit der gleichen Geschwindigkeit.)
Treffen die Ameisen irgendwo auf Artgenossen, dann wissen sie, dass ihre Reise zu
Ende ist, weil sie sich gegenseitig ein „Ich bin schon da“ berichten können. Andere
haben also das anvisierte Ziel früher erreicht.
Führen Sie zur Übung das Verfahren noch zu Ende und zeichnen Sie den Weg der
Ameisen, die gefundenen Strecken sowie verworfene Wege in die Landkarte ein!
Können Sie sich vielleicht gleichzeitig auch schon vorstellen, wie ein Computer das
Ameisenprinzip adaptiert?

▶ ▶ ▶ ◀ ◀ ◀
Die Lösung wird in Abbildung 1.10 dargestellt. Haben Sie ein anderes Ergebnis? Kein
Problem: Die Beispielaufgabe ist bewusst so gestellt, dass es zu manchen Orten un-
terschiedliche Wege mit gleicher kürzester Strecke gibt. So kommt man etwa zu Ⓗ
sowohl über ⒾⒷⒽ als auch direkt über ⒾⒽ in jeweils 13 km. Falls Ihre Lösung je-
doch Abweichungen in den rot eingetragenen Entfernungen aufweist, sollten Sie diese
nochmal kontrollieren.
Welche Informationen haben wir dadurch jetzt eigentlich gewonnen?
Um von Imstadt zu einem beliebigen anderen Ort zu kommen, folgen Sie dem Pfad
der Ameisen:
Von Imstadt nach Oppenheim kommt man so am günstigsten über Pappstadt, Krup-
sing und Flughafen. Die Gesamtstrecke beträgt 25 km. Ein günstigerer Weg existiert
nicht!
Sie haben aber nicht nur die ursprüngliche Aufgabe gelöst, sondern sozusagen als Ab-
fallprodukt noch die kürzesten Wege von Imstadt zu allen weiteren Städten ermittelt.

10 1. Sag mir wohin ...


Abbildung 1.8
7 A 7 Der Weg zwischen Morbach
M und Chelzey wird als un­
9 4 D
2 4 brauchbar markiert.

14
6.
6. N
5 X
C

19
9.
8 13

6.
8
6. 8
B Z L
7 7

6.
0 13
21

12
11

5
H 6.
7
Y 6.
P G

6.

4
5 12

K
12

12
6.
18

Q
5 F 16 6.

3 E
20
O

Abbildung 1.9
7 A 7 Weiterer Fortschritt der
M Ameisen
9 4 D
2 4
14
6.

6. N
5 X
C
19
9.

11
8 13
5

6.
8

6. 8
B Z L
7 7

I
6.

0 13
21
12

11
5

H 6.
7
Y 6.
11 P G
6.

5 12

K
12

12
6.
18

Q
6.

5 F 16
3 E
20
O

Vorüberlegungen 11
Abbildung 1.10
Die fertig von den Ameisen 7 A 7
erkundete Landkarte M 16
9 4 D
2 4

14
20

6.
6. N
5 X 17
C

19
9.
11
8 13

6.
8
6. 8 21
B Z L
7 7 13

6.
0 13
21

12
11

5
13 H 6.
7
18 Y 6. 24
11 P G

6.

4
5 12

12
16

12
6.
18
Q 30

6.
5 F 16
22
3 E
20 22
O 25

So fährt man zum Beispiel nach Giwelau am besten über Buding und die beiden Au-
tobahnkreuze, die wir mit Ⓩ und Ⓨ bezeichnet haben.
Beachten Sie bitte auch die „0“, die nun der Vollständigkeit halber bei Imstadt steht,
denn der Weg von Imstadt nach Imstadt beträgt ja ganz offensichtlich 0 km.
Warum ist das Ameisen-Prinzip für einen Informatiker interessant?
■ Es führt in absehbarer Zeit zum Ziel. Da die Ameisen ständig in Bewegung sind
und keine Strecke doppelt gehen, müssen sie recht bald alles erkundet haben
(maximal nach der Zeit, die dem kürzesten Weg zur am weitesten entfernten
Stadt entspricht).
■ Es werden immer wieder die gleichen, sehr einfachen Anweisungen benutzt, um
die Ameisen zu steuern:
❶ Teile den Trupp auf und folge allen Routen.
❷ Wenn ein Ort erreicht wird: kürzeste Strecke dorthin gefunden, weiter bei ❶.
❸ Wenn man einem anderen Trupp begegnet: Strecke verwerfen, Ende.
Solche Verfahren lassen sich (normalerweise) gut und einfach für den Computer um-
setzen. Eine entsprechend formulierte Vorschrift nennt man dann Algorithmus.

12 1. Sag mir wohin ...


Algorithmus
Algorithmus Wussten Sie, dass die
Herkunft dieses Begriffes
Ein Algorithmus ist eine Handlungsvorschrift zur Lösung eines Problems bzw. nie richtig geklärt wurde?
einer Kategorie von Problemen. Diese Handlungsvorschriften lassen sich im Entweder kommt er vom
griechischen „arithmos“,
Allgemeinen in ein Computerprogramm umsetzen. Hierfür müssen sie hinrei- was Zahl bedeutet, oder er
chend genau formuliert sein. ist der veränderte Name des
persisch­arabischen Mathe­
matikers „Al­Charismi“, der
Wie lösen also unsere Routenplaner im Auto das Problem des kürzesten Weges? Ent- – englisch ausgesprochen – in
halten sie einen Ameisen-Simulator und spielen die genaue Vorgehensweise nach? etwa wie „algorithm“ klingt.
Erste Algorithmen wurden
Sicherlich wäre das vorteilhafter als die ganz zu Anfang beschriebene „Brute-Force- übrigens bereits lange vor der
Methode“. Trotzdem ist der Informatiker hier erneut gefragt, das gefundene Verfahren Zeitenwende hauptsächlich
von griechischen Mathema­
für den Computer zu optimieren.
tikern entwickelt: etwa im
Können Sie sich vorstellen, wie? 4. Jahrhundert v. Chr. das
euklidische Verfahren zur
Das Ameisen-Prinzip liegt uns Menschen sehr, weil wir uns gut vorstellen können, Bestimmung des größten
wie die kleinen Krabbeltiere die Pfade erkunden. Dadurch erschließt sich auch recht gemeinsamen Teilers zweier
Zahlen oder im 3. Jahrhundert
deutlich, warum das Verfahren wirklich die günstigsten Wege hervorbringt. v. Chr. das Sieb des Era­
tosthenes zur Ermittlung von
Wann immer wir so ein „aus dem Leben gegriffenes“ Verfahren im Computer benöti-
Primzahlen. Beide Algorith­
gen und es daher in Bits und Bytes umsetzen, hilft wieder das Prinzip der Abstraktion: men werden heute noch in
Computern eingesetzt!
Was ist vom Ameisen-Prinzip für die Problemlösung relevant? Bedenken Sie: Compu-
ter benötigen keine Anschauung, diese Anteile sind also zu eliminieren.
Ob Edsger W. Dijkstra, zuletzt Professor in Texas, 1959 über eine Ameisenstraße lief,
ist unbekannt. Er hat jedoch bereits zu diesem Zeitpunkt ein Verfahren vorgestellt, das
unser Ameisen-Prinzip im Computer zur Berechnung eines kürzesten Weges nutzt. Es
ist bis heute nach ihm benannt.
Doch versuchen Sie zunächst einmal selbst, ein solches Verfahren zu entwickeln.
Vielleicht kommen Sie ja sogar auf eine bessere Methode, die dann nach Ihnen
benannt wird.

▶ ▶ ▶ ◀ ◀ ◀

Der Dijkstra-Algorithmus
Fangen wir noch einmal ganz von vorne an: Sie sitzen in Imstadt und wollen nach
Oppenheim.
Die Ameisen unseres letzten Experiments liefen nun einfach in alle anderen direkt
erreichbaren Städte, um zu ermitteln, wie lange sie dorthin unterwegs sind. Die hier-
für notwendigen Zeiten braucht ein Computer jedoch gar nicht zu ermitteln, er liest Al-Chwarizmi
einfach die Strecken ab. Wie aus Abbildung 1.11 ersichtlich, sind dies ja einfach die (8. und 9. Jahrhundert) war
verzeichneten Längen der Verbindungslinien zwischen den Städten. ein arabischer Mathematiker.
Von ihm sind unter anderem
In der Graphik ist außerdem bei allen Zielpunkten markiert, woher diese kommen, genau definierte Rechen­
verfahren überliefert. Daher
damit die beschriebene Entfernung zutrifft.
leitet sich aus seinem Namen
eventuell der heutige Begriff
„Algorithmus“ ab.

Der Dijkstra­Algorithmus 13
Abbildung 1.11
Potentiell vom Start in 7 A 7
Imstadt erreichbare Städte M
4 D
und die Weglängen dorthin 2 4

14
9
6.

6.
N
5 X
C

19
9.
13

5
8

6.
8
6. 8
B Z L
7 7

6.
0 13
21

12
11

5
13 H 6.
7
Y 6.
11 P G

6.

4
5 12

12

12
6.
18
Q

6.
5 F 16
3 E
20
O

Wie ging es mit den Ameisen weiter? Der Trupp, der zuerst bei einer Stadt ankam,
markierte die genommene Strecke als „günstig“ und verteilte sich auf die umliegenden
Strecken.
Für den Computer ist nun gar kein Problem, diese Stadt zu bestimmen: Es ist dieje-
nige, die mit der kleinsten Zahl bezeichnet ist, also Ⓑ mit der Zahl 7. Abbildung 1.12
zeigt das, der Knoten ist mit roter Farbe als „besucht“ markiert.
Von dieser Stadt aus werden wiederum die Entfernungen zu allen Nachbarn bestimmt.
Da die Ameisen jedoch bis nach Ⓑ bereits 7 km unterwegs waren, müssen diese ad-
diert werden. Versuchen Sie es! Stoßen Sie auf ein Problem?
Genau! Für Ⓧ, Ⓐ, Ⓓ und Ⓩ können wir die Methodik einfach durchführen, aber was
ist mit Ⓗ? Hier steht bereits ein Wert! Wie ist hier zu verfahren?
Ziehen wir die Ameisen zurate: Der Weg von Ⓘ über Ⓑ nach Ⓗ ist 13 km lang, der
direkte Weg von Ⓘ nach Ⓗ ebenfalls 13 km. Die mögliche neue Strecke ist zwar nicht
schlechter, aber auch nicht besser – wir können die alte Markierung behalten.
Daher gilt für das Dijkstra-Verfahren die folgende Regel für den Fall, dass an einer
Nachbarstadt bereits eine Zahl steht:
■ Wenn die Zahl, die neu hingeschrieben werden soll, kleiner ist, dann wird die
alte durch die neue Zahl ersetzt und dementsprechend auch die Marke, woher
die Ameisen kommen.
■ Wenn die neue Zahl größer oder gleich ist, passiert gar nichts.
Ergebnis ist daher die Karte aus Abbildung 1.13.

14 1. Sag mir wohin ...


Abbildung 1.12
7 A 7 Der erste kürzeste Weg von
M Imstadt aus wurde ermittelt.
4 D
2 4

14
9
6.

6.
N
5 X
C

19
9.
13

5
8

6.
8
6. 8
B Z L
7 7

6.
0 13
21

12
11

5
13 H 6.
7
Y 6.
11 P G

6.

4
5 12

K
12

12
6.
18

Q
5 F 16 6.

3 E
20
O

Abbildung 1.13
7 A 7 Erreichbare Städte sind durch
M eine rote Zahl mit der gefun­
21 4 D
2 4 denen Weglänge markiert.
14

9
20
6.
6.

N
5 X
C
19
9.

12
13
5

8
6.
8

6. 8
B Z L
7 7 13

I
6.

0 13
21
12

11
5

13 H 6.
7
Y 6.
11 P G
6.

5 12

K
12

12
6.
18

Q
6.

5 F 16
3 E
20
O

Der Dijkstra­Algorithmus 15
Wie geht es nun weiter?
Prinzipiell wie am Anfang: Aus allen mit Zahlen markierten Städten, die noch nicht
von Ameisen besucht wurden (noch nicht rot gefärbt), wird die mit der kleinsten Zahl
herausgesucht. Dort kommen die Ameisen als Nächstes an. In diesem Fall ist das Ⓒ.
Von Ⓒ aus werden wieder alle benachbarten Städte betrachtet. Nach Ⓜ käme man
in 14 km, nach Ⓧ nach 13 km. Beides wird jedoch von der bereits vorhandenen Zahl
unterboten, also passiert gar nichts weiter, die nächste nichtmarkierte Stadt mit der
kleinsten Zahl wird gesucht. Das Ergebnis sehen Sie in Abbildung 1.14.
Lassen Sie uns noch einen weiteren Schritt detailliert zusammen unternehmen: Der
noch nicht rot markierte Knoten mit der kleinsten roten Zahl ist Ⓜ. Diesen erreichen
wir also als Nächstes. In der Karte wird er zusammen mit der Straße zu ihm rot einge-
färbt, die Entfernung von 9 km ist damit fest ermittelt.
Nun betrachten wir die Städte, die von Ⓜ aus erreichbar sind. Ⓒ und Ⓘ sind bereits
markiert – hier waren wir also schon. Kandidaten sind demnach Ⓐ und Ⓧ. Tatsäch-
lich lassen sich die Wegstrecken gegenüber den bereits angenommenen verbessern,
indem wir über Ⓜ gehen.
Abbildung 1.15 zeigt das – die alten Wegmarkierungen sind hier einfach ausgestri-
chen.
Bevor Sie nun weitermachen versuchen Sie doch einmal, den Algorithmus zur Be-
stimmung kürzester Wege aufzuschreiben.
Algorithmen spielen in der Informatik eine sehr große Rolle: Ein Großteil der vor-
kommenden Aufgaben aus Wirtschaft und Wissenschaft lässt sich mit Algorithmen
Abbildung 1.14
Erneut wurde ein kürzester 7 A 7
Weg gefunden. M
21 4 D
2 4
14

9
20
6.
6.

N
5 X
C
19
9.

12
13
5

8
6.
8

6. 8
B Z L
7 7 13

I
6.

0 13
21
12

11
5

13 H 6.
7
Y 6.
11 P G
6.

5 12

K
12

12
6.
18

Q
6.

5 F 16
3 E
20
O

16 1. Sag mir wohin ...


16 Abbildung 1.15
7 A 7 Im Verlauf werden alle günsti­
M geren Wege gefunden, bevor
9
21 4 D
2 4 eine Stadt rot markiert wird.

14
20
11 6.

6.
N
5 X
C

19
9.
12
13

5
8

6.
8
6. 8
B Z L
7 7 13

6.
0 13
21

12
11

5
13 H 6.
7
Y 6.
11 P G

6.

4
5 12

K
12

12
6.
18

Q
5 F 16 6.

3 E
20
O

lösen, die schon vor längerer Zeit entwickelt wurden (dazu mehr am Ende des Kapi-
tels).
Es gibt auch diverse formale Methoden, die Algorithmen zu Papier zu bringen. Ei-
gentlich geht es jedoch darum, die Beschreibung so genau zu machen, dass jemand
anderes den Algorithmus danach durchführen kann.
Behalten Sie das im Hinterkopf, wenn Sie jetzt versuchen, den beschriebenen
Dijkstra-Algorithmus insgesamt zu formulieren.

▶ ▶ ▶ ◀ ◀ ◀
Es gibt natürlich unzählige korrekte Lösungen. Ihre sollte im Kern mit Abbildung 1.16
übereinstimmen.
An einem Blockdiagramm wie diesem erkennt man besonders gut Wiederholungen
von Anweisungsfolgen. Es ist aber genauso gut, einfach Text zu schreiben oder ver-
schiedene Anweisungen mit Pfeilen zu verbinden. Alles ist erlaubt, was Ihnen ermög-
licht, sich strukturiert Gedanken über den Ablauf zu machen. Wenn das Ergebnis
dann auch noch für andere lesbar und verständlich ist – umso besser!
Führen Sie nun den Algorithmus für das gegebene Beispiel fort.

▶ ▶ ▶ ◀ ◀ ◀

Der Dijkstra­Algorithmus 17
Abbildung 1.16
Algorithmus als Markiere die Startstadt rot, weise ihr die Kennzahl 0 zu.
0.
Blockdiagramm Bezeichne diese als aktuelle Stadt.

Gehe aus von der aktuellen Stadt zu allen direkt erreichbaren


1.
Nachbarstädten ...

... und führe das Folgende für jede Nachbarstadt durch, die
noch nicht rot markiert ist:

Errechne die Summe aus der roten Kennzahl an der


aktuellen Stadt und der Streckenlänge zur Nachbarstadt.

Hat die Nachbarstadt keine Kennzahl, weise ihr die


Summe als Kennzahl zu. Markiere die Strecke zur
aktuellen Stadt.
Hat die Nachbarstadt eine Kennzahl kleiner oder gleich
der Summe, mache nichts.
Hat die Nachbarstadt eine Kennzahl größer der Summe,
streiche die dortige Kennzahl sowie die Markierung.
Weise ihr danach die Summe als neue Kennzahl zu.
Markiere die Strecke zur aktuellen Stadt.

Betrachte alle Städte, die zwar eine rote Kennzahl haben, aber
2.
nicht rot markiert sind. Suche die mit der kleinsten Kennzahl.

Bezeichne diese als aktuelle Stadt. Weisen mehrere Städte die


3.
kleinste Kennzahl auf, wähle eine beliebige davon.

Markiere die aktuelle Stadt rot,


4.
zeichne die dort markierte Strecke komplett rot nach.

Falls die Zielstadt noch nicht rot markiert ist,


5.
weiter bei (1.)

Das Ergebnis der Weiterführung sehen Sie in Abbildung 1.17. Erkennen Sie die Ge-
meinsamkeiten mit dem Ergebnis bei Nutzung des Ameisen-Prinzips?
Bemerken Sie, dass alle Städte bis auf Ⓠ rot markiert sind? In unserer Algorithmusbe-
Edsger Wybe Dijkstra
(1930–2002) arbeitete nach
schreibung haben wir festgelegt, dass wir aufhören dürfen, wenn die Zielstadt erreicht
der Ausbildung zunächst als ist. Auf diese Weise sparen wir uns eventuell, einige Städte zu betrachten. Und auch
Professor an der Universität wenn trotzdem fast alle Städte rot markiert sind, hat die Durchführung nicht allzu viel
in Eindhoven und wechselte Zeit in Anspruch genommen.
1984 nach Texas. Neben sei­
nen Arbeiten zur Berechnung Üben Sie nun mit dem neuen Algorithmus und bestimmen Sie den kürzesten Weg
des kürzesten Weges hat von Lupera nach Eindhofen. Wie wäre es, wenn Sie dafür die genaueren Wegstre-
er auch einen wesentlichen
Beitrag zur Einführung der ckenangaben nutzen, die am Ende des Kapitels in Abbildung 1.K2 als Kopiervor-
strukturierten Programmie­ lage zu finden sind?
rung geleistet. Dafür erhielt
er 1972 auch den Turing­Preis,
der das Pendant des Nobel­ ▶ ▶ ▶ ◀ ◀ ◀
preises für Informatiker ist.

18 1. Sag mir wohin ...


16 Abbildung 1.17
7 A 7 Fertige Landkarte nach Durch­
M lauf des Dijkstra­Algorithmus
9 4 D
2 4

14
20
6.

6.
11 N
17
5 X
C

19
9.
13

5
8

6.
6.

8 B Z 8 21
L
7 7 13

6.
0 13
21

12
11

5
13 H 6. 18
7
Y 6. 24
11 P G

6.

4
5 12

16 K
12

12
6.
18

Q
6.
22
5 F 16 22
3
E
20
25
O

Wenn Sie alles richtig gemacht haben, sollte in etwa Abbildung 1.18 herauskommen.
Die durchgestrichenen roten Zahlen und Markierungen sind absichtlich noch sicht-
bar, um den Verlauf besser nachvollziehen zu können. Ein Routenplaner würde Ihnen
die Strecke wahrscheinlich präsentieren wie in Abbildung 1.19.
Weil es ab und zu Verwechslungen gibt: Bitte denken Sie daran, dass das dargestellte
rote Netz nur die kürzesten Wege von Lupera aus repräsentiert! Wenn Sie es zum Bei-
spiel nutzen würden, um über rote Strecken von Imstadt nach Fluxing zu gelangen,
wäre dieser Weg über Budingen, die Kreuze Ⓩ und Ⓨ sowie Krupsing mit 27,4 km
viel zu weit. Aus Abbildung 1.K2 können Sie ablesen, dass dies auch in 21,7 km zu
schaffen ist.
Dijkstra bestimmt immer die kürzesten Wege von einem Startpunkt zu vielen anderen In der Informatik ist es ge­
Punkten, ist aber nicht geeignet, um daraus Schlüsse auf die Situation mit anderen bräuchlich, einen Algorithmus
mit dem Namen seines Autors
Startpunkten zu ziehen. abzukürzen. Daher steht hier
„Dijkstra bestimmt...“ statt
Herzlichen Glückwunsch – Sie wissen nun, wie so ein Routenplaner funktioniert! Da
„Der Algorithmus von Dijkstra
Sie sicher ganz heiß darauf sind, Ihr neues Wissen gleich praktisch anzuwenden, hier bestimmt...“
gleich die nächste Aufgabenstellung ...

Der Dijkstra­Algorithmus 19
Abbildung 1.18
In 22,1 km kommt man von 24,8 6,7 A 6,6
Lupera nach Eindhofen. M 21,2
17,4
3,
8 17,7 D

14,3
2,3 4,1
18,9

5,6
6,4 N 13,6
4,6 X 20,0
C

18
9,0
23,5 18,9

,9
,0

4,
13

5,8
8,2
6,2 7,8
B Z L
7, 0 14,0 7,8
21,0 0,0
I

5 ,6
13,4 1
1,

11,8
21,1 2
10

4,5
,5
H 5,9 12,3
1
7, 18,2
Y 5, 5 11,8
P 21,0 G

6,0

3, 6
5,1 5
11 ,
15,9
23,3
K

11,6

12,1
18,2

1
Q

6,

6,2
22,0
5, F 15,6
3 22,1 23,9
9
39,2 2, E
19,5
24,9
O

Abbildung 1.19
Arlhausen
Ein Navigationsgerät würde
das Ergebnis eventuell auf 6,7 eg -
6,6 - Forstw
diese Weise visualisieren. 3,8
Morbach
2,3 Niedergau 2,5
5,6 6,4 4
4,1
4,6
14,3 Delgar
Chelzey 18,9
9,0 31
13,0
5,8
8,2 4,9
Budingen Lupera
7,0 31
Imstadt 6,2 7,8

5,6

13,4
21,1
12
10,5
Hundorf 4,5 11,8
7,1 5,9
15,4 5,5
6,0 5
Pappstadt Giwelau
3,6
5,1 11,5

Krupsing
11,6
6,2
Quickstedt 12,1
6,1 8
18,2

15,6

2,9 Fluxing
5,3 Eindhofen
19,5

Oppenheim

20 1. Sag mir wohin ...


Die Schilda-Rallye
In Abbildung 1.20 finden Sie den Touristen-Stadtplan von Schilda mit seinen acht
Hotels und vier Pensionen.
Wie es so kommt, hat der Stadtrat vor Kurzem beschlossen, alle Straßen zu Einbahn-
straßen zu machen (ganz im Gegensatz zu den für Schilda bekannten Gepflogenheiten
sind trotzdem noch alle Orte erreichbar).
Die Fahrzeuge von Schilda-Taxi warten vor den Hotels Adler und Gozo sowie auf
dem Parkplatz der Pension Kapitol. Aufgrund der neuen Verkehrsführung benötigen
die Fahrer einen Plan, wie sie auf dem kürzesten Weg von ihrem Standort zu allen
anderen Hotels kommen. Eine Entfernungstabelle ist auch zur Berechnung der neuen
Tarife notwendig.
Abbildung 1.20
Stadtplan von Schilda
Adler 0 500m 1km 1,5km 2km 2,5km 3km

Bogart

Emilio

Kapitol

Dog Ilona
e
Gozo

From
m

Jorge Lundt

Schilda Club Holunder

Ihre Aufgabe: Erstellen Sie drei Tabellen mit den Entfernungen der Hotels Adler
und Gozo sowie der Pension Kapitol zu allen anderen Gästehäusern.
Tipp: Gehen Sie zunächst genauso vor, wie Sie es gerade gelernt haben. Einen Un-
terschied gibt es allerdings. Erkennen Sie ihn? Versuchen Sie das Problem so weit zu
lösen, wie Sie selbst kommen. Wenn es wirklich nicht mehr weitergeht, schauen Sie in
die hier vorgeschlagene Lösung.

▶ ▶ ▶ ◀ ◀ ◀
Zunächst wird wieder eine Abstraktion benötigt. Die Definition von Orten ist der ers-
te Schritt. Selbstverständlich sind die Positionen aller Hotels relevante Orte. Relevant
sind jedoch auch alle Orte, an denen sich die Straße teilt, also ein Abbiegen möglich
ist.

Die Schilda-Rallye 21
Abbildung 1.21
Stadtplan von Schilda mit
Adler
markierten Straßenkreuzun­ 0 500m 1km 1,5km 2km 2,5km 3km

gen A
V
M Bogart

N B
Emilio W
E O K Kapitol
R X
D
Dog
e Ilona
I S F

Gozo
From
m

P Jorge J G Lundt
L
Y Z
Q C T U H
Schilda Club Holunder

In dieser Lösung nach Abbildung 1.21 habe ich die Orte für die Hotels (ihrem Namen
entsprechend) Ⓐ bis Ⓛ genannt und in der Karte gelb markiert, Straßenkreuzungen
ohne Hotel Ⓜ bis Ⓩ mit einer hellgrünen Markierung. Andere Nomenklaturen sind
selbstverständlich genauso möglich.
Haben Sie weitere Biegungen als „Orte“ markiert, etwa zwischen Ⓔ und Ⓟ oder zwi-
schen Ⓥ und Ⓕ? Das ist kein Fehler, jedoch nicht notwendig, denn ein Auto kann
sowieso nur dem Straßenverlauf folgen.
Welches ist der nächste Schritt? Stellen Sie einen Plan auf, ähnlich dem für das
letzte Routenplaner-Problem!

▶ ▶ ▶ ◀ ◀ ◀
Der Unterschied zum letzten Problem sind die Einbahnstraßen – diese wichtige In-
formation muss auch in einer abstrakteren Darstellung der Karte erfasst werden, aber
das stellt ja kein Hindernis dar. Abbildung 1.22 auf der nächsten Doppelseite zeigt die
Lösung.
Erinnern Sie sich noch an das Prinzip der Ameisen? Es lässt sich immer noch anwen-
den – nur müssen die Ameisen nun die Regeln der Einbahnstraßen beachten, also
immer nur in Pfeilrichtung laufen. Für den Dijkstra-Algorithmus bedeutet dies, dass
„Nachbarorte“ immer nur solche sind, die in Pfeilrichtung erreichbar sind.
Fangen Sie damit an, die Wege-Tabelle vom Hotel Adler aus zu erstellen!

▶ ▶ ▶ ◀ ◀ ◀
Sie sind ja ganz sicher selbst auf die Lösung in Abbildung 1.23 auf der nächsten Dop-
pelseite gekommen ...

22 1. Sag mir wohin ...


Üben Sie nun weiter, indem Sie die Entfernungen vom Hotel Gozo zu jedem ande-
ren Hotel und von der Pension Kapitol aus bestimmen.

▶ ▶ ▶ ◀ ◀ ◀
Die Lösung für das Hotel Gozo entnehmen Sie Abbildung 1.24.
Die Entfernungen von der Pension Kapitol aus entnehmen Sie Abbildung 1.25.
Auch diese Abbildungen finden Sie auf der nächsten Doppelseite ­– als kleiner Schutz
vor dem „Spicken“.

Was steckt dahinter?


Die besprochenen Probleme gehören in das Umfeld der sogenannten Graphenalgo-
rithmen. Ein Graph besteht hierbei aus einer Menge von Knoten und einer Menge von
Kanten, die zwischen den Knoten verlaufen. Graphen werden oft wie in diesem Bei-
spiel dargestellt: die Knoten als Kringel und die Kanten als Linien oder Pfeile dazwi-
schen. Man unterscheidet ungerichtete Graphen, also solche, bei denen die Verbin-
dung zweier Knoten in beide Richtungen geht (ohne Pfeil), und gerichtete Graphen
(mit Pfeil).
Wozu ist aber ein Graph gut? Wie andere Modelle der Informatik auch kann der
Graph einen Ausschnitt der Wirklichkeit modellieren, um diese einfacher zu verste- Graph
hen und zu analysieren. Prominentes Beispiel für einen Graphen ist die Landkarte
bzw. der Stadtplan, wie hier im Kapitel gezeigt. Knoten sind hierbei die Orte, Kanten
die Verbindungswege. Genauso könnte der Graph jedoch auch ein Computernetz-
werk darstellen. Auch andere abstrakte Konzepte wie Produktionspläne oder eine ma- =
thematische Gleichung lassen sich per Graph sehr übersichtlich darstellen – in diesem
Fall 5 + (11 ∙ 3) = 38. + 38
Sowohl Knoten als auch Kanten können Markierungen tragen. Im Beispiel der Land-
karte sind das Ortsnamen für die Knoten und Weglängen für die Kanten. Aufgrund 5 .
der vielfältigen Anwendungen von Graphen gibt es auch eine Menge von Algorith-
men, die auf Graphen arbeiten und Aufgaben – in der Informatik nennen wir sie oft
„Probleme“ – mit Hilfe einer übersichtlichen Darstellung als Graph lösen. Der bespro- 11 3
chene ­Dijkstra-Algorithmus ist hier ein sehr prominenter Vertreter.
Mathematische Gleichung
Was zeichnet einen guten Algorithmus aus? Einerseits muss er natürlich die gestellte
Aufgabe lösen. Wichtiges Kriterium ist jedoch außerdem, dass er die gestellte Aufgabe
schnell löst und so auch bei großen Problemen nicht in die Knie geht.
Man rechnet daher aus, wie stark der Zeitbedarf mit der sogenannten Problemgröße
ansteigt. Auch dies kann man am Beispiel der Landkarte sehr schön demonstrieren.
Eine brauchbare Problemgröße ist die Anzahl der Städte auf der Landkarte.
Rekapitulieren wir zunächst den anfänglich kurz erwähnten Brute-Force-Algorithmus
zur Bestimmung des kürzesten Weges:
„Bestimme alle möglichen Wege vom Start zum Ziel und suche davon den kürzesten.“
Im schlechtesten Fall müssen also von einem Graphen alle von einem Punkt ausge-
henden Wege bestimmt werden. Außerdem sind im schlechtesten Fall alle Knoten mit

Was steckt dahinter? 23


Abbildung 1.22 3,3
Stadtplan von Schilda A V
0,9
0,7 B 1,7
3,7
M 1,7 0,5 W
3,2
0,9
0,4 K
N 1,7
X 1,6
E 2,7 1,0 1,1
0,4 F
1,5
O R S G 0,6
1,2

1,4
0,7
0,7
0,5 0,7
L 1,0
0,9
3,5
I 1,0 Z
D J Y
1,7 0,7 2,7
2,0 1,2 1,5
0,9

P Q 0,8
C 0,8
T 0,6 U 0,7 H
1,6

Abbildung 1.23 0 3,3


3,3
Kürzeste Entfernungen vom
Hotel Adler. Sie ergeben fol­
A V
gende Tabelle: 11,5 0,9
0,7 B 1,7
Hotel Entfernung 3,7
M 1,7 0,5 W
Adler 0,0 9,8 4,2 3,2
0,9
Bogart 11,5 0,4 K
Club 9,7 9,4 10,7 5,1
3,7 N 1,7
X 1,6
Doge 8,1
E 2,7 1,0 1,1 6,5
Emilio 3,7
0,4 12,1
6,2
F
Fromm 6,5 1,5
O R 11,7
S G 0,6
Gozo 6,2 9,0 7,9
1,2

Holunder 7,6
1,4
0,7
0,7
0,5 0,7
L 1,0
0,9
Ilona 11,4
3,5
I 6,9 1,0 Z 7,7

Jorge 9,8 D 11,4 J Y


8,1
9,8 0,7 2,7
Kapitol 10,7 2,0 1,7 1,5
1,2
0,9
Lundt 7,9
P Q 0,8
C 0,8
T 0,6 U 0,7 H
7,6
7,2 1,6 10,5 9,7 8,9 8,3

24 1. Sag mir wohin ...


9,2 Abbildung 1.24
3,3 12,5
A V Kürzeste Wege vom Hotel
Gozo. Sie ergeben folgende
10,2 Tabelle:
0,9
0,7 B 1,7
3,7
M 1,7 0,5 W Hotel Entfernung
8,5 11,9 3,2 Adler 9,2
0,9
0,4 K 9,4
12,8
Bogart 10,2
8,1
N 1,7
X 1,6
Club 3,5
E 2,7 1,0 1,1 14,4 Doge 6,8
10,8 0,4 5,9
0
F Emilio 10,8
1,5
O R 5,9
S G 0,6
Fromm 14,4
1,7 1,2
7,7 Gozo 0,0
0,7
0,7
0,5 0,7
L 1,0
1,4 Holunder 1,4
3,5 0,9
I 0,7 1,0 Z
15,6

D 5,2 J Y Ilona 5,2


6,8 3,6 0,7 2,7 Jorge 3,6
2,0 1,7 1,5
1,2
0,9 Kapitol 9,4
1,4
P Q 0,8
C 0,8
T 0,6 U 0,7 H Lundt 1,7
5,9 1,6 4,3 3,5 2,7 2,1

4,8 3,3 8,1 Abbildung 1.25


A V Kürzeste Wege von der
5,8 Pension Kapitol. Sie ergeben
0,9 folgende Tabelle:
0,7 B 1,7
3,7
M 1,7 0,5 W Hotel Entfernung
3,2
4,1
0,9
7,5 Adler 4,8
0,4 K 8,4
Bogart 5,8
3,7 0
N 1,7
X 1,6
Club 13
E 2,7 1,0 1,1 10
Doge 2,4
6,4 0,4 15,4
9,5
F Emilio 6,4
1,0 1,5
O R S G 0,6
Fromm 10,0
11,2 1,2
3,3 Gozo 9,5
1,4
0,7
0,7
0,5 0,7
L 1,0
Holunder 10,9
0,9 14,7
3,5
I 13,1 10,2
1,0 Z Ilona 14,7
D J Y 11,2
2,4
0,7 2,7 Jorge 13,1
2,0 1,7 1,5
1,2 Kapitol 0,0
0,9
Lundt 11,2
P Q 0,8
C 0,8
T 0,6 U 0,7 H
9,9 1,6 13,8 10,9
13 12,2 11,6

Was steckt dahinter? 25


Abbildung 1.26
Von S gehen zwei unter­ S S S
schiedliche Wege aus.

allen anderen Knoten verbunden (der Fachausdruck dafür ist „vollständiger Graph“).
Für drei Knoten ist es noch kein Problem, die Anzahl möglicher Wege vom Startpunkt
S aus zu bestimmen. Abbildung 1.26 zeigt die zwei Lösungen.
Versuchen Sie das jetzt auch mit den Graphen aus Abbildung 1.27 mit vier bis sie-
ben Knoten.
Abbildung 1.27
Vollständige Graphen mit S S S
vier bis sieben Knoten. Bei
einem vollständigen Graphen
ist jeder Knoten mit jedem
anderen durch eine Kante
verbunden.

Knoten Schritte ▶ ▶ ▶ ◀ ◀ ◀
3 4
4 18 Falls Sie angefangen haben, die Lösung zeichnerisch zu bestimmen, werden Sie bereits
festgestellt haben, wie viel länger die Suche dauert, wenn auch nur ein Knoten hinzu-
5 96
kommt. Man kann die Anzahl der Möglichkeiten auch rechnerisch bestimmen:
6 600
Für den Graphen mit vier Knoten gilt, dass man ihn aus zwei Komponenten zusam-
7 4.320
mensetzen kann: einem einzelnen Knoten Ⓢ plus einem Graphen mit drei Knoten
8 35.280 ○. Ⓢ kann dann mit dem Graphen verbunden werden, wie in Abbildung 1.28 dar-
9 322.560 gestellt.
10 3.265.920 Da der „bekannte“ Graph drei Knoten besitzt, kann vom „neuen Knoten Ⓢ“ auf drei
15 1.220. Arten ein Weg zum bekannten Graphen begonnen werden, nämlich jeweils zu einem
496.076.800 der Knoten. Stellen Sie sich vor, dass im 3er-Graphen dann auf die bereits ermittelte
Weise ein Weg gesucht wird.
20 2.311.256.907.
767.808.000 Daher ist die Anzahl möglicher Wege im 4er-Graphen 3 ∙ 2 = 6. Für den 5er-Graphen
50 29.805.811.337. gibt es nach dem gleichen Schema vier Möglichkeiten, Wege vom neuen Knoten zum
679.110.482. 4er-Graphen zu beginnen. Die Anzahl der Wege insgesamt beträgt daher 4 ∙ 6 = 24.
740.356.002. Auf diese Weise kann man ableiten, dass in einem vollständigen Graphen mit n Kno-
743.473.467. ten (n – 1)! verschiedene Wege von einem gesetzten Startpunkt ausgehen.
490.088.737. Da für jeden der Wege n − 1 Streckenabschnitte eingerechnet werden müssen, bedarf
581.301.760. es für den Brute-Force-Algorithmus ungefähr (n − 1) ∙ (n − 1)! Berechnungen, um den
000.000.000 kürzesten Weg zu finden. Die nebenstehende Tabelle enthält die Anzahlen für ein paar
Problemgrößen.

26 1. Sag mir wohin ...


Abbildung 1.28
S S S Der Startknoten S kann auf
drei Arten mit dem vorhan­
denen Graphen verbunden
werden.

Für 100 Knoten sind im schlimmsten Fall bereits


92.392.953.289.504.711.154.882.246.467.704.033.485.808.808.581.737.805.253.907.03
4.256.265.423.993.297.616.452.852.049.336.394.953.103.391.160.941.618.951.520.668
.673.358.807.695.360.000.000.000.000.000.000.000
Berechnungen vonnöten. Um das einzuschätzen: Ein Googol wurde bereits in der ers-
ten Hälfte des 20. Jahrhunderts definiert als Obergrenze für Zahlen, die natürliche
Vorgänge beschreiben, denn mit 10100 ist ein Googol größer als die geschätzte Zahl
von Elementarteilchen im gesamten Universum. Für die 100 Knoten kommen wir im-
mer noch auf
9.239.295.328.950.471.115.488.224.646.770.403.348.580.880.858.173.780.525.390
Googol
oder 9.239 Nonillionen Googol Berechnungen.
Wir können das aber noch weiter auf die Spitze treiben: Wenn auch nur die 12.903 Ge- Anmerkung: Die Zahl der Ge­
meinden Deutschlands als Knoten in die Suche einbezogen werden, ergibt sich für die meinden ändert sich ständig,
die genaue Zahl ist aber für
Anzahl der Berechnungen eine unglaubliche Zahl, die ich Ihnen nicht in ihrer vollen die Demonstration hier auch
Schönheit vorenthalten möchte. Sehen Sie selbst in Abbildung 1.29. gar nicht relevant. Daher
bleibe ich bei der Zahl von
Anders ausgedrückt, handelt es sich um etwa 9,88 ∙ 1047438. 12.903, die galt, als ich das
Beispiel erstellt habe.
Wenn wir diese Zahl in der normalen Schriftart hier abgedruckt hätten, würde sie 14
Seiten vollständig eng beschrieben füllen. Um sich diese Summe wenigstens einiger-
maßen vorstellen zu können, möchte ich sie mit einer Analogie verdeutlichen.
Wenn sich die verfügbaren Rechenleistungen wie momentan alle zwei Jahre etwa ver-
doppeln, haben im Jahre 2030 alle Supercomputer der Welt zusammengenommen
etwa die Möglichkeit, 32 Exaflops durchzuführen, also 32 Trillion Fließkommaope-
rationen pro Sekunde. Nehmen wir an, wir vereinigen alle Rechner zu einer gigan-
tischen Maschine, die sich dann um unser Wegeproblem kümmert. Dann würde sie
immer noch etwa 16 ∙ 1047412 Jahre für das Ergebnis benötigen.
Das Alter des Universums wird heute auf etwas über 13 Milliarden Jahre geschätzt.
Die zusammengezogene Macht der weltgrößten Rechner würde also immer noch über
1047403 Mal so lange benötigen, wie das gesamte Universum alt ist Ausgedrückt mit der
Einheit Googol von vorher „über ein Googol von einem Googol von einem Googol
... von einer Googole von Universumszeitaltern“, wenn „...“ für 470 mal „von einem
Googol“ steht.
Was soll an diesem Beispiel verdeutlicht werden? Es gibt Aufgabenstellungen, die wir
zwar mit schierer Rechenleistung lösen können, wenn sie sehr klein sind (so klein,
dass wir meistens gar keinen Computer benötigen), aber nicht mehr, wenn sie rele-
vante Größenordnungen annehmen.

Was steckt dahinter? 27


Abbildung 1.29
98803278029651766343632207670109515570077002453789024549516807339441061374990790333490853712732854076679310780924634858872402516781527641701765039012448654724937917213967907121178176348270
32360425413498623182181365765511037588506039371909323717329415745154431407222112752441048354523168658037093462118245654004613220442683267214340359838381111786578911541649275566431786561714
74660541364955846571135269566089067209050083842063966215125519481522183823585218692212743733202669715476272895547369627756913232675761878439204981953372613356827581804169522488746469163622

Rechenschritte mit
60476096721925279548548037552758309418616373361747127517895030449506290033687994490215349892543976326915023971011565380550337005865230797522413637214870122158143823602183924284812885154682
57112289112027579475057843458738038951820076751550668588986937376488917448665794965758922600263002948877341576998639357920180077006331632344147620196396227761858902458217756216113863838978
03543489896010396675700309744434876784840088465489343324134115523556680571964252563179124505009237822399060108114358568757406253755902528547047697975637947254426283182107816551488579830240

­Brute-Force für den kürzesten


50746571863312029650736906883003110322652925409691288835539458248870170831234665935534280739557042235457824524693806131020954366179064082424886451569825891678306386270918419263990988567322
21529796765709652262476737321875177138389244803285891550319968968766302740800832374994676718855483382295547999472773105077601979191310288965132883746540416421939350677345832930560779751655
66070718798016703959586297899227493229109065658198379525446761936503813125987314217476912540920958691501786781633016193952420445818637943831285237097681218386907496815085128670158136918224

Weg bei 12.309 Gemeinden


74301347014841752592875879412573608344442344951715818458574824499192537275235288390319666444612303591135397528568138555760795002516183006012738714438677089018228312943327922987804400142047
73883223670016854897216932169613587419848958099100575304102377669074082989843172511701857250019117920023564494623374322599158118556801384314209002717216212276291710829757409746120550736766
88305916188061569085712379422149608668571756702872714717887242081282688937644017036781926791886892850699160723701808477393242501975526406247528322685597081253628903644703870145482094042563
40334272662850587906168228538303077256621903840327622652557646382476199941638935788890987764608119634493161445953030530352921603797144633546933630493378969659046598653819209878871886723186
6722821972411202608920215463998261375226177037293246241414617886441005846443741362574589796763866647308280944923725543427360293500292357816587680690786981644763480822493581171066514641833375350953690889267118124738752384665657758279740313428551789738503345
3885001699625681163765017624198965648894484682996484441418410662581461630411119655156733588141643040455451693895446404569265589807095404354122499159763140030811224559546264507158996779075669025657389927316015015518921436974432369360189912151826739453131568
4912684465139173325342236921439520635534537181926747809189802203450017627523698689926134130856033789181473490490409560661303686127305357349002729619674011076595077028421576230486485821940562064577624771241067381667338889845576744487535330298065653833461492
2173712939929382251274859196638408735513634978587075918632129610820121916947146012885960919517262526170571569545433930157932578249720066991682399275974750539324680010204734952204498414639509378962190058420679748993065899071872607045028486161438381779765629
6006340308305195039304804555815892352965668773932839623555655141536086179601903764278149304099393608404289533312278886425500777979504218253182353236335915236292877426021150814270675481463978496527166317468755484362204635190258757105710744165605426802668472
3716298206079109309920293702877838939678557900527970040986414085964183158182438925092583469119211533979111672568944743897059731754251505736318049814402641160494274450198922930439329813662945323114181234378370241362063497701937663093520557447849627399973773
1565337853302481322103319295832635199091984223776614780993204045913654979139512626636535892344852600449877590541418661886923150246125633153760853409749658566380281475740120783813531809124147535433842147650806325969306425896289306258816067502103665246960074
4134995743325167550461077871398966860761167947870427616543416328807933841816477672530703576694815386127877311314191500227417056456461958865683314375736036821514531787613864161651520687544150785838461740129111820383374857096519242938872523624459125344379284
9415097542926462100580651243504547379211883132768776282427334368114508803113400928078517795076338714650157073987507266920791602249928479568969441864546972268294550743182614837977231990597212543328705586227341189115437934450611540071899601342392029333892955
4843496264060069725868597164936043777557992066080293665341619550555569627806920340136483758552894707491434189865560074389908441788339034753190731362879116889273970057384244439592117251632036499360693179282953883272990501859405679435447769374160422381566623
0058510059990536970025524435766497356789834215167945836234547794057402740668977141107011012203886961202412691617932431300634026691779998939052524499934907296713606946986878116787005574878285203609127418553577331795400696572257689566791164051081055127726460
2918626138432603842267789901258923198903233394975920999280571901871438994823347377222994752404239131329238469993621312486305856023975453169400807217096253740360912557315445522484558355787472516608394778888621881790057196990289026629292380498947398220381792
8217460794608293990073275755721495162223152626698507171416870748872482674239813533012940345500207082429687262161568556229858964015387763496671061890693990070602321532645396281808295496726822293511431024353505212462583756499293711574644502025540582439362382
4427097080408207207853064738524084255908770030453274948200789522921217654900424623006547215109624709071344796727103032156431213937923868562099914743529260248916326259119639129497606989506757858318794753312218069020233614130327240358940936083824062656463630
7563184015029051768030865544389149065528858402033466225256356348023255347807400384177240104323349959298081607321110394792436500398670939935597151353457988218189922489066077614767119643107947575682025008430007596648571332989692660830326883119589202340339039
8201571956480739010924768475399057820310111562151832013984753479172661838243598706138112674900562277196436063702853916074454806256993211883181023010394103392204755749657217437059270699347723514366120404569826845375776357911833579006893901311020237987759426
8168928633464052433964866717299037097945578390389838699207011502926545355013526886473215508874778599322421590090182832077594193069984296769602477374197672682942870452249674967365542494892179426271122966250742676096297971704343569187513673307141742796154437
1363103819828685897987187437993423050593148071421565257256112879751854687647664771969422951975065992817617594707813582757377183059055188836361718160253232230402544103697145893740545268958338105834659816309347546173618846561127323232126340247306288532400292
8680650038382449251629066689206424546771086625840288832003506763497691942032011243199214567395688362396131092129396538367456149724969170892603376840514648387321523873182682454045445638054237377459869623971425719745291960389291186598164838856133824982134315
1869711361607309036921925075755449519846092583193801760786868448761019495388818272577399839703168597078320742967084099481281913208652488324048168124787986736205144593549371104613312809274070517693801315509510081762222234688525419631721658658455604017935849
7107838460299772290028403151781951875581740432105660142452525383058436574145863212197068816052007024518902718145219013101931694442475512306791503387005267599892547623480365656038506453051973658107945387515568024408309723766677345359981465141246330375998140
3737754310325380115726421703585365808129532546740694993030649545654616659748203748653884864574463322430175973529693593144370924743101825944539999533424833236794459469643732601644129783401784090869552980190302633244756382138009276788686975001957034692014158
0045913254141232432378925779212549779667577558380775564990934495979084704737028310487229495817234300182368096601837037190105953386083534016023054334057584702052699397574770224796138128355889291301751900925356576283256549594650756757038982629596860890322480
2901771471838682167353553863926492056214717103526687703994098277418577257620055803621340106606306152160053632386717629734780426326619849869846276125381734458235127074350738464078119788132220424876652696288456827906607291273312405520069351770230366953050408
7231143630048100569563239738485884517422724943524264879102865381187206095961324143232692240433829445643057891542542921666797560830065071891594201604067312943657831170053048543404021182834230142711690128664776464313449666758853310977446276614333705940489350
5526533477494078016890094340495836252462698897697877568079871234757667892315154188903969309567435125552529726684207001561626787054867151955828067634738281795893419738227099043259836872025975369367415655536643864227122134248530318621245852516617500705085858
9760380322505670551762870554394550228639634603790897724849276171899838478166656358784693116061317135251188255496449338937988918520210022266241235674431411204777542335205733075617709166077146522274856201561966665020238852404786985768958654400665040981605759
9659844415805603266212748474376464466977419744879701394320804990215785407712875080043130257776603411539183923340689850869715164912778237021074563986010544113682476797668900958609600430728990407331279588014337498584948058690215191832408232854214203134399617
0796648524587097542286609663187998076628364169343586326636922272609191877474507123472289159936142908785422926978322703685663811322779412629492969642929542834375143315154294096412047497431090129275331277631774678698980143650057541228754366592690335327553906
2428503452770765534263426658220952827992211391519771647966779548043331108182125211874490452488249942136152449813669909524478594262267623875038720003273771473575101793045454133247874174536342493243403076977181358101728508866276520763604308883104883580925571
3327157201566864590640914013046325821926065822405759963200301106385655227249729637666701989589459407851972698421356579719454258057849958458627612166676019521804099636708887243225498506113270263800490832122689575494219686447093755252942398815682855236622454
6611729608638164294061164140612021918955145583901117680857511852362507317292344574687614338051410492204267613396812686803335049056123062140019641276971180978736318611721084905936853849242211326061577731640976527309898256810947213605760866523403896835169376
7291613835327574013536002966677824424241456005244543201190195242082294958838598245878671172233799234763733174611879755374487071640436570856263680871888453358915405884349389734055510273678376296734699504487265971372872256675116249078390002472387704097138766
6820437829784466696792720985350845680104071358376986827622226195771256149302256114718902225059630452072555629690817670517473015044078146979592816090205592277956059271675552356992127856807540496349622794676168679715371937108583411189326680658825113828836354
5433885614391159603885302316385262267605168270535523745428332618487918313991497209457144534456991505759551122199407152287475548722586153030591551614908373819436802358046178315760309035033833227291870441117121160830016375165408719894726021790978729588250499
1144806711039239498735925710946444171223032403243249677704447207946286377313153894757434091443790263188496282230297364368913900235912154374838022429221282543061621696331331197575810946164747816219753457356048052222597978609119452859390912252778288679630704
0736844261196132852173125067743329407365537842978056185518968496733411989711793416170812477743150664429163780480891770056253943054700632029530536294031284829899665563325106919726957801971422089883185050114762046633616503362337091304205480873436905396404091
9180671465104368682948655946503511351157294628692971121630908614686172412530769335498942707102380854389398007007816350522354624577754177278332104152514571807137539604803758262881853790989082661690865598831708296810710755306662053161464568039919175265722543
4731990330549062497189578698501241357661866818187781573903725500159639225377549098856860689961193384301915488020015604343807607839442242408876707609470492070596257847972854376479635295101139231145329728751701091831963668508334164824820322984832857676971744
3453927150469654300132787983523046541710787463296935089578549413732334131888779218459234861637779701243172154788810597501621146656498378670799330418980665406082650609849386668186660711550279676724112454493260947414222537050311082447907831379090239303946407
9498547788374118854127259318067761235540736692514157957476119540330152805910861093683574250590563403176099124897326017818762915187468737736905287959254211741165011288875088382467737136873226428283109759753228493489426130724767842778406909132665507588050170
4452938958154654605006176312853707183500031879097482003611500605096590762906152657160727393509140148107149682599195107094347753655073052282700655337727064579370920952911957731690583918632357072316783419814679530178074791141130902832413266935563628738984643
2665040637615565482105040115941130757590577063122879548504734507398524669122734990146306920988981865680319106150939285723954414086669573875067084031675073742991732356401395963198155207352871492231518112968858426995946050213454760412524790194980978396675119
6203352399734085939085775939306806012167941716414262753049892847702720315507864713373572403476885460463863167251646171021115443004851485497881173480746721572195458985354128926240852803245747488707892647556793688958242266856709067121147115685094507112661169
1371862047722369535061389043049266747999029703927791775341093783438190997531785151312500955737805074487935543845608613569303787567955594174647287067331484963914716068022011523155706769537084370609681046195467207714720590642834369654045413787399737701201948
4849521736800717778517042700062513862701774217978637021321259923283282116874299171389758153889300634946774405778633371305448938019485022289345337447142570987863158910839511596136764799302979200653378604009432782656381540668324176678842387490882475482946051
9143911904669601051663123904314011660356698717041702527049179281915282241762144551265350586592834998398818290646421239396788801917091011397003811036880406788380161324442689469275721147099964839081489327501106845991174492300514107031231274338849716610357437
0772358109022435499304163881576124889191527280230924180847777140591337548244049189077451217188209951060266138373804380521440625922426785346249917353402358770298631472471547938010601361739310895357239476344299802456202085588300888033665465718249191267019813
9545993397937838423662789812009649220242580131383872892470074715142122804716425646556773104966109877878914028847150785866591653883438860080546866646846181897796786364007772473532199565256222860817793055394680328739492828011807911542863480861150712102330001
8501488547801375848679121020435380868659560630656910489339999154855699099868691817520943050217071690110002865190284956162013437389565041077197477118498755459185824336265507164509358124164486700367854366990941925510040481291807374368410888893496985531370049
7588808055864955719841738460702141538238273849229150323421500730442729432599675231123273540104036030209347711751581869472863395999222472928210098563030570972450433385509602701819264543071942985214072025117893606225659149506631212791819930987852807690165069
3049382168915700640444096940367244972698574240194898044586844507142463300770162411240430873838961883476224126978040735007580072085554824409189059031405166011370169192993345436560827314965448498952856662808405868788481610020068469728874614746145343843838245
7973940626480530343782165040232884289024450530292075360978232544598341143871160607818669612792452247904947554708390665002209676518118878376678954450992589916803594067570387268678480491069894641209128183091442631367211443062482265388674736599764643561021919
3684250246334006944074626221202989350596284957521829081451371979595149790037836618686112798025076778598635373943091641205946584498063786516513814191215151983280826800545581333253361583161251280888749857930260264793358238260438236100122137081658492903588270
7022387300794039435312150112045380136382725032638347234492137755405441414366407527454494103056593678706271483261769886141994676565671952595233669769064342085383642914886198555409676151083234623923641602193133365381505010245265273071629688007826550315529329
3744045486433155541339980748224610275360279564419120401157051010403768835788370214368948728098289258502305825609758291519576649103551447110444552435916718698342229136793388036872083038176639103193704252934901639865538553392994640060355432456697085549025250
0658865199531166690628211747192311103071075300147617237779544924807874286841880197262888842683768624367750863362511711981646216778563884975837431144958267939099596176045898370329392210066178377057657193068675532936144741413679571351085517911845179609793804
5450105288148009901268966632635242452607282078873943462857380766546410572212742716135296661932772631826781636106446105596889996059174092917192281153754045992818243335306492887103053742558244287434167102458996106380665633617304408683440051432082391131811826
5776273467787400834638688878452853059345483134862306349202139674513116259082952730485342387932214298670083123376843115210321574107750723165836399747221913845622730893181531379849160431182813691524507957848522082670648680938754372769317214259526865977369928
7827347888214829192172343115555314752895993573460559693930910330334344782163843703751589309397552967505135431759054986216757943391718957166542786304757440682826303183137871069211972392668951823333199255843016804677002208121641403449438294966187018141567226
8759451373355067464107319320151092253240091525904076676791049761288461927075872154722215071152581353861019801291497201129991994824241306206843441657125767817797571137297521885481309782290348515162236264818955403405534059021840015537437915511815543842115693
8295119394716902941961332528942944210368468744406723657435368888203265391739395483149568698368914390023436327978940215222730897028904080944333485626852798409079459805695006719666101883676500844015892683389363964069932083606995650454271887074941679620656034
5591189228145536933652537160455714511713835499130956415399600909925898611382138048482998322518488115773204271752363887891545947910090911563956209764878876067372737369054301551647854191820448183420898001118170845036102146409501986537874041165102412713168675
8542782074617794273714690464135821783852375982724499957511984271442700868563376825315135781371699589947215230002210851056134539123698288260533694188984106378441299975098622378545636063458497420228751576862833517592199170431057453565065708841201913069004447
7659121221759033397084612720403617381710694710847729185387529090954609544805325253127772311036979691874432866382674746241642521998404390279870669441633990694856779082213186229705538998878623880323293668760700763703859222000757874335056384716841994279105877
8499871735010755505184222000443394883504472086706903858221297465947002386386289122912549754176155253224118125127757818583541028455141172631590864165810005722799945191342035208653684998888669539705822275041424009559252347824368701286208570036316853251834887
6766273854816392748154576643682310648165030660124130062638912547377761871375443205871053410947888202315905831681620135300070524928100684865674489303419652803025745854179688455385586264971398506112242592229689853518425585739612975173033633987838937430331978
4544784448047139093683038893747294438362894190525680551176074731046470693140137632711793329871378444089164450862200635792653752872455777360125230421848445706469529589091696579691879897724528120869974882191283917754560762258689141140165106230273350176338114
9726792348064013306378167663449891599435348342525351861557375604058381031909455324122038088084938340733906232832485236895720233912292947176231741749070497510592036756794282189193735321472527017347436596785674677551113614767898471072904018723415072396857055
0055491017997609664260784346684097824809941217010980547010701348678017541802290268870892020482591910227225132499404543856060939265816740385612724722607026917702146957975510145650506861989411072818179092965069902450024385255941916237476323473006363384086672
6008444098468164484819861094337344714127100658088472601616751866398883125345627638687657023697305584012789753076325828320831594449922412417976061339017354611911057799647488473416138397189113486117202125637310893759697054110346513046883261669044096530775574
7007207276130548943626579270716947307569421738418445964145594815212260940179823364774966056272907647783562058083988136657918878707047939797841301158308976973998423450569378794262707055561549648578455779801529782669990271279527379279865657629747868348390941
4190391039269050494897838859401621972962573300104769876523614631187863275372495405723039792355238027489385502879655089709373953128686057131491931181635182717725968646929863156873945945547616736054402883602194548527073944832369284081498230795992688164900372
1403714518281113298544558038537900999735312588798303446794581996952883446535295111044792493100297579991104940139079494297631484194347579654163306992235179927693043909495466275012864125191054235526891112788278464361266585664973400243930100348900644758578489
3172474828399936325130369204997084250915937321178402985526244312659595852668303766914666427461817773085287688253103022294555046911839045509254536372568028466694043646281493840598355050371097771771687938471392131107641879438405452143415495786291538936589126
7671545977457484794469610370172358134555853644791320728305998716626429412013061028863646783423171204709069026042432437662226610183635372663815617559853895717150123801823164885359743792690590163402718614577852280568578099599471796387355714375430057266371759
7002590026955972962170987948996861575841263376556635552801769993692631448648279392483310302471051681349360371454329082355656248764143541263481022838062021300043644881582338106302951735205117988003689885623025671775286875536163482639868248748229489338294347
8943406786334167535420363419833092410600952450201709677768232419427477835726984091727590706882978155720515843566452874247424174712983014326665793770950100657341430517130307180371621514505395951660006787157087168959399513314023833824646801667985084058548185
4714507087240223739013935987455899994229440659381788551058867934760335089193414386828118011308073836809125438440501124116893617421791310515493562659548785035325487643124860679645084774703769748619110766688750252240747950579559215229565797102800579104298045
3353574628397070893719635887050727917596612184806839764762648569513770281468072353489776403483195586243203747137994824662136232838543995214139518594920569725464595047024197573838305506935340244199682394531294534030624003318658935582106317796949310664603014
4926626520405218271878643253595903643882942597896413415539241196353866708922789125486160934973166611968837375398126372772845836679618538095758586634931932104665510603196308408538188820940572973638889236778116824004086630871592068188213646585939380402388608
6720112260264853087770753080732497043552011039454915941787093135196695644942448036061740496916440466818271219539072827540017167811180346453678631504959516401454911823211202018527689119968954570455708939695776801490764313801483158498602577269634415479874715
0236749984231783590477839405734724131522261893306714335941045943791769023622140269601505101569994252544985596596807977663201575630154371699188400933151389661788306915593130684780449994855986241851189134746249086462584636603222296043979382427176493602315667
9633999267019439270945739681722724933810517149209620589008430539256855105880639020577027960420533093440271380189998544671191070183780336571748038076019629474014157946202212879552669103564861682146849072765700380062679304096971174747041420949162761125383687
5260214097508350281310000544881816545376155656227592899971357318825150071172424143770345413721928308631453323603350259772846927589743234718822981631911360401060147619404317630483631265976607254759282058938458062797019707644247098663617872793624754941142511
1779152232820541925231385843546072638603131616285306664612913210977485227217153904026621700318257714279741402763254537829096417528665913277512243981517791753166123322514988478141137489463572353578265457771250952740387500853666064947145455197795122232210495
5777806917202619048520147542640444604728361800018009015370564975532598716280466077265131450495496354860765706052148272449100814399839725376806941219490317541479131606430841888466400917329010558518861671944412598664572737511715509283329536633504070230829153
1770341826525294463130221677543415977633152571856529722077611249276784909399574859005600322816156356108033669422453575607232248732402299613023203837225797676648633090381891481754159002688360339665641728400890918745821544723850836594104041982774317378413851
5912142531083245130895810490487357771542139816621272638527527537901079818935943911720369979582220762644314192489916227610775078914628316817569228388053628194450941697210930223591458062350265314895519437653113198658958211627403183207750916624036341253428731
6645792350248364696774408958775599658541367825855371568756868920139261057118483980840655621062252581794957334572713600319830883838811749307923781778569800506440249688810717557962368416071276566028851049555863525615859893018717404791517193518056022635547868
5178165242537177961755106596759454903884109421919506934818518650136354873771822605564836012320104422749916448599337284026816450377667156774850162222695074506225317391358063606643333507429084038126743268826727610490609839511916207524303352002796322056589342
3996735559603057443913175356022098453297287357885879271398105680006278096272858495421346867193826301241601733107249078028822819985931684554851064279890046292563845053775500842261061513162811547027347795159135821578945632332530781058936043020972123092200198
7707427759059678398511996256299778550598269233971400710322591802451792690851534516350791316596447058956850263139477829031222464524521032858591792590660917102793425265244976279005857146933173793803507352021449131361724180249655184837363547409724323443053412
7675972228980830394374804137744231259283111731252607289433813609629413642617380981157882703324577601698471783969898280352966237259662153699340598342053393244793970576877122281630541724309726165450429190190928178847023223478023026767383441065105613926133386
6812491085100006013730117249831391077946747281568889541110529721638639094464745979083395574217447145698084799241666741206467689803496868374415959227598410304612180967127420165364078544605626383703779179103412621354610559561927758216537352139447465305540909
6574368548412027310994642497318100051335095873067477741929235533308284719943586776990698905268036365482743859687181764121838741322493372296273990859869675489274760862498398951747982521732643068251194939893913232212133085217936067179374832158983505231499878
7262937197417986751792710981899406838342798856427468319859670910883673335114903980936080079529076086485449933329191345982943073982148841761905333960376883503920371506997949398943107894215796133428908135079797841738190066131854568744205035163540966631094307
2551435948071929107499429794832177331524305793879188076707490234628639451516897745890420506998737751087103377843897842612207634365669137417756608674011645330738732505502563672213326937493437686969831632798612425063364578650901227759496870805744591973827468
7275545814346080200422201359676853835897465140105367902007698776609465375325612049778128642932111690490635438918499208177000051326382087614846381752859285626168883307765306932614511154255712742108658719844661310323000035124622997283661122391744039838695754
4983510918769431385745515776550930380695849792776427845274932535557453813770215433998952425331207677801655974531653331258105133784606115321630962789332722912988430345665541607470918035970123292845897846561432496152349026820294905056135241139711312810600783
9755285241015995512424778859762574122811030389219004733424200124631315913384816099315090186900947257219900858583033366569813297883051056697678447049529552284026582225608281295663108016541632202365253154644359122942531024294584393632802970424398969248552531
6563726678742439327765012273821250643064956362965931398149952713119382179395654435956388373193693574554657565344827918028761438301632929616869432531999015689607572850132974905444852310062584198958831512813316854336791648201764098159861870987288208097476527
9474712836776957669816254811698609791759923211209398482040314660153644653311943751515661629243959461068326571557419023775959020948768521563994630939078451876913533837887016617131086499583842110277756604619626227250033822017622914883011637069154995955879087
2788224123619833785854072835427086450124293793771268827538263767138549847173231474097285148835307057109622638070923094472394708970753004166367152266934192313085520461468995801549376885678260036746674988452935600644033023778880993960783644846923835736425236
1840018756736852930839253704985625044272211048771143625401334147434467695003936183359445739504278265893398091428086409466471223692813795698460932209417042725531772649797989344496516652132620368588937541677166423736296550400192536382300649979317172243581862
6373265315434817140794799897881315954507996269667515653998502246373853879261047654415131007020956332824004080873476008632038078908571692176610469430718987436390567758173038424758823264877417089516599723841776753481140924907137082103585712559026393483487044
5348083586275276435525652475544518749590746222012313290941484311474631498571881505791960736732436760866675552670585236388783000210899001215924316973142361490022730256098510126437246334008919060037735680535347561282009496682655299482351670291171084107889094
0331227331283958322282661492737140645779906346678234637940596832837520239377382080721035751532262679899132177795941518491038738209343177800921032160550635401758702663537115775749411348554198613774842927663966634786472420953282334632994229152567052040395992
9408048480599630602471286761119605403643093795165452240572711340802733352242967327588920894986853855428695228123721515383372241468677676657690523495293991193089317631180401621542742144172479955727785822302523235218082574031735817953896040708276394655939154
3852014654868362968263692890283727468021640888329359683783767359597451070961509879739429114221827809979186358510550431017565131596238022742599107676368037401444949087351776301865994472576853386142524820486724292273117624689749251069595397908891554109628101
6669527885991799122142326937933858664929693193942283622605916858685824864403905507304915887477535689415084456122906846059615949825231942004894946032070787319043752143212549712445081292747312323342611227714195116943783186625197296715603085023757920747234532
6122820951035140853577889069193220801277268727877462088477256728053533865379125515357874604763127646587058569449275459757946779249849668645546601682111071473490196532829054167058513717213002674859842367700971889541249200207275542206063741885115967391824802
0610290957787486364692346365814705573189808693541594036729355755243531789029736786308154623789984702547058604650123171518751569621805413528652509531607348164577638010355709291302028337550800992745425834320476443261177087739271177062856485173348882750250819
0659343206914794924556153772198006251388159582696255927069975113497421833905887756610647240082614153694484954837202620295169789657987069755124017394515453190863827572740711817710030895049289235786584515078833476475663962832002108429679551665967402122596658
4349883360538948988695704332916916970968457753514626977394323235125937751596298414132821176502673559152982900907543880968559783585312849218903494924153956864751338725863748534892535808654881519748823747627172990832688322096315182171500878487858195545087822
4458236221720279859309810232003874878441055097512924860475377103570930347631911569566745507968476851247784957278897954698198097392111331034134347798226665268064249016261978872829748893251663053243674684861895342852309639768703151159100997701211280768287205
6870234829133355655343036736501416877129310623200089538951750259985665329308382340712307565455653509126862366728650932458651494436846558485090025394868755100175221291710535366790545645677842711512596431124164643928584923713503173669559706425039268831596144
1452772944623933569725613347976756813338594643432630383392657599631682544985730742007858836915433604505719070855879189485197288719040021263719868370872603890471224865906247298557916928478221291167732539671661292887371135437981942779634825649139882012944572
7758562510414150949633779340283295217210365192005976948307005684713096736664431712595879017520039963810842836121920241736357277758492400134544105329144355555849215317771114977468047457305300953177611546438135694577177205669239311440382137445473558199125941
2114491042269423715477548775200526087122272973881089464626543236900558866178891915216398214077163056490014967391297483630423218979974348790197384601170422118990618766341579897834339763289090301853129494817020592052181081707955503700417066372197357325762273
4385654541890774874197893194941181634994668457144887794875282066261847615572718799662464428738434438780825061929921484926915746942103848879619392172122284804702431010212519539969796788017846333873182922337676999777534812332012929564596104599508214149701145
7274950593060995236995107614203090481302729390658392616258479030973113005105062803438826151646714615550781605639094940526817472511610471600596994870667099103609844550106130513966608125042506782900084288525980351545405728277777760122554570083838462219052877
8757514688579192347295616929275175453287753737721088866848885006395657125852164067939240889834493135163838960658941742747347650729201292899953318297106070041062502348378830588231541002699596059155858306927768480165872156287243162613715934907360348088124171
0404542763803861570206810973763804468626358414660740063357740456418981456129440496134941796810008809508788374342077093093032573221654574497024220255712560913428408088998336484628062602420972884881824235484997156686204850571815572289597037462797558743867558
1919888121722644597580215382104140516703396592544291586908792134744502188573841913338854652750863327639917159415196564602640694496781354538782983929325959285927354175474804352578095851050102183051813704640451597877198008442179445805591409879626348999390527
9002272226760813491952550762666752270238799526046231534365011803368416865173454913123133697786378123809907397441803633640434825191552634871625614830836626571049393981043340157432460620185100110829860362603288393191710219378638177885022136014927144630443782
5797667215143815962299855108350685801519572698690875975167844559591576384803528784625173351945548820301273433263147108424812682126149704843457845771098879325188965254752647214632462274094327285939219625637908210569178906354323258068270638423718443370259173
7549594172805242419254136324881483225886273943103239485648130091993143113528030182215981476065598494494419302835427251173019583363009233498618867426059793360869634597465047679544070944754162762781645592584547391531946080408446709247707626391855470200090713
9406916562614712383261818843240584140322147897518684919211236077216966500254090113318977640371270590317029955733423861016012835296248356571906012469597432676355008443660761304308135317950068964738121593365656715872336167167476899840242444005092524895894480
9638632578121251521517893047244620356007945685810267600703806696506811034616208402733862695041093087540495322984241333683745051037656990423172498225669542175893227464699035395611643202519094625652983036905179307827133463591466000260972584100751306203312729
1489811618860980783869877746317746288725110214822079106025942483383336536883759499114061837539478674318116175012313358400064347441478096758235835232438840794490488896454835495606821879018177566680389446305145666101361587051815730570340295146880514957278661
5397777967490173249362943088965350015073904191386219479055713803583448656312970058482715992630746767103911409527899498861950291221818573388041165933287651062181294019268645261483639177423248555441935351538971717889410519509770988245436504966879015401945047
3729462062338175285757777220331479036285217420864441321256204989829615594911425708850538977391959700236803969002383361343180529263474633248641019728627355145215080950707142562724727379784353038457211655061801793612817865529403259118504030821365325832670300
9037461177081089405943982840685902310603936669028655426976190808277497427925280041306387234278025643365469662672165656631298347737372018149759969452612006463524929896807143708599693977144535594997057147525830768923755106571521270188861476398043635169937552
9874278710389115070022071450630191394525270850384452418893160780929110665051582379222701642785323591104180223520668513736525640101928432083285506954346912123778894162492049142698968351455255277860604426189412194642208037203982202873577002569729864661041295
0573194135173996196487113793068038302423174540357048329843011515626843095296836221153859115570494563885850899357898998653920926127657581954002375699054777755793413346729815683937056235071096200948972224545441111976421949803863069791210596882786020829195672
8697316429693633712562351282867864943220157138973702743984316495880219875448208397530672359090620995920229800989713100596828501134839414315719803746268934928751381118586759953429242713355449047036259979901707466000010463810813946104073618582780662927333287
3389750361980031854461250180273909240485575678487376284544183922769605394534937316652072878493980393868723608700543669102714403921202719256263022075624114817892147166679108973366115882396513854544946426504217990314107186386063482067469380809111004023316687
2929182145362742271621264848296839972006699787543846647166316832171981705345229155258853740389128472935464813551890718004522399908471460112191208294187733687208176809677440023938416823335680651720533001783199089241378188610648258925977302547087226001915784
6678486545699769399928001919471689926916404093637807540506165766427431162636190446835035246662713559400737031507985721950971165582559198756684437403128128850915384816969986409352960643090869387404365461588275656937378757658011347311446849442065057484783380
6824222304845129010906505147056759228020211380919080111815696652616447002963283088406790957920119708998485631350339144966507730237990219260893763739151981570150752181791597092556541030704671545889139478290670163443085988173354535598759536811198038178294940
0354170629114341611410275358552893318152943729497103755285569915792834643963283215604286396508690418685242009489560348181982061208001219370843466155120956528522844796088562680021364428083022837355100476966979918400555873044818468991127698511726292216919632
2510349161673180895926993763572210889976694325176440474265648750125489601839533914446757338524622688999792847243891061890704373248790571007363776298195529126094949804756187957305998573799251330041710926225605996862184883851616658992008222169620344692092458
9882603656884324837021981874351113068554889466635120873477534324672556518407787845940183682269655416239053091938703901490501097789079714448537466334996237195929572368770876470466068201488503905069539014772332942126944895170873667680623779746902940972043780
2364121825876745064652897513410542921498040988349394494877885632428277518099754513072624516259131382958192221132415190724677559649555157623571670834952021768305415231510484855287494795510035072937401010227794320452346929552871893336336223584538759375576318
2216131344094312481321454703840002899629634677092996494906234309369957093563156579259858376172817464361954240329950596828000563698039160239154661595371481712503034679709839298216999151911078926676219110983795750012562042673820732982289902774135183367208186
9035669635134480674079657827428627501529166365912110532988377397196854828816516652328820793969967562297473146076336182245128556836807804890870432430522762377003037510846044735503724631509446732863298541583916712017044354318391663223509615227065858108585222
9519721841652317094238942912472684802688380481359624042116560637626307278223149308043230106131532057260973907559663650534631103818210924290889827147261854036977477246202584423647677302439047142421643526537980173548464474750146923183651253326207571103483020
3889986808034430826407876709654713785238134146003036793033372165629535846920732501783429145884575046451725827345873753535581465046452486995654746449678229691403935380482806681769060043114075207753086501973218562059628787132265404768537543335426675764184688
4540315518561968260530495025677361592142467137918104878495647077778206689105979022156798724489174006885313153288094521079342303455533473766002545385481228791528736757472209473730065142662976046351577854999534010523419341052277051121723032379417312512188837
4664776382887409585186323113950315197022000762333919360401083374367592134434908777847625719650026220034047921321467154839628859083138802950513640019308317693786841141934540472435600534401656938443184214207263511469015649122624167982395710169899290195788102
8057588244447699729710404742966653464149393579489654525321597846386955555179229359303983519937710451732668256586115051773061000161291533541398922577410663745952661056881141077251725161467509208205794615457424506213145363557250312218323876283169393250521006
5621640637334273724898485819110867888112457604154364820008042290547698220711877212133044028893282732776110466242903612839677580368932415397030304588108301723771282187429650880574628817341553091360461715426513873066755999660584015797082452662411087572858192
0378040730890453645184418402385847147461404906591404440898397760673869896656830962025631882947083824624788548861805576535186660290649531469898263555178246288102804855417041259939391122696152931052242377695915405245986156489168268299089118880311726307261356
7700641527443150624960524935786072398264752111068036458896165923975607788465981436299091778396717146746968818599780116766999759106101318456138024021447100069936535084889824472015905497563015332587202851229567674986905971143006026615249199586007363974917565
6894019858123032841955231986535470810375912492474553415857265886144672103584788773943504224605479120734867459240952277485868492434679453003475863121481704008392343073351686290186530403204052653197367321234103114456585026332741081365954711196442987009345098
6111710015594788364079328252223075184368486843386067777124027372160341696042561211572266042687063746759346365928388489518829642574931002791505762214789626051856596068870227331271075371819097370083090460880663416335454807640435242289471406207247913154969701
0995050387241648915102182453639129037076543219662366126195815636788261365210125331517214321451188665596766206275395566859510707172384495687706299063641773028454689796421787114361873240556054255883958877734019226987367000772822742006301279663379443236128931
0436533767062674272345761110184823709819497189831110657543641086914995290247046984534036609871852604245040415039136677608253356920464816846705131152440235330675749901200589708464795284092610840397019194504084468872523946394997464623313668943266905925554927
3794495502453404570213977395094532284190007603105269743659113235331074619837234351930892876362567606123434315167789930074131772609347015940106834280762980967616816096906230046585763659991594294849841834832414701118265758455907643539465020161044906274913352
7143192579212002532520629945634515327775980786335219534409174918862884929801826775645026735060019802007277659415468820528040088983279571414488990392875784360634318390857535393858502904264737226573044043287082833689904560043634625936932672331136102774044070
5488902061421066938115523611415339988821382160903008396246339086004627489395874342782534182236687919459040670346540073842568153708195626685710500620189671907458613157152725487698745988126362147571058132175445444921582587835375779902377677698380918449304484
6165631691697022649924085999176358391111708814246789003903331956673648936259603158267583233701401520324078752883381963603200051670634155891666891140642244295146571350913425641178162777626492025465565295402949036390051839285379129822660331195521193124802122
6942155491980568956630106992287617358023884800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

28 1. Sag mir wohin ...


In diesem Fall wächst der Aufwand zur Lösung exponentiell an, was bedeutet: Wenn n
die Problemgröße ist, kann man den Aufwand nur noch mit xn nach oben hin abschät-
zen (mit einem beliebigen x).
Knoten Schritte
Optimal wäre ein linearer Aufwand. Das bedeutet, dass zur Lösung eines Problems 3 3
der Größe n der Aufwand x ∙ n beträgt (mit konstantem x). Leider gibt es kaum Algo-
4 6
rithmen, die so gut sind. Betrachten wir einmal den Aufwand von Dijkstra:
5 10
Vom Startknoten aus werden alle benachbarten Knoten (also die, zu denen eine Ver-
bindung besteht) betrachtet. Bei einem vollständigen Graphen mit n Knoten sind das 6 15
(n – 1). Ein Beispiel mit 7 Knoten sehen Sie in Abbildung 1.30. 7 21
Danach ist der Startknoten vollständig „aus dem Rennen“, er wird nicht mehr betrach- 8 28
tet. Nun wird der Knoten mit der kleinsten Markierung gesucht, und von dort geht 9 36
es wiederum zu allen benachbarten Knoten – das sind (n – 2). Danach ist auch dieser 10 45
„aus dem Rennen“.
15 105
Dies setzt sich fort. Daher ist der Aufwand für den Dijkstra-Algorithmus: 20 190
(n – 1) + (n – 2) + (n – 3) + … + (1) 50 4.950
Wir können dies wiederum in einer Tabelle wie nebenstehend dokumentieren. 12.903 83.237.253
Bei 12.903 Knoten ergeben sich 83.237.253 Rechenschritte. Das erledigt bereits ein
normales Smartphone ohne große Schwierigkeiten in kürzester Zeit. An der Tabelle
kann man ablesen, dass die Rechenzeit auch schneller als linear mit der Problemgröße
anwächst, aber längst nicht so stark wie bei Brute-Force.
Sie erkennen, dass in der Informatik manchmal scheinbare Lösungen nicht prakti-
kabel sind, weil sie bei realen Aufgabenstellungen zu viel Rechenzeit beanspruchen.
Ein Informatiker muss daher fast immer die sogenannte Komplexität einer Lösung
abschätzen. Die Komplexität gibt an, wie stark die Rechenzeit in Relation zur Prob-
lemgröße anwächst. Im Fall von Brute-Force ist die Komplexität nn, während Dijkstra
eine Komplexität von n2 aufweist.
Die Informatik unterscheidet dabei verschiedene Klassen von Problemen:
Alles, was sich in polynomieller Laufzeit lösen lässt, gehört zur Klasse „P“. Das be-
deutet, die Laufzeit steigt im Verhältnis zur Problemgröße in einem Verhältnis an, das

Abbildung 1.30

S Im vollständigen Graphen mit


7 Knoten hat jeder Knoten
(also auch der Startknoten)
6 Nachbarn.

Was steckt dahinter? 29


sich durch ein Polynom ausdrücken lässt. Die Problemgröße steht also im Fall von
Hoch-Rechnung immer unten.
Probleme mit polynomieller Laufzeit könnten etwa n2, n4 + n2 + n, nlogn oder auch n100
als Komplexität haben.
Darüber hinaus gibt es die Klasse der „Nicht Praktisch berechenbaren“ Probleme oder
„NP“. Diese haben eine Laufzeit, die sich nicht durch ein Polynom ausdrücken lässt.
Dies bedeutet, dass in der Komplexitätsfunktion die Problemgröße irgendwo in einem
Exponenten auftaucht.
NP-Komplexitäten sind 2n, n! oder nn.
Allerdings haben NP-Probleme noch eine gute Seite: Man kann eine Antwort raten
und dann in polynomieller Zeit überprüfen, ob diese Antwort korrekt ist.
Zu welcher Klasse von Problemen gehört das gerade besprochene Problem des kürzes-
Die Lösung dieser Frage ist
ten Weges? Selbstverständlich in die Klasse „P“, denn mit dem Dijkstra-Algorithmus
momentan der Heilige Gral existiert eine Lösung, die in polynomieller Laufzeit arbeitet.
der Informatik – oft gesucht,
(bisher) nicht gefunden. Übrigens gilt dies nicht für das alte „Traveling Salesman“-Problem:
Genauer beschäftigen wir uns
mit dieser Frage später im
„Ein Vertreter aus Darmstadt muss Kunden in den Städten Berlin, Chemnitz, Frank-
Buch. furt, Hamburg, Hannover, Marburg, München und Stuttgart besuchen. Bestimmen
Und wenn Sie Informatiker Sie eine Route, die von seinem Wohnort durch alle genannten Städte und zurück führt
sind und „NP“ daher statt und die kürzer ist als 1000 km!“
„nicht praktisch lösbar“
als „nichtdeterministisch Für dieses Problem gibt es immer noch keinen Algorithmus mit polynomieller Lauf-
polynomiell lösbar“ zeit. Vielleicht finden Sie ja einen ... Allerdings ist auch einzusehen, dass es sich um ein
ausschreiben, haben Sie
selbstverständlich recht! NP-Problem handelt: Rät man eine Strecke, kann man in polynomieller Zeit feststel-
Auf allen real existierenden len, ob sie der Bedingung „kürzer als 1000 km“ genügt.
Computern läuft das aber
auf die Frage „praktisch Eine weitere Klasse von Problemen ist nicht in polynomieller Zeit berechenbar, und
berechenbar“ hinaus, und selbst wenn man eine Lösung rät, kann man die Richtigkeit nicht in polynomieller
die Frage P = NP wäre Zeit überprüfen. Diese Erkenntnisse gehen jedoch weit über die praktischen Anwen-
auf jeden Fall mit einer
dungen der Informatik hinaus, daher möchte ich hier im Buch nicht weiter darauf
Lösung des Problems des
Handlungsreisenden in eingehen.
polynomieller Zeit ein für alle
Male geklärt.
Eine der größten Fragen der Mathematik und Informatik ist immer noch kurz gesagt
„P = NP?“, also ob prinzipiell alle Probleme der NP-Klasse auch in polynomieller Zeit
lösbar sind (und nur noch kein entsprechender Algorithmus gefunden wurde) oder
ob es Probleme gibt, die grundsätzlich nicht in polynomieller Zeit lösbar sind. Es gibt
immer wieder Veröffentlichungen in dieser Richtung, aber sie haben sich bisher als
informationstechnische Pendants der Kernfusion im Reagenzglas herausgestellt (also
als Flop).
Wenn Ihnen jetzt P und NP noch völlig unklar sind, dann machen Sie sich keine Sor-
gen – sehr vielen Informatikern geht es ähnlich!

Der schnellste Weg und weitere Anwendungen


Kann man nun den Dijkstra-Algorithmus immer nur zur Berechnung kürzester Wege
verwenden?

30 1. Sag mir wohin ...


Ein Informatiker versucht natürlich, für einen so schönen Algorithmus weitere An-
wendungen zu finden, denn es ist ja effektiver, für neue Aufgaben bereits bekannte
(und bewährte) Verfahren zu adaptieren, als das Rad immer wieder neu zu erfinden.
Betätigen Sie sich doch einmal in dieser Disziplin und versuchen Sie die folgenden
Aufgabenstellungen mit dem Dijkstra-Algorithmus zu lösen.
Wie sieht es etwa aus, wenn wir für unsere erste Karte nicht den kürzesten, sondern
den schnellsten Weg suchen?
Dabei gehen wir zur Berechnung davon aus, dass wir mit dem Auto auf der Autobahn
im Schnitt 130 km/h schaffen, auf der Landstraße (rot und gelb) jeweils 100 km/h
und auf den kleinen Gemeindestraßen (weiß) nur 50 km/h. Zusätzlich veranschlagen
wir für jede Ortsdurchfahrt pauschal 8 Minuten (der Einfachheit halber auch bei den
Orten, durch die wir auf der Autobahn fahren, auch hier gibt es ja oft Tempolimits
aufgrund Lärmschutz).
Finden Sie den schnellsten Weg von Imstadt zu jeder anderen Stadt!

▶ ▶ ▶ ◀ ◀ ◀
Erstellen Sie einfach eine Karte, auf der an den Straßen nicht die Strecke, sondern
die Fahrzeit in Minuten steht. Dazu teilen Sie die Strecke durch die angenommene
Geschwindigkeit. Für die Strecke zwischen Imstadt und Budingen ergibt sich auf diese
Weise:

km 80km 60min
7 km : 80 = 7 km : = 7 km · = 5, 25 min
h 60 min 80 km

Außerdem müssen für jede Ortsdurchfahrt 8 min addiert werden (also für jeden Ort
an einem Ende der Strecke 4 min, da wir mangels anderer Information davon ausge-
hen, dass das Ein- und Ausfahren die gleiche Zeit in Anspruch nimmt).
Daher muss man für die besagte Strecke 13,25 min veranschlagen.
Achtung: Strecken, die an einem Ende die Nicht-Orte Ⓧ, Ⓨ und Ⓩ haben, bekom-
men natürlich nicht die zusätzliche Zeit für die Ortsdurchfahrt angerechnet.
Abbildung 1.31 zeigt die modifizierte Karte.
Mit dieser Karte kann dann der ganz normale Dijkstra-Algorithmus durchgeführt
werden. Das Ergebnis sehen Sie in Abbildung 1.32.
Wenn Sie das Ergebnis mit der Lösung für die kürzeste Wegstrecke nach Abbildung
1.17 vergleichen, stellen Sie fest, dass es recht ähnlich, aber doch nicht identisch ist.

Das ist Informatik: Probleme lösen


Das bisherige Kapitel hat es Ihnen vielleicht schon demonstriert: Informatik macht
Spaß, wenn man Aufgaben mit viel Kreativität und Intuition löst. Der wichtigste
Schritt zur Lösung ist dann schon getan, wenn man sich etwas zutraut und nicht vor
der Herausforderung zurückschreckt. Sie haben das gemacht, indem Sie bis hierhin
durchgehalten haben! Verschiedene Untersuchungen haben gezeigt, dass in der Infor-
matik die Tendenz zum Aufgeben für „interessierte Laien“ besonders hoch ist: In der

Das ist Informatik: Probleme lösen 31


Abbildung 1.31
Karte mit den angenomme­ 16,04 A 15,92
nen Wegen in Minuten M 9,
75 D

25,16
5,3 6
8 10,4

14
7,84 N

, 72
6,76 X

30
13,40
C

,68
,60

6,
23

94

6,6
84

8
7,72

17,
B 8,68
Z L
16,40

11,36
24,08 32
3 3,

15,08
14

2,08
, 30
H 7,54
2
,5
16 Y 7,30

11,6
P G

5,66
10 80

0
,35 21,

14,96

15,26
2
29,84

,8
Q

10

10
,86
11 F 26,72
,18
4
9 ,3 E
31,40
O

Abbildung 1.32
Die gleiche Karte mit allen
13,40 16,04 A 15,92
zeitkürzesten Wegen von M 29,44 37,08
9,
75 D
25,16

Imstadt aus 5,3 6


8 10,4
14

7,84 N
, 72

6,76 X 26,62

30
13,40

C
,68
18,78
17,84 ,60
6,

23
94

6,6
84

7,72 8,68 32,80


17,

B Z L
16,40 16,40 24,12

I
11,36

0,00 24,08
3, 32
15,08

14 24,08 3
2,08

, 30
H 7,54
2 26,20
,5
16 Y 7,30
11,6

P 14,30 G
5,66

10 80
0

,35 21, 33,50

K
14,96

24,65
15,26
2
29,84

49,78
,8

Q
10

10
,86

11 F 26,72
,18 29,26
4
,3
9 E
31,40 35,51
38,60 O

32 1. Sag mir wohin ...


öffentlichen Wahrnehmung hat sich das Klischee des typischen „Nerds“ etabliert, der
zwar sozial eher unterbelichtet, aber eben dadurch hoch kompetent für die speziellen
Anforderungen der Informatik ist – eine für „Normalos“ unüberwindliche Hürde …
Dieses Buch soll auch zeigen, dass man sich besonders in der Informatik der Lösung
vieler Aufgaben durch konstruktive, gestaltende Herangehensweise sehr gut nähern
kann. Der Unterschied zwischen „Normalen“ und „Hochleistern“ besteht häufig nur
darin, dass letztere in der Lage sind, einen Ansatz zu finden und diesen konsequent
zu verfolgen.
In der Informatik nutzen wir statt „Aufgabe“ gerne einen erweiterten Begriff, den Problem
ich in diesem Kapitel bereits verwendet habe, ohne ihn zu definieren: Ein „Problem“
unterscheidet sich von einer einfachen Aufgabe dadurch, dass der Bearbeiter kein
Abstraktion
Standardverfahren zur Bewältigung kennt. Die Lösung eines Problems ist also immer
mit einem schöpferischen Moment verbunden und dem produktiven Denken zuzu-
modellhaftes Problem
ordnen. Manchmal fällt es gerade dabei jedoch schwer, den Anfang zu finden. Eine
„Ankerlinie“, an der man sich zur Lösung der Aufgabe entlanghangeln kann, stellt Erfahrung, Recherche,
daher das allgemeine Problemlöseschema sein, wie in der nebenstehenden Abbildung Intelligenz
dargestellt.
intuitive Lösung
Wenn Sie nun denken, dass das doch der oben aufgeführten Definition eines Prob-
lems widerspricht, weil es damit genau kein Standardverfahren zur Lösung geben darf, Modellierung
so haben Sie natürlich recht: Es handelt sich auch nicht um ein Lösungsverfahren,
sondern nur um einen Vorschlag für die Herangehensweise, eine Lösung zu finden. formalisierte Lösung
(Algorithmus, Datenstruktur)
Im Prinzip haben wir im Verlauf des ersten Kapitels exakt dieses Problemlöseschema
verfolgt, um kürzeste Wege zu finden. Analyse, Reflexion

Sie merken vielleicht bereits: Dieser Abschluss des ersten Kapitels ist etwas trockener
als der Beginn und wird im Folgenden hauptsächlich die gewonnenen Erkenntnisse Implementierung

nochmal auf eine andere Art darstellen, um sie zu reflektieren und dann auch zu er-
weitern. Da hier jedoch weniger direkt experimentiert wird: Entscheiden Sie selbst, ob Programm

Sie dies bereits jetzt lesen möchten oder diesen Abschnitt zunächst überspringen. Ich
verspreche Ihnen, dass hier keine Grundlagen vorkommen, die zum Verständnis des
weiteren Buches nötig wären!
Ordnen wir nun die Vorgehensweise beim Nachvollziehen des Dijkstra-Algorithmus
in das Problemlöseschema: Zunächst haben wir eine Abstraktion vorgenommen. In
diesem Fall konnten wir uns des Standardwerkzeugs „Graph“ bedienen, um die Kom-
plexität der Aufgabenstellung auf das für die Problemlösung minimale Maß zu redu-
zieren. Der Graph ist ein entscheidendes geistiges Werkzeug, in der Informatik gibt
es aber noch viele weitere Standardwerkzeuge für unterschiedliche Arten der Model-
lierung. In den meisten Fällen ist die Anwendung zwar nicht nach „Schema F“, aber
doch sehr mechanisch intuitiv durchführbar.
Der nächste Schritt ist derjenige, der tatsächlich den „kreativen Funken“ benötigt. Ef-
fektiv haben wir Menschen normalerweise eine sehr gute Intuition zur Lösung eines
Problems – zumindest die Brute-Force-Methode des Alles-Ausprobierens ist im Re-
gelfall leicht vorstellbar. Diese lässt sich auch sehr einfach modellieren und formaler
als Algorithmus fassen. Als Darstellung eignet sich dafür alles, was man selbst über-
sichtlich und lesbar findet. Das kann Text sein, ein Blockdiagramm wie in Abbildung
1.16 oder z. B. ein sogenanntes Struktogramm wie in Abbildung 1.33. Es ist am Bei-
spiel recht selbsterklärend, bei Bedarf finden Sie jedoch genügend Quellen, die die
genaue Bedeutung der unterschiedlichen graphischen Elemente aufzeigen.

Das ist Informatik: Probleme lösen 33


Another random document with
no related content on Scribd:
this amongst the romance of history. Time and the mists of tradition
have rendered it impossible to learn how much truth is connected
with these fables, but we know that in the ancient days of Rome,
much reliance was placed upon those who pretended to a
knowledge of future events, and, perhaps, the general belief in such
knowledge induced many of wild imaginations to believe themselves
endowed with this prophetic spirit. You may suppose, Susan, if you
wish, to break the illusions of fancy that this ancient female was one
of those fanatical beings, who had cheated herself into the belief that
she was set apart as one of those mystical oracles.” “Oh, no,” said
Susan, “do not break any illusions; I am very willing to believe that
she was the identical Sybil, who offered those books to the refractory
king.” “Your imagination, dear cousin,” said he, “has indeed taken a
wide circuit, and we will let the curtain of mystery be spread, for the
present, over the story.”
Chapter III

There is a spot, dearer than all beside;


A spot where all the joys of life abide;
Where sweet affections cluster round the heart,
Where peace and love their purest hopes impart;
That spot is Home—

Call you this Death? ’Tis Life, immortal Life.


The duties of the succeeding day were not neglected, though even
the short day seemed longer in anticipation of the evening
employments. Cowper has given a delightful description of the
“ushering in” of a winter evening with all its pleasant
accompaniments, and the truth of his lively picture was fully realized
as the happy group collected around the sparkling fire. As Herbert
continued the tale which had so interested them all listened with
attention.
“The tender mother and much loved sister had arrived
at the home now rendered solitary by the absence of the
son and brother, whose love had sweetened every
passing hour. As they approached the mansion of their
aged relative, upon whose ancient towers the moon now
cast a silvery brightness, and had ascended the eminence
upon which it was situated, they stood for a moment to
contemplate the scene before them. There lay the proud
and magnificent city, its domes and palaces reflecting the
soft brightness, and, here, the waves of the Tiber rolled at
their feet, its winding course lost in the distance. On their
right hand and strongly defined by the light, towered the
imperial palace where abode the haughty arbiter of the
fate of their Curtius, and, on their left stretched that
Amphitheatre, the scene of the most horrid cruelties,
drenched with the blood of martyred victims and strewn
with their ashes. One thought seemed to possess their
minds, one terrible reflection to agitate their bosoms, as
they turned, shuddering, from this last prospect and bent
their steps toward their dwelling.
“In a spacious but low apartment, bearing marks of
ancient magnificence, but lighted by only a solitary lamp,
lay reclined upon a couch the kind but feeble old man, so
long their protector and sole friend, but now sinking by age
and sorrow, for he had seen many endeared to him by the
most sacred associations suffering cruel tortures and an
ignominious death for Christ’s sake, and amongst them
the holy apostle Paul, from whose lips he had first heard
the truth proclaimed, “as it is in Jesus.” This stroke had
bowed him to the earth, and, although bending in
submission to the will of his Maker, his frame had yielded
and he was fast hastening to his rest. The untiring
watchfulness of faithful love hovered around him,
smoothed his pillow and delighted in presenting to his rapt
attention the joys of heaven. The walls of that apartment,
which had formerly echoed with mirth and revelry, with the
heavy tramp of the warrior preparing for battle against the
enemies of Rome, or with the commanding voice of the
Dictator, issuing mandates to his subjects, now gave back
but the heavy breathing of one of the last of their
descendants, a feeble old man, but in whose exhausted
body dwelt a spark of ethereal fire unknown to them with
all their boasted power and splendor. This feeble old man
was a Christian. Near him sat a faithful domestic, watching
over him in the absence of her mistress with earnest
solicitude. As the matron entered the room and bent over
him with anxious love, he raised his eyes and a smile of
affection passed over his features. ‘Welcome, dearest
daughter,’ said he. ‘I am weary of your absence; time
passes heavily when I do not see those forms so dear to
my heart. Where is Cleone?’ ‘Here, dearest father. You are
not worse, I trust. Here is your own Cleone.’ ‘Ah, sweet
child, those tones would almost recall me to life, were it
indeed deserting this time-worn body; but why do I not see
my Curtius? Why is he so long absent? Speak, Octavia;
say, Cleone, where is Curtius?’ A look of deep distress
shaded their countenances, for with sedulous care they
had concealed from him the situation of that darling boy
who had been, from his earliest youth, the delight of his
heart. ‘Think not, dear father, that, though absent, he
forgets you. Oh, no; his messages are full of love and fond
remembrance and we will pray that the Lord will restore
him to us in his own good time.’ ‘May the blessing of his
father’s God rest upon him and you, dear children. Ah,’
said he, partly addressing those around him and partly
uttering his own thoughts, ‘I could almost wish that I might
live, if it were the will of God, to witness his bright career of
glory, dispensing happiness and prosperity over our
country and turning the hearts of the people from the
worship of their heathen deities to that of the true God.
Say, dear daughter, may we not believe that those ties
which unite us on earth will continue in heaven, nay, even
grow stronger through eternity?’ ‘Father, I cannot doubt it;
it is the consoling hope of the Christian.’ ‘Aye, I shall there
meet your father, my Cleone; perhaps we shall be
permitted to watch over those so beloved upon earth.’ ‘Oh,
father!’ said Cleone, ‘would that we might all go together.’
‘Not so, dearest, you have yet much, I trust, to do in this
world.’ He lay silent for some time, apparently in deep
meditation; then, raising himself upon his couch and
clasping his trembling hands, he said: ‘How long, O Lord,
holy and just, shall this fair land be polluted by these
abominations? The blood of thy servants has been poured
out like water; grant, O Father, that it may call to Thee
from the ground, not for vengeance, but for mercy upon
the murderers! And the time will come,’ said he, his whole
countenance glowing with the animation of youth, ‘the time
is not far distant when Rome in her splendor shall bow
before the cross of Jesus; when her haughty Emperors
shall prostrate themselves before the Christian’s God, and
her temples, now blazing with golden honors to Pagan
divinities, shall echo with prayers and thanksgivings to the
God of the whole earth.’ And he fell back upon his pillow,
overpowered by the exulting emotions of his mind, a glow
of triumphant joy still rested upon his features and even
retained its station there after the heart, which had exulted
in this vision of futurity, had ceased to beat and the tongue
which had uttered the inspiring prophecy had become
mute in death; for, even as the fervent ‘Amen’ lingered
upon the lips of those around him, the spirit left its
decayed tenement and returned to God who gave it.”
Herbert ceased reading and a solemn stillness prevailed for a few
moments, when he repeated the following lines.

Through death’s dark and shadowy valley


He, the Lord, shall be thy guide;
He, thy Saviour, true and holy
Christians shall with thee abide;
Light shall break upon the darkness,
Strength from Him thy steps sustain,
Mighty power support they weakness,
Joy and hope remove all pain.
Hark! what strains of rapturous pleasure
Greet thee from they home above;
Christian, blessings without measure
Wait thee in that world of love.

“There is more time, yet, dear brother,” said Charles, and Herbert
continued:
“In a splendid apartment, adorned with all the luxury of
luxurious Rome, and showing, by its magnificence, that it
was the abode of a patrician of the first order, was seated
at a table a Roman citizen, evidently of high rank. Rich
wines were before him, and many and deep were his
libations while engaged in earnest conversation with a
young noble, who was walking the apartment with an
anxious hurried step. “Nay, my Flavius,” said the one who
was seated, “you are too zealous in this matter. I marvel
much at the change in your appearance; but a short time
ago you were the life of our society; but now, by Bacchus,
how you are altered; even this sparkling Falernian tempts
you not, and your wit and brilliancy, which was the zest of
our pleasure, is all vanished. Come, my friend, throw
aside this gloom, I pray you, and, as for the young Curtius,
we will see what can be done, we will see. He deserves
punishment for adhering to his gloomy doctrine, though,
for your sake, we will see what can be effected. Still, it is a
labor of Hercules to attempt to change the purposes of our
mighty Emperor when he has the pleasure of torturing one
of these obstinate Christians in view.” “Do not talk of delay,
noble Galba,” said the young man, “after witnessing the
last scene between the Emperor and Curtius, are you not
convinced no time is to be lost? Preparations are even
now making for some exhibition on the morrow, and, I fear
me, this heroic youth is to be the principal actor in a most
cruel tragedy. Servius, you have much influence over this
cruel Nero, will you not exert it to save this last
descendant of an illustrious house? Will not our cheeks
crimson with shame when we look upon those palaces,
reared by his ancestors, when we pass the memorable
spot, where the first Curtius devoted himself to his
country? If we suffer this scion from such a glorious stock
to perish thus? And, for what? Powers of heaven! Why
has he not the same right to worship his God, as we have
to bend before the shrine of Jupiter or Bacchus? He is a
Roman citizen, and shielded by that name should be
guarded by the laws of Rome, for he has committed no
crime.” “No crime! Flavius, by the immortal Gods, you are
beside yourself. It is well there is no one present to bear
this report to Nero. Your life, my friend, were not worth a
straw. No crime, did you say, to condemn our Deities?
Speak lower, I pray you, our walls are not thick enough to
conceal such a monstrous sentiment.” “Nay, Galba, this is
trifling,” and a shade of deep vexation passed over the
fine features of Flavius. “Will you use your power over the
Emperor to save my friend, or have I overrated your
friendship for me?” “You have overrated my influence with
Nero. ’Tis true, he fears, but he also hates me, and, for the
same cause, because he believes me a favorite with the
soldiery, but, in this case, he will heed me little, I fear, for
he knows he has the popular voice on his side, when he
punishes these Christians, and, because he hates them
with a hatred as deadly as can be cherished in the human
breast.” “And what have they done to incur his hatred?
Can it be on account of the conflagration in the city?” “No.
For it is more than suspected that our imperial master
himself caused those fires to be kindled. No, Flavius, the
destruction of the whole city would not have planted in his
selfish breast such a deep and malignant spite. I will tell
you the whole story, for it was while you were in Britain the
circumstance occurred, though I think you must have
heard of the beautiful Valeria.” “I have. She was the
favorite of the Emperor.” “Favorite is too cold a world, my
Flavius. All the love and kindly feelings that ever found a
place in the breast of the tyrant were lavished upon her.
Her word was his law. Her slightest wish was gratified, and
most nobly did she use her power. Was a petition for
mercy offered to the Emperor, Valeria was the first to
second it; was an heroic achievement to be rewarded,
Valeria’s hand hastened to bestow the prize; her gentle
influence hushed to repose the stormy and malignant
passions rising in the breast of Nero, and Rome vainly
exalted in the belief that their young ruler’s heart was filled
with heaven’s own attribute, mercy, for it was reported at
one time, when a warrant for the execution of a criminal
was presented to him, for his signature, he shed tears,
and wished he had never learned to write. Aye, this very
tyrant, whom we now see surrounded by fawning
parasites, and furiously sacrificing all who dare oppose or
obstruct his vile inclinations, was then, or pretended to be,
such an enemy to flattery, that he severely reprimanded
the Senate for amending the wisdom of his measures
saying, ‘Keep your approbation till I deserve it.’” “But,
Valeria,” said the young noble, “how did she lose her hold
upon his affections?” “Some of her relatives or friends, I
believe, had become Christians, and persuaded her to
hear the preaching of one of that sect, an extraordinary
man, who pretended to be inspired by a Superior Being,
and who was known by the appellation of the holy Paul.
She was taught by him to believe that she was committing
great wickedness by living with the Emperor, and secretly
quitted the palace, leaving behind her all the costly gifts of
the tyrant, and devoting herself to a life of prayer. From
that moment the rage of the Emperor against this fanatical
sect has known no bounds, and to avow one’s self a
Christian is enough to draw down his fiercest indignation.”
“And what has become of this female? How is it that she
has not fallen a victim to this indignation?” “Her retreat has
not been discovered, although every means has been
employed, and, it is said, that Nero has frequently offered
pardon and wealth to the victims of his hatred, if they
would confess where she might be found, but in vain, for a
spirit of determined obstinacy seems to be the pervading
sentiment of these Galileans. Now, with this feeling of
stern revenge which still rankles in his breast, what
chance, think you, is there, that he will extend mercy to
this young man?” “But,” said he, seeing the distress which
overspread the countenance of Flavius, “my endeavors
shall not be wanting. I will own to you, Flavius,” he
continued, lowering his voice almost to a whisper, “I hate
this inhuman tyrant, the blood of my ancestors boils within
me when I reflect upon the degeneracy of Rome, and I
have imagined that the statues of our forefathers frown
upon us, as the empty pageants which please his low and
vulgar mind pass our polluted streets. Are we indeed so
base as to submit to the degradation of bending our knee,
in servile adulation, before this mockery of royalty? Did he
possess one redeeming quality, one noble virtue, we
might, under that, shelter our pusillanimity, but, by the
shade of Brutus, we have nought to excuse us in our
mean endurance of his vile caprices. But a few weeks
have passed since our venerable Senators, even in that
chamber, rendered sacred by the associations, hallowed
in the heart of every true Roman, were obliged to sanction
the admittance of his favorite horse to the Consulship. By
the memory of those most revered,” said the excited
Roman, starting from his seat, “this shall not be borne!”
The countenance of the young Flavius had reflected the
indignant emotions of the elder speaker, and the deep
flush upon his cheek expressed his sense of the
degradation of his country. “Servius Galba,” he said, in the
same subdued, but earnest tone, “point but the way to
relieve Rome of this disgrace, and I will be the first to
follow it.” “Enough,” said Galba, “the path shall be opened;
yes, by the guardian deities of our city, the despicable
tyrant shall yet lick the dust he has polluted, but, my
purpose is in embryo, and I had not thought to say so
much, but with you, noble Flavius, the secret is safe, you
shall know more in due time; perhaps the moment of our
deliverance may be nearer than I thought.” “In the
meantime,” said the young noble, “I may rely upon your
intercession for my friend?” “You may,” said he, “I will see
Nero without delay,” and Flavius left the apartment with an
awakened hope for the deliverance of his friend, for he
believed Nero would not dare resist the request of Servius
Sulpicius Galba, the favorite of the powerful soldiery of
Rome, and one of her most popular citizens. Quitting the
splendid palace of the patrician, he passed hastily through
the streets, until he arrived at the large and gloomy
building whose walls enclosed the devoted young
Christian, who had become endeared to him by his
virtues, and by that strong tie which binds congenial
hearts. Armed soldiers were stationed around, but no
opposition was offered to the entrance of Lucius Flavius.
Descending the stone staircase, and proceeding rapidly
through the narrow passages, he arrived before the cell
where he encountered a sentinel, who, with respect,
opposed his farther progress. An order, he said, had been
received from the Emperor, prohibiting all further
intercourse with the prisoner. “That order, my friend,
cannot refer to me. Come, my good fellow, allow me to
enter for a few moments, and here is where withal to pass
many a merry hour.” Half believing that the young Roman
was exempted from the prohibition, and strongly tempted
by the glittering bribe, the soldier, after some hesitation,
withdrew the bolts, and permitted him to enter.
“Now, my little brother,” said Herbert, “I must call upon you for a
display of self-denial, which you will, perhaps, think too great. Our
mother’s business requires my absence for a few days; it is a
pleasure to me to read the story with you, and if you will conclude to
delay the interest you take in its progress until my return, we can
then share it together; shall it be so?” It would be difficult to
determine whose countenance was most overclouded, Susan’s or
Charles’s. “Oh, certainly we will wait,” said Charles, “but I am so
sorry, and, how long shall you be away, Herbert?” “Tomorrow is
Saturday,” said Herbert. “I will endeavor to be at home on
Wednesday, and you know, Charles, the Sabbath evening
intervenes, when I should not read.” “Do not despair, dear Charles,”
said his mother. “I think we may pass away the time profitably and
pleasantly.” But notwithstanding this prediction, the cloud had not
dispersed when they retired for the night.
The morning dawned, but not with its usual splendor. Dark and
heavy clouds lowered around the horizon, and many were the signs
foretelling a stormy day, but, as Herbert’s first stage was only about
eight miles, the gloomy weather did not prevent his journey. Towards
afternoon, the storm set in with violence, and every gloomy
prognostic, so well known to those who live near the ocean, was
verified. As evening drew on, Susan stood at a window, watching the
wild motion of the waves, and listening to their uproar. “Are there not
frequent shipwrecks upon this coast, dear aunt?” said she. “There
has been but one within my recollection,” said Mrs. Wilson; “a
vessel, manned principally, I believe, with seaman from Scotland,
was driven from its course by a terrible storm, and dashed upon the
rocks. The bodies of seven men were found upon the beach in the
morning, and only one living being to lament the loss of his
companions. Afterwards, five or six more were washed on shore,
and they were all interred with respect and due solemnity in the
public burying ground, the solitary survivor attending as chief
mourner.”
Chapter IV

The sounding tempest roars, the foaming waves


Lash round the rugged coast; amid the howl
Of raging winds is heard the signal gun
Warning of danger and distress.

The thick curtains were drawn around the windows, excluding the
sight, if not the sound, of the tempest without, and the cheerful group
again encircled their warm and glowing fire, but much lamenting the
absence of Herbert. Charles, with much animation, informed his
mother that everything was well sheltered from the storm. “Philip has
shut up old Brindle, snug and warm,” said he, “and I have helped him
fill Robin’s crib.” “That is well, my good boy,” said his mother, “and
now, after taking good care of your dependents, you can enjoy the
comforts of a pleasant fireside.” Susan now recurred to the
circumstance of the shipwreck and Mrs. Wilson read part of a little
poem written on the occasion.

“’T’will be a wild and fearful night, mark the dark, rugged clouds;
Now Heaven protect the mariners who hang upon the shrouds,”
So spake the aged fisherman, as with a careful hand
He well secured his little boat from parting from the land.
“Look, boy, if there’s a ship in sight, my mind misgives me sore,
That many a stout, brave heart now beats that soon shall beat no
more.”
“Why, Grandsire, always when it storms,” replied the thoughtless lad,
“You think about the sailor-men, and feel so very bad.
There’s not a single ship in sight, and it is true enough
I hope there is none near our coast, the weather is so rough.
I should like to be a sailor if it always would be fair,
But in a frightful storm like this I think I should not dare.”
And now they left the stormy beach and gained their lowly home.
Behind a sheltering hill it stood, secluded and alone.
A warm, bright blaze illumined the little window of the room,
And, at their steps, a smiling face peeped out into the storm.
“Grandsire and Willie both have come,” said a playful little voice,
“Come in out of the wind and rain, now mother will rejoice.
We’ve got a very charming fire, and I have parched some corn
And there is nothing now to do but sit down and be warm.”
Her grandsire kissed her rosy cheek and with a merry air
Her brother dropped his dripping hat upon her glossy hair.
They gathered round the cheerful fire and while the sullen gale
Swept mournful by, sat listening to many a piteous tale
Which the old grandsire told of days long past and gone,
When a stout and hardy sailor he had weathered many a storm;
And down the gentle mother’s cheek stole many a silent tear,
While for her absent sailor boy her heart throbbed quick with fear.
For, far away to foreign lands, her eldest one had sailed.
And oft for fear in such a storm her loving heart had failed.
The stormy wind howled fearfully around their lowly home,
The angry waves dashed on the beach their sheets of glistening
foam.
That beach, whose shining sands reflect the sun’s bright sparkling
ray,
Is hid from sight amidst the dark, wild, blinding spray.
“Lord, let thy holy will be done,” the pious old man said.
As calm he bent his knees in prayer before he sought his bed,
Though fearful were the stormy blasts and loud the billows’ roar.
As gathering yet new strength they fiercely beat upon the shore,
Yet, midst the wild and fearful din sweet sleep with visions bright
Hovered around their peaceful couch throughout that stormy night.
And in hope’s glowing rosy tints painted the blissful hour
When once again the wanderer’s feet shall cross his mother’s door.
Far o’er that raging ocean and amidst old Scotia’s hills,
Ah, many a kind and loving heart that night with rapture thrills.
As Hope, delusive, marks the time when prosperous and gay
Their absent loved ones shall return from o’er the distant sea;
That wished-for time will never come, for on New England’s coast
The gallant ship is ’midst the storm and howling tempest lost;
And while the mother and the wife are dreaming of the hour
That to their home the much-loved son and husband will restore.
The wind with loud and frightful roar drowns their last dying cry
And ’mid the wild and dashing waves is spent their latest sigh.

“I like the ballad style of poetry,” said Mary; “it is so natural and so
many little incidents may be introduced which touch the feelings and
delight the fancy.” “I am an admirer of poetry,” said Mrs. Wilson, “but
I have not patience to read much of the sickly sentiment, dignified by
that name, which is beginning to be the style of the present day, and
I much prefer the old English ballad, with all its homely simplicity.”
After a pleasant and lively conversation the evening was closed
and they retired.
The storm had gradually subsided during the night and the
morning sun shone clear. The turbulent waves had receded from the
shining sands, a fresh and mild breeze dispersed every vapor and
the Sabbath morning, in all its calm and peaceful stillness, was again
welcomed. There is no feeling more delightful to one whose taste is
in unison with it than the lovely quiet of a peaceful Sabbath morning.
Even nature seems hushed, the wind lulled into more tranquil
murmurs, and the notes of the birds on a summer day sound
sweeter and more subdued. After the breakfast table was arranged
in due order Philip and Phoebe presented themselves in their
Sunday attire and smiling faces, prepared to join the family in
listening to the reading of the Bible, and the day was spent in the
usual Sabbath duties. “Mother,” said Charles, “I liked the sermon this
afternoon very much because it was about Ruth.” “It is a story of
much interest,” said Mrs. Wilson, “and read in connection with other
parts of the Bible, of much profit.” “Was the country of the Moabites
very rich and fertile at that time?” “There is no doubt of it, my son,
but it is now accursed of God and almost deserted by man. Formerly
it was a land abounding in wealth and all the luxuries of life, and
through its thickly populated country ran a high road where were
continually passing immense caravans loaded with rich
merchandise, and travellers from different nations, thus distributing
wealth throughout the whole territory. But the sound of trade and
commerce has long since died upon its borders, the once fruitful soil
no longer yields its treasures, and the wandering Bedouin gains but
a miserable subsistence amidst its sandy deserts, which now echo
only the heavy trot of his camels. We can hardly recognize in the
description of late travelers the land of plenty which gave refuge to
the famished Bethlehemites. I will read you a few lines of a poem
entitled “Ruth.”

“Where Moab’s fertile plains once lay, in glowing beauty dressed,


Now spreads a dreary, barren waste, far as the eye can rest.
There, where a nation flourished once in plenty and repose,
Scarce for the hardy camels’ feed, a scanty herbage grows.
And o’er that sandy desert roams the Arab, fierce and wild,
Where dwelt in peace the Moabite, and verdant meadows smiled.
Thy pride, O haughty nation, has thy sure destruction wrought,
And o’er thy once fair, happy land deep misery has brought.
Where are your haughty sovereigns, your luxurious people, where?
Your conquering armies, riches, splendor, mighty power?
All, all are gone, amidst thy temples creep the briars and the Thorn,
And deadly serpents hiss among thy palaces forlorn.”

“It has been a very pleasant Sabbath, dear Aunt,” said Mary, “so
peaceful and quiet.” “I like to remember the Sabbaths of my youthful
days,” said Mrs. Wilson. “Let me repeat some lines referring to them
and you will remember, dear, that in those days lived many of our old
Puritan ministers, so many of whom have now gone to their rest.”
SABBATH MORNING.

“How memory paints


That hallowed morn, in youth’s bright, happy hours!
The glorious sun seemed brighter, and the birds
Sang sweeter on that sacred day; the flowers,
Rich in their fragrance, seemed more fragrant then;
A holy quiet rested o’er the scene;
The week-day hum was hushed, no jarring sound
Disturbed the placid stillness of the hour;
The voices, which, with joyous glee, oft made
The well remembered walls echo again,
Are gentle and subdued, and even the dog,
The faithful guardian of our rights, seems now
Content to waive his noisy privilege
And, stretched at length upon the sunny step,
Blinks at the buzzing flies. In fair array
Our little flock are watching the deep tone
Of the old bell, to summon them to prayer;
But now, no longer on its ancient seat,
Rests the old church; ’tis gone; its tunnel roof,
Its reverend porches, and its shining spire
All gone; and only memory’s fond dream
Is shadowing forth its antique lineaments.”

After retiring for the night, “Well,” said Mary, “what has become of
our sad forebodings for the winter?” “Do not say our forebodings,
dear sister, they were mine, and I am heartily ashamed of my
discontented repinings. I never worked or studied with so much
interest, and since the letter arrived informing us of the great
improvement in our father’s health, I have been perfectly happy.” “I
never knew,” said Mary, “the full meaning of our old theme before:

“Home is the resort


Of peace and plenty, where, supporting and supported,
Polished friends and dear relations mingle into bliss.”
Chapter V

Listening thro’ the winter eve


To deeds of long past years, when the fierce Goths
Invaded Italy; over her lovely plains
Poured war and devastation; or the sad tale
Of Christian martyrs, faithful to the death.

The love of nature, with its sublime and beautiful prospects, should
be sedulously cultivated in the youthful mind from the first dawn of
reason. The love of reading will be the necessary consequence, and
this, well directed, is one of the greatest blessings of life. For one
whose cultivated imagination is delighted with descriptions of natural
scenery and who is interested in the history of past ages will not
often seek the haunts of dissipation for amusement. From studying
and loving the rich and varied landscape of nature he is led to the
contemplation of “Nature’s God,” and in the formation of the
humblest insect and the rich coloring of the lowliest flower, as well as
in the mightiest work of creation, will acknowledge the great Creator.
Happy they whose ductile minds are thus early directed and whose
maturer judgment confirms them in the sure road to peace.
The return of Herbert was hailed with joy by the assembled
household and the succeeding evening he fulfilled his promise of
continuing the Tale of the Early Christians.

Seated at a table in a gloomy apartment, lighted by a solitary


lamp, whose ray disclosed the damp and rugged walls, with the
certain prospect of a cruel death before him, and denied even the
solace of a last farewell to his dearest friends, would it have been
wonderful if the countenance of the lonely prisoner, which was raised
at the entrance of Flavius, should have expressed a deep and
settled gloom, or even the stern despair of one who had bidden
adieu to hope. There are those who possess a controlling power
over their emotions, who, even in moments of strong agitation or
excitement, from motives of pride, or the desire of applause, or some
other powerful incentive, will prevent those emotions from being
discovered by assuming a calm and stoical exterior, but, it was not
the haughty pride of the stoic, or the cool apathy of the philosopher,
who has schooled his feelings into indifference, which met the eye of
Flavius, as he encountered the serene glance of his friend. The
noble brow of Curtius was placid as a sleeping infant’s, his brilliant
eye reflected the heavenly peace which reigned within, and the smile
of welcome with which he greeted the entrance of his friend was
such as we might fancy adorned the lips of an inhabitant of the
regions of undisturbed happiness. “This is indeed kind, my friend, my
brother,” said he, and as he rose and extended his hand. Flavius
perceived that his limbs were shackled. “Barbarous tyrant,” said the
indignant youth, “is not his malice yet complete? Must these chains
be added to the measure of his cruelty?” “Waste not a thought, my
Flavius, they are proofs of Nero’s consideration for his poor prisoner,
credentials by which he may claim a heavenly residence, as being
made to follow in the footsteps of his Master. Tomorrow, I am told, is
the day of my triumph.” “Curtius,” said his agitated friend, “all hope is
not lost, Galba has promised his powerful intercession; it cannot fail.”
“It will fail, Flavius; as well might you lure the tiger from his prey as
induce the Emperor to release a Christian from torture and from
death.” “And you contemplate this prospect with calmness; nay, you
are even joyful in it?” “Mistake me not, my friend, life has its charms,
the prospect of death, its mighty terrors; think you I can contemplate
with indifference the dreary grave shutting out the bright loveliness of
nature, separating me from those who are dearer to me than
existence, and closing my ear to the sweet accents of affection? Not
so; but the chilling shudder of these reflections is checked by the
image of Him who suffered the pangs of death that we might live
forever. Far through the gloomy perspective of the grave, I see the
cheering, the delightful, prospect of immortal life, of a reunion with
those beloved ones, an eternal reunion, and a rapturous vision of
joys which eye hath not seen, and before which the momentary
pangs of death dwindle into nothing. Believe me, my Flavius, were it
possible for Nero to know the all-absorbing joy which fills my heart at
these anticipations, he would revoke his decree, as the severest way
of punishment. But,” said he, and the animated flush faded from his
countenance and the hand which clasped that of Flavius, pressed it
in agitation, “death has indeed its bitterness when I think of the
defenceless ones I shall leave behind.” “Curtius,” said his friend,
“nothing that human means can effect to save you shall be
neglected. But, if all shall fail, give me, my friend, my brother, give
me your sanction to become the son of your mother; the husband of
your sister, and, whilst I have life, their happiness shall be my
dearest object.” Curtius was silent for a moment, at length, “Flavius,”
said he, “the husband of Cleone must be a Christian.” “And if a full
conviction and belief that the God whom you worship is the only true
God, if a deep and mortifying sense of the degraded nature of our
faith, and a longing desire to possess that trust and heavenly peace
which you possess, is to be a Christian, then am I one, but it is a
hard thing to give up the religion of our fathers, and I feel that I have
not courage to avow these sentiments, and to stem the torrent of
execration which will be poured upon me.” “But the time will come,
my Flavius, when you will avow the God of the Christians to be your
God. Victory, victory,” said the youth, “the temples of these Pagan
deities will yet be consecrated to the service of the living God, and
the incense which rests in clouds, upon their shrines, will rise in pure
and grateful offering to the Holy One of Israel; yes, my friend, I
bequeath to you the dearest treasures I possess; be to them a
faithful guardian, and the blessing of the Lord rest upon you.” The
eloquent countenance of the young noble expressed the thanks he
began to pour forth, when the door was thrown open, and the
sentinel proclaimed that he must leave the dungeon, as an express
to that effect had been received from the captain of the guard. No
delay could be granted, and after a fervent embrace the friends
parted, as Curtius firmly believed, for the last time. Left alone and
relieved from many anxious thoughts, his mind now turned to the
awful scenes of the morrow. No torments, he well knew, would be
too agonizing or too horrid for the implacable Nero to invent, none
too dreadful for his minions to execute, but his firm and disciplined
mind had been too long accustomed to view death as the portal to
never ending happiness, to shrink now from its near approach, even
arrayed in its utmost terrors. Bending over the table, his thoughts
became absorbed in the bright prospect of future glory, fervent
aspirations of gratitude to God for raising an earthly protector for his
mother and sister, mingling with his reflections, and the Emperor,
amidst his splendor, might have envied his proscribed prisoner his
calm and peaceful anticipations.
Our tale must now return to the deathbed of the aged Christian.
Sudden indeed, as well as most painful, was this event to his
affectionate friends; they had left him but an hour before, by his own
request, as he expressed a fear that their unremitting attention to
him would injure them, little thinking his dissolution was so near, and,
as the conviction pressed upon them that the one who had supplied
the place of the kindest parent, who had shared his own, even too
small pittance with them, was no more, that they could no longer
hear his endearing expressions, no longer see his mild eye beaming
upon them, with parental love, can it be wondered that every other
consideration was lost, for the time, in the sad reflection. As they
bent over the couch in unutterable grief, their own sorrow was
increased by that of the aged domestics, who had grown old in the
service of the kind and beloved master, who now lay before them, in
all the stillness of death. In those moments of deep and suffocating
grief they almost lost sight of the consoling and joyful belief that their
beloved parent was then rejoicing in a heaven of pure and unalloyed
felicity, but, as they mingled their tears, the silence of heartfelt
sorrow was interrupted by a sweet and solemn voice, repeating,
“Blessed are the dead, who die in the Lord,” and Sister Helena, as
she was called, a pious Christian recluse, approached and knelt with
them, by the remains of the good old man. Sweet and soothing to
their souls were the prayers and thanksgiving which she poured forth
with fervent earnestness, and they arose from their knees,
chastened and resigned. Cold and insensible must have been the
feelings of those who could have listened to those aspirations
unmoved, or gazed upon the inspired countenance of this
extraordinary female, without almost fancying that she was indeed
an angel of consolation, permitted to sojourn awhile upon earth to
soothe the sorrows of the afflicted, and direct their hopes to that

Das könnte Ihnen auch gefallen