<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Theoretical and Simulation Results for a 2-type Network Evolution Model∗</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>István Fazekas</string-name>
          <email>fazekas.istvan@inf.unideb.hu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Attila Barta</string-name>
          <email>barta.attila@inf.unideb.hu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>AMS Subject Classification: 05C80</institution>
          ,
          <addr-line>90B15, 60J85</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Proceedings of the 1</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Debrecen, Faculty of Informatics</institution>
          ,
          <country country="HU">Hungary</country>
        </aff>
      </contrib-group>
      <fpage>104</fpage>
      <lpage>114</lpage>
      <abstract>
        <p>A continuous-time network evolution model is studied. The basic units of the model are edges and triangles. The evolution of the units is governed by a continuous-time branching process. The asymptotic behaviour of the model is studied. It is proved that the number of edges and triangles have the same magnitude on the event of non-extinction, and it is   , where  is the Malthusian parameter.</p>
      </abstract>
      <kwd-group>
        <kwd>Random graph</kwd>
        <kwd>network</kwd>
        <kwd>branching process</kwd>
        <kwd>Malthusian parameter</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        events occur at time  = 1, 2, . . . ) and it describes connections of two nodes.
The meaning of connection can be cooperation or any interaction. Therefore the
connections of more than two nodes are also important. For example, Backhausz
and Móri in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] describe three-interactions, Fazekas and Porvázsnyik in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] 
interactions, or Fazekas and Perecsényi in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] star-like connections.
Continuoustime network evolution models seem to be more dificult but more realistic models
than the discrete time ones. In [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] a continuous-time branching process is applied
to govern the evolution mechanism. In [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] we extended the results of [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] for 3
interaction models. There we applied the general theory of branching processes
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In this paper we describe our model and present our limit theorems. The
mathematical proofs are quite long, so they will be published in another paper (see
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). In the paper at hand we show numerical and simulation results supporting
our mathematical theorems.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. The Model</title>
      <p>In this paper we shall study the following random graph evolution model.
Parameter  ∈ [0, ∞) will denote the time. At the initial time  = 0 we start with a single
object, it can be either an edge or a triangle. We call this object the ancestor.
This ancestor object produces ofspring objects which can be also edges or
triangles. Then these ofspring objects also produce their ofspring objects, and so on.
The reproduction times of any object, including the ancestor, are given by its own
Poisson process with rate 1. We assume that during the evolution, the reproduction
processes of diferent objects are independent. The reproduction processes of the
triangles are independent copies of the generic triangle’s reproduction mechanism.
Similarly, the reproduction processes of the edges are independent copies of the
reproduction mechanism of the generic edge.</p>
      <p>Consider the generic edge and its Poisson process Π2 ( ). When the Poisson
process jumps, then a new vertex appears an it is connected to our generic edge.
The probability that this new vertex is connected to the generic edge by one new
edge is  1, 0 ≤  1 ≤ 1. The end point of this new edge is chosen from the two
vertices of the generic edge uniformly at random. So in this step an edge produces
one edge. The other possibility is that the new vertex is connected to both vertices
of the generic edge. It has probability  2 = 1 −  1. In this case the ofspring of
the generic edge is a triangle consisting of the generic edge and the two new edges.
It is important to fix that in this case the generic edge and the new triangle will
produce ofspring, but the two new edges will not do it.</p>
      <p>For the generic triangle the reproduction is the following. Let Π3 ( ) ,  ≥ 0,
denote the Poisson process with rate 1 corresponding to our triangle. The jumping
points of Π3 ( ) are the birth times of the generic triangle. At every birth time a
new vertex is added to the graph which can be connected to our generic triangle
with  edges ( = 1, 2, 3). Let   denote the probability that the new vertex will
be connected to  vertices of our generic triangle. The vertices to be connected to
the new vertex are chosen uniformly at random. It follows from the definition of
the above evolution process that at each birth step we always add 1 new vertex.
With probability  1 the generic triangle gives birth to a new edge. However, in
the remaining cases we count only the new triangles and not the new edges. So,
with probability  2 the generic triangle produces one child triangle, moreover, with
probability  3, the generic triangle produces three children triangles.</p>
      <p>We shall consider that any edge is of type 2 object and it will be denoted by
subscript 2, while for a triangle it will be denoted by 3. So let us denote by  , ( )
the number of type  ofspring of the type  generic object up to time  (, 
= 2, 3).</p>
      <p>As usual,  , , , 
