Skip to content

Commit 3f3820a

Browse files
xabarovcursoragent
andcommitted
Add works/negative_queues article sources and figures.
Stop ignoring works/negative_queues while keeping generated LaTeX artifacts, caches, results, and backup files out of git. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent d7e650d commit 3f3820a

183 files changed

Lines changed: 6679 additions & 2 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,23 @@ cython_debug/
162162

163163
.vscode
164164

165-
# ignore whole works/negative_queues (article, figures, results)
166-
works/negative_queues/
165+
# works/negative_queues (article sources, figures, scripts)
166+
# keep sources in git, ignore generated artifacts and bulky results
167+
works/negative_queues/build/
168+
works/negative_queues/results/
169+
works/negative_queues/__pycache__/
170+
works/negative_queues/*.aux
171+
works/negative_queues/*.bbl
172+
works/negative_queues/*.bcf
173+
works/negative_queues/*.blg
174+
works/negative_queues/*.fdb_latexmk
175+
works/negative_queues/*.fls
176+
works/negative_queues/*.log
177+
works/negative_queues/*.out
178+
works/negative_queues/*.run.xml
179+
works/negative_queues/*.synctex.gz
180+
works/negative_queues/*.toc
181+
works/negative_queues/**/*.bkp
167182

168183
# ignore all png files in tests/units folder
169184
tests/units/*.png
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
## Сборка LaTeX-версии статьи
2+
3+
Файлы:
4+
5+
- `negative_queues_takahasi_takami.tex` — исходник статьи
6+
- `citations.bib` — библиография (biblatex/biber)
7+
8+
Сборка (в папке `works/negative_queues/`):
9+
10+
```bash
11+
pdflatex -interaction=nonstopmode -halt-on-error negative_queues_takahasi_takami.tex
12+
biber negative_queues_takahasi_takami
13+
pdflatex -interaction=nonstopmode -halt-on-error negative_queues_takahasi_takami.tex
14+
pdflatex -interaction=nonstopmode -halt-on-error negative_queues_takahasi_takami.tex
15+
```
16+
17+
Выходной файл: `negative_queues_takahasi_takami.pdf`.
18+
19+
## Воспроизводимость экспериментов
20+
21+
Расчёты и графики для статьи генерируются скриптом `work_mgn_negatives.py`. Параметры сетки и точности задаются в `base_parameters.yaml`. Запуск выполняется **из корня репозитория** (most-queue), с виртуальным окружением `./.venv`.
22+
23+
**Пересчёт результатов для дисциплины RCS** (рисунки и `results.json` в `negative_queues_figures/rcs/{utilization,coefs,channels}/`):
24+
25+
```bash
26+
cd /path/to/most-queue
27+
NEGATIVE_DISCIPLINE=RCS OUTPUT_DIR=works/negative_queues/negative_queues_figures/rcs ./.venv/bin/python works/negative_queues/work_mgn_negatives.py
28+
```
29+
30+
**Пересчёт результатов для дисциплины DISASTER (катастрофы)**:
31+
32+
```bash
33+
NEGATIVE_DISCIPLINE=DISASTER OUTPUT_DIR=works/negative_queues/negative_queues_figures/disaster ./.venv/bin/python works/negative_queues/work_mgn_negatives.py
34+
```
35+
36+
После прогона в каждой из подпапок `rcs` и `disaster` должны появиться файлы `v_ave.png`, `w_ave.png`, `v_served_ave.png`, `v_broken_ave.png`, `*_err.png` и `results.json`. Затем можно заново собрать PDF (команды выше в папке `works/negative_queues/`).
37+
38+
**Обновление таблиц из результатов:** опционально можно сгенерировать фрагменты LaTeX-таблиц (booktabs) из сохранённых `results.json` скриптом:
39+
40+
```bash
41+
./.venv/bin/python works/negative_queues/export_tables_from_results.py
42+
```
43+
44+
Скрипт выводит готовые строки таблиц в stdout; при необходимости их можно вставить в статью вручную.
45+

works/negative_queues/__init__.py

Whitespace-only changes.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
accuracy: 1e-10
2+
arrival_rate:
3+
positive: 1.0
4+
negative: 0.3
5+
negative_rate:
6+
min: 0.05
7+
max: 1.0
8+
num_points: 15
9+
# For delta-sweeps use fewer jobs (otherwise very slow)
10+
num_of_jobs: 200000
11+
num_of_jobs: 1000000
12+
service:
13+
cv:
14+
base: 1.2
15+
min: 0.3
16+
max: 3
17+
num_points: 20
18+
channels:
19+
base: 3
20+
min: 1
21+
max: 10
22+
utilization:
23+
base: 0.7
24+
min: 0.1
25+
max: 0.9
26+
num_points: 20
27+
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
@article{takahashi1976,
2+
author = {Takahashi, Y. and Takami, Y.},
3+
title = {A Numerical Method for the Steady-State Probabilities of a {GI/G/c} Queuing System in a General Class},
4+
journal = {Journal of the Operations Research Society of Japan},
5+
year = {1976},
6+
volume = {19},
7+
number = {2},
8+
pages = {147--157}
9+
}
10+
11+
@article{gelenbe1991,
12+
author = {Gelenbe, Erol},
13+
title = {Product-form queueing networks with negative and positive customers},
14+
journal = {Journal of Applied Probability},
15+
year = {1991},
16+
volume = {28},
17+
number = {3},
18+
pages = {656--663}
19+
}
20+
21+
@article{gelenbe1992,
22+
author = {Gelenbe, Erol and Schassberger, Rudolf},
23+
title = {Stability of product form queueing networks with negative customers},
24+
journal = {Journal of Applied Probability},
25+
year = {1992},
26+
volume = {29},
27+
number = {4},
28+
pages = {890--901}
29+
}
30+
31+
@book{kleinrock1979ru,
32+
author = {Клейнрок, Л.},
33+
title = {Теория массового обслуживания},
34+
address = {Москва},
35+
publisher = {Машиностроение},
36+
year = {1979},
37+
language = {russian}
38+
}
39+
40+
@book{bocharov2004ru,
41+
author = {Бочаров, П. П. and Печинкин, А. В.},
42+
title = {Теория массового обслуживания},
43+
address = {Москва},
44+
publisher = {РУДН},
45+
year = {2004},
46+
language = {russian}
47+
}
48+
49+
@article{artalejo2000,
50+
author = {Artalejo, J. R.},
51+
title = {G-networks: A versatile approach for work removal in queueing networks},
52+
journal = {European Journal of Operational Research},
53+
year = {2000},
54+
volume = {126},
55+
number = {2},
56+
pages = {233--249}
57+
}
58+
59+
@article{harrison1996,
60+
author = {Harrison, Peter G. and Pitel, E.},
61+
title = {The {M/G/1} queue with negative customers},
62+
journal = {Advances in Applied Probability},
63+
year = {1996},
64+
volume = {28},
65+
number = {2},
66+
pages = {540--566}
67+
}
68+
69+
@article{bayer1996,
70+
author = {Bayer, N. and Boxma, O. J.},
71+
title = {Wiener--Hopf analysis of an {M/G/1} queue with negative customers and of a related class of random walks},
72+
journal = {Queueing Systems},
73+
year = {1996},
74+
volume = {23},
75+
number = {1-4},
76+
pages = {301--316}
77+
}
78+
79+
@article{boucherie1996,
80+
author = {Boucherie, Richard J. and Boxma, Onno J.},
81+
title = {The Workload in the {M/G/1} Queue with Work Removal},
82+
journal = {Probability in the Engineering and Informational Sciences},
83+
year = {1996},
84+
volume = {10},
85+
number = {2},
86+
pages = {261--277}
87+
}
88+
89+
@article{jain1996,
90+
author = {Jain, Gautam and Sigman, Karl},
91+
title = {A Pollaczek--Khintchine formula for {M/G/1} queues with disasters},
92+
journal = {Journal of Applied Probability},
93+
year = {1996},
94+
volume = {33},
95+
number = {4},
96+
pages = {1191--1200}
97+
}
98+
99+
@article{dudin1999,
100+
author = {Dudin, Alexander and Nishimura, S.},
101+
title = {A {BMAP/SM/1} queueing system with Markovian arrival input of disasters},
102+
journal = {Journal of Applied Probability},
103+
year = {1999},
104+
volume = {36},
105+
number = {3},
106+
pages = {868--881}
107+
}
108+
109+
@article{li2006,
110+
author = {Li, Q.-L. and Lin, C.},
111+
title = {The {M/G/1} processor-sharing queue with disasters},
112+
journal = {Computers \& Mathematics with Applications},
113+
year = {2006},
114+
volume = {51},
115+
number = {6-7},
116+
pages = {987--998}
117+
}
118+
119+
@article{atencia2004,
120+
author = {Atencia, Ignacio and Moreno, Pedro},
121+
title = {The discrete-time {Geo/Geo/1} queue with negative customers and disasters},
122+
journal = {Computers \& Operations Research},
123+
year = {2004},
124+
volume = {31},
125+
number = {9},
126+
pages = {1537--1550}
127+
}
128+
129+
@article{artalejo1998,
130+
author = {Artalejo, J. R. and G{\'o}mez-Corral, A.},
131+
title = {On a single server queue with negative arrivals and request repeated},
132+
journal = {Journal of Applied Probability},
133+
year = {1998},
134+
volume = {35},
135+
number = {3},
136+
pages = {907--918}
137+
}
138+
139+
@article{wang2008,
140+
author = {Wang, J. and Liu, B. and Li, J.},
141+
title = {Transient analysis of an {M/G/1} retrial queue subject to disasters and server failures},
142+
journal = {European Journal of Operational Research},
143+
year = {2008},
144+
volume = {189},
145+
number = {3},
146+
pages = {1338--1353}
147+
}
148+
149+
@article{dharmaraja2015,
150+
author = {Dharmaraja, S. and Kumar, R.},
151+
title = {Transient solution of a Markovian queueing model with heterogeneous servers and catastrophes},
152+
journal = {Opsearch},
153+
year = {2015},
154+
volume = {52},
155+
number = {4},
156+
pages = {810--824}
157+
}
158+
159+
@book{ryzhikov2018ru,
160+
author = {Рыжиков, Ю. И.},
161+
title = {Численные методы теории очередей},
162+
address = {Санкт-Петербург},
163+
publisher = {Лань},
164+
year = {2018},
165+
language = {russian}
166+
}
167+
168+
@misc{mostqueue2026,
169+
author = {Хабаров, Р. С. and Лохвицкий, В. А.},
170+
title = {Most-Queue: Библиотека методов расчёта СМО с отрицательными заявками},
171+
year = {2026},
172+
howpublished = {\url{https://github.com/xabarov/most-queue/tree/main/works/negative_queues}},
173+
note = {Дата обращения: 14.02.2026}
174+
}
175+

0 commit comments

Comments
 (0)