|
Posté par Jean_Luc
Salut,
Une discussion intéressante sur le problême: http://forums.futura-sciences.com/thread184758.html Je n'ai pas tout lu encore, mais je pensais aussi que chercher le plus petit traingle englobant tous les points pourrait peut etre fournir la solution en prenant le cercle circonscrit. Juste une idée |
|
Posté par Patastronch
Ca veut dire quoi le plus petit triangle ?
|
|
Posté par Patastronch
Pour résumer, trouve la plus longue distance entre 2 points parmis ton nuage de points. Le cercle circonscrit sea alors de diamètre égale à cette distance et son centre sera au milieu du segment formé par ces 2 points.
|
|
Posté par Jean_Luc
Pour un ensemble de trois points formant un triangle équilatéral, il me semble
que ta méthode ne fonctionne pas. |
|
Posté par Patastronch
Bon on peut résumer le probleme à :
On cherche un point dans le plan qui minimise la distance maximale avec tous les autres sommets (facile a dire mais pas a faire), ce point sera alors le centre du cercle recherché et le rayon se ra cette distance maximale. |
|
Posté par Patastronch
Pour chercher un tel point je serais tenté de dire qu'on peut y aller par recherche local car j'ai l'impression qu'il y a pas de minimum local mais seulement un minimum global. Si c'est bien le cas voila comment on peut faire
... |
|
Posté par Patastronch
Peut etre y a t il une méthode analytique pour déterminer le point recherché? Ca serai plus beau, plus rapide, exacte et ca permetrait de se passer de l'hypothèse qu'un minimum est globale (car c'estpas dit que ce soit vrai), je continue à chercher :)
|
|
Posté par melgorien
On peut alors prendre en compte seulement les points de l'enveloppe convexe, ça limitiré le nombre de boucles à faire.
|
|
Posté par Jean_Luc
Tout à fait d'accord :)
Oui je pense que ton raisonement est tout à fait correct. Le probléme c'est de determiner le point de départ pour la recherche. L'isobarycentre des points me semble pas trop mal au moins si la répartition des points est uniforme. Mais ce n'est hélas pas toujours le cas... ![]() |
.|
Posté par Jean_Luc
L'algorithme connu de Megiddo trouve la solution en temps linéaire (au moins dans le plan).
|

|
Posté par Patastronch
Je viens de lire son algo, c'est assez malin, mais c'est pas linéaire mais polynomiale : en O(n²)
|
|
Posté par Jean_Luc
OK, merci pour tes efforts
![]() Es-tu sur de ça ? Je n'ai pas encore analysé et vérifié la complexité de la méthode prune-and-search que propose Megiddo. As tu trouvé quelque chose qui contredit la complexité annoncée O(16n) ? |
|
Posté par frost
Ah oui, c'est vrai. Je planche...
|
.
-