Disons que nous avons un polyèdre sous forme standard:
Existe-t-il des méthodes connues pour trouver un hyperplan qui divise le polyèdre de manière à ce que le nombre de sommets de chaque côté de l'hyperplan soit approximativement le même? (c'est-à-dire un algorithme qui minimise la différence absolue des cardinalités des sommets des deux côtés de la division).
Existe-t-il également des résultats connus concernant la complexité de ce problème?
Addendum: restreindre les types de coupes:
Voici une variante du problème d'origine dans l'espoir qu'il soit plus facile à résoudre que l'original:
Existe-t-il un moyen de calculer ou d'estimer efficacement pour quelle coordonnée un hyperplan de la forme d_ix_i + d_0 = 0 produirait la plus faible différence absolue de cardinalités de sommets des deux côtés de la division? Par efficace, je veux dire quelque chose de plus efficace que l'énumération exhaustive des cardinalités des sommets pour toutes ces divisions possibles.
Remarque: Après quelques jours de petits progrès, j'ai également posté cette question sur MathOverflow .
la source
Réponses:
Je ne me souviens pas de la façon analytique de le faire!
Mais c'est un problème classique pour la programmation génétique! Si vous le connaissez, vous pouvez utiliser un vecteur normalisé au centre du polyèdre qui décrit le plan de coupe.
Votre population est donc un ensemble de vecteurs normalisés [x, y, z, ...] et comme fonction d'ajustement, vous utilisez la différence entre les 2 volumes divisés!
Donc, si la différence tend vers zéro, plus "d'ajustement" est votre vecteur / avion!
la source