Seminarky.cz > Diplomky, bakalářky > Bakalářské práce > > Problém shody narozenin – bakalářská práce

Problém shody narozenin – bakalářská práce

Kategorie: Statistika

Typ práce: Bakalářské práce

Škola: Univerzita Karlova v Praze Matematicko-fyzikální fakulta, Praha 2

Charakteristika: Bakalářská práce řeší statistický problém shody narozenin, a to v podobě hledání pravděpodobnosti, že ve třídě neexistuje dvojice žáků se stejným datem narození za situace, kdy pravděpodobnosti narození nejsou pro všechny dny v roce stejné. První část obsahuje výklad konceptů z konvexní analýzy a kombinatoriky, s nimiž je pracováno v dalším textu. Následující oddíl přichází s přesnou formulací problému shody narozenin a popisuje řešení pro situaci, kdy jsou pravděpodobnosti narození stejné pro každý den v roce. Třetí část představuje program v jazyce R, který problém shody narozenin simuluje a uvažuje nestejné pravděpodobnosti narození pro jednotlivé dny v roce. Poslední oddíl pak přibližuje některé aplikace problému shody narozenin. Text je proložen řadou vzorců a výpočtů.

Obsah

1.
Úvod
2.
Obecné poznatky
2.1.
Poznatky z konvexní analýzy
2.2.
Poznatky z kombinatoriky
3.
Výpočet pravděpodobnosti a její aproximace
3.1.
Formulace problému
3.2.
Základní problém a jeho aproximace
3.3.
Obecný problém a jeho vztah k základnímu problému
3.4.
Aproximace pomocí rozdílu
3.5.
Konvergence T (n; s; p)
3.6.
Výpočet pravděpodobnosti pomocí Bellových polynomů
4.
Programové vybavení
4.1.
Testování hypotézy o stejných pravděpodobnostech
4.2.
Metody výpočtu
4.3.
Funkce narozeniny
4.4.
Zpracování dat
5.
Aplikace problému
5.1.
Problém shody příjmení
6.
Závěr
7.
Přílohy
7.1.
Kód v jazyce Pascal
7.2.
Kód v jazyce Pascal
7.3.
Skript v programu R
7.4.
Skript v programu R

Úryvek

