Статистика на уровне населения по текущим и «прошлым» агентам одного типа операторов - PullRequest
0 голосов
/ 28 мая 2018

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

Насколько я понимаю, создание статистики в области Статистика в свойствах совокупности агентов учитывает только экземпляры живых агентов.

Модель базовой экономики здравоохранения в библиотеке примеров моделей собирает статистику по всем агентам Person, которые когда-либо жили в модели. В этой модели рассчитываются годы жизни с поправкой на качество (QALY).Этот показатель - Качество жизни * Время.В этой конкретной модели в Person переменная QoL содержит значение для качества жизни, связанное с состоянием работоспособности, в котором находится экземпляр Person в данный момент. Используя статистику в поле свойств совокупности, QoL каждого агента суммируется, который затем используется в качестве потока в запасе SD и потока в качестве потока NewQALY за год.

Это утомительно и неэффективно, поскольку использование потока SD для каждой желаемой статистики, которая также включает в себя «прошлоеагенты.У кого-нибудь есть лучший подход, чем в базовой модели экономики здравоохранения?

1 Ответ

0 голосов
/ 28 мая 2018

что по этому поводу?(следуя метрике QoL):

  1. Вы создаете элемент статистики с именем QoLStats (из палитры анализа)
  2. Вы создаете событие, циклически запускаемое каждый год

В вашем случае вы делаете:

totalQoL=sum(population,p->p.QoL);
QoLStats.add(totalQoL);

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

...