Я ищу информацию о том, какой алгоритм голосования будет лучшим для меня. У меня есть базовая система голосования «Вверх/вниз», где пользователь может голосовать только за продукт или против. Я хотел бы сделать его взвешенным, чтобы продукт, которому исполнился год, не соответствовал тем же стандартам, что и совершенно новый.
Я думаю сделать алгоритм, который считает количество голосов за каждый продукт за последние 30 дней. Однако это создает откат. Я не хочу, чтобы голоса старше 30 дней стали бессмысленными, но, возможно, не имели такого веса, как более новые. Тогда, возможно, голоса после 90 дней будут иметь даже меньший вес, чем голоса старше 30 дней.
Кто-нибудь знает алгоритм, который уже делает это и, тем более, может быть легко рассчитан на PHP?