Rhestr Tracwyr Cyflwr

Ar hyn o bryd mae gan Ciw y tracwyr cyflwr canlynol:

Y Traciwr SystemPopulation

Mae'r traciwr SystemPopulation yn recordio'r nifer o gwsmeriaid yn y system cyfan, heb poeni pa nod y maent ynddo. Mae cyflyrau ar ffurf rhif:

4

Mae hwn yn dynodi bod pedwar cwsmer yn y system.

Mae'r gwrthrych Simulation yn cymryd y ddadl opsiynol tracker:

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.SystemPopulation()) 

Y Traciwr NodePopulation

Mae'r traciwr NodePopulation yn recordio nifer o gwsmeriaid ym mhob nod. Mae cyflyrau ar ffurf rhestr o rhifau. Mae enghraifft o rhwydwaith ciwio tri nod isod:

(2, 0, 5)

Mae hwn yn dynodi bod dau cwsmer yn y nod cyntaf, dim cwsmer yn yr ail nod, a pump cwsmer yn y trydydd nod.

Mae'r gwrthrych Simulation yn cymryd y ddadl opsiynol tracker:

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.NodePopulation()) 

Y Traciwr NodePopulationSubset

Mae'r traciwr NodePopulationSubset, yn debyg i'r traciwr NodePopulation, un recordio nifer o gwsmeriaid ym mhob nod. Ond, mae'r traciwr hwn yn eich galluogi i ond tracio is-set o nodau'r system. Mae cyflyrau yn cymryd ffurf rhestr o rhifau. Mae enghraifft o dracio tri nod mewn rhwydwaith ciwio wedi'i ddaqngos isod:

(2, 0, 5)

Mae hwn yn dynodi bod yna dau cwsmer yn y nod cyntaf i'w arsylwi, dim cwsmeriaid yn yr ail nod i'w arsylwi, a phump cwsmer yn y trydydd nod i'w arsylwi.

Mae'r gwrthrych Simulation yn cymryf y ddadl opsiynol tracker, sy'n cymryd dadl observed_nodes, rhestr o rhifau nod i'w arsylwi. Caiff ei ddefnyddio fel y ganlyn (yn arsylwi'r nod cyntaf, yr ail, a'r pumed nod):

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.NodePopulationSubset([0, 1, 4])) 

Y Traciwr NodeClassMatrix

Mae'r traciwr NodeClassPopulation yn recordio'r nifer o gwsmeriaid ym mhob nod, wedi'i sortio gan dosbarth cwsmer. Mae cyflyrau ar ffurf matrics, hynny yw rhestr o restrau, lle mae bod rhes yn dynodi nod a pob colofn yn cynodi dosbarth cwsmer. Dangosir enghraifft o rhwydwaith ciwio tri nod gyda dau dosbarth cwsmer:

((3, 0),
 (0, 1),
 (4, 1))
Mae hwn yn dynodi bod:
  • Tri cwsmer yn y nod cyntaf - tri o Dosbarth 0, a dim o Dosbarth 1

  • Un cwsmer yn yr ail nod - dim i Dosbarth 0, ac un o Dosbarth 1

  • Pump cwsmer yn y trydydd nod - pedwar o Dosbarth 0, ac un o Dosbarth 1.

Mae'r gwrthrych Simulation yn cymryd y ddadl opsiynol tracker:

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.NodeClassMatrix()) 

Y Traciwr NaiveBlocking

Mae'r traciwr NaiveBlocking yn recordio nifer of cwsmeriaid wrth bob nod, a faint o'r cwsmeriaid yna sydd wedi'i flocio'n bresennol. Dangosir enghraifft o rwydwaith ciwio pedwar nod:

((3, 0), (1, 4), (10, 0), (8, 1))

Dynodir hwn 3 cwsmer wrth y nod cyntaf, mae 0 o rain wedi'i flocio; 5 cwsmer wrth yr ail nod, mae 4 o rain wedi'i flocio; 10 cwsmer wrth y trydydd nod, mae 0 o rain wedi'i flocio; a 9 cwsmer wrth y pedwerydd nod, mae 1 o rain wedi'i flocio.

Mae'r gwrthrych Simulation yn cymryd y ddadl opsiynol tracker:

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.NaiveBlocking()) 

Y Traciwr MatrixBlocking

Mae'r traciwr MatrixBlocking yn cofnodi'r drefn a chyrchfannau'r cwsmeriaid a flociwyd mewn ffyrdd matrics. Wrth ochr hwn cofnodir nifer o gwsmeriaid wrth bob nod. Mae'r gydran gyntaf, matrics, yn rhestru'r cwsmeriaid a flociwyd o'r nod rhes i'r nod colofn. Rhestrau o holl gwsmeriaid a flociwyd o'r math yma yw'r cofnodion, ac mae'r rhifau yn dynodi'r drefn a flociwyd y cwsmeriaid. Dangosir esiampl o rwydwaith pedwar nod:

( ( ( (),  (),     (), ()  ),
    ( (),  (1, 4), (), (2) ),
    ( (),  (),     (), ()  ),
    ( (3), (),     (), ()  ) ),
  (3, 5, 10, 9) )

Mae hwn yn cynrychioli:

  • 3 cwsmer wrth y nod cyntaf

  • 5 cwsmer wrth yr ail nod

  • 10 cwsmer wrth y trydydd nod

  • 9 cwsmer wrth y pedwerydd nod

Mae hefyd yn dangos trefn a chyrchfannau’r cwsmeriaid a flociwyd:

  • Allan o'r holl gwsmeriaid a flociwyd, y cyntaf oedd o nod 2 i nod 2

  • Yr ail oedd o nod 2 i nod 4

  • Y trydydd oedd o nod 4 i nod 1

  • Y pedwerydd oedd o nod 2 i nod 2.

Mae'r gwrthrych Simulation yn cymryd y ddadl opsiynol tracker:

>>> Q = ciw.Simulation(N, tracker=ciw.trackers.MatrixBlocking())