K-médianeLe problème k-médiane, ou k-median en anglais[1], est un problème d'optimisation combinatoire, une branche de l'algorithmique. Le problème peut se décrire de façon informelle ainsi : étant donné n villes, il faut ouvrir un magasin dans k villes, tel que la moyenne des distances entre les villes et leurs plus proches magasins soit minimisée. Ce problème, proche du problème des k-moyennes, permet entre autres de faire du partitionnement de données. Une formalisation du problème est la suivante. Étant donné un ensemble de points V, de choisir un sous-ensemble de k points, appelés centres, tel que la moyenne des distances des points de V au plus proche centre soit minimisée. Le problème est le plus souvent exprimé dans un espace métrique. Il s'exprime alors naturellement comme un problème sur un graphe dont les arêtes ont des poids respectant l'inégalité triangulaire. On peut aussi considérer que les sommets sont divisés en deux catégories : les sommets ouvrables, et les sommets à couvrir. Ce problème est surtout étudié du point de vue de l'approximation. Il en existe plusieurs variantes, avec des métriques particulières, ou d'autres coûts à minimiser. Définition formelleLe problème s'exprime de la façon suivante. Étant donné un entier k et un graphe complet non-orienté G = (V, E) dont les distances d(vi, vj) ∈ N respectent l'inégalité triangulaire, trouver un sous-ensemble S ⊆ V avec |S| = k qui minimise: . Autrement dit on considère le problème d'optimisation dont la fonction objectif est . ApproximationLe problème k-médiane est NP-difficile même dans le cas métrique. Il possède une assez large littérature pour l'approximation dans le cas métrique (le cas général n'est pas dans APX). Plusieurs méthodes ont été utilisées, notamment l'optimisation linéaire[2] et la recherche locale[3]. Variantes, problèmes liés et applicationsUne façon classique de modifier le problème est de rajouter des capacités différentes aux centres. Ainsi un certain nœud, s'il est choisi comme centre, ne pourra servir qu'un nombre restreint de voisins. Le problème k-centre, utilise le même cadre, mais avec une autre fonction à minimiser. Dans le problème de l'emplacement d'installations (facility location problem[1]), on remplace le paramètre k par des coûts d'ouverture et de liaison. La calcul d'une k-médiane peut permettre de faire du partitionnement de données. Les distances représentent alors des similarités. Notes et références
Liens externes
|