Многие петиции существуют в нескольких экземплярах, соответственно количество голосов на отдельных петициях получается меньшее. В итоге они имеют меньше шансов быть принятыми к рассмотрению, что происходит лишь вследствие несовершенства сайта.
0. Нужно группировать петиции по смыслу и учитывать голоса всех граждан, проголосовавших за разные варианты одних и тех же петиций.
Похоже, тут потребуется помимо автоматики, вмешательство человеческого интеллекта.
Если общее количество проголосовавших за сходные петиции велико, рассматривать петицию, несмотря на то, что отдельные петиции из множества не достигли лимита.
Для упрощения этого процесса:
1. Ввести тэги по петициям
2. Реализовать поиск по петициям
3. Вместе с каждой петицией показывать ссылки на похожие петиции (сравнивать векторы TF-IDF для каждой петиции, с помощью метрики cosine similarity, например, учитывая схожесть заголовков, текста, тэгов)