"3.3 Funkce narozeniny
Nyní popíšeme vytvořený program. Jedná se o funkci narozeniny v jazyce R. Funkci lze nalézt v příloze 3. V programu R spustíme skript narozeniny.r a již můžeme tuto funkci využívat. Povinnou vstupní hodnotou funkce je počet žáků ve třídě. Další proměnné mají nastavené implicitní hodnoty, a tak je jejich specifikování volitelné.
První volitelnou proměnnou je dnu — počet dnů v roce se standardní hodnotou
365. Dále se jedná o volitelný parametr pravděpodobností q. Funkce narozeniny totiž nejenže dokáže testovat, zda jsou pravděpodobnosti stejné, ale i zda jsou rovny nějakému konkrétnímu vektoru pravděpodobností q s počtem složek rov¬ným d. Této vlastnosti využijeme například při práci s daty narození získaných jak v přestupných, tak v nepřestupných rocích. Pokud vektor q není zadán, uva¬žujeme vektor stejných pravděpodobností (1 d ,..., d 1 ).
Dalším vstupním parametrem je hladina testu hypotézy, že skutečné prav¬děpodobnosti se rovnají vektoru q, standartní hodnota proměnné hladina je 0, 05. Posledním údajem je odkaz na uložená data v proměnné data, implicit¬ním souborem je data narození.csv uložený v pracovním adresáři programu R. O požadavcích na podobu tohoto souboru se zmíníme později.
Pokud je zadán vyšší počet žáků než je počet dní v roce, funkce ihned vrátí hledanou pravděpodobnost — tedy 0. V opačném případě má program šest částí, které krátce popíšeme.
Nejprve načteme data. Data by měla být v ASCII podobě v kódování Unicode (tedy UTF-16LE), jednotlivé hodnoty od sebe musejí být odděleny středníky a být uloženy na jednom řádku. To znamená, že soubor obsahující data musí mít první hodnotu uloženou na první řádce, nesmí obsahovat znaky pro ukončení řádku mezi jednotlivými hodnotami a naopak musí být tímto znakem ukončen.
Následně spočteme hodnotu Pearsonova χ2 testu. Pokud bude jeho p–hodnota vyšší než zvolená hladina, nezamítáme nulovou hypotézu, že skutečné pravděpodobnosti narození jsou rovny q. V opačném případě nulovou hypotézu zamítáme.
Další část se uskuteční pouze za předpokladu, že vektor q je vektor stej¬ných pravděpodobností a zároveň nezamítáme nulovou hypotézu. V tomto pří¬padě spočteme pravděpodobnost Rn za platnosti nulové hypotézy podle vzorce pro základní problém. Následující část již je společná pro všechny možnosti, odhadneme v ní pravděpodobnosti narození p pomocí výběrových průměrů. Z nich dále spočítáme hodnoty pole P. J-tá hodnota tohoto pole značí pravděpodobnost
d
k
Pj = pkj .
k=1
Nyní již můžeme spočítat hodnoty Rn(p) podle vzorce 2.16 a vypsat výsledek. Pokud bylo zadáno více žáků, než je dnů, je výstupem pouze 0. V opačném případě je výstupem vektor, jehož první složka je rovna pravděpodobnosti Rn(p), kde p je vektor pravděpodobností narození odhadnutý výběrovým průměrem. Druhá složka je rovna 1, pokud zamítáme nulovou hypotézu, a rovna 0, pokud nulovou hypotézu nezamítáme. V druhém případě a za předpokladu, že byl testován vektor stejných pravděpodobností, je výstupem i třetí složka, a to pravděpodobnost Rn za platnosti nulové hypotézy, tedy pro základní problém.
Pro srozumitelnost jsem napsal i funkci narozenipopis, která je uvedena v příloze 4. Tato funkce používá funkci narozeniny a slovně interpretuje její výsledky. Poté co jsme v programu R spustili skript narozeniny.r, spustíme skript narozeninypopis.r a můžeme tuto funkci využívat. Funkce narozenipopis má stejné vstupní parametry jako funkce narozeniny."

Poznámka

Zpracováno jako bakalářská práce ze studijního oboru Obecná matematika na Katedře pravděpodobnosti a statistiky Matematicko-fyzikální fakulty Univerzity Karlovy.
Práce obsahuje tabulky a grafy, čistý text dosahuje cca 25 stran.
Práce je ve formátu Acrobat Reader (*.pdf).

Vlastnosti

