# Iteration

Iteration (von lateinisch iterare ,wiederholen‘) beschreibt allgemein einen Prozess mehrfachen Wiederholens gleicher oder ähnlicher Handlungen zur Annäherung an eine Lösung oder ein bestimmtes Ziel. Mit dieser Bedeutung erstmals in der Mathematik verwendet, ist der Begriff heute in verschiedenen Bereichen mit ähnlicher Bedeutung in Gebrauch. Beispielsweise in der Informatik wird nicht nur der Prozess der Wiederholung, sondern auch das Wiederholte selbst als Iteration bezeichnet. In anderen Bereichen beschränkt sich die Bedeutung wie im lateinischen Ausgangswort auf das Wiederholen, beispielsweise in der Linguistik.

## Mathematik
### Definition

In der Mathematik bezeichnet man als Iteration die wiederholte Anwendung derselben Funktion. Das bedeutet
    $f^{\langle {0}\rangle }:=\mathrm {id} _{X}$
und die Bildung der Kompositionen
    $f^{\langle {n}\rangle }:=f\circ f^{\langle {n-1}\rangle }=\underbrace {f\circ f\circ \dotsb \circ f} _{n{\text{ mal}}}$
für eine gegebene Funktion $f\colon X\to X$, bei der die Bildmenge $f(X)$ im Urbild $X$ enthalten ist, d. h.
    $f(X)\subset X$.
Bei negativen Iterationsnummern, erhält man, falls zulässig, Umkehrfunktionen, bspw. die minus erste Iteration.

### Beispiele

* Ist $g\colon \mathbb {R} \to \mathbb {R}$ die Funktion der Verdoppelung $g(x)=2x$, dann ist $g^{\langle {n}\rangle }(x)=2^{n}x$ und $g^{\langle {-1}\rangle }(x)={\frac {x}{2}}$ die Umkehrfunktion.
* Ist $h\colon \mathbb {R} \to \mathbb {R}$ die quadratische Funktion $h(x)=x^{2}$, dann ist $h^{\langle {n}\rangle }(x)=x^{2^{n}}$ und $h^{\langle {-1}\rangle }(x)={\sqrt {x}}$ die Umkehrfunktion.

### Abgrenzung der Schreibungen

Häufig werden beim Exponenten, d. h. beim Iterationsfaktor $n$, die spitzen Klammern weggelassen, so dass sich Verwechslungsmöglichkeiten mit Potenz und Ableitung ergeben. In diesem Artikel sollen jedoch die Schreibweisen
    für die Potenz:$f^{\;\!0}$$:=\mathrm {1}$und$f^{\;\!n+1}$$:=f\cdot f^{\;\!n}$(ohne hochgestellte Klammer) für die Ableitung:$f^{(0)}$$:=f$und$f^{(n+1)}$$:=(f^{(n)})'$(mit hochgestellter runder Klammer), für die Iteration:$f^{\langle {0}\rangle }$$:=\mathrm {id} _{X}$und$f^{\langle {n+1}\rangle }$$:=f\circ f^{\langle {n}\rangle }$(mit hochgestellter spitzer $\langle \rangle$ Klammer).
eingehalten werden. Dann sind beispielsweise für die Sinusfunktion
    $\sin ^{2}+\cos ^{2}=1$zwei zweite Potenzen (Quadrate), $\sin ^{(2)}=-\sin$die zweite Ableitung und $\sin ^{\langle {-}1\rangle }=\arcsin$die Umkehrfunktion.

## Dynamische Systeme

Die Theorie der dynamischen Systeme befasst sich insbesondere mit dem Langzeitverhalten der Orbits $\left\{f^{\langle n\rangle }(x)\right\}$ von Punkten $x\in X$ unter solchen Iterationen.

## Numerische Mathematik

In der numerischen Mathematik bezeichnet Iteration eine Methode, sich der exakten Lösung eines Rechenproblems schrittweise anzunähern (sukzessive Approximation). Sie besteht in der wiederholten Anwendung desselben Rechenverfahrens.
Die Ergebnisse eines Schrittes werden als Ausgangswerte des jeweils nächsten Schrittes genommen. Die Folge der Ergebnisse muss konvergieren. Wenn die Differenz zum vorangegangenen Rechenschritt kleiner als der akzeptierte Fehler ist, dann ist das Ergebnis hinreichend genau bestimmt, und das Verfahren wird beendet. Eines der bekanntesten Beispiele ist das Newton-Verfahren. Manchmal setzt man im nächsten Schritt Ergebnisse aus zwei oder noch mehr vorangehenden Schritten an, zum Beispiel bei der Regula falsi.
Die Konvergenzgeschwindigkeit ist ein Maß dafür, wie brauchbar die Iterationsmethode ist.

