/**
 * @page crps_algorithm Алгоритм CRPS (Cumulative Reward Per Share)
 * @defgroup public_capital_crps_algorithm Алгоритм CRPS
 * @ingroup public_capital
 *
 * Алгоритм обеспечивает справедливое и эффективное распределение различных типов наград между участниками.
 *
 * CRPS расшифровывается как Cumulative Reward Per Share - кумулятивное вознаграждение на долю.
 * Это алгоритм распределения вознаграждений, который позволяет справедливо делить средства между
 * участниками пропорционально их вкладу или долевому участию. Главное преимущество CRPS заключается
 * в его эффективности - сложность операций O(1), что делает систему масштабируемой независимо от
 * количества участников.
 *
 * Алгоритм работает на основе двух ключевых показателей для каждого типа вознаграждения:
 * кумулятивного вознаграждения на долю и персонального слепка этого показателя у каждого участника.
 * Когда происходит распределение новых средств, рассчитывается прирост вознаграждения на каждую долю,
 * который затем может быть получен участниками при обновлении их персональных данных.
 *
 * Основная формула алгоритма выглядит следующим образом:
 *
 * @f[
 * \Delta RPS = \frac{\text{новый\_взнос}}{\text{общее\_количество\_долей}}
 * @f]
 *
 * @f[
 * RPS_{cumulative} += \Delta RPS
 * @f]
 *
 * @f[
 * R_{participant} = (RPS_{cumulative} - RPS_{last\_participant}) \times S_{participant}
 * @f]
 *
 * Где @f$\Delta RPS@f$ - это прирост вознаграждения на одну долю, @f$RPS_{cumulative}@f$ -
 * общий накопленный показатель вознаграждения на долю, @f$RPS_{last\_participant}@f$ - персональный
 * слепок участника, а @f$S_{participant}@f$ - количество долей участника.
 *
 * В кооперативной экономике используется несколько специализированных типов CRPS для различных
 * сценариев распределения вознаграждений.
 *
 * Авторы получают вознаграждения за создание контента и результатов проектов. Система авторских
 * премий работает через специальный CRPS механизм, который обеспечивает равномерное распределение
 * вознаграждений между всеми авторами проекта.
 *
 * Каждый проект имеет счетчики общего количества авторов и кумулятивные показатели вознаграждений.
 * Когда в проект добавляются новые премии, система рассчитывает прирост вознаграждения на одного автора
 * и обновляет соответствующие кумулятивные показатели. Каждый автор имеет персональные слепки этих
 * показателей, которые используются для расчета полагающихся ему наград.
 *
 * При обновлении сегмента автора система определяет разницу между текущим кумулятивным показателем
 * и последним сохраненным значением, после чего начисляет соответствующее вознаграждение. Такой подход
 * гарантирует, что каждый автор получит ровно ту долю вознаграждений, которая ему причитается по праву.
 *
 * Представим проект с тремя авторами, где каждому полагается равная доля вознаграждений. В начальный
 * момент все авторы имеют одинаковый слепок кумулятивного показателя равный нулю. Когда в систему
 * поступает вознаграждение в размере 3000 рублей, алгоритм рассчитывает прирост вознаграждения на
 * одного автора: @f$\frac{3000}{3} = 1000@f$ рублей. Этот прирост добавляется к кумулятивному показателю,
 * который становится равным 1000.
 *
 * При следующем обновлении каждый автор получит вознаграждение, рассчитанное как разница между
 * текущим кумулятивным показателем и его персональным слепком, умноженная на количество долей автора.
 * Поскольку у каждого автора по одной доле, каждый получит 1000 рублей.
 *
 * Участники получают вознаграждения пропорционально своим долям в проекте. Эта система обеспечивает,
 * что чем больше доля участника в проекте, тем больше вознаграждение он получит от общих доходов.
 *
 * Вкладчические премии рассчитываются на основе баланса долей участника в программе благороста.
 * Когда в проект поступают новые вознаграждения для участников, система определяет общую сумму
 * всех долей в проекте и рассчитывает прирост вознаграждения на каждую долю. Каждый участник
 * имеет персональный слепок кумулятивного показателя, который используется для точного расчета
 * полагающихся ему средств.
 *
 * При обновлении данных участника система вычисляет разницу между текущим кумулятивным показателем
 * и сохраненным значением, затем умножает эту разницу на количество долей участника. Такой механизм
 * гарантирует справедливое распределение средств пропорционально вкладу каждого участника.
 *
 * Рассмотрим проект с тремя участниками, имеющими 100, 200 и 300 долей соответственно. Общее количество
 * долей составляет 600. При поступлении вознаграждения в 6000 рублей система рассчитывает прирост
 * на долю: @f$\frac{6000}{600} = 10@f$ рублей на долю. Этот прирост добавляется к кумулятивному показателю.
 *
 * Участник с 100 долями получит 1000 рублей, с 200 долями - 2000 рублей, а с 300 долями - 3000 рублей.
 * Система автоматически корректируется при изменении баланса долей, обеспечивая точность расчетов
 * даже при динамическом изменении состава участников.
 *
 * Программные членские взносы распределяются между всеми участниками программы благороста
 * пропорционально их долевому участию. Эта система обеспечивает постоянный доход участников
 * от расширения кооперативной сети.
 *
 * Когда в программу благороста поступают членские взносы, система определяет общее количество
 * долей всех участников и рассчитывает прирост взноса на каждую долю. Каждый участник имеет
 * персональный слепок кумулятивного показателя программных взносов, который используется для
 * расчета полагающихся ему средств.
 *
 * При обновлении данных участника система вычисляет разницу между текущим кумулятивным показателем
 * программных взносов и сохраненным значением, затем умножает эту разницу на количество долей
 * участника. Такой подход гарантирует, что каждый пайщик получит взносы пропорционально своему
 * участию в программе.
 *
 * Представим программу благороста с тремя участниками, имеющими 1000, 2000 и 3000 долей.
 * Общее количество долей составляет 6000. При поступлении членских взносов в размере 6000 рублей
 * система рассчитывает прирост на долю: @f$\frac{6000}{6000} = 1@f$ рубль на долю. Этот прирост добавляется
 * к кумулятивному показателю программных взносов.
 *
 * Участник с 1000 долями получит 1000 рублей, с 2000 долями - 2000 рублей, а с 3000 долями - 3000 рублей.
 * Система автоматически учитывает все изменения в балансе долей, обеспечивая точность расчетов.
 *
 * Проектные членские взносы поступают от коммерческого использования конкретных результатов
 * и распределяются между держателями долей в кошельках проектов. Эта система обеспечивает
 * доход участников от успешной коммерциализации их интеллектуальной собственности.
 *
 * Когда в проект поступают членские взносы от коммерческого использования результатов,
 * система рассчитывает прирост взноса на каждую долю в кошельке проекта. Каждый участник
 * проекта имеет персональный кошелек с определенным количеством долей и слепком кумулятивного
 * показателя проектных взносов.
 *
 * При обновлении кошелька проекта система определяет разницу между текущим кумулятивным
 * показателем и сохраненным значением, затем рассчитывает полагающиеся взносы умножением
 * этой разницы на количество долей в кошельке. Такой механизм гарантирует справедливое
 * распределение доходов от коммерциализации пропорционально вкладу участников.
 *
 * Рассмотрим проект с тремя участниками, имеющими 100, 200 и 300 долей в проектных кошельках.
 * Общее количество долей составляет 600. При поступлении роялти в размере 3000 рублей от
 * коммерческого использования результатов система рассчитывает прирост на долю: @f$\frac{3000}{600} = 5@f$ рублей.
 *
 * Участник с 100 долями получит 500 рублей, с 200 долями - 1000 рублей, а с 300 долями - 1500 рублей.
 * Система автоматически адаптируется к изменениям в распределении долей между участниками проекта.
 *
 * Координаторы получают вознаграждения пропорционально привлеченным ими инвестициям.
 * Эта система мотивирует координаторов активно привлекать средства в проекты.
 *
 * Координаторские премии рассчитываются по специальной формуле, которая учитывает сумму
 * привлеченных инвестиций и установленный процент вознаграждения. Система использует
 * прямой расчет без кумулятивных показателей, что обеспечивает мгновенное начисление
 * премий при обновлении данных координатора.
 *
 * Формула расчета выглядит следующим образом:
 *
 * @f[
 * P_{coordinator} = \frac{I \times r}{1 + r}
 * @f]
 *
 * Где @f$P_{coordinator}@f$ - координаторская премия, @f$I@f$ - сумма привлеченных инвестиций,
 * а @f$r@f$ - процент вознаграждения в десятичном виде. Такой подход гарантирует справедливое
 * вознаграждение координаторов за их вклад в развитие проектов.
 *
 * Координатор привлек 10000 рублей инвестиций при проценте вознаграждения 4%. Система
 * рассчитает его премию по формуле: @f$\frac{10000 \times 0.04}{1 + 0.04} = \frac{400}{1.04} \approx 3846@f$ рублей.
 * Этот расчет производится мгновенно при обновлении данных координатора, обеспечивая
 * оперативное вознаграждение за проделанную работу.
 *
 * Алгоритм CRPS обладает рядом значительных преимуществ, которые делают его идеальным
 * решением для распределения вознаграждений в кооперативной экономике.
 *
 * Одним из ключевых преимуществ CRPS является его вычислительная эффективность. Сложность
 * всех операций составляет O(1), что означает постоянное время выполнения независимо от
 * количества участников. Это позволяет системе масштабироваться до любого размера без
 * потери производительности.
 *
 * Алгоритм гарантирует абсолютно справедливое распределение вознаграждений. Каждый участник
 * получает ровно ту долю, которая соответствует его вкладу или долевому участию. Система
 * автоматически учитывает все изменения в балансах и долях, обеспечивая точность расчетов
 * в любой момент времени.
 *
 * CRPS демонстрирует высокую гибкость в применении к различным сценариям распределения.
 * Он одинаково эффективно работает как для премий авторов и участников, так и для
 * членских взносов и координаторских вознаграждений. Алгоритм может быть адаптирован
 * под любые требования кооперативной экономики.
 *
 * Благодаря своей математической простоте CRPS легко реализуется и поддерживается.
 * Все расчеты основаны на элементарных арифметических операциях, что снижает вероятность
 * ошибок и упрощает отладку системы. Такой подход обеспечивает надежность и стабильность
 * работы алгоритма в долгосрочной перспективе.
 *
 * Алгоритм CRPS идеально соответствует принципам кооперативной экономики благодаря своей
 * прозрачности, справедливости и эффективности. Он создает условия для равноправного
 * участия всех членов кооператива в распределении доходов, что способствует развитию
 * взаимопомощи и сотрудничества.
 *
 * Каждый участник может легко проверить правильность начисления вознаграждений,
 * поскольку все расчеты основаны на простых математических формулах. Это создает
 * атмосферу доверия и открытости в кооперативе.
 *
 * Система CRPS мотивирует участников активно вкладывать свои ресурсы и усилия в
 * развитие кооператива, поскольку вознаграждение напрямую зависит от их вклада.
 * Это способствует повышению эффективности и продуктивности совместной работы.
 *
 * Благодаря справедливому распределению доходов CRPS способствует устойчивому
 * развитию кооперативной организации. Участники получают адекватное вознаграждение
 * за свой труд, что обеспечивает стабильность и привлекательность кооператива
 * для новых членов.
 *
 * Алгоритм CRPS представляет собой мощный инструмент для организации справедливого
 * и эффективного распределения вознаграждений в кооперативной экономике. Его
 * математическая простота в сочетании с высокой эффективностью делает его идеальным
 * решением для систем, требующих масштабируемости и точности расчетов.
 *
 * Независимо от типа вознаграждения - будь то авторские премии, вознаграждения
 * участников, членские взносы или координаторские премии - CRPS обеспечивает
 * одинаково высокий уровень справедливости и эффективности распределения.
 * Это делает его незаменимым компонентом современной кооперативной экономики.
 */

