Вы можете узнать, сколько агентов содержится в контейнере, выполнив container.contents().size()
Давайте представим, что вы хотите снизить 50% в первом и 10% во втором.
В первом выпадении, предполагая, что вы хотите сбросить 50%, вы можете выбрать опцию выпадения «заданное количество, если доступно» и установить количество как (int)round((container.contents().size())*0.5)
Конечно, вы можете изменить 0,5 на 0,3, если вы хотите уменьшить 30%.
В следующем отбрасывании вы хотите выселить 10% от первоначального населения (но осталось только 50%, поэтому вы хотите отбросить 20% от текущего населения
(int)round((container.contents().size())*0.2)
Давайте представим, что у вас есть 100 в начальной популяции, и вы хотите снизить 50% на первом и 10% на втором (50 пассажиров на первом и 10 пассажиров на втором)
(int)round((container.contents().size())*0.5)
отбросит этих 50 пассажиров, так что у вас останется только 50 пассажиров, а на втором вы хотите сбросить 10 пассажиров. 10, это 20% от 50 ... поэтому я использую 0,2 во втором выпадении