STÁHNOUT PRÁCI

  1. SMS platba (ČR) 15 Kč

    Platba prostřednictvím brány mobilního operátora. Pro započetí platebního procesu prosím vyplňte kontrolní kód a stiskněte tlačítko "Zaplatit"

    Po proběhnutí platby budete přesměrováni zpět na tuto stránku, kde najdete odkaz ke stažení práce.


    V případě potíží s realizací platby se neváhejte obrátit na infolinku poskytovatele služby, společnost Advanced Telecom Services s.r.o., na čísle +420 776 999 199

    Nápověda pro zákazníky Telefónica O2:

    1. Vyplňte Vaše číslo na mobil, zvolte jako operátora Telefónica O2 a klikněte na POTVRDIT.
    2. Zobrazí se Vám informace, že SMS byla odeslána.
    3. Na mobilní telefon Vám bude doručena SMS zpráva s odkazem.
    4. Klikněte na odkaz v SMS zprávě, budete propojeni na platební bránu společnosti Telefónica O2. Zde potvrďte platbu.
    5. Na internetu se zobrazí výsledek proběhlé platby.
    Pro úspěšnou realizaci platby je nutné mít aktivní službu „O2 platba“. Služba je většinou aktivní automaticky, takže není třeba nejdřív nic aktivovat.

    Nápověda pro zákazníky Vodafone:

    1. Vyplňte Vaše číslo na mobil, zvolte jako operátora Vodafone a klikněte na POTVRDIT.
    2. Dojde k přesměrování na Vodafone portál.
    3. Potvrďte Vaše mobilní číslo kliknutím na DALŠÍ. .
    4. Na Váš mobilní telefon přijde SMS zpráva s kódem.
    5. Zadejte tento kód do formuláře, klikněte na OK.
    6. Objeví se Vám údaje o platbě, kterou potvrďte kliknutím na POKRAČOVAT.
    7. V té chvíli proběhne platba, o jejímž výsledku Vás informuje došlá SMS zpráva.
    Pro úspěšnou realizaci platby je nutné mít aktivní službu „M-peněženka“. Služba je většinou aktivní automaticky, takže není třeba nejdřív nic aktivovat.

    Nápověda pro zákazníky T-mobile:

    1. Vyplňte Vaše číslo na mobil, zvolte jako operátora T-mobile a klikněte na POTVRDIT.
    2. Dojde k přesměrování na T-mobile portál, potvrďte zde svůj souhlas s podmínkami platby.
    3. Pokud máte na T-zones účet, přihlaste se a pokračujte bodem 7.
    4. Pokud účet na T-zones nemáte, vepište do formuláře svoje mobilní číslo a klikněte na ODESLAT ČÍSLO.
    5. Přijde Vám SMS zpráva s kódem.
    6. Vepište kód jako heslo do formuláře a klikněte na PŘIHLÁSIT.
    7. Objeví se Vám údaje o platbě, které potvrďte kliknutím na tlačítko ZAPLATIT.
    8. V té chvíli proběhne platba, o jejímž výsledku Vás informuje došlá SMS zpráva.
    Pro úspěšnou realizaci platby je nutné mít aktivní službu „M-platba“. Služba je většinou aktivní automaticky, takže není třeba nejdřív nic aktivovat.
  2. Platit kartou 15 Kč

    Platba kartou. Pro započetí platebního procesu prosím vyplňte kontrolní kód a stiskněte tlačítko "Zaplatit"

    Po proběhnutí platby budete přesměrováni zpět na tuto stránku, kde najdete odkaz ke stažení práce.


    Po odeslání kontrolního kódu budete přesměrováni do platební brány GP webpay, kde zadáte údaje potřebné pro platbu. Platbu dokončíte stisknutím tlačítka "ZAPLATIT".

    Akceptované karty: VISA, VISA Electron, V PAY, MasterCard, Maestro.

  3. Koupit za kredity - 10 Kč >>> ZVÝHODNĚNÁ CENA!
    Jedním stiskem tlačítka, obratem a za výhodnou cenu!
    JEN PRO REGISTROVANÉ UŽIVATELE
    Cena za stažení je pouze 180 kreditů (=10Kč).
  4. Platit převodem z ČSOB a Poštovní spořitelny, službou PaySec 10 Kč >>> ZVÝHODNĚNÁ CENA!
    Rychle, bezpečně a pohodlně.
    Zaplatit za tuto práci přes PaySec >>> Kliknutí na odkaz Vás přesměruje do platebního rozhraní
    Kliknutím na ikonku Vás přesměrujeme do platebního systému, kde si vyberete převod z ČSOB, Poštovní spořitelny nebo platbu PaySec
  5. SMS platba (Slovensko) - 0,60€
    Stahovací kód k této práci získáte do několika minut se službou mobilního operátora Premium Rate SMS.
    Zašlete SMS zprávu ve tvaru: SEMmezera22532
    - na telefonní číslo: 8877
    Cena jedné SMS je 0,60€ včetně DPH. Pro využití SMS platby je třeba mít aktivovanou službu Premium Rate SMS. Službu technicky zajišťuje Advanced Telecom Services, s. r. o.
    SMS musí být ve formátu TEXT, bez diakritiky a bez formátování (tj. základní velikost a typ písma). Stahovací kód je použitelný pouze pro tuto práci a je platný až do uzavření okna internetového prohlížeče.
    Stahovací kód přijde obratem na mobil, je platný 24 hodin a lze jej zadat celkem dvakrát.
    Pro stažení této práce zadejte stahovací kód (bez uvozovek):


Důležité informace: Provedením mobilní platby, odesláním SMS, platbou kredity, platbou kartou, PaySecem nebo převodem z účtu souhlasíte s Podmínkami stahování.
Veškeré informace o platbách si můžete přečíst zde.
Máte při placení nebo stahování práce problém? Odpovědi na časté problémy najdete zde nebo kontaktujte naší podporu.

Diskuse