Distance algorithmique

De testwiki
Aller à la navigation Aller à la recherche

En théorie de l'information, la distance algorithmique entre deux objets finis est le nombre de bits du programme le plus court qui transforme l'un des objets en l'autre sur un ordinateur universel. Elle s'appuie sur la complexité de Kolmogorov[note 1]. En termes de contenu d’information, la distance algorithmique est l'information minimale nécessaire pour passer d'un objet à l'autre. Elle a été définie et étudiée en 1992 par Ming Li et Paul Vitanyi.

Propriétés

Définition

La distance d'information ID(x,y) entre x et y est définie par ID(x,y)=min{|p|:p(x)=yp(y)=x},p est un programme pour un ordinateur universel fixé ayant pour entrées des chaînes binaires x,y.

Bennett et al. démontrent[1] que ID(x,y)=E(x,y)+O(logmax{K(xy),K(yx)}) avec E(x,y)=max{K(xy),K(yx)},K est la complexité de Kolmogorov[2]Modèle:,[3] que l'on applique à la paire ()[note 2]. E(x,y) est la quantité pertinente. En effet, le terme correctif sert à assurer qu'il s'agit bien d'une métrique.

Universalité

Soit Δ la classe des distances D(x,y) Modèle:Lien qui satisfont la condition de densité : xy2D(x,y)1,yx2D(x,y)1. Cela exclut les distances non pertinentes telles que D(x,y)=12 pour xy, et cela assure que si la distance augmente, alors le nombre d'objets à cette distance d'un objet donné augmente. Si DΔ, alors E(x,y)D(x,y) à un terme additif constant près[1]. Ces expressions probabilistes de la distance constituent la première classe cohomologique en cohomologie symétrique de l'information[4]Modèle:,[5], ce qui peut être considéré comme une propriété d'universalité.

Métrique

La distance E(x,y) est une métrique au terme additif O(logmaxK(xy),K(yx)) près[1]. La version probabiliste de la métrique est unique comme l'a montré Te Sun Han en 1981[6].

Chevauchement maximal

Si E(x,y)=K(xy), alors il existe un programme p de longueur K(xy) qui convertit y en x, et un programme q de longueur K(yx)K(xy) tel que le programme qp convertit x en y. Les programmes sont écrits sous forme auto-délimitée, ce qui signifie que l'on peut décider où un programme se termine et où l'autre commence dans la concaténation des programmes, autrement dit les programmes les plus courts passant d'un objet à l'autre peuvent être rendus maximaux en chevauchement[1].

Chevauchement minimal

Les programmes de conversion entre les objets x et y peuvent également être rendus minimalement chevauchants : il existe un programme p de longueur K(xy) (à un terme additif en O(log(maxK(xy),K(yx))) près) qui transforme y en x et a une petite complexité lorsque x est connu (K(px)0). En intervertissant les deux objets, nous obtenons l'autre programme[7]. En gardant à l'esprit le parallélisme entre la théorie de l'information (de Shannon) et la théorie de la complexité de Kolmogorov, on peut dire que ce résultat est analogue aux théorèmes de Modèle:Lien et de Körner–Imre Csiszár–Marton.

Applications

Applications théoriques

Le théorème d'Andrej Muchnik sur le chevauchement minimal[7] montre qu'à partir de n'importe quel objet, pour aller vers un objet cible, il existe un programme dont la complexité de Kolmogorov ne dépend presque que de l'objet cible ! Ce résultat est à peu près optimal, car le terme d'erreur ne peut pas être significativement amélioré[8].

Applications pratiques

Pour déterminer la similarité entre des objets tels que les génomes, les langues, la musique, les virus informatiques, les logiciels, etc., des approximations de la distance algorithmique[note 3] sont proposées; la complexité de Kolmogorov est remplacée par un algorithme de compression existant réellement[note 4]. Le concept est alors la Modèle:Lien (NCD) entre les objets, qui sont donnés sous forme de fichiers informatiques, ainsi le génome d'une souris, le texte d'un livre, la partition d'une œuvre musicale, etc. Modèle:Pas clair

Notes et Références

Modèle:Traduction/Référence

Notes

Modèle:Références

Références

Modèle:Références

Littérature connexe

Modèle:Portail


Erreur de référence : Des balises <ref> existent pour un groupe nommé « note », mais aucune balise <references group="note"/> correspondante n’a été trouvée