2.1. Modeling Environment in Individual Behavior Simulation
The area occupied by an individual is typically important and cannot usually be ignored in micro-spatial environments because it affects the results, for example of computing of individual behaviors (e.g., extrusion, queuing) or the analysis of human-environment relationships (e.g., the number of individuals that a building can accommodate) [5
]. With this, based on the modeling requirements of environments in individual behavior simulation, the concept of the grid is advanced first, and then the method of the modeling environment with the grid object is proposed in combination with the object-oriented model.
A grid can be regarded as an extended CA cell in spatial, which can be defined as a 2.5 dimensional raster cell that has a fixed size, corresponding to a spatial location and can be expressed using semantic information [10
]. Mathematically, a grid can be expressed as follows:
denotes the geometric description of the grid and
denotes the grid’s attributes. In the GOAM, the grid is regarded as the basic spatial unit of the human-environment relationship. The spatial area occupied by an individual at a specific time is a single grid or several grids. The environmental perception of an individual is also defined by the grid.
A grid object can be regarded as a combination of grids adjacent to each other that have the same semantic information, and it includes three types of information: geometric, semantic, and connectivity relationship.
The geometric representation of the grid object is divided into point grid object (CGPoint), line grid object (CGLine), and surface grid object (CGSurface), refer to the GIS spatial data model (Figure 1
). A CGPoint object can be used to model a single independent geographic entity or to represent an individual’s spatial location at a specific time. A CGLine object and a CGSurface object both consist of multiple adjacent grids. The number of adjacent grids in the CGLine is less than two, and can be used to model linear geographic entities such as building exits or individual parameters such as the trajectory of an individual. A CGSurface object is the most common spatial morphology of individual simulation in micro-spatial environments (e.g., a room or a square).
The semantic information of the grid object is the non-spatial features descriptions of it and its contents are closely related to the requirements of individual behavior simulation. The description method can be same as the semantic representation in GIS spatial data, and the attribute domain can be restricted also.
Take the grid object as node (N), and the connectivity between grid objects as link (L), the connectivity relationship of the grid object is expressed with the graph (Figure 2
). In this way, the unit of an individual’s environmental perception can be expanded from the grid to the whole spatial environment. Consequently, an individual gains the ability to cognize the surrounding space. In addition, the unit of individual behavior (e.g., routing) can be computed from grid to grid object using specific spatial relationships. In this way, computed individual behavior becomes more convenient and the results will be more credible.
The distance between two grid objects is not a fixed value, thus the distance weight of L is an interval. To enhance the efficiency of individual behavior simulation, the distance weight between the nodes can be pre-computed and the value can be stored as a link attribute (Figure 2
). The distance between adjacent grids can be set to 1 in the horizontal direction and vertical direction and to 1.5 in the diagonal direction. The passing state of L can be divided into three types: passable, in which an individual can pass from one grid object (node) to another (node) directly; impassable, in which individuals are prohibited from crossing between two grid objects (nodes); and conditional (passable only under certain conditions), which means there are rules that govern passing between two grid objects. A passing rule can be defined as a combination of IF-THEN statements. For example, if the pass rule of a grid object is subject to a traffic light state, the conditional passing rule can be expressed as follows:
denotes the traffic light,
is the state of the traffic light, and
denotes the connection rules between the grid objects.
The procedure to obtain the grid object from the environment is: (1) Object partition based on the geometrics and semantics of the 3D model data input. (2) To obtain the grids that correspond to the geographic entities in the spatial environment. In this step, the conservative voxelization algorithm [11
] is used first to compute the voxels that correspond to the geographic entities. Voxels that occupy the same size area in the horizontal direction and are adjacent to each other in the vertical direction are merged. The upper or under surface of the merged voxels forms the geometric information of a grid object. For areas inaccessible to individuals (e.g., indoor supports and outdoor traffic lights), the grid geometric information is the upper surface of the merged voxels, while for accessible areas, the grid geometric information is the under surface of the merged voxels. (3) To assign attribute values to each grid objects. The height of the merged voxels can be stored as an attribute value of the grid also. (4) To construct a network with the grid objects and to define the passing state and the distance weight of each link.
There is also a special kind of grid, boundary grid, in the grid object. A boundary grid can refer to two types of grids. The first is a grid to which several grid objects belong in space. The second is a grid to which only one grid object belongs and which is adjacent to another grid object in space. A boundary grid is a transition zone through which an individual moves from one grid object to another. Boundary grids play an important role in simulating individual behavior. When an individual enters a boundary grid, its behavior state may change. For example, when an individual enters a pedestrian crossing, its behavior state may change from “walking” to “wait” while the traffic light is red. The boundary grids can be searched based on a traversal of all the grid objects and grid objects adjacent to a boundary grid or that belong to it will be stored as attributes.
2.2. Modeling the Human in Individual Behavior Simulation
Based on the agent model in MAS, modeling the human in the GOAM involves three factors: an individual’s attributes, a method for environmental perception, and rules for the individual’s behavior.
Individual attributes are the set of characteristics encapsulated in the agent. Individual attributes include spatial location, physical attributes, and behavioral attributes. Individual physical attributes are those that distinguish an individual from others through appearance and physical parameters (e.g., age, gender, body weight, position, velocity). Individual’s behavioral attributes include both behavior states (e.g., waiting, walking, running) and behavior parameters (e.g., start position, target, response time to an emergency, familiarity with the spatial environment). In contrast to the traditional MAS model, an individual’s attributes in the GOAM are based on the grid object, which means that the individual’s position at any given time is a specific grid. The grid, the grid objects it located and the grid objects it is adjacent to can be obtained with the individual’s position also. Besides that, the motion parameter of individuals in the GOAM was given some limits. First, the speed of an individual was limited to a multiple of the grid size. That is, the distance over which an individual moves must be an integer multiple of the grid size. Consequently, the time division method during individual behavior simulation must be discretized also. That is, the computation time is not continuous but discretized in the GOAM.
Environmental perception is a dynamic process in which an individual observes the surrounding environment to obtain semantic information. Environmental perception includes two factors: static environmental perception and dynamic environmental perception. Based on the grid where an individual is located, the static environmental perception can be calculated using the distance between static geographic entities and the individual in 3D space, allowing an evaluation of whether a geographic entity can be perceived by that individual. There are two types of dynamic geographic entities in individual behavior simulation. One is emergencies (e.g., fire or bioterrorism), the impact of which can be computed using an emergency model using surface grid objects with a time parameter. When an individual perceives an emergency, it will respond according to its behavior rules. The other type of dynamic geographic entity involves other moving individuals in the space. Because individuals are in constant motion, but move at different speeds and directions, an individual’s perception of other moving individuals can be computed using their dynamic physical motion parameters [8
]. The scope of an individual’s environment perception in the GOAM is also restricted to an integer multiple of the grid size.
An individual’s behavior rules form guidelines for that individual’s motion. The types of individual behaviors are diverse and include such factors as following behavior, obstacle avoidance behavior, aggregation behavior, and so forth. The diversity of individual behaviors is necessary for analyzing simulation because it allows the consideration of the behavioral characteristics of different individuals in different scenes. The main steps of constructing individual’s behavior rules in GOAM are: (1) Analyzing the behavior characteristics of each individual (
), and classifying their behavior states (
). For example, according to the characteristics of individual movement, individual behavior can be divided into
; (2) Combining with environment modeling and individual behavior characteristics, the individual’s behavior rules can be designed by using IF-THEN statements [12
Besides that, because the environmental model in the GOAM includes three levels (grid, grid object, and grid object network), individual behavior rules in the GOAM are also constructed according to these three levels. This means that the individual behavior rules in the GOAM can also have hierarchical characteristics, which have a definite correspondence to the psychology of individual behavior [13
2.3. Interactions between the Human and the Environment in the GOAM
The GOAM is an integration of human models with environment models as discussed in the two preceding sections (Figure 3
), which means that the GOAM involves three aspects. First, the environment model consists of grid objects. Second, the human models are expressed through individuals and simulated with agents. Third, there are interactions between humans and environments. The primary GOAM equation is
describe the environments and
describe the humans. The function
denotes the interaction between human and the environment. In addition,
includes the concepts of two types of perception. One is the perception from the environment to the human (
) and the other is the perception from the human to the environment (
The perception of to can be accomplished either proactively or passively. Given the location of an individual, obtaining the attributes of the grid or grid object where that individual is located is the common method of proactive perception. Obtaining information about adjacent grid objects through spatial analysis (e.g., a buffer) is also a method of proactive perception. Passive perception can be accomplished by associating with a predefined field. When the value of the predefined field changes, the region of affected is computed first, and then, the individuals influenced can be searched using predefined rules. Finally, the message can be transmitted to specific individuals. An perception of occurs mainly through proactive spatial analysis in the GOAM, which means that the overlapping area is computed using the spatial locations of and at a specific time or over a period of time. If the overlapping area is not null, the can perceive the .