Agent-based Model for Simulating Urban System

In this paper, we address the issue related to the modelling and simulation of urban systems. We propose a new approach for simulating urban system based on multi-agent paradigm. Our proposed model is based on the use of a coupling between cellular agents and vector agents. These agents made it possible to take into account the spatial dimension of urban systems as well as the modelling of all the rules that govern them. To allow reusability of our model, we apply the VOYELLE approach by defining an environment model, an organization model, an agent model and an interaction model. We test our proposed model with a case study on Casablanca city. We discuss the problem of urbanization of Casablanca by following an approach that reduces the problem into two sub-problems similar but are treated differently: first, predict the city’s need of housing (individual housing zone, multifamily housing zone, ...) and then anticipate the city’s need of public services and ensure better spatial distribution of these equipment to best serve the people needs. Then we did experimentation with two simulation scenarios by changing in each scenario the hypotheses concerning urban planning especially in terms of demographic growth rate and residential sprawl. Keywords—Multi agent systems; simulation; modelling; urban system; cellular agent; vector agent


I. INTRODUCTION
In the literature, there are several simulation techniques of complex systems: micro simulation [1], cellular automata [2] [3] and the object-oriented [4] simulation. However, when the system reaches a certain level of complexity, these techniques are insufficient, first to model the system dynamics and the interactions between the elements, and secondly, these techniques do not allow the system representations at different levels (micro / macro) and does not explain the emergence of space-time structures.
To overcome these problems, a new trend has emerged in recent years: the agent-oriented simulation [5] [6] [7] that took considerable development and it is now used in a growing number of sectors, where it is gradually replacing other simulation techniques. Indeed, the multi-agent systems can simulate systems with spatial component by representing the spatial dimension with the agent's property "situated" in an environment and so they can represent the space-time environment where agents are evolved. They also offer the ability to model the endogenous dynamics of the system and the interactions between the different agents. Some studies [8] used the concept of cellular agent to describe the geographical area as a cell. More recent studies use the vector agent [9] that describes the space along a well-defined geographical form (point, line or polygon).
In this paper, we use a new approach based on a coupling between both the cellular agents and vectors agents to describe and simulate the spatial systems. We focus on the urban system that can be considered as a spatial system in which several elements involved in its organization.

A. Multi-agent Paradigm
Agent is defined by Ferber [10] as autonomous entity, real or abstract, which is able to act on itself and on its environment. In a multi-agent universe, this entity can communicate with other agents, and whose behavior is the consequence of its observations, knowledge and interactions with other agents. Therefore, messages between agents differ from messages between objects because: • Agent is autonomous and decides on his own process whether or not to perform a required action.
• Agents have their own goals and act proactively to achieve theme.
• Agents are capable of social behavior: engaging in complex interactions.
A multi agent system is composed of the following elements [10]: • An environment E, it's a space generally having a metric.
• A set of objects O. These objects are located. For any object, it is possible to associate a position in E. These objects are passive; they can be perceived, created, destroyed and modified by the agents.
• A set A of agents which are particular objects, which represent the active entities of the system.
• A set of relations R which unite objects (and therefore agents) between them.
• A set of operations Op allowing agents of A to perceive, produce, consume, transform and manipulate objects of O.
• Operators responsible for representing the application of these operations and the reaction of the world to this attempt at modification, which will be called the laws of the universe.
To design a multi-agent system, it is not enough to place several agents in the same environment, it is also necessary that these agents interact. The analysis and development of a multi-353 | P a g e www.ijacsa.thesai.org agent system require taking into account multiple dimensions. In the Vowel AEIO approach [11], four dimensions are identified: Agent, Environment, Interactions, and Organization.