### Anwendung der Methode

* Iteration wird in Fällen angewandt, in denen das Ergebnis sich nicht in geschlossener Form berechnen lässt, zum Beispiel bei der Kepler-Gleichung, der Berechnung der Oberflächenform einer asphärischen Linse oder der Wärmeverteilung auf einer Leiterplatte.
* Lineare Gleichungssysteme lassen sich unter bestimmten Voraussetzungen iterativ lösen.
* Bei Anwendungsproblemen können die Eingabedaten fehlerbehaftet sein, dann ist die „exakte Lösung“ des gegebenen Problems nicht notwendigerweise besser als ihre Approximation. Das Iterationsverfahren wird bevorzugt, wenn es eine gute Näherung schneller liefert, als die Berechnung der exakten Lösung dauert.
* Manche Funktionen auf Taschenrechnern oder auch Fraktale werden iterativ berechnet.

### Beispiel: Bestimmung von Nullstellen einer stetigen Funktion

Approximationen an Nullstellen einer stetigen Funktion sind, sofern überhaupt eine existiert, iterativ oft rascher gefunden als durch andere algebraische Methoden (etwa als geschlossener Ausdruck):
* Man wählt zwei Näherungswerte $x_{1},\,x_{2}$ für die Nullstelle der Funktion $f$, und zwar so, dass $f(x_{1})\cdot f(x_{2})<0$ ist.
* Man stellt die Gleichung der durch $(x_{1};f(x_{1}))$ und $(x_{2};f(x_{2}))$ gegebenen Sekante auf.
* Die Schnittstelle $x_{3}=x_{1}-{\frac {x_{2}-x_{1}}{f(x_{2})-f(x_{1})}}\cdot f(x_{1})$ der Sekante mit der x-Achse ist dann ein „besserer“ Näherungswert für die gesuchte Nullstelle von $f$.
* Man wiederholt die beiden vorgenannten Schritte so lange, bis die Nullstelle mit gewünschter Genauigkeit gefunden ist (Regula falsi).

## Informatik

Neben der einzelne Rechenschritte wiederholenden (iterativen) Problemlösung in der Mathematik wird in der Informatik auch von Iteration gesprochen, wenn
* ein Zugriff auf Daten einer Datenstruktur Schritt um Schritt (gleichartig wiederholt) erfolgt, beispielsweise mittels einer FOREACH-Schleife. Ein spezieller Zeiger auf die Einzelobjekte nennt sich Iterator, wenn er (meist automatisch) nach jedem Zugriff auf das nächste Datum/Objekt der Datenstruktur weiterschaltet.
* ein Anweisungsblock (der sogenannte „Schleifenrumpf“) – durch Schleifenkontrollanweisungen gesteuert – wiederholt ausgeführt wird; jede Ausführung ist eine Iteration der Schleife. Diese Art der Programmierung wird als iterative Programmierung bezeichnet. Sie steht im Gegensatz vor allem zur rekursiven Programmierung, bei der der Anweisungsblock in eine Prozedur gesteckt wird und seine Wiederholungen durch rekursive (Selbst-)Aufrufe formuliert werden.

## Statistik

In einer Folge beobachteter Stichprobenwerte heißt eine Wiederholung desselben Wertes Iteration (engl. run). Die Anzahl der Wiederholungen heißt Länge der Iteration oder Iterationslänge. Das einmalige Auftreten eines Wertes wird ebenfalls als Iteration der Länge 1 bezeichnet. Beispielsweise liegen in der Folge
    $0,1,0,0,0,0,1,1,1,0,0,1,0,1,1,1$
von 16 Nullen und Einsen die acht durch das Zeichen $|$ getrennten Iterationen
    $0\mid 1\mid 0,0,0,0\mid 1,1,1\mid 0,0\mid 1\mid 0\mid 1,1,1$
vor. Dabei gibt es vier Iterationen der Länge 1, eine Iteration der Länge 2, zwei Iterationen der Länge 3 und eine Iteration der Länge 4. In der nichtparametrischen Statistik verwendet man die zufällige Häufigkeit von Iterationen oder Iterationslängen zur Konstruktion statistischer Tests, die Iterationstests genannt werden.

## Linguistik

Sprachwissenschaftlich bezeichnet iterativ die Aktionsart eines Verbs, das ein aus mehrfach wiederholten gleichartigen Vorgängen bestehendes Geschehen ausdrückt, z. B. von flattern, krabbeln oder sticheln. Solche Wiederholungsverben werden auch Iterativa genannt.
Bei einer Wortbildung wird von Iteration gesprochen, wenn gleiche oder ähnliche Wortteile zwei- oder mehrfach wiederholt werden, so beispielsweise in Ururgroßmutter (siehe auch Reduplikation bzw. Triplikation).

