2009-11-03 17 views
17

He estado creando un sitio de reddit basado en a very good article sobre algoritmos de popularidad. Creo que estoy yendo bastante bien, el sitio se ve bien y la implementación está funcionando.Sistema de reputación/karma

Lo que me falta es un karma o algoritmo de reputación. Al igual que SO, tengo en mente la implementación de ciertos privilegios para los mejores usuarios.

¿Tiene alguna idea o referencia sobre cómo hacerlo?

EDITAR
Estoy teniendo algunos problemas en la búsqueda de estos puntos:

  • Cómo dar el karma? Si algún usuario tiene 100 puntos de karma y vota un usuario con 10, ¿cuántos puntos se otorgan en contraste con un votante con 1,000?
    Lo mismo se aplica a los negativos.
  • ¿Cómo puedo evitar que los creadores de correo no deseado creen 1.000 cuentas para promocionar una cuenta y otorgar, por ejemplo, 1.000 puntos de karma para tener acceso a los privilegios de moderación y crear un caos?
+0

¿Qué estás buscando? Una implementación (arquitectura/código) o una filosofía (requisitos/diseño)? – APC

+0

Básicamente lo que estoy buscando es algo en lo que puedo basarme. Aunque sería genial si es código o fórmulas :) – metrobalderas

+0

@metrobalderas su interés me hace creer que está en condiciones de responder a esta pregunta. ¿Puedes mirarlo por favor: http://stackoverflow.com/questions/9075465/can-reputation-scoring-system-be-implemented-using-business-rule-management-syst –

Respuesta

19

Las costuras del sistema de Karma bastante sencillo:

  1. usted se hace una mesa karma
  2. deja que los usuarios upvote/downvote otros usuarios
  3. las tablas karma no perder de vista el karma del usuario

Ahora, poniéndolo en una experiencia perfecta y muy fácil de usar li ke StackOverflow tiene ... bueno, eso es un problema totalmente diferente. Sin embargo, algunos puntos para retener:

  1. no deje que los nuevos usuarios abajo o hacia arriba voto
  2. hacen una penalización por abajo derecho a voto (que se mantendrá algunos de cerrarse de golpe un usuario sin razón)

Editar (en su nueva actualización)

Para spammers Evita de la creación de múltiples cuentas y así sucesivamente que se apoyaría en lo que también lo ha hecho, no deje que los nuevos usuarios, dicen menos de 50 puntos los usuarios, arriba o abajo votan a otro usuario. Esos usuarios solo podrán obtener puntos por comportamiento humano, participando en el foro, y sus pares les darán su Karma. Eso debería hacerlo

Me incliné en manteniendo puntos fijos por voto. Un voto de arriba por quien siempre obtendrá la misma cantidad de puntos que un voto de abajo. Haz la línea proporcional y no exponencial y potencia a la comunidad como un todo sin dominar a un pequeño número de personas.

Proporcione a los usuarios avanzados, Big Karma Guys la posibilidad de moderar, volver a etiquetar, editar y otros usuarios.

Pero todo lo que digo ... es exactamente lo que ha hecho Stack Overflow.Las matemáticas detrás de eso no son tan complicadas, lo que es realmente difícil es ofrecer el pulimento de un sitio como este.

Karma a Jeff y al resto del equipo.

Espero que ayude!

+2

Gracias. Hasta el momento, no tengo problemas con la arquitectura, pero sí con la forma en que un usuario o grupo de usuarios puede hacer un mal uso de los privilegios. Lo que estoy pensando se muestra en el PO. – metrobalderas