B. Simulation Theory
Simulation is a very active branch of computer science that involves analyzing the properties of theoretical models of the surrounding world. According to Ferber, numerical simulation is a representation of reality based on the underlying theoretical model [12]. The goals of the simulation are: • Better understanding of the system; • System performance measurement; • Sizing / optimization of production systems (before / after completion); • Identification of critical factors; • Response to the questions "What happens ... if ...?"; • "Real time" decision support tool (during operation); • Staff training tool (flight simulators, choice simulators, etc.).
Simulation techniques have been applied in several fields, especially in the urban field. The term urban simulation is used to denote the attempt to reproduce urban dynamics [13]. These are often simulation approaches based on cellular automata that are proposed in the literature [14], but we also find some cases which deal with the problem with agent-based models [15]. Modeling and simulation then concern the various processes relating to urban development.
Geosimulation, is a recent sub-category of urban simulation in which we manipulate individuals (humans) and infrastructure entities at unmodifiable spatial scales such as houses, households and plots [16] [17]. An urban microsimulation is not necessarily a geosimulation. For example, in Urbansim [18], as well as in the work of Miller's team [19], the simulation of urban systems was done using representations of elementary units at the microscopic scale, except that these units are not spatial objects [20]. The term "micro" is used here to designate data disaggregated on a regular partition of space at a certain scale defined by the needs of the model, but not necessarily that relating to the objects of the analysis.

III. SIMULATION OF SPATIAL SYSTEMS
The modeling and simulation of spatial systems have been developed in the literature using several approaches. These include cellular automata, cellular agent and vector agent.

A. Simulation by Cellular Automata
The concept of Cellular Automata (CA) has been defined as the interconnection in a space of a set of automata with finite number of states. It is a regular grid of cells, each cell can be found in a finite number of discrete states with no discrete time during its evolution. The principle of the cellular automaton is the following: • To each cell is associated a state, described by one or more variables [21]; • At each discrete time, the same rules are applied simultaneously to all the cells of the grid: the new state of a cell depends on its state at the previous time and state of the cells in its neighbourhood [3]; • The description of the operation of a cell is given by a graph called a state diagram. All cells are built on the same pattern. The state diagram is characteristic of the entire cellular automaton.
• The definition of a cellular automaton is relatively simple but the result of his behaviour can be very complex.
The cellular automata approach has been very successfully used in simulating complex systems. Indeed, the CA allow the modeling of complexity, they are flexible, they are easy to interpret, they have a certain affinity with geographic information systems (GIS) due to their nature "raster" and are relatively simple tools [3]. Despite the benefits of the cellular automata, they are not adapted to simulate the spatial component of complex systems due to their low correspondence with the spatial and urban theory and lack of attention to detail [3]. Indeed, spatial complex systems integrate a wide variety of space objects that interact nonlinearly and with a complexity that exceeds the cellular automata. Thus, some researchers have considered it's necessary to resort to other approaches to model the spatial dynamics and in particular cellular agents [22] defined below.

B. Simulation by Cellular Agent
Ferber in [12] considers Cellular Agents (CAg) as special multi-agent systems where cellular agents are surface elements contiguous and fixed. Cellular agent has a goal to fill with spatial characteristics. It is able to access and manage spatial information to solve the appropriate tasks [8].
Unlike cellular automata, the cellular agents occupy positions in a two-dimensional grid of cells and the distance between them affect their interactions [23]. This is called intelligent, autonomous cells that interact to achieve their own goals [24]. Simulating cellular agent also has the advantage of integrating cellular agents with geographic information system [25].
Several studies have used the cellular agent's approach [14,26,27,28,29]. However some of these works have shown some limitations of cellular agents. Indeed, cellular agents are limited by the shape of the cells that do not provide a good model of irregular objects in space and neighbourhood relations. Thus, some authors have opted for a different approach to model geometric forms of space, which is the vector agent.

C. Simulation by Vector Agent
A multi-agent system with spatial component may include a vector modelling space. In this case each spatial agent has no limit in shape and size [30]. We call such agent a vector agent (VAg). Vectors agents allow for more realistic modelling of geographic space as cellular automata or cellular agents. Indeed, CA and CAg represent the geographic space into several cells while VAg may represent a definite spatial entity [31]. In addition VAg may have an infinite number of 354 | P a g e www.ijacsa.thesai.org neighbours without distance limitations [31]. In the case of the cellular automata, transition functions must be applied only to the immediate neighbours (typically 8 cells) and a cell cannot be affected by neighbours being at a greater distance. This simulation technique by VAg can be a good approach to reproduce the classic urban theories, each class of space objects with its own transition rules and neighbourly relations that can be defined in several ways depending on the real world. The VAg offers the ability to change the geometry by simply altering parameters [32]. Finally VAg can represent realistically the complexity of geographical space and simulate the interaction of objects in the space [33].
Few studies to date are based on the vector agent approach. For example, those of the IGN (French National Geographic Institute) are among the most remarkable in the field of automatic cartographic generalization [34,35,36,37]. In [38] Researchers have developed a prototype in which map objects become "cartographic agents" have methods to manage conflicts of mapping example.

