ASSURE (Agent based simulation of Social Segregation and Urban Expansion)

A model for the simulation of urban expansion and intra-urban social segregation.

Agent basedSocial SegregationUrban Expansion



Initial contribute: 2021-02-06


Is authorship not correct? Feed back


Method-focused categoriesData-perspectiveGeoinformation analysis

Detailed Description

English {{currentDetailLanguage}} English

Quoted from: Vermeiren, Karolien, Matthias Vanmaercke, Joris Beckers, and Anton Van Rompaey. "ASSURE: a model for the simulation of urban expansion and intra-urban social segregation." International Journal of Geographical Information Science 30, no. 12 (2016): 2377-2400. 

ASSURE is a grid-based model whereby urban expansion is simulated through residential activity decisions taken by different social groups, thereby taking into account physical and social environmental factors as well as preferences, possibilities and limitations. The framework of the model is illustrated in Figure 1.

Figure 1. Overall framework of the ASSURE model. ‘AG’ stands for Agent Group. Grey boxes indicate aspects of the urban environment and dynamics that can be influenced by urban policy.


For each time step (e.g. 1 year), a number of agents (i.e. households) select their residential location based on a number of criteria and characteristics. Each of these agents belongs to a predefined ‘Agent Group’ (AG) which represents a socio-economic class of citizens with specific residential habits or preferences and is characterized by an average number of persons per agent (i.e. the household size), an average space usage (i.e. the amount of urban space typically occupied by one agent), a ranking, a utility function and a displacement function. The number of AGs and their characteristics will depend on the intended application and data availability. During each time step, the number of agents per AG is determined by summing up the expected agent increase and the number of displaced agents. The former can be based on any assumption of urban population expansion or socio-economic transitions and depends on the scenario that needs to be simulated.

In addition, agent displacement becomes evaluated through an AG-specific displacement function. The function provides a numerical expression of the integrated effect of different factors that may cause an agent to move from its current location. These factors may be related to environmental (e.g. lack of greenness) as well as socio-economic factors (e.g. estimated rental prices of the area), while the weight given to each of these factors may vary between the considered AGs. The displacement function may also include a random term to account for uncertainties in the decision of a household to move. At grid cells where the function exceeds a threshold value, the agents living in that cell are removed and the amount of occupied area is updated accordingly. The threshold used can be uniformly fixed or location specific. The latter allows simulating specific urban policies, such as the eviction of households from certain areas.

Next, the incoming number of agents settles down by means of an AG-specific utility function which expresses the overall living preferences of an AG. The utility function is a numerical expression of the willingness of a member of the AG to live at a location, based on factors that are deemed relevant. Also here, factors can be both environmental or socio-economic. Each factor has its own AG-specific weight to account for differences in residential preferences between the considered socio-economic groups. For example, distance to public transport may be of little relevance for rich, car-owning agents (giving it a very low weight or zero), but highly important for other groups (giving the distance a strongly negative weight). By evaluating the result of this utility function for each cell, the model identifies the areas that are most likely to attract agents of the considered AG. By editing the input layers used for this evaluation, one can easily simulate the expected effect of certain policies. Also here, a random term can be added to the utility function to account for uncertainties in the housing options of agents. When an agent shifts from AG, it will also re-evaluate its residential location through its ‘new’ AG-specific utility function.

Agents first settle at grid cells with the highest utility value, then the one with the second highest utility, and so on until all agents of that AG are settled. The total number of agents possibly settling on each cell during the current time step depends on the simulation and is restricted by a maximum which depends on the amount of free space left in the cell and the predefined average space usage of the AG. The amount of free space left is the difference between the maximum space available and the space already occupied by agents. Whereas, the latter can be calculated from the number of agents living in the cell and their space usage in an initial urban residential pattern map, the former will depend on the grid resolution and building characteristics of the neighbourhood (e.g. high-rise buildings versus one-story buildings). In simple scenarios, one can use a uniformly distributed value of maximum space available. However, it is also possible to vary this upper limit between pixels. This gives the freedom to simulate specific scenarios of urban development (e.g. forbidding further construction in a given area or allowing high-rise buildings in another).

The AG with the highest ranking can first settle and the AG having the lowest ranking is the last group to settle. This to some extent allows accounting for differences in socio-economic power when agents of different AGs are competing for the same areas as a potential allocation site. For example, an AG of rich citizens will likely have an advantage over an AG of poor citizens in acquiring a residence at a given location. Hence, the rich AG is settling first, so that only the remaining free space can be taken by agents of the poor AG. This and the displacement procedure also allow ASSURE to simulate processes of social segregation. The output of the model is the AG-specific urban residential pattern for the considered time step (Figure 1), that is, data layers indicating how many agents of each AG are living in this cell. Based on the average space usage and household size, one can derive other information, such as maps of the total built-up area or population density. These output layers are also used to update the input layers for the next time step.

In case of availability of longitudinal spatial data on socio-economic status, the model can be calibrated through a sensitivity analysis of the weights assigned to the variables in the utility functions for each AG. The sensitivity of the model outcome can be analysed through varying the weights and evaluating each outcome. The weights that give the best fit between the simulated result and validation data are then used for the utility functions.



ASSURE team (2021). ASSURE (Agent based simulation of Social Segregation and Urban Expansion), Model Item, OpenGMS,


Initial contribute : 2021-02-06



Is authorship not correct? Feed back

QR Code


{{'; ')}}



Drop the file here, orclick to upload.
Select From My Space
+ add


Cancel Submit
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Localizations}} + {{htmlJSON.Add}}
{{ item.label }} {{ item.value }}
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
名称 别名 {{tag}} +
系列名 版本号 目的 修改内容 创建/修改日期 作者
摘要 详细描述
{{tag}} + 添加关键字
* 时间参考系
* 空间参考系类型 * 空间参考系名称

起始日期 终止日期 进展 开发者
* 是否开源 * 访问方式 * 使用方式 开源协议 * 传输方式 * 获取地址 * 发布日期 * 发布者

编号 目的 修改内容 创建/修改日期 作者

时间分辨率 时间尺度 时间步长 时间范围 空间维度 格网类型 空间分辨率 空间尺度 空间范围
{{tag}} +
* 类型

* 名称 * 描述
示例描述 * 名称 * 类型 * 值/链接 上传

{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
Title Author Date Journal Volume(Issue) Pages Links Doi Operation
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Add}} {{htmlJSON.Cancel}}


Authors:  {{articleUploading.authors[0]}}, {{articleUploading.authors[1]}}, {{articleUploading.authors[2]}}, et al.

Journal:   {{articleUploading.journal}}

Date:   {{}}

Page range:   {{articleUploading.pageRange}}

Link:   {{}}

DOI:   {{articleUploading.doi}}

Yes, this is it Cancel

The article {{articleUploading.title}} has been uploaded yet.

{{htmlJSON.Cancel}} {{htmlJSON.Confirm}}