Complexité - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Illustration métaphorique de la complexité. Les objets (tuyaux) intègrent de nombreux facteurs (taille, diamètre, situation, interconnexion, robinets, ...), ce qui rend la compréhension ardue.

La complexité est une notion utilisée en philosophie, épistémologie (par exemple par Anthony Wilden (Anthony Wilden, (né le 14 décembre 1935 à Londres) a collaboré avec Jacques Lacan à la...) ou Edgar Morin), en physique (La physique (du grec φυσις, la nature) est étymologiquement la...), en biologie (La biologie, appelée couramment la « bio », est la science du vivant....) (par exemple par Henri Atlan), en sociologie, en informatique (L´informatique - contraction d´information et automatique - est le domaine...) ou en sciences de l’information. La définition (Une définition est un discours qui dit ce qu'est une chose ou ce que signifie un nom. D'où la...) connaît des nuances importantes selon ces différents domaines.

La complexité du point de vue (La vue est le sens qui permet d'observer et d'analyser l'environnement par la réception et...) de la théorie (Le mot théorie vient du mot grec theorein, qui signifie « contempler, observer,...) de l’information

Une notion de complexité est définie en Théorie algorithmique (L'algorithmique est l’ensemble des règles et des techniques qui sont impliquées...) de l'information.

Complexité de Kolmogorov

La théorie de la complexité (La théorie de la complexité s'intéresse à l'étude formelle de la difficulté des problèmes en...) de Kolmogorov définit la complexité d’un objet (De manière générale, le mot objet (du latin objectum, 1361) désigne une entité définie dans...) fini par la taille du plus petit programme informatique (Un programme informatique est une liste d'ordres indiquant à un ordinateur ce qu'il doit faire. Il...) (au sens (SENS (Strategies for Engineered Negligible Senescence) est un projet scientifique qui a pour but...) théorique) qui permet de produire cet objet. Ainsi, un texte compressible a une faible complexité et contient peu d’information. C’est d’ailleurs pourquoi les utilitaires de compression généralistes ne peuvent pas comprimer des fichiers totalement aléatoires (opération par nature impossible), mais uniquement des fichiers dont on sait à l’avance qu’ils comportent une certaine redondance qui se traduit par des corrélations.

La complexité de Kolmogorov est un sujet discuté. On peut en effet toujours donner à un ordinateur (Un ordinateur est une machine dotée d'une unité de traitement lui permettant...) une construction telle qu’une opération très particulière (par exemple le calcul de pi ou l’impression de l’intégrale des œuvres de Victor Hugo) y sera codée par un bit (Le bit est un chiffre binaire, c'est-à-dire 0 ou 1. Il est donc aussi une unité de mesure...). On retrouve ici la notion connue qu’une information n’est jamais contenue dans un message (La théorie de l'information fut mise au point pour déterminer mathématiquement le taux...) seul, mais toujours dans le couple message + décodeur pris de façon indissociable. Aussi la notion de « plus petit programme théorique » ne peut-elle être définie opérationnellement de façon rigoureuse et univoque qu'avec la référence à une machine. On pourrait objecter qu’il suffit de prendre comme référence la machine la plus simple. C’est oublier que ce que nous nommerons simple dépend justement de notre vécu et de notre langage, tous deux arbitraires. Voir les articles Rasoir d'Occam et Paradoxe (Un paradoxe est une proposition qui contient ou semble contenir une contradiction logique, ou un...) du compresseur : The library is the language ( « La bibliothèque est le langage »).

Une difficulté supplémentaire réside dans le fait que la complexité de Kolmogorov n'est pas décidable : on peut donner un algorithme produisant l'objet voulu, ce qui prouve que la complexité de cet objet est au plus la taille de cet algorithme. Mais on ne peut pas écrire de programme qui donne la complexité de Kolmogorov de tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou...) objet que l'on voudrait lui donner en entrée.

La notion, manipulée avec précaution, se révèle néanmoins à l'origine de nombreux résultats théoriques.

Par exemple, on appelle nombre (La notion de nombre en linguistique est traitée à l’article « Nombre...) incompressible au sens de Kolmogorov un réel dont le développement p-adique (binaire pour plus de commodité) est comparable à la taille de l'algorithme qui permet de le calculer. En ce sens, tous les rationnels et certains irrationnels sont compressibles, en particulier les nombres transcendants comme π, e ou 0,12345678910111213… dont le développement binaire est infini (Le mot « infini » (-e, -s ; du latin finitus,...) mais la suite des décimales parfaitement calculable. En revanche, le nombre dit Ω de Chaitin ne l'est pas : ce nombre mesure la probabilité (La probabilité (du latin probabilitas) est une évaluation du caractère probable d'un...) qu'une machine, alimentée par un programme composé de bits aléatoires, s'arrête. La topologie (La topologie est une branche des mathématiques concernant l'étude des déformations...) des nombres incompressibles est intéressante : on conçoit intuitivement que cet ensemble (En théorie des ensembles, un ensemble désigne intuitivement une collection...) est dense dans R, mais il est impossible d'exhiber de façon algorithmique un réel incompressible, puisque cela reviendrait à en donner une méthode de calcul efficace. De plus peut démontrer que tous les nombres incompressibles sont normaux, la suite de leurs décimales doit être aléatoire au sens fort, au moins à partir d'un certain rang ( Mathématiques En algèbre linéaire, le rang d'une famille de vecteurs est la dimension du...).

Complexité algorithmique

La théorie de la complexité des algorithmes étudie formellement la difficulté intrinsèque des problèmes algorithmiques. Elle définit plusieurs classes de complexité (P, NP, ...) permettant de classer les algorithmes selon leurs caractéristiques.

Autres complexités

  • Système complexe.
Page générée en 0.008 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise