Wie erhält man den geometrischen Median in 1D, indem man ein Optimierungsproblem löst?

Ich habe eine Reihe von Zahlen { X 1 , X 2 , } . Der Median könnte durch Sortieren erhalten werden, aber ich möchte durch das Lösen eines Optimierungsproblems erhalten. Ich weiß, dass die Medien minimiert werden

ich | X ich μ |

Beim Lösen des Optimierungsproblems über einen Solver erhalte ich jedoch eine Diskrepanz zwischen dem wahren Median und dem erhaltenen Median. was könnte schiefgehen ?

PS: Der Median kann als der Punkt betrachtet werden, an dem, wenn er zwischen die Punkte gelegt wird, der Abstand zwischen ihm und allen Punkten am kleinsten ist.

Für das, was es wert ist, gibt es einen Algorithmus zur Medianfindung in linearer Zeit (der das Sortieren vermeidet).

Antworten (1)

Es stimmt, dass der Median diese Eigenschaft hat.

Wenn die Anzahl der Punkte ungerade ist, dann ist der Median die einzige Zahl mit dieser Eigenschaft. Wenn Sie dort eine Diskrepanz erhalten, ist entweder der Solver ungenau oder es gibt ein Problem mit Ihrer Eingabe.

Wenn Sie jedoch eine gerade Anzahl von Punkten haben, könnte es viele gleich gute Lösungen geben. Angenommen, die Punkte sind in aufsteigender Reihenfolge: X 1 X 2 X 2 N . Dann für jeden Punkt μ [ X N , X N + 1 ] , wir haben

ich = 1 2 N | X ich μ | = ich = 1 N ( μ X ich ) + ich = N + 1 2 N ( X ich μ ) = ich = N + 1 2 N X ich ich = 1 N X ich .
Es gibt N Begriffe wo μ ist positiv u N Begriffe wo μ negativ ist, also heben sie sich auf, und es besteht keine Abhängigkeit von μ : Alle Punkte in diesem Bereich sind gleich gut!

In der Tat alle Punkte im Bereich [ X N , X N + 1 ] werden die optimalen Lösungen sein. (Wenn μ > X N + 1 , dann gibt es noch mehr + μ Bedingungen als μ Terme, also verkleinern wir die Summe durch Verkleinern μ . Wenn μ < X N , dann gibt es noch mehr μ Bedingungen als + μ Begriffe, also verringern wir die Summe durch Erhöhen μ .)

Der Median wird normalerweise definiert als X N + X N + 1 2 in diesem Fall wird aber eher ein LP-Löser geben X N oder X N + 1 als optimale Lösung.