## Softwareentwicklung

In der Softwareentwicklung bezeichnet eine Iteration einen einzelnen Entwicklungszyklus, je nach Vorgehensmodell beginnend mit Planung, Analyse oder Entwurf, endend mit Implementierung, Test oder Wartung. Eine besondere Rolle spielen Iterationen beim Extreme Programming und beim Rational Unified Process. Bei Scrum kommt ein iterativer Prozess für die Produktentwicklung zum Einsatz. Man spricht hier von Feedback-Schleifen in allen Phasen der Planung, Durchführung, Überprüfung und Anpassung.

## Geschichtswissenschaft

In der Geschichtswissenschaft bezeichnet Iteration die wiederholte Ausübung desselben Amtes in der Ämterlaufbahn der römischen Republik. Nach dem Mos maiorum war die Iteration verpönt. Beim Konsulat kam die mehrfache, in Ausnahmefällen auch unmittelbar aufeinander folgende Bekleidung des Amtes allerdings schon seit der frühen Republik vor; seit der Verfassungsreform des Diktators Sulla aus dem Jahr 82 v. Chr. war die wiederholte Bekleidung des Konsulats erst nach zehn Jahren erlaubt. Das Iterationsverbot war neben dem Kollegialitäts- und dem Annuitätsprinzip das wichtigste Mittel, eine gefährliche Machtfülle von Amtsträgern zu verhüten.
Insbesondere in der Krise der Republik kam die Iteration wiederholt vor: Bekannteste Beispiele sind Gaius Sempronius Gracchus, der sich in drei Jahren hintereinander zum Volkstribunen wählen lassen wollte, Gaius Marius, der das Konsulat in fünf aufeinanderfolgenden Jahren (104 bis 100 v. Chr.) und insgesamt sieben Mal ausübte, sowie Gaius Iulius Caesar, der das Konsulat in den Jahren 59, 48, 46, 45 und 44 v. Chr. bekleidete. In der Kaiserzeit ab Augustus war die Iteration des Konsulats Zeichen für eine herausgehobene soziopolitische Stellung. Unmittelbar aufeinanderfolgende Konsulate gab es nur bei Angehörigen des Kaiserhauses.

## Philosophie

Jacques Derrida führte die Iteration in die Sprache der Philosophie ein. „Iteration“ bezeichnet hier die Wiederholung eines Begriffs im philosophischen und gesellschaftlichen Diskurs. Laut Derrida verändert sich mit jeder Wiederholung (Iteration) eines Begriffs seine Bedeutung, so dass niemals dieselbe Bedeutung reproduziert wird wie beim vorausgehenden Gebrauch des Begriffs. Jede Iteration hat vielmehr eine Variation der Bedeutung zur Folge, die dem ursprünglichen Begriff etwas hinzufügt und ihn bereichert. Eine ursprüngliche Definition von Begriffen, auf die man ihre Bedeutung zurückführen könnte, kann es demnach nicht geben.

## Bauökonomie

In der Bauökonomie ist ein iterativer Prozess das schrittweise Annähern von ursprünglichen Bauzielen an die machbare Umsetzung.

## Konstruktionslehre

In der Konstruktionslehre spricht man von iterativem Vorgehen, teilweise auch von iterativem Suchen, wenn zur Lösungsfindung so vorgegangen wird, dass ausgehend von einer Eingebung des Konstrukteurs die Lösung schrittweise verbessert wird.

## Management

Im Management ist Iteration eine Vorgehensweise, um mit den Ungewissheiten und Überraschungen in komplexen Situationen umzugehen. Bei Veränderungen ist der Verlauf von Projekten oder die Wirkung von Handlungen nicht immer prognostizierbar. Jedes Veränderungsmanagement als „großen Plan“ mit unverrückbaren Zielen aufzufassen, führt in den meisten Fällen zu Überraschungen, auf die die Planer und Umsetzer nicht vorbereitet sind. Das bedeutet nicht, Pläne aufzugeben, sondern sich im eigenen Vorgehen immer nur vorläufig sicher zu sein. Linear-kausales Projektdenken wird durch iteratives Vorgehen abgelöst: Durch Vorantasten entlang Zwecken, Interessen und Machtkonstellationen wird nach und nach Unklarheit abgebaut, Akzeptanz erreicht, Wirkung erzeugt und Routine etabliert. Die Reihenfolge der Themen und Inhalte ergibt sich erst im Laufe der Veränderung. „An iterative process of initial interpretation and design, implementation and improvisation, learning from change-effort, and then sharing that learning systemwide, leading to ongoing re-interpretation and redesign of the change as needed.“ (Anthony F. Buono / Kenneth W. Kerber: Building Organizational Change Capacity).