Голосование -Количество голосов против процента голосов?

Я реализовал простую систему голосования вверх/вниз на веб-сайте, и я отслеживаю отдельные голоса, а также время голосования и уникальный идентификатор пользователя (хэш. IP ).

Мой вопрос не в том, как рассчитать процент или сумму голосов -, а в том, каков хороший алгоритм для определения хорошей оценки на основе голосов?

Я считаю недопустимой сортировку по чистому проценту голосов, как и простой подсчет голосов.

Рассмотрим этот пример:

  • Изображение A :4 голоса "за", 1 голос "против"
  • Изображение B :5 голосов "за", 4 голоса "против"
  • Изображение C :1 голос "за", 0 голосов "против"

Идеал система поставит сначала A, за ним, возможно, B, а затем C.

В чисто процентном сценарии порядок C > A > B. (неправильно )В сценарии чистого подсчета голосов порядок B > A > C.(неправильно)

У меня есть идея относительно "гибридного" алгоритма, основанного на уверенности системы в счете, возможно, что-то вроде:

// (if totalvotes > 0, else score = 0)
score = 1 - ((downvotes+1 / totalvotes+1) * sqrt(1 / totalvotes))

Тем не менее, я надеялся узнать у сообщества, существуют ли какие-либо действительно хорошо -определил уже существующие алгоритмы, о которых я просто не знаю, прежде чем я сяду и настрою свой алгоритм с этого момента до заката.

У меня также есть данные о дате каждого голосования -, однако содержание сайта не очень чувствительно ко времени -, поэтому я вообще не забочусь о сортировке по «самым популярным».

6
задан Tim 22 April 2012 в 17:44
поделиться