Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Ãëàâà 1
Ââåäåíèå
Äàííîå ïîñîáèå ïðåäíàçíà÷åíî äëÿ ïîìîùè â âûïîëíåíèè ëàáîðàòîðíûõ ðàáîò è êóðñîâûõ ïðîåêòîâ
ïî êóðñó Ìîäåëèðîâàíèå.  í¼ì ðàññìîòðåíû âîïðîñû:
1. Ãåíåðàöèè ïñåâäîñëó÷àéíûõ âåëè÷èí.
2. Àíàëèçà è ðåäóêöèè ãðàôà ñîáûòèé.
3. Ïîñòðîåíèÿ ãðàôà ñîáûòèé.
4. Ðåàëèçàöèè ìîíèòîðà ñîáûòèé.
1.1
Îáùàÿ ñõåìà ìîäåëèðîâàíèÿ ïðè âûïîëíåíèè êóðñîâûõ
ïðîåêòîâ
1.1.1
Ýòàïû èìèòàöèîííîãî ìîäåëèðîâàíèÿ
 îáùåì ñëó÷àå ïðîöåññ èìèòàöèîííîãî ìîäåëèðîâàíèÿ âêëþ÷àåò:
1.
Ôîðìóëèðîâêó çàäà÷è,
2.
Îïðåäåëåíèå öåëåé
âêëþ÷àÿ îáùåå îïèñàíèå ñèñòåìû è îïðåäåëåíèå åå ãðàíèö.
èññëåäîâàíèÿ, - îïðåäåëåíèå âîïðîñîâ, íà êîòîðûå äîëæíà îòâåòèòü
èìèòàöèÿ.
3.
Ïîñòðîåíèå ìîäåëè,
- îïèñàíèå ñóùåñòâåííûõ (äëÿ äàííîãî èññëåäîâàíèÿ) ñâîéñòâ ñèñòå-
ìû â òåðìèíàõ ñóùíîñòåé, àòðèáóòîâ èëè õàðàêòåðèñòèê êàæäîé ñóùíîñòè, àêòèâíîñòåé, â
êîòîðûå âîâëå÷åíû ýòè ñóùíîñòè è îïèñàíèå ìíîæåñòâà âîçìîæíûõ ñîñòîÿíèé ìîäåëè.
4.
Ñáîð èíôîðìàöèè
- ñáîð äàííûõ è èíôîðìàöèè, ïîçâîëÿþùèõ ðàçðàáîò÷èêó ìîäåëè ðàçðà-
áîòêó îïèñàíèÿ ñâîéñòâ ñóùíîñòåé è îïðåäåëåíèÿ ðàñïðåäåëåíèé âåðîÿòíîñòåé äëÿ ïàðàìåòðîâ
ñèñòåìû.
5.
Êîäèðîâàíèå
6.
Âåðèôèêàöèþ
- ïðîöåññ ïåðåâîäà îïèñàíèÿ ìîäåëè ñèñòåìû â ïðîãðàììó äëÿ ÝÂÌ.
- ïðîöåññ ïîäòâåðæäåíèÿ ïðàâèëüíîñòè ôóíêöèîíèðîâàíèÿ ïðîãðàììû (ïðî-
ãðàììà ðàáîòàåò ïî ñâîåé ñïåöèôèêàöèè).
7.
Âàëèäàöèþ
- ïðîöåññ ïîäòâåðæäåíèÿ àäåêâàòíîñòè ìîäåëè (ìîäåëü âåðíî èìèòèðóåò ïîâå-
äåíèå ìîäåëèðóåìîé ñèñòåìû). Èòåðàöèîííûå øàãè âàëèäàöèè è âåðèôèêàöèè ñîñòàâëÿþò
îñíîâíóþ ÷àñòü ðàçðàáîòêè êîìïüþòåðíîé ïðîãðàììû.
3
4
Ãëàâà 1.
8.
Ââåäåíèå
Ïëàíèðîâàíèå ýêñïåðèìåíòà - îïðåäåëåíèå àëüòåðíàòèâ, êîòîðûå äîëæíû áûòü ðàññìîòðåíû â õîäå èìèòàöèîííûõ ýêñïåðèìåíòîâ, âêëþ÷àåò âûáîð ñóùåñòâåííûõ âõîäíûõ ïåðåìåííûõ,
îïðåäåëåíèå èõ ïîäõîäÿùèõ çíà÷åíèé, îïðåäåëåíèå äëèí ýêñïåðèìåíòîâ è èõ êîëè÷åñòâà.
9.
10.
Ðàáî÷èå ýêñïåðèìåíòû
Äîêóìåíòèðîâàíèå
è àíàëèç ðåçóëüòàòîâ.
ïðîãðàììû è ðåçóëüòàòîâ ìîäåëèðîâàíèÿ.
Êðàòêîñòü êóðñà íå ïîçâîëÿåò âûïîëíèòü âñå ýòàïû â ïîëíîì îáú¼ìå.  ÷àñòíîñòè, ôîðìóëèðîâêà çàäà÷è è èñõîäíûå äàííûå ê ìîäåëèðîâàíèþ âõîäÿò â çàäàíèå íà ïðîåêòèðîâàíèå. Òàêæå
çàäàí è ñïîñîá ïðåäñòàâëåíèÿ ìîäåëè: ãðàôû ñîáûòèé. Ñîîòâåòñòâåííî, èñïîëüçóåòñÿ ñîáûòèéíîîðèåíòèðîâàííûé ïîäõîä ê ìîäåëèðîâàíèþ.
1.1.2
Òðåáîâàíèÿ ê îôîðìëåíèþ
Îò÷¼ò ïî êóðñîâîìó ïðîåêòó âêëþ÷àåò â ñåáÿ ñëåäóþùèå îáÿçàòåëüíûå ýëåìåíòû:
1. Òèòóëüíûé ëèñò
2. Çàäàíèå íà ïðîåêòèðîâàíèå
3. Ãðàô ñîáûòèé äëÿ ìîäåëèðóåìîé ñèñòåìû è åãî àíàëèç
4. Îïèñàíèå ïðîöåäóð îáðàáîòêè ñîáûòèé
5. Ëèñòèíã ïðîãðàììû ìîäåëèðîâàíèÿ
6. Ðåçóëüòàòû ìîäåëèðîâàíèÿ è èõ àíàëèç
Ãëàâà 2
Ãðàôû ñîáûòèé
Ãðàôû ñîáûòèé (ÃÑ) ÿâëÿþòñÿ óäîáíûì ñðåäñòâîì îïèñàíèÿ ñèñòåì ñ äèñêðåòíûìè ñîáûòèÿìè.
Âïåðâûå îíè áûëè ïðåäëîæåíû â 1983 ãîäó Ë. Øðóáåíîì [?].
ÃÑ ñîñòîèò èç âåðøèí
Ei ,
ñîîòâåòñòâóþùèõ ñîáûòèÿì, è äóã
Uij ,
ñîîòâåòñòâóþùèõ ïðè÷èííî-
ñëåäñòâåííûì ñâÿçÿì ïî ïëàíèðîâàíèþ è îòìåíå ñîáûòèé.  ïåðâîì ñëó÷àå äóãà îáîçíà÷àåòñÿ
ñïëîøíîé ëèíèåé, âî âòîðîì ïóíêòèðíîé (ñì. Ðèñ.2.1).
Ñîáûòèå îïðåäåëÿåòñÿ èçìåíåíèåì ïåðåìåííûõ ñîñòîÿíèÿ ñèñòåìû, ïðîèñõîäÿùèì ïðè íàñòóïëåíèè ýòîãî ñîáûòèÿ. Ìíîæåñòâî ïåðåìåííûõ, êîòîðîå ìîæåò èçìåíÿòüñÿ ïðè íàñòóïëåíèè ñîáûòèÿ
Ei
îáîçíà÷èì
Si .
Ïåðåìåííûå ñîñòîÿíèÿ ìîãóò áûòü êàê äåòåðìèíèðîâàííûìè, òàê è ñëó÷àéíûìè.
Ñâÿçü ñîáûòèé ìîæåò áûòü
óñëîâíîé è çàíèìàòü âðåìÿ ñðàáàòûâàíèÿ ïåðåõîäà. Íà Ðèñ. 1 âèäíî,
÷òî âðåìÿ ñðàáàòûâàíèÿ ïåðåõîäà îáîçíà÷àåòñÿ êàê âåñ äóãè, à óñëîâèå çàäàåòñÿ åãî íîìåðîì, ñòîÿùèì â ñêîáêàõ âîçëå ñïåöèàëüíîãî çíà÷êà íà äóãå. Âðåìÿ
äóãå îò ñîáûòèÿ
j
k
ê ñîáûòèþ
t ñðàáàòûâàíèÿ ïåðåõîäà ïî ïóíêòèðíîé
âñå ñîáûòèÿ k , îòñòîÿùèå íà t
îçíà÷àåò, ÷òî òðåáóåòñÿ îòìåíèòü
è áîëåå åäèíèö âðåìåíè îò òåêóùåãî.
Ðèñ. 2.1: Äâà òèïà äóã â ãðàôå ñîáûòèé
Ââåäåì îáîçíà÷åíèÿ:
Oi
ìíîæåñòâî ïåðåìåííûõ ìîäåëè, êîòîðûå ìîãóò áûòü èçìåíåíû ñîáûòèåì
i, O =
S
Oi .
i
Ei
ìíîæåñòâî ïåðåìåííûõ ìîäåëè, êîòîðûå âîâëå÷åíû â ïðèíÿòèå ðåøåíèé íà äóãàõ, èñõîäÿùèõ
èç âåðøèíû
i, E =
S
Ei .
i
Li
ìíîæåñòâî ïåðåìåííûõ ìîäåëè, êîòîðûå âîâëå÷åíû â ïðèíÿòèå ðåøåíèé âíóòðè ïðàâèëà îáðàáîòêè ñîáûòèÿ
i, L =
S
Li .
i
E0i
îáúåäèíåíèå
Ei
è
Li , E 0 =
S
E0i.
i
Mi
5
i, M =
S
Mi . Mi èñïîëüçóþòñÿ
i
â îïðåäåëåíèè óñëîâèé è âû÷èñëåíèè çàäåðæåê íà äóãàõ, èñõîäÿùèõ èç âåðøèíû i.
ìíîæåñòâî âñåõ ïåðåìåííûõ ìîäåëè, èñïîëüçóåìûõ ñîáûòèåì
6
Ãëàâà 2.
Ãðàôû ñîáûòèé
Ðàññìîòðèì ïðîñòåéøèé ïðèìåð ñèñòåìû ìàññîâîãî îáñëóæèâàíèÿ G/G/1 (Ðèñ. 2.2).
Ðèñ. 2.2: Îäíîêàíàëüíàÿ ÑÌÎ
Ìîæíî âûäåëèò ñëåäóþùèå ñîáûòèÿ:
1. Ïðèõîä íîâîãî òðåáîâàíèÿ.
2. Âçÿòèå òðåáîâàíèÿ íà îáñëóæèâàíèå.
3. Îêîí÷àíèå îáñëóæèâàíèÿ.
Ãðàô ñîáûòèé äëÿ ýòîãî ïðèìåðà ïðåäñòàâëåí íà Ðèñ. 2.3
Ðèñ. 2.3: Ãðàô ñîáûòèé äëÿ îäíîêàíàëüíîé ÑÌÎ
Èñïîëüçóþòñÿ ñëåäóþùèå óñëîâèÿ:
(I)
ïðèáîð ñâîáîäåí;
(II)
î÷åðåäü íå ïóñòà.
Äëÿ ïðîâåðêè ýòèõ óñëîâèé íåîáõîäèìî ââåñòè ñëåäóþùèå ïåðåìåííûå:
0 åñëè ñâîáîäåí è 1 åñëè çàíÿò;
Busy=0,
à âòîðîå êàê
Lq>0.
Lq
Busy ïðèçíàê çàíÿòîñòè,
òåêóùàÿ äëèíà î÷åðåäè. Òîãäà ïåðâîå óñëîâèå âûãëÿäèò êàê
Ñîîòâåòñòâåííî, èìååì
E1 =Busy, E2 = ∅
è
E3 =Lq.
Ýòè ïåðåìåííûå
Lq óâåëèLq óìåíüøàåòñÿ íà åäèíèöó è Busy ïðèíèìàåò çíà÷åíèå
çíà÷åíèå 0. Òàêèì îáðàçîì, O1 = {Lq}, O2 = {Busy,Lq}
ìåíÿþòñÿ ïðè íàñòóïëåíèè ñîáûòèé ñëåäóþùèì îáðàçîì. Ïðè íàñòóïëåíèè 1-ãî ñîáûòèÿ
÷èâàåòñÿ íà åäèíèöó, ïðè íàñòóïëåíèè 2-ãî
1, è ïðè íàñòóïëåíèè 3-ãî
è
O3 = {Busy}.
Busy
ïðèíèìàåò
7
2.0.1
Ïðèìåíåíèå ãðàôîâ ñîáûòèé
Ãðàôû ñîáûòèé ïîçâîëÿþò îòâåòèòü íà ñëåäóþùèå âîïðîñû:
1. êàêîå ïîäìíîæåñòâî ïåðåìåííûõ ñîñòîÿíèÿ àáñîëþòíî íåîáõîäèìî äëÿ ôóíêöèîíèðîâàíèÿ ìîäåëè;
2. ïðèñóòñòâóþò ëè â ìîäåëè íåîñóùåñòâèìûå ñîáûòèÿ;
3. êàêèå ñîáûòèÿ äîëæíû áûòü çàïëàíèðîâàííû ê ìîìåíòó çàïóñêà ìîäåëè;
4. ìîæíî ëè óìåíüøèòü êîëè÷åñòâî ñîáûòèé è, ñîîòâåòñòâåííî, ïðîöåäóð èõ îáðàáîòêè.
Ðàññìîòðèì ïî ïóíêòàì.
Ìèíèìàëüíûé íàáîð ïåðåìåííûõ
Ïðàâèëî 1. Äëÿ îñóùåñòâëåíèÿ ïðàâèëüíîãî ïåðåõîäà îò ñîñòîÿíèÿ ê ñîñòîÿíèþ äîñòàòî÷íî ââåñòè
è îïèñàòü ïåðåìåííûå èç
E ∪ L.
 ñàìîì äåëå, äëÿ îñóùåñòâëåíèÿ áåçóñëîâíûõ ïåðåõîäîâ äîñòà-