= 2, 3, are point processes. Then
 2( ) =  2,2( ) +  2,3( )
 3( ) =  3,2( ) +  3,3( )
is the number of all ofspring (either edge or triangle) of the generic edge up to
time  . Similarly,
time  .
is the number of all ofspring (either edge or triangle) of the generic triangle up to</p>
      <p>Let us denote by  3(1),  3(2), . . . the birth times of the generic triangle and let
 3(1),  3(2), . . . be the corresponding total litter sizes. That is the generic triangle
bears  3( ) children being either triangles or edges at the  th birth event. Then
 3(1),  3(2), . . . are independent identically distributed discrete random variables
with distribution P ( 3( ) =  ) =   ,  ≥ 1. We have</p>
      <p>P ( 3( ) = 1) =  1 =  1 +  2, P ( 3( ) = 3) =  3 =  3,</p>
      <p>P ( 3( ) =  ) =   = 0, if  /∈ {1, 3} .</p>
      <p>Throughout the paper we assume that  1 &lt; 1, because otherwise there were no
reproduction of the triangles. We assume that the litter sizes are independent of
the birth times.</p>
      <p>Let the finite, non-negative random variable  3 be the life-length of the generic
triangle.</p>
      <p>We assume that the reproduction terminates at the death of the
individual, therefore  3 ( ) =  3 ( 3) for  &gt;  3. Then the reproduction process of a
triangle can be given by
 3 ( ) =</p>
      <p>︁∑
 3( )≤ ∧ 3</p>
      <p>3( ) =  3 (Π3 ( ∧  3)) ,
where Π3 ( ) is the Poisson process,  3( ) =  3(1) + · · · +  3( ) gives the total
number of ofspring of the generic triangle before the
( + 1)th birth event and
 ∧  denotes the minimum of {,  }
function of  3. Then the survival function of a triangle’s life-length is
1 −  3 ( ) = P ( 3 &gt;  ) = exp ⎝ −</p>
      <p>3 ( ) d ⎠ ,
⎛
︁∫
0</p>
      <p>⎞
where Π2 ( ) is the Poisson process.
the life-length of an edge is
where  3 ( ) is the hazard rate of the life-length  3. We assume that the hazard
rate depends on the total number of ofspring, so that</p>
      <p>3 ( ) =  +  3 ( )
with positive constants  and  .
As the edge always gives birth to one ofspring (which can be an edge or a triangle),
so the total number of ofspring of the generic edge is</p>
      <p>2 ( ) = Π2 ( ∧  2) ,
Let  2 ( ) denote the distribution function of  2. Then the survival function of
1 −  2 ( ) = exp ⎝ −</p>
      <p>2 ( ) d ⎠ ,
⎛
︁∫
0

⎞
where we assume that the hazard rate of the life-length  2 is of the form  2 ( ) =
 +  2 ( ).</p>
      <p>We have to mention that we do not delete any triangle or edge when it dies,
