Lexikon der Mathematik: Kolmogorow-Komplexität
ein Maß für den Informationsgehalt einer endlichen Zeichenfolge.
Für eine Programmiersprache U, z. B. beschrieben als universelle Turing-Maschine, ist der Informationsgehalt oder die Kolmogorow-Komplexität CU(b) einer Zeichenfolge b definiert als die Bitlänge des kürzesten Programms, das ohne weitere Eingabe die Zeichenfolge b als Ausgabe erzeugt. Für zwei universelle Turing-Maschinen U und U′ (oder allgemeiner für zwei Programmiersprachen) unterscheiden sich CU(b) und CU′(b) für alle b maximal um eine additive Konstante. Somit ist der Begriff der Kolmogorow-Komplexität von b im wesentlichen von den verwendeten Modellierungsmitteln unabhängig. Für eine Bitfolge b der Länge n hat das Programm „schreibe b“ eine Bitlänge von n + O(1), die Kolmogorow-Komplexität jeder Bitfolge ist also nach oben bis auf eine additive Konstante durch n beschränkt. Für jede Programmiersprache hat ein Anteil von mindestens 1 − 2
Anwendungsgebiete der Theorie der Kolmogorow-Komplexität sind z. B. die algorithmische Lerntheorie, die Theorie Formaler Sprachen, die Komplexitätstheorie (untere Schranken für die worst case-Rechenzeit von Turing-Maschinen), die Abschätzung der average case-Rechenzeit von Algorithmen und sogar die Statistische Mechanik.
[1] Li, M.; Vitányi, P.: An Introduction to Kolmogorov Complexity and Its Applications. Springer-Verlag New York, 1993.
Wenn Sie inhaltliche Anmerkungen zu diesem Artikel haben, können Sie die Redaktion per E-Mail informieren. Wir lesen Ihre Zuschrift, bitten jedoch um Verständnis, dass wir nicht jede beantworten können.