Ahoj!
Něchtel byste sem někdo hodit nějaký hinty, jak na domácí úkol. Myslim, že by docela pomohlo, samozřejmě nechci hotový řešení, ale nápovědka jak a kudy vůbec do toho by bodla. Nějak si po přečtení zadání nejsem stále schopenej představit co se po mě vlastně chce.
Zápočtový DÚ
-
- Matfyz(ák|ačka) level II
- Příspěvky: 81
- Registrován: 19. 1. 2006 15:53
- Typ studia: Informatika Mgr.
- Login do SIS: prinf5am
- Bydliště: Jindřichův Hradec
- Kontaktovat uživatele:
Re: Zápočtový DÚ
0) Z uvodniho textu vyctes nejake udaje
Kdyz vis ze urad ma otevreno tech 600 minut, tak zacnes v case 0 a v cyklu generujes
nahodne hodnoty z exp. rozdeleni pro prichod klientu tohle cislo prictes k celkovemu cas a ulozis do vektoru.
Jako podminka pro zastaveni cyklu je ze celkova doba presahne 600 min
V C++ by to vypadalo asi takhle nejak
Rkovy zdrojak je v podobnem duchu jen ma jinou syntaxi... bohuzel ten uz asi nikde nemam
2) Ve druhem ukolu se tohle cele zabali do cyklu o 250 iteracich
a) tohle jsem delal normalne rucne tak jak se to delalo na cvikach
b) tohle taky
c-e) zavolani par funkci v R - v tom neni zadna veda
3) Na kompletni simulaci mas v zadani prilozenej kod, ktery doporucuju vyuzit
Jako vstup pro tento kod potrebujes 3 veliciny - pocet klientu a vektor dob prichodu vygenerujes pomoci vyse uvedeneho kodu,
vektor casu obsluhy muzes vygenerovat bud pri generovani prichodu klientu a nebo udelas potom dalsi cyklus na generovani doby obsluhy
(pocet iteraci = pocet klientu)
a) trivialni (secist vektor dob obsluhy)
b) Tady si proste jen reknes - necht ma urad N prepazek - tvoje zvolene N dosadis do toho zdrojaku, ktery je soucasti zadani, do promenne po
no a provedes znovu simulaci
c) Doby cekani se Ti ukladaji do vektoru cek - jen udelas histogram a spocitas tu prumernou dobu
d) Viz b
Pouzivani softwaru R neni zas tak tezke a v pohode jsem za chvili pochopil jak se v tom pracuje.
I s bohatyma komentarema se muj zdrojak vesel cca na 200 radek myslim.
Snad tahle napovedla nekomu pomuze - pokud by neco bylo nesrozumitelne nebo chybne tak dejte vedet - uz je to prece jen vic jak mesic,
kdy sem to odevzdal.
- Urad ma otevreno od 8:00 do 18:00 tj. 10 hod = 600 min.
- Prichody klientu i doby jejich obsluhy se ridi exponencialnim rozdelenim - je treba spravne urcite stredni hodnotu lambda
- Za minutu prijdou v prumeru 4 klienti => lambda = 4
- Stredni doba obsluhy klienta je 2 min - jinymi slovy 1/2 klienta za minutu takze lambda = 1/2
Kdyz vis ze urad ma otevreno tech 600 minut, tak zacnes v case 0 a v cyklu generujes
nahodne hodnoty z exp. rozdeleni pro prichod klientu tohle cislo prictes k celkovemu cas a ulozis do vektoru.
Jako podminka pro zastaveni cyklu je ze celkova doba presahne 600 min
V C++ by to vypadalo asi takhle nejak
Kód: Vybrat vše
int count = 0;
float time = 0;
float prisel;
vector<float> prichody;
while (time < 600) {
prisel = rexp(4);
time += prisel;
prichody.push_back(time);
}
count = prichody.size();
2) Ve druhem ukolu se tohle cele zabali do cyklu o 250 iteracich
a) tohle jsem delal normalne rucne tak jak se to delalo na cvikach
b) tohle taky
c-e) zavolani par funkci v R - v tom neni zadna veda
3) Na kompletni simulaci mas v zadani prilozenej kod, ktery doporucuju vyuzit
Jako vstup pro tento kod potrebujes 3 veliciny - pocet klientu a vektor dob prichodu vygenerujes pomoci vyse uvedeneho kodu,
vektor casu obsluhy muzes vygenerovat bud pri generovani prichodu klientu a nebo udelas potom dalsi cyklus na generovani doby obsluhy
(pocet iteraci = pocet klientu)
a) trivialni (secist vektor dob obsluhy)
b) Tady si proste jen reknes - necht ma urad N prepazek - tvoje zvolene N dosadis do toho zdrojaku, ktery je soucasti zadani, do promenne po
no a provedes znovu simulaci
c) Doby cekani se Ti ukladaji do vektoru cek - jen udelas histogram a spocitas tu prumernou dobu
d) Viz b
Pouzivani softwaru R neni zas tak tezke a v pohode jsem za chvili pochopil jak se v tom pracuje.
I s bohatyma komentarema se muj zdrojak vesel cca na 200 radek myslim.
Snad tahle napovedla nekomu pomuze - pokud by neco bylo nesrozumitelne nebo chybne tak dejte vedet - uz je to prece jen vic jak mesic,
kdy sem to odevzdal.
Re: Zápočtový DÚ
díky, myslim, že to pomůže:)