ABSTRACT (original article): A model is developed for agents visiting a common point (or points) of interest. Agents are divided into those whose satisfaction from visiting decreases in the presence of other visitors, and those whose satisfaction increases in this case. For agents of the first type, an increase in the number of agents above a certain value prevents agents from visiting this point. Agents have variable parameters of their desire to visit the point and tolerate the presence of other agents. The change in parameters depends on how long ago the last visit to the points of interest was. This paper offers an explanation of the phenomenon of why people can tolerate for a long time, tolerate, and then simultaneously begin to strive for some point of interest. The paper briefly considers the game-theoretic formulation of the problem, and also conducts simulation modeling in the Wolfram Mathematica environment. The patterns and mechanisms of formation of ideas about normative decision-making, including social influence, and taking into account the uncertainty arising from different contexts and experiences of subjects, are studied. It was revealed both the emergence of fluctuations in the number of agents close to periodic ones, similar to the Lotka — Volterra model, and the complete division of agents into different points of interest depending on the initial conditions, similar to the Schelling model. This model can be used in planning public spaces that house shops, cafes, and other institutions, in order to reduce the load on each institution and eliminate the mutual influence of agents with different interests when visiting these institutions. CITATION (original article): Kuznetsov, A. V., & Fedyanin, D. N. (2025). MODEL OF AGENTS WITH A COMMON POINT OF INTEREST AND A LIMIT ON THE NUMBER OF AGENTS PRESENT AT THE SAME TIME. Proceedings of Voronezh State University. Series: Systems Analysis and Information Technologies, (3), 101-109. https://doi.org/10.17308/sait/1995-5499/2025/3/101-109
Motivation
Motivation
Models of interaction between agents are very diverse and include both game-theoretic models of strategic behaviour of agents and simpler ones. Among the most striking and well-known models are the Volterra “predator-prey” model and the Schelling segregation model. They are elegantly connected by the consideration that, on the one hand, the presence of agents of a given type in a certain area increases the number of agents of the same type and reduces the number of agents of another type. However, the difference is in the behaviour of agents of one type in the absence of agents of another type. In the Schelling model, this does not lead to significant consequences. In the Volterra model, on the contrary, it reduces the number of agents. Generalizing the Volterra model, we can see that the key moment is not the actual consumption of prey by predators but the creation of a situation which some agents like and others would not. Thus, it seems possible to use the Volterra model to construct models of interactions between agents, some of whom like crowd noise (“noise-likers”) and others who do not (“noise-dislikers”). However, we have a significantly different situation when agents that love noise also generate it. So, the presence of “noise-dislikers” does not matter, and the replacement of “noise-dislikers” by “noise-likers” is even desirable for “noise-likers”. The analysis below shows that, nevertheless, even in the model of “noise-likers” and “noise-dislikers”, oscillations arise as in the Volterra model, albeit damped ones, which significantly distinguishes this model from the segregation model. We can note that this is true only if “noise-likers” and “noise-dislikers” are forced to be in the same geographical area. If there are two or more such areas, the settlement of areas becomes more complex and resembles a segregation model. “Noise-likers” will try to choose one of the noisiest areas and concentrate there, while “noise-dislikers” will try to fill the remaining areas evenly and ideally be the only inhabitants of those areas. This behaviour is very close to a generalization of the Schelling segregation model in such a way that agents are divided into types, and agents of each type either prefer or avoid the communication of agents of the other types. For example, in the classical segregation model, agents preferred the company of agents of the same type and avoided agents of another type. In the case of considered model, the closest version of the segregation model seems to be a model where agents of one type (those who love noise) prefer the company of agents of any type, i.e. they are extroverts of some kind, and agents of the other type (those who don' t like noise) avoid communicating with agents of any type, even their own. Note that such models also have some connection with models of social pressure, including Granovetter' s threshold decision-making models. In terms of the model of the behaviour of agents who like and do not like noise, we can say that an agent joins an event only if the number of agents at the event (and, accordingly, the noise level) has already reached a certain threshold level for this agent. Modern models, for example, the crowd control models of Breer and Rogatkin, consider not only conformal behaviour when a larger number of agents increases the desire of agents to join the event but also anti-conformal behaviour when agents, on the contrary, participate only in small events and avoid crowds of agents. Note that in all the considered classical models, in addition to the modelling of the phenomenon itself, their authors also study equilibrium situations.
This paper considers a system in which there is a set of agents
Ag={,…,}
ag
1
ag
m
and a set of points of interest
P={,…,}.
p
1
p
n
Agents can be divided into different disjoint classes , =Ag.
Ag
i
⋃
i=1
Ag
i
Regardless of the class, agents strive to visit points of interest but the goals of visiting these points can be completely different and even mutually exclusive for each class of agents. For simplicity, let' s assume that one class of agents is “noise-likers” and the other is “noise-dislikers”. As noted above, in essence, “noise-likers” are agents interested in the presence of other agents near their point of interest (i.e., all other agents have positive externalities with them), and “noise-dislikers”, on the contrary, are not interested in the presence other agents near their point of interest (i.e. all other agents have negative externalities with them). Models of the behaviour of agents that purposefully take active actions to attract or repel other agents to their point of interest are not considered in this work. Below we will consider our proposed model of behavior of noise liking and noise disliking agents in more detail.
Game-theoretic model
Game-theoretic model
The behaviour of agents making strategic decisions can be described using a repeating game of previously described by A.V. Kuznetsov type. Below are the results for an arbitrary finite number of agents, but, as will be seen from the expressions obtained, it is more justified to describe the behavior of a system with a large number of agents within the framework of non-game models, which will be done in subsequent sections of this work.
So, we suppose that P={p} and all agents are from “noise-dislikers” class. In each round t of the game, each agent∈Ag,i=, has the following alternatives:
So, we suppose that P={p} and all agents are from “noise-dislikers” class. In each round t of the game, each agent
ag
i
1,m
◼
“visit” - visit the point of interest p,
◼
“wait” - do not visit the point of interest p, wait until the next round.
When choosing the alternative “visit”, the agent receives a penalty (“noise level”) equal to the number of agents n(t) who chose the alternative (t)=visit to the stage t. When choosing the alternative “wait”, the agent receives a penalty (“waiting for a visit”) (t). Thus, we define the penalty function for the agent in the stage t as
;(t),…,(t)
s
1
s
m
s
j
w
i
ag
i
f
i
s
1
s
m
|
The penalty function for the for the entire game of T stages can be defined, for example, as
ag
i
f
i
S
1
S
m
T
∑
t=1
f
i
s
1
s
m
where=(1),…,(T).
S
j
s
j
s
j
The set of alternatives selected by the agent ∈Ag for stage T can be represented as a binary string of length T, in which “1” corresponds to “visit”, and “0” corresponds to “wait”. The value of the penalty function for the agent can be represented as the number of all “0” in and the sum of the number of all “1” in all ,j=.
ag
j
S
j
ag
i
S
i
S
j
1,m
Consider the example for m = 3, T = 6.
Let'ssetthevaluefor(t).
w
i
In[]:=
nddir=NotebookDirectory[];SetDirectory[nddir];
In[]:=
waitPenaltyMultiplier=3;
Let us set T, m, the length of the binary string encoding the sequence of alternatives chosen by the agent as -1.
T
2
In[]:=
tmax=6;agentNumber=3;nmax=-1;
tmax
2
Let us define the set of all strategies.
In[]:=
range=Range[0,nmax];strategies=Tuples[range,agentNumber];
In[]:=
penaltyDecoder[strategy_,agent_,agentNumber_,waitPenaltyMultiplier_]:=Module[{visitNumber,waitNumber},visitNumber=Count[Flatten[IntegerDigits[strategy,2,agentNumber]],1];waitNumber=waitPenaltyMultiplierCount[IntegerDigits[strategy[[agent]],2,agentNumber],0];visitNumber+waitNumber];
Let us define the penalty function for binary encoded strategies.
In[]:=
penaltyList=Map[{penaltyDecoder[#,1,tmax,waitPenaltyMultiplier],penaltyDecoder[#,2,tmax,waitPenaltyMultiplier],penaltyDecoder[#,3,tmax,waitPenaltyMultiplier]}&,strategies];
Let’s find Pareto-optimal strategies.
In[]:=
paretoMin=ResourceFunction["ParetoListMinima"][penaltyList]
upgrade your license
or contact us
.Out[]=
{{18,18,18},{19,19,16},{20,20,14},{21,21,12},{22,22,10},{23,23,8},{24,24,6},{19,16,19},{20,17,17},{21,18,15},{22,19,13},{23,20,11},{24,21,9},{25,22,7},{20,14,20},{21,15,18},{22,16,16},{23,17,14},{24,18,12},{25,19,10},{26,20,8},{21,12,21},{22,13,19},{23,14,17},{24,15,15},{25,16,13},{26,17,11},{27,18,9},{22,10,22},{23,11,20},{24,12,18},{25,13,16},{26,14,14},{27,15,12},{28,16,10},{23,8,23},{24,9,21},{25,10,19},{26,11,17},{27,12,15},{28,13,13},{29,14,11},{24,6,24},{25,7,22},{26,8,20},{27,9,18},{28,10,16},{29,11,14},{30,12,12},{16,19,19},{17,20,17},{18,21,15},{19,22,13},{20,23,11},{21,24,9},{22,25,7},{17,17,20},{18,15,21},{19,13,22},{20,11,23},{21,9,24},{22,7,25},{14,20,20},{15,21,18},{16,22,16},{17,23,14},{18,24,12},{19,25,10},{20,26,8},{15,18,21},{16,16,22},{17,14,23},{18,12,24},{19,10,25},{20,8,26},{12,21,21},{13,22,19},{14,23,17},{15,24,15},{16,25,13},{17,26,11},{18,27,9},{13,19,22},{14,17,23},{15,15,24},{16,13,25},{17,11,26},{18,9,27},{10,22,22},{11,23,20},{12,24,18},{13,25,16},{14,26,14},{15,27,12},{16,28,10},{11,20,23},{12,18,24},{13,16,25},{14,14,26},{15,12,27},{16,10,28},{8,23,23},{9,24,21},{10,25,19},{11,26,17},{12,27,15},{13,28,13},{14,29,11},{9,21,24},{10,19,25},{11,17,26},{12,15,27},{13,13,28},{14,11,29},{6,24,24},{7,25,22},{8,26,20},{9,27,18},{10,28,16},{11,29,14},{12,30,12},{7,22,25},{8,20,26},{9,18,27},{10,16,28},{11,14,29},{12,12,30}}
In[]:=
Position[penaltyList,paretoMin[[1]]]
Out[]=
In[]:=
IntegerDigits[strategies[[257912]],2]
Out[]=
{{1,1,1,1,1,0},{1,1,1,1,0,1},{1,1,0,1,1,1}}
In[]:=
penaltyNormList=Map[Norm[N[#]]&,penaltyList];
In[]:=
ListPlot[penaltyNormList,AxesLabel{"Strategy No.","|(,,)|"}]
f
1
f
2
f
3
Out[]=
In[]:=
smallestPenalties=TakeSmallest[penaltyNormList,2]
Out[]=
{31.1769,31.1769}
Under some parameters of the multi-agent system, it may turn out that the agent’s best strategy is to be passive and do not visit p in all stages.
In[]:=
Position[penaltyNormList,smallestPenalties[[1]]]
Out[]=
In[]:=
poslist=Position[penaltyNormList,smallestPenalties[[1]]]
Out[]=
In[]:=
penaltyListG=penaltyList[[Flatten[poslist]]]
Out[]=
Example strategy :
Let us depict all possible values of the penalty function for three agents as points in three-dimensional space.
Since studying the equilibrium for a game with such a penalty function for a large number of agents m is computationally difficult, we will further consider non-game multi-agent models of agent behavior to describe the behavior of a large number of agents.
A model of agents of two classes competing for one point of interest
A model of agents of two classes competing for one point of interest
Let agents of the first class (in quantity agentNumber) alternately visit a common point of interest only if the noise level (i.e., the number of agents already present at the point) does not exceed the agent’s noise tolerance noiseTolerance. The agent’s tolerance increases every cycle by noiseToleranceAdd. Agents of the second class (in quantity noiseLoversNumber) alternately visit the point, attracted by the noise level, and themselves create additional noise.
Below is a matrix of agents’ visiting a common point of interest. In the matrix, 0 corresponds to the moment in time following the moment of the visit.
Below is a matrix of agents’ visiting a common point of interest, if there are agents who are attracted by noise.
Let’s plot the number of agents simultaneously visiting a common point of interest.
Since the graph clearly has a horizontal asymptote, we will look for curves delimiting the minimums and maximums of the graph in the following form:
As a result, the function of the number of agents N simultaneously present at the point of interest can be roughly approximated as
The same if there are “noise-likers”:
Let’s identify the curves in the matrix.
These curves are parabolas.
Agents without sufficient awareness
Agents without sufficient awareness
One can also imagine that the agents do not maintain their order, as shown in the model above, but are renumbered in each new round, with the probability that the agent receives a lower number being directly proportional to the agent's persistence. So, the changing of the agent’s number i over time t can be represented as
Model of agents of two classes, separating on two points of interest
Model of agents of two classes, separating on two points of interest
Let’s conduct the experiment several times and calculate the average value for the number of agents at points of interest at each time moment. Let first the number of “noise-dislikers” agentNumber, and the number of “noise-likers” noiseLoversNumber be equal:
Let now there be half as many “noise-likers” as there are “noise-dislikers”:
where x , y are densities of populations X , Y , |X| = k|Y|, and RX , RY are monotone decreasing tolerance schedules' functions. Here, for example
It turns out that the division of agents between points of interest is roughly described by a type II Schelling model:
Conclusion
Conclusion
We considered game-theoretic and multi-agent models of agents of various classes competing for points of interest. This model can be used when planning public spaces that house shops, cafes, etc. institutions so as to reduce the burden on each of the institutions and eliminate mutual interference between agents with different interests when visiting these institutions. It is also possible to use similar models when planning jobs for people, for example, civil servants who receive visitors and when planning feeding areas for farm animals. Further expansion of the model can take into account the geographical features of the area. For example, a terrain can be represented as a graph with vertices (points of interest) and edges of a given length corresponding to paths between points of interest.
Bibliography
Bibliography
[1] Haw, D.(2016).Measuring and understanding segregation (Doctoral dissertation, Bristol Centre for Complexity Sciences).
[2] Haw, D.J., & Hogan, J.(2018).A dynamical systems model of unorganized segregation.The Journal of Mathematical Sociology, 42 (3), 1 - 15. doi : 10.1080/0022250 X .2018 .1427091
[3] Schelling, T. C. (1971). Dynamic models of segregation. The Journal of Mathematical Sociology, 1(2), 143-186. doi: 10.1080/0022250X.1971.9989794
[4] Granovetter, M. (1978). Threshold Models of Collective Behavior. American Journal of Sociology. 83 (6): 1420–1443. doi:10.1086/226707. JSTOR 2778111. S2CID 49314397.
[5] Breer, V.V., Novikov, D.A. & Rogatkin, A.D. (2016). Micro- and macromodels of social networks. I. Theory fundamentals. Autom Remote Control 77, 313–320. https://doi.org/10.1134/S0005117916020077
[6] Kuznetsov, A.V.(2021). Game of Operation of a Telecommunication Network of Agents with Directional Antennas. Autom Remote Control 82, 687–705. https://doi.org/10.1134/S0005117921040068
[7] Kuznetsov, A. (2018). Segregation model for dynamic frequency allocation. Advances in Systems Science and Applications, 18(2), 84-92. https://doi.org/10.25728/assa.2018.18.2.542
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Model of agents with a common point of interest and a limit on the number of agents
by A.V. Kuznetsov, D.N. Fedyanin
Wolfram Community, STAFF PICKS, May 28, 2025
https://community.wolfram.com/groups/-/m/t/3468895
by A.V. Kuznetsov, D.N. Fedyanin
Wolfram Community, STAFF PICKS, May 28, 2025
https://community.wolfram.com/groups/-/m/t/3468895