òî÷íî çíàòü çíà÷åíèÿ çàäåðæåê íà äóãàõ, òîãäà êàê âåðíûå óñëîâíûå ïåðåõîäû íåâîçìîæíû áåç
çíàíèÿ çíà÷åíèé ïåðåìåííûõ, âõîäÿùèõ â ñîîòâåòñòâóþùèå óñëîâèÿ, òàêæå êàê íåâîçìîæíî âåðíîå
âû÷èñëåíèå ïåðåìåííûõ ñîñòîÿíèÿ èç
Oi
áåç çíàíèÿ çíà÷åíèé ïåðåìåííûõ èç
Li .
Åñòåñòâåííî, ïðè
íàïèñàíèè èìèòàöèîííîé ìîäåëè ìîãóò ïîíàäîáèòüñÿ è äðóãèå ïåðåìåííûå, êàê äëÿ ïðîìåæóòî÷íûõ âû÷èñëåíèé, òàê è äëÿ ñáîðà íåîáõîäèìûõ äëÿ îòâåòîâ íà ïîñòàâëåííûå âîïðîñû ñòàòèñòèê.
Ìèíèìàëüíûé íàáîð ñîáûòèé, êîòîðûå íåîáõîäèìî çàïëàíèðîâàòü ÄÎ çàïóñêà ìîäåëè
è âîçìîæíûå íåîñóùåñòâèìûå ñîáûòèÿ
Íàïîìíèì, ÷òî â òåîðèè ãðàôîâ
ñèëüíîñâÿçíîé êîìïîíåíòîé îðèåíòèðîâàííîãî ãðàôà íàçûâàåòñÿ
ïîäãðàô, â êîòîðîì èç êàæäîé âåðøèíû â êàæäóþ ñóùåñòâóåò õîòÿáû îäèí ïóòü.
Óäàëèì èç ãðàôà ñîáûòèé âñå ïóíêòèðíûå äóãè (äóãè îòìåíû ñîáûòèé). Òîãäà ñïðàâåäèâî ñëåäóþùåå
Ïðàâèëî 2.
Äëÿ îñóùåñòâëåíèÿ ïðàâèëüíîãî ôóíêöèîíèðîâàíèÿ ìîäåëè íåîáõîäèìî, ÷òîáû
õîòÿ áû îäíî ñîáûòèå â êàæäîé ñèëüíîñâÿçíîé êîìïîíåíòå, íå èìåþùåé âõîäíûõ äóã, áûëî çàïëàíèðîâàííî äî çàïóñêà ìîäåëè.
Ýòî ïðàâèëî äîñòàòî÷íî î÷åâèäíî.  ñàìîì äåëå, åñëè â êîìïîíåíó íåò âõîäíûõ äóã, òî âîçìîæíû
ëèøü âíóòðåííèå ïåðåõîäû ìåæäó ñîáûòèÿìè ýòîé êîìïîíåíòû, óïðàâëåíèå íå ìîæåò ïðèéòè èçâíå.
Ýòî îçíà÷àåò íåîáõîäèìîñòü íà÷àëüíîãî òîë÷êà"âíóòðè ñàìîé êîìïîíåíòû. Åñëè æå ñîáûòèÿ â
êîìïîíåíòå òàêîâû, ÷òî íåâîçìîæíî çàðàíåå îïðåäåëèòü ìîìåíò íàñòóïëåíèÿ íè îäíîãî èç íèõ, ýòî
ãîâîðèò î
íåäîñòèæèìîñòè ñîáûòèé ýòîé êîìïîíåíòû è, ñëåäîâàòåëüíî, î íåâåðíîé ëîãèêå ìîäåëè.
Ïðèîðèòåòû ñîáûòèé
Ïðè âûïîëíåíèè èìèòàöèîííîé ïðîãðàììû, îïðåäåëÿåìîé íåêîòîðûì ãðàôîì ñîáûòèé, ìîæåò âîçíèêíóòü ñèòóàöèÿ, êîãäà íåñêîëüêî ñîáûòèé äîëæíû ïðîèçîéòè â îäèí è òîò æå ìîìåíò ñèñòåìíîãî
âðåìåíè. Èíîãäà ïîðÿäîê âûçîâà ñîîòâåòñòâóþùèõ ïðîöåäóð áåçðàçëè÷åí, à èíîãäà ðàçíûé ïîðÿäîê âûïîëíåíèÿ äà¼ò ðàçëè÷íîå ïîâåäåíèå ìîäåëè. Äëÿ ðàçðåøåíèÿ ýòîé ïðîáëåìû ñóùåñòâóåò
ñëåäóþùåå
Ïðàâèëî 3.
Åñëè ïåðåñå÷åíèå ìíîæåñòâ
ïðèîðèòåòà äëÿ ñîáûòèé
k
è
j.
Ok
è
Ej
íåïóñòî, òî íåîáõîäèìî óñòàíîâèòü îòíîøåíèå
8
Ãëàâà 2.
Ãðàôû ñîáûòèé
Ðåäóêöèÿ ãðàôà ñîáûòèé
Áóäåì íàçûâàòü äâà ãðàôà ñîáûòèé ýêâèâàëåíòíûìè, åñëè îíè ïðè îäíèõ è òåõ æå íà÷àëüíûõ
óñëîâèÿõ ïîðîæäàþò îäíó è òó æå ôàçîâóþ òðàåêòîðèþ â ïðîñòðàíñòâå ñîñòîÿíèé, ò.å. îäíè è òå æå
èçìåíåíèÿ ïåðåìåííûõ ñîñòîÿíèÿ âî âðåìåíè. Ðàññìîòðèì, êîãäà âîçìîæíî óìåíüøèòü ïîëó÷èòü
ýêâèâàëåíòíûé ãðàô ñîáûòèé ñ ìåíüøèì ÷èñëîì âåðøèí, óìåíüøèâ òåì ñàìûì ÷èñëî ïðîöåäóð
îáðàáîòêè ñîáûòèé.
Ïðàâèëî 4.
Ýêâèâàëåíòíûå ãðàôû ñîáûòèé âîçìîæíû ñ èëè áåç âåðøèíû
k
åñëè ýòà âåðøèíà
íå èìååò èñõîäÿùèõ óñëîâíûõ äóã è åñëè âåðíî îäíî èç ñëåäóþùèõ óñëîâèé:
1. âñå äóãè, âõîäÿùèå â âåðøèíó
2.
Ok
k,
èìåþò íóëåâîå âðåìÿ çàäåðæêè;
íå ñîäåðæèò ïåðåìåííûõ, âõîäÿùèõ â óñëîâèÿ íà äóãàõ;
3. âñå äóãè, èñõîäÿùèå èç âåðøèíû
k,
èìåþò íóëåâîå âðåìÿ çàäåðæêè.
Ïðè âûïîëíåíèè ïåðâîãî óñëîâèÿ âåðøèíà
k
ìîæåò áûòü îáúåäèíåíà ñ îäíîé èç âåðøèí, íà-
÷àëüíûõ äëÿ ð¼áåð, âõîäÿùèõ â íå¼. Èçìåíåíèÿ ïåðåìåííûõ ñîñòîÿíèÿ, ïðîèñõîäèâøèå â âåðøèíå
k
òåïåðü äîáàâëÿþòñÿ ê èçìåíåíèÿì, ïðîâîäèìûì â ýòîé èñõîäÿùåé âåðøèíå. Çàòåì âåðøèíà
k
óäàëÿåòñÿ èç ãðàôà. Îòìåòèì, ÷òî â ñëó÷àå ïðèìåíåíèÿ ýòîãî âàðèàíòà ðåäóêöèè òðåáîâàíèå íà
îòñóòñòâèå èñõîäÿùèõ óñëîâíûõ äóã íå ÿâëÿåòñÿ íåîáõîäèìûì.
Äëÿ ïðèâåä¼ííîãî âûøå ïðèìåðà (Ðèñ. 2.3) èìååì ÷òî, ñîãëàñíî óñëîâèþ 1, âåðøèíà 3 ìîæåò
áûòü îáúåäèíåíà ñ âåðøèíîé 2. Ñîîòâåòñòâåííî, èìååì ðåäóöèðîâàííûé ãðàô ñîáûòèé, ïðåäñòàâëåííûé íà Ðèñ. 2.4.
Ðèñ. 2.4: Ðåäóöèðîâàííûé ãðàô ñîáûòèé äëÿ ïðèìåðà íà Ðèñ. 2.2
Ãëàâà 3
Ôóíêöèè è ðåàëèçàöèÿ ìîíèòîðà
ñîáûòèé
Äëÿ ðåàëèçàöèè ïðîãðàììû ìîäåëèðîâàíèÿ íåîáõîäèìî èìåòü ñëåäóþùèå ïðîöåäóðû (â ñêîáêàõ
óêàçàíû îáùåïðèíÿòûå, íî íå îáÿçàòåëüíûå íàçâàíèÿ):
ïëàíèðîâàíèÿ ñîáûòèÿ (Schedule(E,t))
îòìåíû ñîáûòèÿ (Cancel(E,t))
çàïóñêà ìîäåëè (Simulate)
ïëàíèðóåò ñîáûòèå
îòìåíÿåò ñîáûòèå
E
E
íà ìîìåíò âðåìåíè
t;
äëÿ âñåõ âðåì¼í áîëüøå èëè ðàâíûõ
t;
â áåñêîíå÷íîì öèêëå çàïóñêàåò îáðàáîò÷èê áëèæàéøåãî ïî âðåìå-
íè ñîáûòèÿ.
Ðåàëèçîâàòü îáðàáîòêó ñîáûòèÿ ìîæíî ñ ïîìîùüþ ïðîöåäóðû (F ) èëè àêòèâíîé ôàçû ïðîãðàììíîãî ïðîöåññà (P ).
êàëåíäàðü ñîáûòèé. Êàëåíäàðåì
óïðàâëÿþùèì ñïèñêîì Lc áóäåì íàçûâàòü óïîðÿäî÷åííûé ïî ìîäåëüíîìó (ñèñòåìíîìó) âðåìåíè ñïèñîê óâåäîìëåíèé î ñîáûòèÿõ, ãäå óâåäîìëåíèå î ñîáûòèè åñòü òðîéêà Etime =<
Îñíîâîé äëÿ ðåàëèçàöèè ïîñëåäîâàòåëüíîñòè ñîáûòèé ÿâëÿåòñÿ
ñîáûòèé èëè
time, Fi [Pi ], next >,
ãäå
next
åñòü ññûëêà íà ñëåäóþùåå â ñïèñêå óâåäîìëåíèå î ñîáûòèè (Ðèñ. 3.1).
Äàëåå, äëÿ óäîáñòâà, åñëè íå òðåáóåòñÿ äåëàòü ñïåöèàëüíîãî ðàçëè÷èÿ, âìåñòî
çîâàòü îáîçíà÷åíèå
F Pi
Fi [Pi ]
áóäåì èñïîëü-
äëÿ îáðàáîò÷èêà ñîáûòèÿ. Íà ïðàêòèêå, ÷òî è íàøëî îòðàæåíèå íà ðèñóíêå,
óâåäîìëåíèå î ñîáûòèè ñîäåðæèò ðÿä äîïîëíèòåëüíûõ ïîëåé (íàïðèìåð, òåêñòîâîå èìÿ ñîáûòèÿ),
êîòîðûå ìîãóò èñïîëüçîâàòüñÿ äëÿ îòëàäêè (ðåæèì òðàññèðîâêè ñîáûòèé) èëè áîëåå ýôôåêòèâíîãî
ïîèñêà ïî êàëåíäàðþ.
Ðèñ. 3.1: Ñòàíäàðòíàÿ ñòðóêòóðà êàëåíäàðÿ ñîáûòèé (óïðàâëÿþùåãî ñïèñêà)
9
10
Ãëàâà 3.
Ôóíêöèè è ðåàëèçàöèÿ ìîíèòîðà ñîáûòèé
Óïðàâëÿþùèé àëãîðèòì ñèñòåìû ìîäåëèðîâàíèÿ
âå îáðàáîò÷èêîâ ñîáûòèé
F Pi
çàêëþ÷àåòñÿ â ïîñëåäîâàòåëüíîì âûçî-
c îäíîâðåìåííîé ñìåíîé çíà÷åíèÿ ñèñòåìíîé ïåðåìåííîé
âðåìÿ
íà
timei .
Ïðè âûïîëíåíèè êóðñîâûõ ðàáîò ðåêîìåíäóåòñÿ èñïîëüçîâàòü äëÿ îáðàáîòêè ñîáûòèé ïðîöåäóðû, òàê êàê ýòî ïðîùå äëÿ íåáîëüøèõ ìîäåëåé, ïðåäëàãàåìûõ ñòóäåíòàì.
3.1
Ðåàëèçàöèÿ ïðîöåäóð îáðàáîòêè ñîáûòèé
 îáùåì ñëó÷àå âñå ïðîãðàììû îáðàáîòêè ñîáûòèé èìåþò îäèíàêîâóþ ñòðóêòóðó è ñîñòîÿò èç