A. Simulation Objectives
By studying the urban system, we detected two main challenges facing the city: • The habitat: the city must control urbanization and housing. Indeed, during the urban planning of the city, the residential areas to create must be defined in a clear urbanization policy to install the new population.
• The public services: the objective of urban planning is to make cities well equipped by a set of public services and facilities (schools, hospitals, sports grounds, etc.) to meet the needs of the inhabitants. Also, these public services must be well distributed spatially to ensure equitable access to the entire population.
To simulate the evolution of the urban system, we followed an original approach, which consists in basing the analysis on the examination of concepts associated with the processes of population growth and urban development: • The demographic growth rate: this parameter defines the evolution of the population within cities. This rate may change from one municipality to another; • Annual residential sprawl: this is a parameter that makes it possible to calculate and estimate the way in which the built urban space evolves or is created. It is calculated from statistics on the authorized projects in the city; • Public services: depending on the territory studied, there are standards that specify the number of facilities to be created per number of inhabitants and their areas (for example: create a school for each 8,000 inhabitant with a minimum surface area of 4000m²).
The objective of our simulation model is to present a tool that helps in the urban planning, by simulating the city according to three aspects: 1) Housing aspect: Simulate the needs of the city in terms of housing (individual housing, collective housing ...); 2) Public services aspect: Simulate the needs of the city in terms of public services (schools, hospitals, sports field, mosque, etc.); 3) Spatial equality aspect: Simulate the best spatial distribution of public services to guarantee equitable accessibility to the entire population.

B. Proposed Model
To simulate the evolution of the urban system, we propose an approach based on the coupling between cellular agents and vector agents as shown in Fig. 1.
• The cellular agent will represent the continuity of the geographical space by a two-dimensional grid of contiguous and fixed agent cells.
• The vector agent will represent the geographic objects in space with a well-defined geometric shape in the form of a point, line or area.
In the Fig. 2, we present an agent based model for simulating urban systems. The advantage of the use of Cellular agent and vector agent is to benefit from these two types of agents to represent the urban space. Indeed, the cellular agents will allow representing the spatial continuity of geographical space. Each cellular agent will have information about the land use. While the vector agents will allow to represent the environment's vector objects (as point, line or polygon). For example, we can represent by t agent urban road, public services, schools.  To enable reuse of our model, we will apply the VOWEL approach [10] to describe the modelling of the four components of multi-agent systems include: the environment, the organization, the agents and the interactions.

C. Modelling of Environment
We consider that the environment is a heterogeneous environment composed by agents and objects. Agents will perceive, communicate and evolve while the objects will simply produce influences in a fixed radius. The environment in which the agents evolve is a continuous Euclidean space. It's a space with a geographic reference system and projection system. Fig. 3 presents the environment modelling.
The environment of our system is the urban system composed with: • Spatial agents: represent cellular agent and vector agent of the system that communicate and interact to achieve the simulation.
• External agents: represent non-spatial agents that interact to achieve the simulation.
• Objects: represent all spatial object of the urban space.

D. Modelling of Organization
According to Ferber [5], the organization is both the medium and the manner how are the interrelations between the agents. We mean by interrelation delegation of tasks, information transfer, commitments, timings of shares, etc. To study the organization of our system, we will apply the Ferber approach which is based on three components: organizational levels, functional analysis and structural analysis.

1) Organization levels:
We modelled the urban system in three levels as shown in Fig. 4: • Macro level: This level corresponds to the city as a whole consists of communes and districts.
• Meso level: This level corresponds to the communes or districts, which consists of a cell aggregation.
• Micro level: Contains the basic element of the simulation "cell". Each cell has a state (nude, built ...) and potential (urban potential, industrial potential…) and may optionally include a service.

