J'ai un polytope défini par .
Question: Étant donné un sommet de , existe-t-il un algorithme polynomial de temps pour échantillonner uniformément à partir des voisins de dans le graphique de ? (Polynôme dans la dimension, le nombre d'équations et la représentation de . Je peux supposer que le nombre d'équations est polynomial dans la dimension.)
Mise à jour: Je pense que j'ai pu montrer que c'est NP-difficile, voir ma réponse qui explique l'argument. (Et par -hard, je veux dire qu'un algorithme de temps polynomial prouverait ... je ne sais pas quelle est la terminologie correcte ici.)
Mise à jour 2: Il existe une preuve de dureté lignes (étant donné le bon polytope combinatoire) et j'ai pu y trouver un article de Khachiyan. Voir la réponse pour la description et le lien. :-RÉ
Un problème équivalent :
Dans les commentaires, Peter Shor a souligné que cette question est équivalente à la question de savoir si nous pouvons échantillonner uniformément à partir des sommets d'un polytope donné. (Je pense que l'équivalence va comme ceci: dans une direction, nous pouvons passer d'un polytope avec un sommet à la figure du sommet à , , et échantillonner les sommets de équivaut à échantillonner les voisins de sur Dans l'autre sens, on peut passer d'un polytope à un polytope d'une dimension supérieure en ajoutant un cône de sommet et de base. L'échantillonnage des voisins de dans équivaut alors à l'échantillonnage des sommets de )
Cette formulation de la question a déjà été posée: /mathpro/319930/sampling-uniformly-from-the-vertices-of-a-polytope
la source
Réponses:
Edit 2: Embarrassamment, il y a une preuve à deux lignes duNP dureté , si l'on commence par le bon polytope.
Rappelons d'abord le polytope de circulation d'un graphe en bas de la page 4 de Générer tous les sommets d'un polyèdre est difficile .
Ses sommets sont en correspondance bijective avec les cycles simples dirigés. Par conséquent, ils sont difficiles à échantillonner ou à compter par la proposition JVV 5.1 . :-RÉ
Équipé de ces mots clés, j'ai pu trouver la dureté du résultat d'échantillonnage comme le théorème 1 des hypergraphes transversaux et des familles de cônes polyédriques de Khachiyan.
Edit: j'ai écrit l'argument ci-dessous, et il semble correct. Cependant, il y a un argument beaucoup plus simple, que je vais décrire ici:
a) Par analyse d'algorithmes de retour en arrière pour lister tous les sommets et toutes les faces d'un polyèdre convexe (Fukuda et al.), il est fortement difficile de résoudre le problème suivant sur les polytopes:
Entrée: Un polytopeAx=b,x≥0 dansRn un sous-ensembleS⊆n
Sortie: s'il existe un sommetv de P différent de zéro sur chacune des coordonnées de S .
b) Compte tenu de cela, on peut faire la construction suivante: introduire de nouvelles variablesyik pour i∈S et k=1,…,d , et introduire l'inégalité 0≤yik≤xi . Appelons le polytope résultant PS,d . Le but de cette construction est d'introduire un hypercube au dessus de chaque sommet, de dimensiond|supp(x)∩S| .
c) On peut vérifier que les sommets de ce polytope se trouvent tous au-dessus des sommets de l'ancien polytope, et que le nombre de sommets sur un sommet est de2d|supp(x)∩S| , oùsupp est la fonction qui envoie un sommet aux coordonnées où il est différent de zéro.
d) Par une chaîne habituelle d'arguments de type bigons, il s'ensuit qu'en prenantd suffisamment grand, un échantillon uniforme des sommets dePS,d donnerait (avec une probabilité élevée) un échantillon des sommets maximisant la taille de leur intersection avecS .
Il semble y avoir diverses extensions de cela. Je mettrai à jour avec un lien lorsque l'écriture sera terminée.
(L'ancien argument était ici - il se trouve dans l'historique des modifications. Je l'ai supprimé car il est très long et gênera la recherche de la bonne réponse à la question.)
la source