生成代理时考虑实际人口密度

Using actual population density into account when generating agents

我有一个模型,我的代理人是人,我想考虑该地区的人口密度。即:我希望在某些领域比其他领域产生更多的代理人。理想情况下,我希望它能与 GIS 地图一起使用。 我将如何开始实施这个? 我已经有了 GIS 地图、人口数据文件(.grd、.gri 和 .vrt)。

这不是那么简单,因为没有任何逻辑 built-int 函数可以帮助您...

您必须创建自己的 2D 分布函数 f(longitude,latitude)=Z,其中 Z 越高,代理从该位置开始的可能性就越大。您必须能够自己定义该功能...

获得随机样本后,一种简单但可能效率低下的方法是(假设 Z 标准化为最大值 1)从 3 维 space(随机纬度、经度和 Z),如果 Z 最终低于该纬度经度所需的 Z,则取该值,否则再试一次,直到找到适合的随机值。

你也可以用类似的方式使用分立的解决方案,你可以阅读这个网站来了解如何做: http://code-spot.co.za/2009/04/15/generating-random-points-from-arbitrary-distributions-for-2d-and-up/