äâóõ ÷àñòåé: ÷àñòè èçìåíåíèÿ ñîñòîÿíèÿ ìîäåëè (èçìåíÿþòñÿ ýëåìåíòû ìíîæåñòâà
Oi )
è ÷àñòè
óïðàâëåíèÿ ñîáûòèÿìè, â êîòîðîé ñîäåðæàòñÿ îïåðàòîðû ïëàíèðîâàíèÿ è îòìåíû ñîáûòèé. Âòîðàÿ
÷àñòü â òî÷íîñòè ñîîòâåòñòâóåò èñõîäÿùèì äóãàì äëÿ ñîîòâåòñòâóþùåé ñîáûòèþ âåðøèíû ãðàôà
ñîáûòèé. Èìååì ñëåäóþùèå âàðèàíòû:
Âèä äóãè
Îïåðàòîð
ñïëîøíàÿ, áåç óñëîâèÿ, âðåìÿ çàäåðæêè
ñïëîøíàÿ, c óñëîâèåì
C,
ïóíêòèðíàÿ, áåç óñëîâèÿ, âðåìÿ
ïóíêòèðíàÿ, c óñëîâèåì
t
t
çàäåðæêè t
âðåìÿ çàäåðæêè
C,
âðåìÿ çàäåðæêè
t
Schedule(<Ñëåä. ñîáûòèå>,Time+t);
if C {Schedule(<Ñëåä.ñîáûòèå>,Time+t);}
Cancel(<Ñëåä.ñîáûòèå>,Time+t);
if C {Cancel(<Ñëåä.ñîáûòèå>,Time+t);}
Ãëàâà 4
Äàò÷èêè ñëó÷àéíûõ ÷èñåë
Ïðè îïèñàíèè ïîâåäåíèÿ, à èíîãäà è ñòðóêòóð ñëîæíûõ ñèñòåì ÷àñòî ïðèõîäèòñÿ èìåòü äåëî ñî ñëó÷àéíûìè îáúåêòàìè, â ÷àñòíîì ñëó÷àå ñëó÷àéíûìè ÷èñëàìè è ïðîöåññàìè. Ïðè èõ ìîäåëèðîâàíèè
íà ÝÂÌ, åñëè íå èñïîëüçîâàòü ñïåöèàëüíûå óñòðîéñòâà, èñïîëüçóþòñÿ àëãîðèòìû ïîëó÷åíèÿ ïîñëåäîâàòåëüíîñòåé âåëè÷èí êîòîðûå, íå ÿâëÿÿñü íà ñàìîì äåëå ñëó÷àéíûìè,
âåäóò ñåáÿ êàê ñëó÷àéíûå.
Òàêèå âåëè÷èíû èëè îáúåêòû íàçûâàþòñÿ ïñåâäîñëó÷àéíûìè.
 îñíîâå âñåõ àëãîðèòìîâ ïîëó÷åíèÿ ïñåâäîñëó÷àéíûõ îáúåêòîâ ëåæèò èñïîëüçîâàíèå òàê íàçûâàåìîãî