2) Functional analysis:
In order to achieve objectives of the organization, all activities that agents are supposed to exercise should be described. This is called Role. To model the roles of an organization, we can either explore the role from the point of view of the agent that acts (agent centred) or from the point of view of the organization (organization centred).
• Agent centred view: In this view the agent is seen as a stable entity to which roles are temporarily attached.
• Organization centred view: In this vision, the role is a stable entity and agents are attached to it.
In the context of our research, we chose the method of agent centred view. Indeed, we will define the set of roles (functions) that each agent plays. We present in Table I the roles of agents in our simulation model.

3) Structural analysis: The goal of structural analysis is to
give an order to all the possible interactions between agents by identifying the abstract relationships that link them, and how they evolve over time. It define the relationship between the function of the agent and the function of the organization to which it belongs. We present in Table II the various relationships between the agents of the simulation model:

E. Modelling Agents
To model the agents of our system, we opted for the AUML approach: • Manager Agent: It is a reactive agent. This agent is responsible for the initialization of the simulation. It creates and acts on all environmental agents. It interacts with the "scheduler" agent to determine the scheduling of its acts on the agents as shown in Fig. 5.
• Cellular Agent: This is the basic agent of the simulation system. It is a cognitive agent; its decisions are motivated by specific goals that reflect a perception and a logical representation of its environment. It is the spatial entity that constitute the environment, it has: a "state" attribute that contains information about the land use can take the following values (bare land occupied land), a "zonning" attribute which contains the allocation of zoning (residential zoning, industrial zoning,…), potentiel_urban attribute, potentiel_equip attribute, potentiel_environnement attribute, these attributes vary between 0-3 and indicate the cell potential to be intended for urbanization, receiving public service or to be kept in green space, … as shown in Fig. 6.
• Vector Agent: It is a cognitive agent that has knowledge about its environment and reacts to this environment. The simulation technique by cognitive agent is a good approach to find the best location of each vector agent in the urban system. It has goals to accomplish for its own satisfaction (the best location) and a set of behavioral rules that dictate the way it interacts with other agents in the system as shown in Fig. 7.   • Scheduler Agent: It is a reactive agent. Its role is to schedule the actions of Decision Maker Agents in the environment as shown in Fig. 8.
• Decision Maker Agent: It is a cognitive agent. It represents the user of the simulator that can proceed different simulation scenarios by changing the simulation parameters as shown in Fig. 9.

F. Proposed Architecture
To implement our simulation model, we chose the platform Repast Simphony [39] for multi agent system and ArcGIS [40] for GIS data. Fig. 10 presents our proposed architecture: The proposed architecture consists of the following layers: • Presentation Layer: It is the part of the visible and interactive application with users. Repast Symphony's plugin uses the Application Framework (SAF), which provides a set of plugins for the configuration of the interface.
• Occupation Layer: It corresponds to the functional part of the application, the application that implements the "logic", which describes the operations that the application operates on data based on user requests made through the presentation layer.
• Data Access Layer: It consists in managing party access to system data. Repast simphony uses Freeze dryers module that provides persistence in xml and text formats (allows you to send and receive the status of the simulation from a secondary storage such as shp file, xml file, ...).
• Data storage: data is stored either in Geodatabase or in shapefile file (.shp).
In Fig. 11, we present the project environment in Eclipse.

V. EXPERIMENTATION AND RESULTS
The urban simulator that we are developing must provide some answers to the following questions: • How can the urban system evolve at the municipal level?
• What is the impact of the urban growth rate on the system?
• How can an urban planning policy influence the evolution of the system?
• What is the best spatial distribution of public facilities?
To answer these questions, we went to test the simulator according to two scenarios: A. Scenario 1 In this scenario, the decision maker -experimenter specifies the files zoning and services and chose the simulation time step (1 year, 5 years or 10 years) and then run the simulation. In this case, the simulation is based on real urban parameters of the city (population growth rate, residential sprawl ...). According to the study of the urban system of Casablanca, the municipality "Dar Bouazza" has the following real urban parameters: • Demographic growth rate: 9.8%.
These parameters are read directly from a file from the GIS, we present in Fig. 12 the map of "Dar Bouazza" at t = 0 and the result of the simulation after 10 years in Fig. 13.
By applying a 10-year simulation, we obtain the following result.
We note that with the current urbanization rate, after 10 years the consumption of space in "Dar bouaaza" would be only 31%. At the end of the simulation, approximately 3100Ha of bare land remains. With the demographic growth rate of 9.8%, the population of "Dar Bouaaza" would be of the order of 680,000 inhabitants after 10 years. This demographic increase will require the installation of new public services as indicated in Table III.

