Vergleich-basierte ranking-Algorithmus

Ich würde gerne Rangfolge "oder" Sortieren einer Sammlung von Gegenständen (mit Größe möglicherweise größer als 100.000), wo die Objekte in der Sammlung haben keine innere (vergleichbaren) Wert, statt alle, die ich habe, die Vergleiche zwischen zwei Elementen, die von den Benutzern subjektiv.

Beispiel: Betrachten Sie eine Kollektion, die mit Elementen [a, b, c, d] und Vergleiche, die von Benutzern b > a, a > d, d > c. Die korrekte Reihenfolge dieser Auflistung wäre [b, a, d, c].

Diesem Beispiel ist einfach, aber es könnte komplizierter Fälle:

  • Da die Vergleiche sind subjektiv, ein Benutzer könnte auch sagen, dass c > b. In dem Fall dazu führen würde, dass ein Konflikt mit dem Besteller vor.
  • Auch Sie können nicht haben Vergleiche, die "verbindet" alle Elemente, d.h. b > a, d > c. In dem Fall ist die Reihenfolge nicht eindeutig ist. Könnte es sein [b, a, d, c] oder [d, c, b, a]. In diesem Fall entweder die Bestellung ist akzeptabel.

Wenn möglich wäre es schön, irgendwie berücksichtigen, mehrere Instanzen des gleichen Vergleich und geben diese mit höheren vorkommen mehr Gewicht. Aber eine Lösung ohne diese Bedingung wäre immer noch akzeptabel.

Eine ähnliche Anwendung dieses Algorithmus wurde von Zuckerberg ist FaceMash Anwendung, wo er rangiert Menschen basierend auf Vergleiche (wenn ich es richtig verstanden habe), aber ich habe nicht in der Lage zu finden, was dieser Algorithmus eigentlich war.

Gibt es einen Algorithmus, der bereits vorhanden ist, die das problem lösen können oben? Ich möchte nicht zu verbringen Bemühung versucht zu kommen mit ein, wenn das der Fall ist. Wenn es keinen bestimmten Algorithmus, ist es vielleicht bestimmte Arten von algorithmen oder Techniken, die Sie können, zeigen Sie mir?

InformationsquelleAutor ggreiner | 2010-10-14
Schreibe einen Kommentar