áàçîâîãî äàò÷èêà ñëó÷àéíûõ ÷èñåë (ä.ñ.÷.), òî åñòü ãåíåðàòîðà ïñåâäîñëó÷àéíûõ ÷èñåë,
ðàâíîìåðíî ðàñïðåäåëåííûõ íà îòðåçêå
çíà÷àþòñÿ êàê
4.1
ξ
èëè
ξi ,
[0, 1]
(ðåàëüíî, êàê ïðàâèëî,
[0, 1)).
Äàëåå òàêèå ÷èñëà îáî-
â çàâèñèìîñòè îò êîíòåêñòà.
Ãåíåðàöèÿ íåçàâèñèìûõ, îäèíàêîâî ðàñïðåäåëåííûõ ñëó÷àéíûõ âåëè÷èí
4.1.1
Íåïðåðûâíûå ðàñïðåäåëåíèÿ
Ñóùåñòâóåò íåñêîëüêî ìåòîäîâ ãåíåðàöèè íåçàâèñèìûõ ñ.â. ñ çàäàííûì çàêîíîì ðàñïðåäåëåíèÿ.
Íàèáîëåå òî÷íûå èç íèõ îñíîâàíû íà ïðåîáðàçîâàíèè ñ.â. Òàê, áîëüøîå êîëè÷åñòâî äàò÷èêîâ ïîëó÷àåòñÿ èñõîäÿ èç èçâåñòíîãî ðåçóëüòàòà î ðàâíîìåðíîì íà
η
[0, 1)
ðàñïðåäåëåíèè ôóíêöèè
- ïðîèçâîëüíàÿ íåïðåðûâíàÿ ñëó÷àéíàÿ âåëè÷èíà ñ ôóíêöèåé ðàñïðåäåëåíèÿ
Fη (η),
ãäå
Fη (x).
Ïðèìåð 2.1. Òðåáóåòñÿ ïîëó÷èòü äàò÷èê ýêñïîíåíöèàëüíî ðàñïðåäåëåííûõ ñ.â.  ýòîì ñëó÷àå
Fη (x) = 1 − e−λx
(4.1)
ξ = 1 − e−λη
(4.2)
Òîãäà èç ðåøåíèÿ óðàâíåíèÿ
ïîëó÷àåì η = − log(1−ξ)
.
λ
Ìîæíî çàìåòèòü, ÷òî âûðàæåíèå ïîä çíàêîì ëîãàðèôìà â ïîñëåäíåé ôîðìóëå èìååò ðàâíîìåðíîå ðàñïðåäåëåíèå íà îòðåçêå [0,1), ÷òî ïîçâîëÿåò ïîëó÷àòü äðóãóþ, íî òàê æå ðàñïðåäåë¼ííóþ ïîñëåäîâàòåëüíîñòü
ïî ôîðìóëå: η = − logλ ξ .
Ãåíåðàòîð íîðìàëüíûõ ñ.â.
Íîðìàëüíî ðàñïðåäåëåííàÿ ñ.â.
ν
èìååò ôóíêöèþ ïëîòíîñòè ðàñïðåäåëåíèÿ âåðîÿòíîñòè
φ(x) = √
x−a 2
1
e(− σ ) .
2πσ
11
(4.3)
12
Ãëàâà 4.
Äàò÷èêè ñëó÷àéíûõ ÷èñåë
ν−a
èìååò òàê íàçûâàåìîå ñòàíäàðòíîå íîðσ
ìàëüíîå ðàñïðåäåëåíèå ñ íóëåâûì ìàòåìàòè÷åñêèì îæèäàíèåì è åäèíè÷íîé äèñïåðñèåé. Äàëåå ðå÷ü
Ñâÿçàííàÿ ñ íåþ íîðìàëèçîâàííàÿ âåëè÷èíà
u=
èäåò î ãåíåðàöèè èìåííî òàêèõ ñ.â.
Äëÿ ãåíåðàöèè íîðìàëüíî ðàñïðåäåëåííûõ ñ.â. ìåòîä îáðàòíîé ôóíêöèè íàïðÿìóþ íå ïðèìåíèì, ïîñêîëüêó äëÿ îáðàòíîé ôóíêöèè íåò àíàëèòè÷åñêîãî âûðàæåíèÿ. Âîçìîæíî ïðèáëèçèòü îáðàòíóþ ôóíêöèþ ïî èçâåñòíûì òàáëè÷íûì çíà÷åíèÿì, íî äîñòèæåíèå õîðîøåé òî÷íîñòè ïîòðåáóåò
äîñòàòî÷íî âûñîêîé ñòåïåíè àïïðîêñèìèðóþùèõ ïîëèíîìîâ. Íà ïðàêòèêå èñïîëüçóþò êóñî÷íóþ
àïïðîêñèìàöèþ (òðè ó÷àñòêà) äðîáíî-ïîëèíîìèàëüíîé ôóíêöèåé èëè èñïîëüçóþò äðóãèå ìåòîäû.
Íàèáîëåå ïðîñòûì èç òî÷íûõ ÿâëÿåòñÿ ìåòîä ïîëÿðíûõ êîîðäèíàò, ïðè êîòîðîì ñ èñïîëüçîâàíèåì ïàðû çíà÷åíèé áàçîâîãî äàò÷èêà ïîëó÷àþò ïàðó íåçàâèñèìûõ íîðìàëüíî ðàñïðåäåëåííûõ ñ.â.
Ñîîòâåòñòâóþùèé àëãîðèòì èìååò ñëåäóþùèé âèä [?]:
Øàã 1. Ïîëó÷èòü äâà íåçàâèñèìûõ ñëó÷àéíûõ ÷èñëà
ξ1
è
ξ2 .
v1 = 2ξ1 − 1 è v2 = 2ξ2 − 1, ýòè
v2 ëó÷øå ïðåäñòàâèòü â ìàøèíå
Ïîëîæèì
âåëè÷èíû ðàâíîìåðíî ðàñïðåäåëåíû íà (-1,1). Âåëè÷èíû
v1
è
â ôîðìå ñ ïëàâàþùåé çàïÿòîé.
Øàã 2. Âû÷èñëèòü
Øàã 3. Åñëè
S≥1
S = v12 + v22 .
òî ïîâòîðèòü øàã 1.
Øàã 4. Ïðèñâîèòü âåëè÷èíàì
u1
è
u2
çíà÷åíèÿ, âû÷èñëåííûå ïî ôîðìóëàì
r
u1 = v1
r
−2 log S
S
u2 = v2
−2 log S
S
(4.4)
Äðóãèå äàò÷èêè ìîãóò îñíîâûâàòüñÿ íà èçâåñòíûõ ñîîòíîøåíèÿõ ìåæäó ðàñïðåäåëåíèÿìè.
Ïðèìåð 2.2. Ãåíåðàòîð ëîãàðèôìè÷åñêè íîðìàëüíûõ ñ.â.
Ïî îïðåäåëåíèþ, ëîãàðèôìè÷åñêè íîðìàëüíîé ñ.â. íàçûâàåòñÿ ñ.â., ëîãàðèôì êîòîðîé ðàñïðåäåëåí ïî
íîðìàëüíîìó ðàñïðåäåëåíèþ. Ñîîòâåòñòâåííî, åñëè èìåòü ãåíåðàòîð íåçàâèñèìûõ íîðìàëüíî ðàñïðåäåëåííûõ ñ.â. u(ñì. âûøå), òðåáóåìûé ãåíåðàòîð ïîëó÷àåòñÿ ïî ôîðìóëå η = eu .
Äëÿ ïîñòðîåíèÿ ïðèáëèæåííûõ ãåíåðàòîðîâ ìîæíî èñïîëüçîâàòü ïðåäåëüíûå òåîðåìû òåîðèè
âåðîÿòíîñòåé.
Ïðèìåð 2.3. Ãåíåðàòîð íîðìàëüíûõ ñ.â.
Öåíòðàëüíàÿ ïðåäåëüíàÿ òåîðåìà òåîðèè âåðîÿòíîñòåé ãëàñèò "ðàñïðåäåëåíèå ñóììû íåçàâèñèìûõ, îäèíàêîâî ðàñïðåäåëåííûõ ñëó÷àéíûõ âåëè÷èí ñõîäèòñÿ ê íîðìàëüíîìó ñ ìàòåìàòè÷åñêèì îæèäàíèåì, ðàâíûì
ñóììå ìàòåìàòè÷åñêèõ îæèäàíèé è äèñïåðñèåé, ðàâíîé ñóììå äèñïåðñèé".
Ñîîòâåòñòâåííî, ïðè äîñòàòî÷íî áîëüøîì n ñóììà
E[ξ] =
1
2
è D[ξ] =
1
,
12
n
P
ξi èìååò íîðìàëüíîå ðàñïðåäåëåíèå. Ïîñêîëüêó
i=1
óäîáíî îãðàíè÷èòü ñóììó äâåíàäöàòüþ ñëàãàåìûìè:
ũ =
12
X
(4.5)
ξi − 6.
i=1
ũ ðàñïðåäåëåíà íà èíòåðâàëå (-6,6) è àáñîëþòíîå îòêëîíåíèå ôóíêöèè ïëîòíîñòè âåðîÿòíîñòåé îò èñòèíîé
íå ïðåâûøàåò 2%.
Ìåòîä îòáðàêîâêè
 íåêîòîðûõ ñëó÷àÿõ òðåáóåòñÿ òî÷íîå ñîîòâåòñòâèå çàäàííîìó çàêîíó ðàñïðåäåëåíèÿ ïðè îòñóòñòâèè ýôôåêòèâíûõ ìåòîäîâ ãåíåðàöèè.  òàêîé ñèòóàöèè äëÿ îãðàíè÷åííûõ ñ.â. ìîæíî èñïîëüçîâàòü ñëåäóþùèé ìåòîä. Ôóíêöèÿ ïëîòíîñòè ðàñïðåäåëåíèÿ âåðîÿòíîñòåé ñ.â.
