Как разделить униформу глобальной переменной на агентов - PullRequest
0 голосов
/ 09 января 2019

Итак, я работаю над проектом, который требует, чтобы я разделил субсидии на два разных типа черепах. Я получил 1 порт и 25 отраслей (так, две породы), и мне нужно разделить субсидию в 15 миллионов евро между двумя породами. До сих пор, когда я устанавливаю ползунок субсидии на 50/50 (50% для порта и 50% для отраслей), я получаю 7,5 млн. Для порта и 7,5 млн. Для каждой отрасли, но я хочу, чтобы в каждой отрасли было 7,5 млн. / 25 евро Как я могу решить это? Смотрите код ниже:

to distribute-subsidies
  ask ports
 [ set subsidy-port (subsidy-port + 150000 * subsidy-to-port) / count ports
 ]
  ask industries
 [ set subsidy-industry (subsidy-industry + ((15000000 - 150000 * subsidy-to-port) / count industries ))
 ]
end

Любая помощь приветствуется! Заранее спасибо.

Макс

1 Ответ

0 голосов
/ 09 января 2019

Я думаю, вам нужно быть более ясным с примером. Вы делаете одноразовый перевод или каждый тик? Я думаю, что более понятно, что вы отслеживаете свои субсидии для распределения в переменной. Однако ниже я привел пример обновления субсидий по каждому тику и распределения субсидий между портами и отраслями, а затем внутри портов и отраслей делим их между всеми соответствующими агентами равномерно.

to distribute-subsidies
      let subsidies 1500000
      ask ports
     [ set subsidy-port subsidy-port + ((subsidies * subsidy-to-port) / count ports)
     ]
      ask industries
     [ set subsidy-industry ((subsidies * ( 1 - subsidy-to-port)/ count industries)
     ]
    end
...