A method for simulating social small group behavior movement based on an ORCA model
By introducing a closeness function and a leader-follower model into the ORCA algorithm, the closeness and leadership among members within a small group are quantified, which solves the problem of insufficient influence of small group interactions when simulating crowd movement in the ORCA algorithm, and improves the realism and applicability of the simulation.
Patent Information
- Application Number
- CN202411510470.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-28
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2044-10-28
AI Technical Summary
Existing ORCA algorithms fail to reflect the specific impact of small group interactions on individual behavior when simulating crowd movement in complex environments, thus affecting the realism and reliability of the simulation.
We construct a closeness function and a leader-follower model, combine alignment and aggregation rules to quantify the closeness and leadership among members within a small group, and integrate them into the ORCA algorithm to simulate the behavior of social small groups.
This improves the realism and applicability of the ORCA algorithm in simulating crowd behavior, enabling it to demonstrate the mutual constraints and leadership influence within the group, and to combine collision avoidance behavior with group cooperative movement.
Smart Images

Figure CN119475980B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of crowd simulation modeling technology, specifically involving a social small group behavior motion simulation method based on the ORCA model. Background Technology
[0002] Crowd movement simulation technology, as a simulation technique integrating knowledge from multiple disciplines such as computer science, mathematical modeling, sociology, and psychology, aims to explore and predict the behavior and movement patterns of crowds in various environments, and is crucial for public safety, urban planning, and the optimization of emergency response mechanisms. Currently, crowd movement simulation technology is mainly divided into two categories: micro-models and macro-models. Micro-models focus on the accurate simulation of individual behavior, while macro-models study the overall movement trends and characteristics of crowds from a holistic perspective. The RVO (Reciprocal Velocity Obstacle) model is a micro-model for solving the agent collision problem in dynamic environments. This algorithm avoids collisions by predicting potential collisions and adjusting the agent's path accordingly. However, when two individuals moving towards each other choose to avoid a collision on the same side, it leads to the risk of collision. The ORCA (Optimal Reciprocal Collision Avoidance) algorithm, as an improved version of RVO, introduces the "optimal reciprocity" principle, improving obstacle avoidance efficiency in complex environments. However, in terms of group behavior interactions in complex environments, it is difficult to reflect the specific impact of small group interactions on individual behavior, thus affecting the realism and reliability of the simulation.
[0003] Group behavior simulation is an important method for studying the collective behavior of human societies, animal groups, or microscopic particles. It is typically based on simple rules followed by individuals and local interactions, resulting in complex global behaviors. In simulations, individuals are usually influenced by other individuals within the group, leading to the formation of collective behavioral patterns. Group behavior simulations include models of bird flocks, fish schools, animal migration, crowd evacuation, and traffic flow, with aggregation behavior and leader-follower behavior being important aspects. Furthermore, group behavior research must consider the social attributes of individuals and their social relationships; different attributes and social relationships influence the ways individuals interact and their behavioral choices. Summary of the Invention
[0004] The purpose of this invention is to provide a method that integrates the aggregation behavior and leadership behavior within small groups into the Optimal Reciprocal Collision Avoidance (ORCA) algorithm framework to simulate the interaction behavior within small social groups in a crowd.
[0005] To achieve the above objectives, the technical solution of this invention is as follows: First, a closeness function is constructed to quantify the closeness among internal members by considering different social relationships and their spatial distance, thereby dynamically reflecting changes in the intimacy of relationships among members. Simultaneously, alignment and aggregation rules are combined to constrain the behavior of the group to simulate the aggregation behavior within a small social group. Second, roles are modeled based on a five-person personality model, and corresponding leadership abilities are assigned to different individuals to simulate follower behavior within the group. Finally, small group aggregation behavior and leader-follower behavior are integrated into the ORCA algorithm to jointly drive crowd movement. Results show that this invention can demonstrate the mutual constraints and leadership influence within a group during crowd movement simulation.
[0006] The beneficial effects of this invention are:
[0007] 1. This invention improves upon the ORCA model by incorporating small group behavior into the model to influence individual speed decisions, thereby combining collision avoidance behavior with group coordinated movement and enhancing the applicability of the original model.
[0008] 2. This invention constructs a group behavior aggregation model based on two behavioral rules: alignment and aggregation. It describes the social relationships between groups through a dynamically changing intimacy model, which can simulate the interaction and dynamic interaction between members of small groups during the aggregation process.
[0009] 3. This invention constructs a leader-follower model that embodies leadership, and describes an individual's leadership traits through five personality dimensions, forming a role model based on the five-personality model. The combination of the leader-follower model and the ORCA algorithm can demonstrate the leader's influence on the group when simulating group behavior.
[0010] This invention improves the applicability of the ORCA algorithm, making it more realistic in simulating crowd behavior. Simulation experiments have verified the effectiveness of the method in this invention. Attached Figure Description
[0011] Figure 1 This is a flowchart of the small group behavior simulation method based on the ORCA model of the present invention.
[0012] Figure 2 A graph showing the dynamic changes in the intimacy of social relationships within small groups;
[0013] Figure 3 For the leader-follower model diagram;
[0014] Figure 4a and Figure 4b ORCA collision avoidance speed decision graph to incorporate group behavior;
[0015] Figures 5a-5dThe distribution map of the crowd's location at different times during the evacuation (α=0.5);
[0016] Figures 6a-6d A graph showing the changes in distance and intimacy in different social relationships during the evacuation process;
[0017] Figures 7a-7c The evacuation trajectories of pedestrians during the evacuation process (α = 0.3, β = 0.3) Detailed Implementation
[0018] The technical solution of the present invention will be further described in detail below with reference to the accompanying drawings.
[0019] This invention discloses a method for simulating the behavior of small social groups based on the ORCA model. Figure 1 This is a flowchart of the social small group behavior simulation method based on the ORCA model of this invention. Specific steps include:
[0020] Step 1: Develop rules for the speed of aggregation behavior within small groups and define a function to measure the social intimacy between individuals based on the strength of close relationships between small groups. Based on this, establish an aggregation behavior model.
[0021] Step 2: Model the leader role based on the five personality traits model, identify the group leader, and establish a leader-follower behavior model;
[0022] Step 3: Combine the two group behaviors into the ORCA algorithm to achieve collision avoidance in group behavior interactions;
[0023] Step 1.1: Calculate the alignment speed using alignment rules;
[0024] Each individual attempts to maintain the average speed and direction of its neighbors. When most neighbors are moving in a particular direction, the individual will also adjust its speed to match that direction. For individual i in the group, assume its set of neighbors is N. (i) n is the number of surrounding neighbors, v j If the velocity of the j-th neighbor is given, then the alignment behavior of individual i can be expressed by the following formula:
[0025]
[0026] in This represents the speed adjustment required based on alignment rules. The formula effectively calculates the speed adjustment for individual i, bringing its speed closer to the average speed of its neighbors, thereby promoting coordinated movement across the entire group.
[0027] Step 1.2: Calculate the aggregation rate using aggregation rules;
[0028] Individuals tend to move to the average location of their surrounding neighbors, thus promoting overall group cohesion. For individual i in the group, its location is denoted as p. i Assuming n is the number of neighbors of individual i, and the set of neighbors is N(i), the aggregation rule can be expressed by the following formula:
[0029]
[0030] in It is the speed that needs to be adjusted based on the aggregation rules, p i and p j These represent the current position of the individual and its neighbors. When neighbors exist, the formula calculates the velocity towards their average position; when there are no neighbors, the velocity is adjusted to 0. This ensures the individual maintains its current state when there are no other individuals nearby, and moves towards the center of the group when there are other individuals.
[0031] Step 1.3: Calculate the aggregation rate based on the two behavioral rules;
[0032] The final velocity of individual i at time t+Δt is adjusted by the current velocity and the velocity based on aggregation. And alignment-based speed adjustment Together, we determine that the position at time t+Δt is determined by the current position plus the velocity change within this time step Δt.
[0033]
[0034] p i (t+Δt)=p i (t)+v i (t+Δt) (4)
[0035] Where v i (t+Δt) is the velocity of individual i at the next time step, p i (t+Δt) is the position of individual i at the next time step, and Δt is the next time step size. Equations (3) and (4) constitute the basic dynamic model describing the behavior of the group. The update of velocity reflects the individual's response to the movement of its neighbors, while the update of position is the cumulative result of these velocity changes.
[0036] Step 1.4, define an intimacy strength function I. ij (x) is used to quantify the intimacy between simulated individuals;
[0037] Where i and j represent different individuals, and x represents the distance between them. The strength of intimacy can be represented by a Gaussian function:
[0038]
[0039] Where a ij Indicates the peak value of intimacy; b ij This represents the distance between two individuals when their intimacy reaches its peak; c ij Describes the rate at which intimacy diminishes.
[0040] In pedestrian simulations, there is typically a so-called "social distance," within which the intimacy between individuals increases as the distance decreases, but once a certain distance (i.e., b) is exceeded... ij Intimacy will begin to decrease.
[0041] Table 1. Intimacy Relationship Parameter Settings
[0042]
[0043] As shown in Table 1, according to Hall's theory, social distance between people can be categorized into family, friends, and general relationships, with corresponding parameters set. Parameter a ij The larger the value, the greater the intimacy between individuals; parameter b ij A smaller value indicates that the two are closer when their intimacy level reaches its peak; for c ij A larger value indicates a slower decline in intimacy, reflecting the continuity of intimacy. Its dynamic trend is as follows: Figure 2 As shown.
[0044] Step 1.5, incorporating the effect of intimacy when individual i gathers with other individuals in the group.
[0045] The update is performed according to equation (3), and the intimacy strength between individuals i and j at time t is I. ij (t,x), distance x is |p j -p i The individual speed influenced by small social group aggregation behavior is:
[0046]
[0047] Step 2.1: Use the five-person personality model to define the pedestrian's role;
[0048] First, the OCEAN model was used to model the personality traits of pedestrians. It includes five main dimensions: Openness to Experience, Conscientiousness, Extraversion, Agreeableness, and Neuroticism. These five dimensions together constitute a model for describing personality traits, and the score on each dimension reflects an individual's tendency and behavioral patterns toward that trait.
[0049] Leadership is related to three of the five personality traits: conscientiousness (C), agreeableness (A), and neuroticism (N). Specifically, C and A are positively correlated with leadership ability, while N is negatively correlated. Role modeling is performed based on these three dimensions, using ψ... c ψ a ψ n These represent the three dimensions of the model. Individual differences in personality traits are represented by a Gaussian distribution function G, with a mean of μ and a standard deviation of σ. 2 .
[0050] ψ ε =G(μ,σ) 2 (7)
[0051] Where μ∈(0,1), σ 2 ∈[0, 0.1], ε∈(C,A,N). Therefore, the individual's leadership tendency α leader It can be represented as
[0052] α leader =ω c ψ C +ω a ψ A +ω n (1-ψ N (8)
[0053] Where ω c ω a ω n ω represents the weights of the feature values in each dimension. c ω a ω n ∈[0,1].
[0054] Step 2.2, calculate the leader-follower behavior velocity;
[0055] like Figure 3 As shown, pedestrian behavior is influenced by leaders in two ways. On the one hand, followers tend to move towards the leader's location, reflecting their tendency to imitate the leader's behavior. On the other hand, followers move in the same direction as the leader, demonstrating a tendency to actively adjust their behavior to keep pace with the leader.
[0056] The speed at which individual i is influenced by its leader (v) il It can be calculated using the following formula:
[0057] v il =ρv l +(1-ρ)n il (9)
[0058] Where v lThe speed of the leader of individual i, n il This represents the direction vector from which individual i points to its leader.
[0059] The distance d between individual i and its leader ij The value of the influence factor ρ is determined by the following formula:
[0060]
[0061] Where δ is a constant. When d ij When d is larger, ρ is smaller, indicating that individual i tends to move towards the leader. Conversely, when d is larger... ij When ρ is smaller, individual i tends to follow the leader's velocity direction.
[0062] The speed at which individual i is influenced by the leader factor can be further expressed as:
[0063]
[0064] α leader The higher the value, the stronger the leader's influence, and the more attractive the leader's movements or behavioral decisions are to followers.
[0065] Step 3: Combine the two group behaviors into the ORCA algorithm to achieve collision avoidance in group behavior interactions;
[0066] Step 3.1: Calculate the collision avoidance half-plane for all neighboring agents using the ORCA algorithm;
[0067] ORCA is a highly efficient collision avoidance algorithm for multi-agent systems. It can handle complex dynamic environments well and is suitable for scenarios such as crowd simulation and robot group collaboration. Its core idea is to transform the crowd collision avoidance problem into solving an optimal velocity problem on a half-plane. By considering the collision avoidance behavior of individuals and the corresponding set of feasible velocities, the velocity direction is confined to the half-plane; as long as the individual's velocity falls within this half-plane, a collision can be avoided.
[0068] (1) Velocity Obstacle: Based on the perceived information (position, velocity) of neighboring agents, calculate the velocity obstacle (VO) for all neighboring individuals. For agents A and B, the velocity obstacle is... Defined as the set of velocities that may lead to a collision within time τ.
[0069]
[0070] In the formula D(p) B -p A ,r A +r B) indicates a radius of r A +r B The center is p B -p A Open disk; r A r B Let p be the radii of agents A and B, respectively; A p B These are position vectors, representing the positions of agents A and B in space.
[0071] (2) Optimal reciprocal collision avoidance speed: Agent A based on Generate a set of optional velocities for each neighbor to avoid collisions, i.e. Half-plane.
[0072]
[0073] In the formula, n is A little bit v A -v B +u is the normal vector, u is the shortest velocity vector that needs to be offset to avoid collision, and 1 / 2 means that each party bears half of the responsibility.
[0074] (3) Calculate the new velocity: the set of feasible velocities for agent A. It consists of the intersection of the collision-free velocity domain half-plane of all adjacent intelligent agents and the maximum velocity domain.
[0075] Static obstacles in the environment can be considered as neighboring agents with a velocity of 0. Let {AO} be the set of all neighbors of agent A. k |k=1,2,…,n}, the set of all static obstacles is {CO} k |k=1,2,…,m}. Then, for agent A, the set of ORCAs for the collision-free velocity domain is:
[0076]
[0077] The velocities in this set represent the range of velocities within which the agent can safely move within the current time step. Where v max This represents the maximum speed of the agent. Agent A will choose... If the speed closest to the desired speed is taken as the new speed, then the individual's next speed is:
[0078]
[0079] Where v pref Let v be the desired velocity of the agent, and v be the velocity in the collision-free velocity domain.
[0080] like Figure 4aAs shown, the shaded area represents the collision avoidance ORCA plane and allowed velocity of neighboring agents calculated by the ORCA algorithm. The intersection of these regions. When an agent's velocity falls within this region, it ensures that it will not collide with neighboring agents in the next time step, while simultaneously maintaining a velocity as close as possible to the desired velocity v. pref .
[0081] Step 3.2: Incorporate group behavior into the ORCA algorithm to jointly influence speed decisions;
[0082] To achieve coordinated movement between group behavior and collision avoidance behavior, group behavior is integrated into the ORCA algorithm, taking into account the influencing factors of group behavior when selecting the next time-space velocity. During velocity update, the current collision avoidance zone and the expected velocity v towards the target are considered. pref And the speed decision v generated by group behavior factors g v l The influence of (determined by equations (6) and (11)) on the speed selection, such as Figure 4b As shown. The determination of the new speed should follow these principles: While ensuring collision avoidance, select the speed closest to v. pref v g v l The speed of weighted summation is used to achieve coordinated movement of individuals within a group.
[0083] The update is based on equation (15). The velocity update formula for the agent in the next time step is as follows:
[0084] v new′ =arg min v∈ORCA ||v-[(1-γ-β)v pref +γv g +βv l ]|| (16)
[0085] Where v g v l These represent the velocity decisions made under the influence of small group behavior, reflecting the impact of aggregation and leader-follower behaviors. γ and β are weighting coefficients that moderate the strength of the influence of aggregation and leader-follower behaviors on velocity updates. Increased coefficients γ and β indicate that the agent's velocity selection is more driven by group consciousness, exhibiting a stronger tendency towards group behavior. The simulated evacuation scenario is as follows... Figures 5a-5d , Figures 6a-6d , Figures 7a-7c As shown.
Claims
1. A method for simulating the behavior of small social groups based on the ORCA model, characterized in that... Includes the following steps: Step 1: Develop rules for the speed of aggregation behavior within small groups and define a function to measure the social intimacy between individuals based on the strength of close relationships between small groups. Based on this, establish an aggregation behavior model. Step 2: Model the leader role based on the five personality traits model, identify the group leader, and establish a leader-follower behavior model; Step 3: Combine the two types of group behavior within the small group into the ORCA algorithm to achieve interaction of group behavior while avoiding collisions; The specific method for step 1 is as follows: Step 1.1: Calculate the alignment speed using alignment rules; Based on the individual's neighbor velocity, calculate the alignment velocity that the individual tends to maintain with its neighbors; for individual i in the group, assume its neighbor set is N. (i) n is the number of surrounding neighbors, v j If the velocity of the j-th neighbor is given, then the alignment behavior of individual i is expressed by the following formula: in This indicates the speed at which adjustments need to be made based on alignment rules; Step 1.2: Calculate the aggregation rate using aggregation rules; The aggregation velocity of an individual based on the group is calculated based on the average position of all its neighbors; for an individual i in the group, its position is represented as p. i Assuming n is the number of neighbors of individual i, and the set of neighbors is N(i), the aggregation rule is expressed by the following formula: in It is the speed that needs to be adjusted based on the aggregation rules, p i and p j These represent the positions of the current individual and its neighbors; Step 1.3: Calculate the aggregation rate based on the two behavioral rules; The final velocity of individual i at time t+Δt is adjusted by the current velocity and the velocity based on aggregation. And alignment-based speed adjustment Together, the position at time t+Δt is determined by the current position plus the velocity change within this time step Δt; p i (t+Δt)=p i (t)+v i (t+Δt) (4) Where v i (t+Δt) is the velocity of individual i at the next time step, p i (t+Δt) is the position of individual i at the next time step, and Δt is the size of the next time step; Step 1.4, define an intimacy strength function I. ij (x) is used to quantify the intimacy between simulated individuals; Where i and j represent different individuals, and x represents the distance between them; the intimacy strength is represented by a Gaussian function: Where a ij Indicates the peak value of intimacy; b ij This represents the distance between two individuals when their intimacy reaches its peak; c ij Describes the rate at which intimacy decreases; Step 1.5: Incorporate the effect of closeness when individual i gathers with other individuals in the group; Let I be the intimacy strength between individuals i and j at time t. ij (t,x), distance x is |p j -p i | Then the individual speed influenced by the social small group gathering behavior is: in v represents the individual alignment speed. i (t) represents the current velocity of the individual, and n represents the number of neighbors; The specific method for step 3 is as follows: Step 3.1: Calculate the collision avoidance half-plane for all neighboring agents using the ORCA algorithm; (1) Velocity barrier: Based on the information perceived from neighboring agents, calculate the velocity barrier of all neighboring individuals. For agents A and B, the velocity barrier is calculated as follows: Defined as the set of velocities that may lead to a collision within time τ; In the formula D(p) B -p A ,r A +r B ) indicates a radius of r A +r B The center is p B -p A Open disk; r A r B Let p be the radii of agents A and B, respectively; A p B These are position vectors, representing the positions of agents A and B in space; (2) Optimal reciprocal collision avoidance speed: Agent A based on Generate a set of optional velocities for each neighbor to avoid collisions, i.e. Half-plane: In the formula, n is A little bit v A -v B +u is the normal vector of the relative velocity, where u is the shortest velocity vector that needs to be offset to avoid a collision, and 1 / 2 means that each party bears half of the responsibility. (3) Calculate the new velocity: the set of feasible velocities for agent A. It is formed by the intersection of the collision-free velocity domain half-plane of all adjacent intelligent agents and the maximum velocity domain; Static obstacles in the environment can be considered as neighboring agents with a velocity of 0. Let {AO} be the set of all neighbors of agent A. k |k=1,2,…,n}, the set of all static obstacles is {CO} k |k=1,2,…,m};Then the set of ORCAs for the collision-free velocity domains that can be selected for agent A is: The velocity in this set represents the range of safe movement speeds for the agent within the current time step; where v max The maximum speed of the agent; agent A will choose If the speed closest to the desired speed is taken as the new speed, then the individual's next speed is: Where v pref Let v be the desired velocity of the agent, and v be the velocity in the collision-free velocity domain. Step 3.2: Incorporate group behavior into the ORCA algorithm to jointly influence speed decisions; During the velocity update process, the current collision avoidance zone and the expected velocity v toward the target are considered. pref And the speed decision v generated by group behavior factors g v l Regarding the impact of speed selection, the determination of the new speed should follow the principle of selecting the speed closest to v while ensuring collision avoidance. pref v g v l The speed of weighted summation is used to achieve coordinated movement of individuals within a group; Based on equation (15), the agent's velocity update formula for the next time step is as follows: v new′ =arg min v∈ORCA ||v-[(1-γ-β)v pref +γv g +βv l ]|| (16) Where v g v l γ and β represent the velocity decisions made under the influence of small group behavior, reflecting the impact of aggregation behavior and leader-follower behavior. γ and β are weighting coefficients that moderate the intensity of the influence of aggregation behavior and leader-follower behavior on velocity updates.
2. The social small group behavior simulation method based on the ORCA model according to claim 1, characterized in that, The specific method for step 2 is as follows: Step 2.1: Use the five-person personality model to define the pedestrian's role; The OCEAN model was used to model pedestrian personality traits. Leadership was positively correlated with conscientiousness (C) and agreeableness (A) among the five personality traits, and negatively correlated with neuroticism (N). Role modeling was then performed based on these three dimensions, using ψ... c ψ a ψ n These represent the three dimensions of the model; individual personality trait differences are represented by a Gaussian distribution function G, with a mean of μ and a standard deviation of σ. 2 : ψ ε =G(μ,σ 2 ) (7) Where μ∈(0,1), σ 2 ∈[0, 0.1], ε∈(C,A,N); therefore, the individual's leadership tendency α leader Represented as a leader =ω c ψ c +oh a ψ a +oh n (1-ψ n ) (8) Where ω c ω a ω n ω represents the weights of the feature values in each dimension. c ω a ω n ∈[0,1]; Step 2.2, calculate the leader-follower behavior velocity, and divide the influence of the leader on pedestrian behavior into two aspects: on the one hand, followers tend to move towards the leader's position, and on the other hand, the movement direction of the followers is consistent with the movement direction of the leader. The speed at which individual i is influenced by its leader (v) il Calculated using the following formula: v il =ρv l +(1-p)n il (9) Where v l The speed of the leader of individual i, n il This represents the direction vector from individual i to its leader; The distance d between individual i and its leader ij The value of the influence factor ρ is determined by the following formula: Where δ is a constant, the velocity generated by the leader factor for individual i is further expressed as:
Citation Information
Patent Citations
Crowd grouping evacuation simulation method and system based on half DBSCAN clustering algorithm
CN107463751A
Multi-agent evacuation simulation method and system based on leader and panic emotion
CN111639809A