because its edges and vertices can belong to other triangles or edges, too. So we
consider a dead triangle or edge as an inactive object not producing new ofsprings.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Theoretical Results</title>
      <p>
        Here we summarize the theoretical results of our paper [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <sec id="sec-3-1">
        <title>3.1. The Mean Ofspring Number</title>
        <p>ofspring of a type  mother until time  .</p>
        <p>Proposition 3.1. For any  ≥ 0 we have
Let us denote by  , ( ) = E , ( ) the expectation of the number of type 
 2,2 ( ) =  1 ( ),  2,3 ( ) =  2 ( ),
(1 −  2 ( )) d =
 −( +1)</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. The Perron Root and the Malthusian Parameter</title>
        <p>Let
be the matrix of the Laplace transforms. By direct calculation we obtain that the
characteristic roots of  ( ) are
 1,2( ) = ( 2+3 3) ( )+ 1 ( )±√(( 2+3 3) ( )− 1 ( ))2+4 1 ( ) 2 ( ). (3.1)
2
The greater of these values is called the Perron root, that is
 ( ) =  1( ) = ( 2+3 3) ( )+ 1 ( )+√(( 2+3 3) ( )− 1 ( ))2+4 1 ( ) 2 ( )
2
is the Perron root.</p>
        <p>We assume that the process is supercritical, that is  1(0) &gt; 1. Now, that value
of  for which the Perron root is equal to 1 is called the Malthusian parameter.
In the usual notation,  is the Malthusian parameter if  ( ) = 1. We assume the
existence of the Mathusian parameter. From relation  ( ) = 1 and (3.1) we obtain,
that for the Malthusian  we have
 1 ( )( 2 + 3 3) ( ) − ( 1 ( ) + ( 2 +  3) ( )) =  2 ( ) 1 ( ) − 1. (3.2)
We shall need the eigenvectors of  ( ). So let  be the Malthusian parameter
and let ( 2,  3)⊤ be the right eigenvector of  ( ) satisfying condition  2 +  3 = 1.
Then direct calculation shows, that</p>
        <p>( 1 − 1) ( ) ,  3 = (2 1 1− 1() )(−)1− 1.
 2 = (2 1 − 1) ( ) − 1
(3.3)
Again let  be the Malthusian parameter and let ( 2,  3)⊤ be the left eigenvector
of  ( ) satisfying condition  2 2 +  3 3 = 1. Direct calculation shows, that
 2 =  1 ( 1)((1−)(1()2  1(−)1−)( (1 )−( 1))−1)2 ,  3 =  1(1(− )1( 1(−1)))((2( 1)−−1()1 (()−)−11))2 . (3.4)</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Results</title>
        <p>In the following theorem we shall need the next formulae.</p>
        <p>3
 ( ) = ∑︁     ︀( − *, ( ))︀ ′.</p>
        <p>, =2
Here   and   are from equations (3.4) and (3.3). Moreover, by Proposition 3.1 or
by Proposition 3.2, we have that
︀( − 2*,2( )︀) ′ =  1 (− ′( )) , (︀ − 2*,3( )︀) ′ =  2 (− ′( ))
where
− ′( ) =
∞
︁∫
0
d = − 2
1 ∫︁
0
1
 −
  −( +1) 
0
1
almost surely for  = 2, 3.</p>
        <p>ln(1 −  ) (1 −  )</p>
        <p>We turn to the limit of the edges and triangles.
at the same time.</p>
        <p>Proposition 3.3. Assume that (3.2) has a finite positive solution  . Assume that
0 ≤  1 &lt; 1, 0 &lt;  1 ≤ 1 and it is excluded, that both  1 = 0 and  1 = 1 are satisfied</p>
        <p>Let 2 ( ) and 3 ( ) denote the number of all edges being born up to time  if
the ancestor of the population was an edge and triangle, respectively. Then
 l→im∞  −
 ( ) =   

almost surely for  = 2, 3.</p>
        <p>Let 2 ˜( ) and 3 ˜( ) denote the number of all edges alive at time  if the ancestor
of the population was an edge and triangle, respectively. Then
almost surely for  = 2, 3.</p>
        <p>Let 2 ( ) and 3 ( ) denote the number of all triangles being born up to time 
if the ancestor of the population was an edge and triangle, respectively. Then
almost surely for  = 2, 3.</p>
        <p>Let 2 ˜( ) and 3 ˜( ) denote the number of all triangles alive at time  if the
ancestor of the population was an edge and triangle, respectively. Then
 l→im∞  −
 ˜( ) =      2 ( )

 l→im∞  −
 ( ) =   

 l→im∞  −
 ˜( ) =      3 ( )</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Numerical and Simulation Results</title>
      <sec id="sec-4-1">
        <title>4.1. The Simulation of the Model</title>
        <p>
          To get a closer look on the theoretical results, we made some simulations about
them. We generated our code in Julia language [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]. We chose Julia, because of
the great implementation of priority queues. The simulation time of our code was
significantly faster in Julia than in other programming languages. There were 4
kind of objects in our simulations: a birth event for an edge and a triangle and a
death event for an edge and a triangle. We put all objects in a priority queue with
the priority of its occurrence time, because we can pop out the element with the
lowest priority. If it is a death event, we just modify the number of objects being
born or being alive. If it is a birth event for an object we can handle its birth
process with the predefined parameters  ,  ,  1,  2,  1,  2,  3. In the birth process
we generated an exponential time step for the next birth step of our object. After
that we checked if the object is still alive by calculating the survival function. If
the object is dead, we put a death event in the queue and move to the next one. If
it is alive, then we generate the ofspring and put them into the priority queue with
the calculated birth time priorities. After this step we moved to the next event.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Support for the Theoretical Results</title>
        <p>Our first step in the simulation was to check if the parameters have a root for
Equation 3.1. In Figure 1 we see that  ( ) − 1 has a root at  = 0.9133 with the
parameters  1 = 0.1,  2 = 0.9  1 = 0.2,  2 = 0.6,  3 = 0.2,  = 0.25,  = 0.25.
This numerical value can be considered as the Malthusian parameter  .</p>
        <p>If the conditions were given by the existence of the Malthusian parameter, we
simulated 220 = 1, 048, 576 events and calculated the number of edges and triangles
up to time  . We have to mention that all the events are processed till the end
time of the simulation thanks to structure of the priority queue. For the above
demonstration we used the parameter set  1 = 0.1,  2 = 0.9,  1 = 0.2,  2 =
0.6,  3 = 0.2,  = 0.25,  = 0.25 again. On Figure 2 and Figure 3 the ancestor
object was a triangle. Here we show 3 ( ) by Figure 2a, 3 ˜( ) by Figure 2b, 3 ( )
by Figure 3a and 3 ˜( ) by Figure 3b for the same simulation. On each plot the
simulation result can be obtained by a straight line on a logarithmic scale and the
theoretical result with a dashed linear line with  slope. The parallel lines show
us a good support for our Proposition 3.3.</p>
        <p>(a) The number of edges alive.</p>
        <p>(b) The number of edges being born.
els with the same parameters until the slope stabilized at a large fixed  and saved
the last values for the number of edges and triangles being born and being alive.
After it we multiplied each result by the correct constant values of Proposition 3.3.


∼  −
∼  −


 ( )
 ( )
   2</p>
        <p>It was also important to know that the experimented 3
has the same
distribution for the diferent kinds of extractions.</p>
        <p>For this purpose we made the
Kolmogorov-Smirnov test for each pair of extractions. Table 1 shows us the 
values. In the table</p>
        <p>denotes the empirical distribution of 3
number of edges being born,  ˜ denotes the empirical distribution of 3
came from the
came
from the number of edges being alive, 
denotes the empirical distribution of 3
came from the number of triangles being born and  ˜ denotes the empirical
distribution of 3
came from the number of edges being alive.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Á.</given-names>
            <surname>Backhausz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. F.</given-names>
            <surname>Móri</surname>
          </string-name>
          :
          <article-title>A random graph model based on 3-interactions</article-title>
          , Ann. Univ. Sci. Budapest. Sect. Comput.
          <volume>36</volume>
          (
          <year>2012</year>
          ), pp.
          <fpage>41</fpage>
          -
          <lpage>52</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bezanson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Edelman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Karpinski</surname>
          </string-name>
          ,
          <string-name>
            <surname>V.</surname>
          </string-name>
          <article-title>Shah: Julia: A fresh approach to numerical computing</article-title>
          ,
          <source>SIAM review 59</source>
          (
          <year>2017</year>
          ), pp.
          <fpage>65</fpage>
          -
          <lpage>98</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>I.</given-names>
            <surname>Fazekas</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          <article-title>Barta: A continuous-time network evolution model describing 2- and 3- interactions</article-title>
          ,
          <source>Manuscript</source>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>I.</given-names>
            <surname>Fazekas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Barta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Noszály</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Porvázsnyik</surname>
          </string-name>
          :
          <article-title>A continuous-time network evolution model describing 3-interactions</article-title>
          ,
          <source>Manuscript</source>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>I.</given-names>
            <surname>Fazekas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Noszály</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          <article-title>Perecsényi: The N-star network evolution model</article-title>
          ,
          <source>J. Appl. Probab</source>
          .
          <volume>56</volume>
          (
          <year>2019</year>
          ), pp.
          <fpage>416</fpage>
          -
          <lpage>440</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>I.</given-names>
            <surname>Fazekas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Porvázsnyik</surname>
          </string-name>
          :
          <article-title>Scale-free property for degrees and weights in an N-interactions random graph model</article-title>
          ,
          <source>J. Math. Sci</source>
          . (N.Y.)
          <volume>214</volume>
          (
          <year>2016</year>
          ), pp.
          <fpage>69</fpage>
          -
          <lpage>82</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>P.</given-names>
            <surname>Jagers</surname>
          </string-name>
          <article-title>: Branching Processes with Biological Applications</article-title>
          , Wiley (
          <year>1975</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>T. F.</given-names>
            <surname>Móri</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <article-title>Rokob: A random graph model driven by time-dependent branching dynamics</article-title>
          ,
          <source>Annales Univ. Sci. Budapest</source>
          ., Sect. Comp.
          <volume>46</volume>
          (
          <year>2017</year>
          ), pp.
          <fpage>191</fpage>
          -
          <lpage>213</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>