ïðÿìîóãîëüíèê
à
c
(a, b) × (0, c),
òàêîé, ÷òî
a
è
b
fη (x)
âïèñûâàåòñÿ â
ñîîòâåòñòâóþò ãðàíèöàì äèàïàçîíà èçìåíåíèÿ ñ.â.
η,
ìàêñèìàëüíîìó çíà÷åíèþ ôóíêöèè ïëîòíîñòè å¼ ðàñïðåäåëåíèÿ. Òîãäà î÷åðåäíàÿ ðåàëèçàöèÿ
ñ.â. îïðåäåëÿåòñÿ ïî ñëåäóþùåìó àëãîðèòìó:
Øàã 1. Ïîëó÷èòü äâà íåçàâèñèìûõ ñëó÷àéíûõ ÷èñëà
ξ1
è
ξ2 .
4.1.
13
Ãåíåðàöèÿ íåçàâèñèìûõ, îäèíàêîâî ðàñïðåäåëåííûõ ñëó÷àéíûõ âåëè÷èí
Øàã 2. Åñëè
fη (a + (b − a)ξ1 < cξ2 )
òî âûäàòü
a + (b − a)ξ1
â êà÷åñòâå ðåçóëüòàòà. Èíà÷å ïîâòîðèòü
Øàã 1.
Íåýôôåêòèâíîñòü àëãîðèòìà äëÿ ðàñïðåäåëåíèé ñ äëèííûìè õâîñòàìè î÷åâèäíà (ñì. Ðèñ.
??),
ïîñêîëüêó â ýòîì ñëó÷àå ÷àñòû ïîâòîðíûå èñïûòàíèÿ.
Ðèñ. 4.1: Ñëó÷àè ýôôåêòèâíîãî(a) è íå ýôôåêòèâíîãî (b) ïðèìåíåíèÿ ìåòîäà îòáðàêîâêè
Ñëó÷àé êóñî÷íî çàäàííîé ïëîòíîñòè ðàñïðåäåëåíèÿ
Ïóñòü ñëó÷àéíàÿ âåëè÷èíà
η
îïðåäåëåíà íà èíòåðâàëå
[a, b)
è å¼ ïëîòíîñòü èìååò âèä (4.6)
Ðèñ. 4.2: Êóñî÷íî îïðåäåë¼ííàÿ ïëîòíîñòü ðàñïðåäåëåíèÿ âåðîÿòíîñòåé
f1 (x), ïðè a = x0 ≤ x < x1 ,
f2 (x), ïðè x1 ≤ x < x2 ,
f (x) =
...
fk (x), ïðè xk−1 ≤ x < xk = b,
ãäå
∀i ∈ (0, . . . , k − 1)xi < xi+1 .
Îáîçíà÷èâ
pi =
Rxi
xi−1
fi (x)dx
èìååì
k
P
(4.6)
pi = 1.
i=1
Äëÿ ïîëó÷åíèÿ çíà÷åíèÿ η íåîáõîäèìî ñíà÷àëà âûáðàòü ïëîòíîñòü fi (x) ñ âåðîÿòíîñòüþ pi è
çàòåì âûáðàòü ñëó÷àéíîå çíà÷åíèå íà èíòåðâàëå [xi−1 , xi ) ñîãëàñíî âûáðàííîìó ðàñïðåäåëåíèþ.
14
Ãëàâà 4.
Äàò÷èêè ñëó÷àéíûõ ÷èñåë
Èñïîëüçîâàíèå ëèíåéíûõ ïðåîáðàçîâàíèé
×àñòî ÿâëÿþòñÿ ïîëåçíûìè ñëåäóþùèå î÷åâèäíûå âûðàæåíèÿ äëÿ ïëîòíîñòåé ëèíåéíûõ ôóíêöèé
ñëó÷àéíîé âåëè÷èíû:
x−b
),
a
η = −ν −→ fη (x) = fν (−x).
η = aν + b −→ fη (x) = fν (
Ïðèìåð 2.4. Ãåíåðàòîð òðåóãîëüíîãî ðàñïðåäåëåíèÿ
(4.7)
(4.8)
Ïóñòü ïëîòíîñòü ðàñïðåäåëåíèÿ èìååò âèä,
ïðåäñòàâëåííûé íà ðèñóíêå 4.3.
Ðèñ. 4.3: Òðåóãîëüíîå ðàñïðåäåëåíèå
Âàðèàíò 1.
Ïðÿìîå ïðèìåíåíèå ìåòîäà îáðàòíîé ôóíêöèè.
Ñíà÷àëà ïîëó÷èì ôîðìóëó ôóíêöèè ðàñïðåäåëåíèÿ âåðîÿòíîñòåé êàê èíòåãðàë îò ïëîòíîñòè
ðàñïðåäåëåíèÿ:
0,
(x + 1)2 /2,
F (x) =
1 − (1 − x)2 /2,
1,
Òîãäà, ðåøàÿ óðàâíåíèå
Âàðèàíò 2.
ïðè
ïðè
ïðè
ïðè
x < −1,
−1 ≤ x < 0,
0 ≤ x < 1,
x ≥ 1.
ξ = F −1 (η) îòíîñèòåëüíî η èìååì
√
2ξp
− 1,
ïðè ξ < 0.5,
η=
1 − 2(1 − ξ), ïðè ξ ≥ 0.5.
(4.9)
(4.10)
Êóñî÷íîå ðàññìîòðåíèå ôóíêöèè ðàñïðåäåëåíèÿ.
Îáëàñòü èçìåíåíèÿ ðàññìàòðèâàåìîé ñëó÷àéíîé âåëè÷èíû ìîæíî ðàçáèòü íà 2 ðàâíûõ èíòåðâàëà
[−1, 0)
è
[0, 1),
íà êîòîðûå îíà ïîïàäàåò ñ ðàâíîé âåðîÿòíîñòüþ 0.5. Ñîîòâåòñòâóþùèå ïëîòíîñòè
óñå÷¼ííûõ ðàñïðåäåëåíèé íà ýòèõ èíòåðâàëàõ èìåþò âèä
f1 (x)
=
2(x + 1),
(4.11)
f2 (x)
=
2(1 − x),
(4.12)
à ôóíêöèè
F1 (x)
=
(x + 1)2 ,
(4.13)
F2 (x)
=
1 − (1 − x)2 .
(4.14)
4.1.
Ñëåäîâàòåëüíî, ãåíåðàòîð äîëæåí ñ âåðîÿòíîñòüþ 0.5 âûäàâàòü
ñòüþ
15
Ãåíåðàöèÿ íåçàâèñèìûõ, îäèíàêîâî ðàñïðåäåëåííûõ ñëó÷àéíûõ âåëè÷èí
η =1−
√
η=
√
ξ−1
è ñ òîé æå âåðîÿòíî-
1 − ξ.
Îòìåòèì, ÷òî â ïîñëåäíåé ôîðìóëå ìîæíî çàìåíèòü
1−ξ
íà
ξ,
òàê êàê ýòè ñëó÷àéíûå âåëè÷èíû
èìåþò îäèíàêîâîå ðàñïðåäåëåíèå.
Âàðèàíò 3.
Èñïîëüçîâàíèå ôóíêöèè äâóõ ñëó÷àéíûõ âåëè÷èí.
Ðàññìîòðèì ðàñïðåäåëåíèå ñóììû äâóõ íåçàâèñèìûõ, ðàâíîìåðíî ðàñïðåäåë¼ííûõ íà îòðåçêå
[0, 1)
η = ξ1 + ξ2 .
ñëó÷àéíûõ âåëè÷èí. Ïóñòü
Òîãäà
Fη (x) = P (η < x) = P (ξ1 + ξ2 < x).
Óäîáíåå
âñåãî ïîëó÷èòü ýòó âåðîÿòíîñòü ãåîìåòðè÷åñêè (Ðèñ. 4.4). Åé ñîîòâåòñòâóåò ïëîùàäü ÷àñòè åäèíè÷íîãî êâàäðàòà, ëåæàùåé íèæå ïðÿìîé, ïðîõîäÿùåé ÷åðåç òî÷êè
øòðèõîâêà) ýòî
x2 /2,
à äëÿ
x≥1
1 − (2 − x)2 /2.
(0, x)
è
(x, 0).
Äëÿ
x<1
(äâîéíàÿ
Ñëåäîâàòåëüíî,
Ðèñ. 4.4: Èëëþñòðàöèÿ ê âûâîäó ðàñïðåäåëåíèÿ ñóììû äâóõ ñëó÷àéíûõ âåëè÷èí, ðàâíîìåðíî ðàñïðåäåë¼ííûõ íà
[0, 1)
0,
2
x /2,
F (x) =
1 − (2 − x)2 /2,
1,
ïðè
ïðè
ïðè
ïðè
x < 0,
0 ≤ x < 1,
1 ≤ x < 2,
x ≥ 2.
(4.15)
Ïëîòíîñòü ðàñïðåäåëåíèÿ, ñîîòâåòñòâåííî, ðàâíà
0,
x,
f (x) =
2 − x,
0,
ïðè
ïðè
ïðè
ïðè
x < 0,
0 ≤ x < 1,
1 ≤ x < 2,
x ≥ 2,
(4.16)
òî åñòü ìû èìååì òó æå ñàìóþ òðåóãîëüíóþ ïëîòíîñòü ðàñïðåäåëåíèÿ, íî ñäâèíóòóþ ïî îñè àáöèññ
íà îäíó åäèíèöó âïðàâî. Ñëåäîâàòåëüíî, èìååì
4.1.2
η = ξ1 + ξ2 − 1!
Äèñêðåòíûå ðàñïðåäåëåíèÿ
Íàèáîëåå îáùèé ñëó÷àé ïîñòðîåíèÿ ãåíåðàòîðà äèñêðåòíûõ ñëó÷àéíûõ âåëè÷èí îñíîâûâàåòñÿ íà
ñëåäóþùåì àëãîðèòìå. Ïóñòü èìååòñÿ òàáëèöà ïàð
n
P
(xi , pi ),
ãäå
xi
çíà÷åíèå ñëó÷àéíîé âåëè÷è-
pi = 1 (â îáùåì ñëó÷àå ìîæåò áûòü è n = ∞).
i=1
Òîãäà ïîñëåäíþþ ñóììó ìîæíî ïðåäñòàâèòü ïîëóèíòåðâàëîì [0, 1), ðàçáèòûì íà ïîëóèíòåðâàëû
íû, à
pi
ñîîòâåòñòâóþùàÿ âåðîÿòíîñòü,
16
Ãëàâà 4.
[vi−1 , vi ),
v0 = 0, vn = 1
äëèíû
pi .
Ñëó÷àéíàÿ âåëè÷èíà
ξ
Äàò÷èêè ñëó÷àéíûõ ÷èñåë
ñ íåèçáåæíîñòüþ ïðèíàäëåæèò îäíîìó
èç ýòèõ ïîëóèíòåðâàëîâ, òåì ñàìûì îïðåäåëÿÿ èíäåêñ äèñêðåòíîãî çíà÷åíèÿ. Íîìåð ïîëóèíòåðâàëà
î÷åâèäíî îïðåäåëÿåòñÿ êàê
min{i | ξ < vi } = min{i | ξ <
i
X
pj }
(4.17)
j=1
Çàìå÷àíèå. Äëÿ ýôôåêòèâíîñòè äàò÷èêà ðåêîìåíäóåòñÿ îäèí ðàç ðàññ÷èòàòü âñå ñóììû â (4.17)
è çàòåì èñïîëüçîâàòü
âåêòîð íàêîïëåííûõ âåðîÿòíîñòåé.
Ïðèìåð 2.4. Ðàâíîìåðíîå äèñêðåòíîå ðàñïðåäåëåíèå.
 ñëó÷àå ðàâíîâåðîÿòíîãî âûáîðà ìåæäó xi = i, i = 1, . . . , n âñå pi ðàâíû n1 è òåì ñàìûì vi = ni .
Ñîîòâåòñòâåííî èìååì íîìåð ïîëóèíòåðâàëà ðàâíûì min{i | ξ < ni }, îòêóäà ïîëó÷àåì ïðîñòî i = dnξe.
Ïðèìåð 2.5. Ðàñïðåäåëåíèå Ïóàññîíà. Èñïîëüçóÿ îïðåäåëåíèå ðàñïðåäåëåíèÿ Ïóàññîíà è âûøåèçëîæåííûå ðàññóæäåíèÿ ïîëó÷àåì
η = min{i |
i
Y
ξi < e−λ }
(4.18)
j=1
4.2
Âûáîðêè èíäåêñîâ
Èìååì çàäà÷ó ïîëó÷åíèÿ ñëó÷àéíîé âûáîðêè îáúåìà
m çíà÷åíèé èç ìíîæåñòâà {1, . . . , n}.  ñëó÷àå
âûáîðêè ñ âîçâðàùåíèåì (âîçìîæíû ïîâòîðû) ïðîñòî ïîëüçóåìñÿ ïðèìåðîì 2.4. Äëÿ âûáîðêè áåç
âîçâðàùåíèÿ íàèáîëåå ýôôåêòèâåí â ïðîãðàììíîé ðåàëèçàöèè ñëåäóþùèé àëãîðèòì.
Óíèâåðñàëüíûé àëãîðèòì äëÿ âûáîðêè áåç ïîâòîðåíèÿ.
Âõîäíûå äàííûå: n ÷èñëî èíäåêñîâ; m äëèíà âûáîðêè.
Âûõîäíûå äàííûå: L[1..m] ðåçóëüòèðóþùèé âåêòîð èíäåêñîâ.
1.
2.
3.
4.
5.
6.
7.
8.
9.
for i:=1 to n do
I[i]:=i;
endfor;
for s:=n downto n-m+1 do
l:=random(1,s);
L[n-s+1]:=I[l];
I[l]:=I[s];
DEC(s);
endfor.
Çàìå÷àíèå:
 ñëó÷àå
n=m
ìû ïîëó÷àåì àëãîðèòì ñëó÷àéíûõ ïåðåñòàíîâîê.
 ñëó÷àå íå ðàâíûõ âåðîÿòíîñòåé èíäåêñîâ (i âûáèðàåòñÿ ñ âåðîÿòíîñòüþ
pi )
àëãîðèòì èçìåíÿ-
åòñÿ ñëåäóþùèì îáðàçîì:
•
êðîìå âåêòîðà
I èìååòñÿ âåêòîð âåðîÿòíîñòåé
P = {pi }, ýòîò âåêòîð èçìåíÿåòñÿ ïîñëå êàæäîãî
âûáîðà;
•
â ñòðîêå 6 ñëó÷àéíûé èíäåêñ ïîëó÷àåòñÿ ïî ôîðìóëå
l = min{i | S · ξ <
i
X
pj },
j=1
ãäå
ξ
ðàâíîìåðíî ðàñïðåäåëåíà íà (0,1) (ïðîöåäóðà
rand()), S
ïåðâîíà÷àëüíî ðàâíî 1 è óìåíü-
øàåòñÿ ïðè êàæäîì âûáîðå íà âåðîÿòíîñòü âûáðàííîãî çíà÷åíèÿ.