B. Scenario 2
In this scenario, the decision maker -experimenter is able to change parameters of the system: population growth rate, multi-family residential sprawl, individual residential sprawl and collective housing sprawl. The experimenter specifies the files zoning and services and chose the step of the simulation (1 year, 5 years or 10 years), set urban parameters then run the simulation.   We will now test a simulation scenario where the urban planner chooses to focus "Dar Bouaaza" to be an area dedicated mainly to the multifamily housing. He chooses as a multi-family residential sprawl high compared to others and a demographic growth rate higher than the first scenario: • Demographic growth rate: 12%.
• Residential sprawl of individual housing: 300 Ha.
We present in Fig. 14 the initial state of the simulation at t=0. We observe in Fig. 15 that after 8 iterations (8 years) the space in "Dar Bouaaza" is completely consumed.
We note that after 8 iterations, the urban space of "Dar Bouaaza" is totally consumed. We conclude that with the urban parameters chosen by the decision-maker, "Dar Bouaaza" will be saturated after eight years and will no longer be able to receive new urban projects.
By applying a 1-year simulation 8 times, we obtain the following result: 359 | P a g e www.ijacsa.thesai.org  With the chosen demographic growth rate, there will be a significant demographic increase which will require the installation of new public services as indicated in Table IV.

C. Discussion
The results of a simulation are considered valid if firstly, the simulated habitat zoning coincides with that provided for in the development plan of "Dar Bouaaza" produced by the town planners. Secondly, if a service created is placed at a given location which is close to the position planned in the development plan.
To validate the results of our simulator, we will rely on the development plan of "Dar Bouazza". Indeed, this plan has been developed based on certain assumptions which are: the municipality of "Dar Bouazza" is a peripheral urbanized area on which the balance of the functional structure of the city Casablanca. It's an urban pole that will guarantee urbanization of a part of demographic growth of other municipalities.
According to the development plan, we will simulate the municipality "Dar Bouazza" using the following parameters: • Step time: 10 years.
• Residential sprawl of individual housing: 165.2 Ha.
To evaluate the results of the simulator, we do a geographical intersection between the exported layer from the simulator and the development plan layer to identify areas of change. Results are presented in Fig. 16. In Table V, we present the surface areas and percentages change between the simulator results and the development plan produced by urban planners.
We conclude that the simulator has a percentage of accuracy about 80% for the simulation of residential areas.
To evaluate the results of the simulation of services, we chose to test an example of educational service which is schools. The development plan of "Dar Bouaaza" provided the creation of fifty schools across the territory of the municipality. 360 | P a g e www.ijacsa.thesai.org In the context of our simulator, vector agent "service" of school-type is created in accordance with a set of rules which are: a school must be created in a residential area, a school must be created away from any source of pollution (industry, waste disposal ...), a school has to be created close to some attractive equipment (library, theatre, ...), a school must be served by road with a width that does not exceed 40m, the maximum distance between two schools should not exceed 500m because a child cannot walk more than 500m, etc.
After an interaction between the different agents of the system, the "Service" agent finds the best location. To evaluate the spatial distribution of the results, we applied a buffer zone on simulated schools and schools planned by the development plan of "DarBouaaza" and then we identified the points that don't coincide, the result is presented in Fig. 17. The schools planned by the simulator that do not coincide with those in the development plan are presented in Fig. 18: Among 55 schools to be created, there are 19 schools that have a spatial position that does not coincide with the schools planned in the development plan of "Dar Bouaaza", which gives a percentage of accuracy of 65% simulator.

VI. CONCLUSION
The simulation of urban system is a broad field that can be approached from several perspectives. In our research, we focused on the characteristics of the agent paradigm to simulate these systems. Thus, we have proposed a new approach based on the use of cellular agents and vectors agents to represent the spatial area. We tested our proposed model with a case study of "Dar Bouaaza" municipality. We run two simulation scenarios by changing in each scenario the hypotheses concerning urban planning especially in terms of demographic growth rate and residential sprawl. However, the model can be extended to simulate other urban planning aspects such as the infrastructure, industry zoning and natural spaces.