Kombinace - Combination
V matematice je kombinace výběr položek ze sbírky, takže na pořadí výběru nezáleží (na rozdíl od permutací ). Například vzhledem ke třem plodům, řekněme jablko, pomeranč a hruška, existují tři kombinace dvou, které lze z této sady čerpat: jablko a hruška; jablko a pomeranč; nebo hruška a pomeranč. Více formálně, je k - kombinace z nastavené S je podmnožinou k- odlišných prvků S . Pokud má sada n prvků, je počet k -kombinací roven binomickému koeficientu
které lze zapsat pomocí faktoriálů jako kdykoli a které je nulové, když . Množina všech k -kombinací množiny S se často označuje .
Kombinace se týkají kombinace n věcí pořízených k najednou bez opakování. Odkázat na kombinace, ve které je povoleno opakování, podmínek k -selection, k- - multiset nebo K -combination s opakováním se často používají. Pokud by ve výše uvedeném příkladu bylo možné mít dva z jakéhokoli druhu ovoce, byly by ještě 3 2 výběry: jeden se dvěma jablky, jeden se dvěma pomeranči a jeden se dvěma hruškami.
Přestože byla sada tří plodů dostatečně malá na to, aby sepsal kompletní seznam kombinací, s rostoucí velikostí sady to bude nepraktické. Například, poker ruka může být popsán jako 5-kombinace ( K = 5) karet z paluby 52 karet ( n = 52). Všech 5 karet ruky je odlišných a na pořadí karet v ruce nezáleží. Existuje 2 598 960 takových kombinací a šance na náhodnou remízu jedné ruky je 1 /2 598 960.
Počet k -kombinací
Počet k- -combinations z dané množiny S o n prvků je často označován za elementární kombinatorika textech , nebo variace jako například , , , nebo dokonce (druhá forma je standardní ve francouzštině, rumunštině, ruštině, čínštině a polštině texty). Stejné číslo se však vyskytuje v mnoha dalších matematických kontextech, kde je označeno (často čten jako „ n choose k “); zejména se vyskytuje jako koeficient v binomickém vzorci , odtud jeho název binomický koeficient . Pro vztah lze definovat všechna přirozená čísla k najednou
ze kterého je zřejmé, že
a dál,
- pro k > n .
Abychom viděli, že tyto koeficienty počítají k -kombinace ze S , lze nejprve zvážit kolekci n odlišných proměnných X s označených prvky s ze S a rozšířit součin přes všechny prvky S :
má 2 n odlišných výrazů odpovídajících všem podmnožinám S , přičemž každá podmnožina dává součin odpovídajících proměnných X s . Nyní nastavení všech X s rovných neznačené proměnné X , takže produkt se stane (1 + X ) n , termín pro každou k -kombinaci ze S se stane X k , takže koeficient této síly ve výsledku se rovná počet takových k -kombinací.
Binomické koeficienty lze vypočítat explicitně různými způsoby. Chcete -li získat všechny z nich pro expanze až (1 + X ) n , lze použít (kromě již uvedených základních případů) relaci rekurze
pro 0 < k < n , což vyplývá z (1 + X ) n = (1 + X ) n - 1 (1 + X ) ; to vede ke konstrukci Pascalova trojúhelníku .
Pro stanovení individuálního binomického koeficientu je praktičtější použít vzorec
- .
Čitatel udává počet k- -permutations z n , tj, ze sekvencí k- odlišných prvků S , zatímco jmenovatel udává počet takových k- -permutations, které poskytují stejnou k -combination pokud je příkaz ignorován.
Pokud k překročí n /2, výše uvedený vzorec obsahuje faktory společné pro čitatele a jmenovatele a jejich zrušením získáte vztah
pro 0 ≤ k ≤ n . To vyjadřuje symetrie, která je zřejmá z binomické vzorce, a může být také zřejmé, pokud jde o k- -combinations tím, že se doplněk takové kombinace, která je ( n - k ) -combination.
Nakonec existuje vzorec, který přímo ukazuje tuto symetrii a má tu výhodu, že je snadno zapamatovatelný:
kde n ! označuje faktoriál z n . Získává se z předchozího vzorce vynásobením jmenovatele a čitatele ( n - k ) !, Takže je určitě výpočetně méně efektivní než tento vzorec.
Poslední vzorec lze pochopit přímo, když vezmeme v úvahu n ! permutací všech prvků S . Každá taková permutace dává k -kombinaci výběrem jejích prvních k prvků. Existuje mnoho duplicitních výběrů: jakákoli kombinovaná permutace prvních k prvků mezi sebou a konečných ( n - k ) prvků mezi sebou vytváří stejnou kombinaci; to vysvětluje rozdělení ve vzorci.
Z výše uvedených vzorců sledujte vztahy mezi sousedními čísly v Pascalově trojúhelníku ve všech třech směrech:
- .
Spolu s základní případy , že umožňují postupné výpočet respektive všech čísel kombinace ze stejné skupiny (řádek v Pascalova trojúhelníku), ze k- -combinations množin rostoucích velikostí, a kombinace s komplementem pevnou velikostí n - K .
Příklad kombinací počítání
Jako konkrétní příklad lze vypočítat počet možných karet pěti karet ze standardního balíčku padesáti dvou karet jako:
Alternativně lze použít vzorec z hlediska faktoriálů a zrušit faktory v čitateli proti částem faktorů ve jmenovateli, po kterém je požadováno pouze vynásobení zbývajících faktorů:
Další alternativní výpočet, ekvivalentní prvnímu, je založen na psaní
který dává
- .
Při vyhodnocení v následujícím pořadí, 52 ÷ 1 × 51 ÷ 2 × 50 ÷ 3 × 49 ÷ 4 × 48 ÷ 5 , to lze vypočítat pouze pomocí celočíselné aritmetiky. Důvodem je, že když dojde k každé dělení, mezivýsledek, který je produkován, je sám o sobě binomickým koeficientem, takže nikdy nedochází k žádným zbytkům.
Použití symetrického vzorce z hlediska faktoriálů bez provádění zjednodušení poskytuje poměrně rozsáhlý výpočet:
Výčet k -kombinací
Jeden může vyjmenovat všechny K -combinations daného souboru S z n prvků v nějakém pevném pořadí, který zavádí bijection z intervalu čísel se souborem těchto k- -combinations. Za předpokladu, že S je samo seřazeno, například S = {1, 2,…, n }, existují dvě přirozené možnosti pro uspořádání jeho k -kombinací: nejprve porovnáním jejich nejmenších prvků (jako na obrázcích výše) nebo porovnáním jejich největších prvky jako první. Druhá možnost má tu výhodu, že přidání nového největšího prvku do S nezmění počáteční část výčtu, ale pouze přidá nové k -kombinace větší sady po předchozích. Opakováním tohoto procesu lze výčet neomezeně prodloužit k -kombinacemi stále větších sad. Pokud navíc intervaly celých čísel začínají na 0, pak k -kombinace na daném místě i ve výčtu lze snadno vypočítat z i a takto získaná bijekce je známá jako kombinatorický číselný systém . Ve výpočetní matematice je také známý jako „hodnost“/„hodnocení“ a „odkrytí“.
Existuje mnoho způsobů, jak vyjmenovat k kombinací. Jedním ze způsobů je navštívit všechna binární čísla menší než 2 n . Vyberte si ty čísla, které mají K nenulový bitů, ačkoli toto je velmi neefektivní a to i pro malé n (např n = 20 by vyžadovalo návštěvu kolem jednoho milionu čísel, přičemž maximální počet povolených k- kombinací je asi 186 tisíc pro k = 10). Pozice těchto 1 bitů v takovém počtu je specifickou k -kombinací množiny {1, ..., n }. Dalším jednoduchým a rychlejším způsobem je sledovat k indexová čísla vybraných prvků, počínaje {0 .. k −1} (na základě nuly) nebo {1 .. k } (na jednom) jako první povolená kombinace k a pak se opakovaně přesouvá na další povolenou kombinaci k -zvýšením posledního indexového čísla, pokud je nižší než n -1 (na základě nuly) nebo n (na základě jednoho) nebo posledního indexového čísla x, které je menší než indexové číslo po něm mínus jeden, pokud takový index existuje, a resetování čísel indexů po x na { x +1, x +2, ...}.
Počet kombinací s opakováním
A k - kombinace s opakováním , nebo k - multikombinace , nebo vícenásobná velikost k z množiny S je dána sadou k ne nutně odlišných prvků S , kde není brán v úvahu řád: dvě sekvence definují stejnou vícenásobnou, pokud jedno lze získat od druhého permutací podmínek. Jinými slovy, je to vzorek k prvků ze sady n prvků umožňujících duplikáty (tj. S náhradou), ale bez ohledu na různá uspořádání (např. {2,1,2} = {1,2,2}). Ke každému prvku S přiřaďte index a uvažujte o prvcích S jako typech objektů, pak můžeme nechat označit počet prvků typu i ve více podskupině. Počet vícenásobných podskupin velikosti k je pak počet nezáporných celočíselných řešení diophantské rovnice :
Pokud S má n prvků, počet takových k -vícenásobných sad je označen,
zápis, který je analogický s binomickým koeficientem, který počítá k -podmnožiny. Tento výraz, n multichoose k , lze také zadat z hlediska binomických koeficientů:
Tento vztah lze snadno prokázat pomocí reprezentace známé jako hvězdy a mříže .
Řešení výše uvedené diofantické rovnice může být reprezentováno hvězdami , oddělovačem ( pruhem ), pak více hvězd, dalším oddělovačem atd. Celkový počet hvězd v této reprezentaci je k a počet tyčí je n - 1 (protože rozdělení na n částí vyžaduje n -1 oddělovače). Řetězec k + n - 1 symbolů (hvězdy a pruhy) tedy odpovídá řešení, pokud je v řetězci k hvězd. Jakékoli řešení lze znázornit výběrem k z k + n - 1 pozic pro umístění hvězd a vyplnění zbývajících pozic pruhy. Například řešení rovnice může být reprezentováno
Stejně jako u binomických koeficientů existuje mezi těmito mnohočetnými výrazy několik vztahů. Například pro ,
Tato identita vyplývá z výměny hvězd a pruhů ve výše uvedeném znázornění.
Příklad počítání vícenásobných sad
Pokud například máte v nabídce na výběr čtyři druhy koblih ( n = 4) a chcete tři koblihy ( k = 3), lze počet způsobů, jak vybrat koblihy s opakováním, vypočítat jako
Tento výsledek lze ověřit vypsáním všech 3 multisubsetů sady S = {1,2,3,4}. To je zobrazeno v následující tabulce. Druhý sloupec uvádí koblihy, které jste si skutečně vybrali, třetí sloupec ukazuje nezáporná celočíselná řešení rovnice a poslední sloupec představuje řešení a hvězdičky a pruhy.
Ne. | 3-více sad | Rov. Řešení | Hvězdy a tyče |
---|---|---|---|
1 | {1,1,1} | [3,0,0,0] | |
2 | {1,1,2} | [2,1,0,0] | |
3 | {1,1,3} | [2,0,1,0] | |
4 | {1,1,4} | [2,0,0,1] | |
5 | {1,2,2} | [1,2,0,0] | |
6 | {1,2,3} | [1,1,1,0] | |
7 | {1,2,4} | [1,1,0,1] | |
8 | {1,3,3} | [1,0,2,0] | |
9 | {1,3,4} | [1,0,1,1] | |
10 | {1,4,4} | [1,0,0,2] | |
11 | {2,2,2} | [0,3,0,0] | |
12 | {2,2,3} | [0,2,1,0] | |
13 | {2,2,4} | [0,2,0,1] | |
14 | {2,3,3} | [0,1,2,0] | |
15 | {2,3,4} | [0,1,1,1] | |
16 | {2,4,4} | [0,1,0,2] | |
17 | {3,3,3} | [0,0,3,0] | |
18 | {3,3,4} | [0,0,2,1] | |
19 | {3,4,4} | [0,0,1,2] | |
20 | {4,4,4} | [0,0,0,3] |
Počet k -kombinací pro všechny k
Počet k -kombinací pro všechna k je počet podmnožin sady n prvků. Existuje několik způsobů, jak zjistit, že toto číslo je 2 n . Pokud jde o kombinace, což je součet n -té řady (počítáno od 0) binomických koeficientů v Pascalově trojúhelníku . Tyto kombinace (podmnožiny) jsou vyjmenovány 1 číslicemi sady základních 2 čísel čítajících od 0 do 2 n - 1, kde každá pozice číslice je položkou ze sady n .
Vzhledem k tomu, 3 karty očíslované 1 až 3, existuje 8 různých kombinací ( podmnožin ), včetně prázdné sady :
Reprezentace těchto podmnožin (ve stejném pořadí) jako základní 2 číslice:
- 0 - 000
- 1 - 001
- 2 - 010
- 3 - 011
- 4 - 100
- 5 - 101
- 6 - 110
- 7 - 111
Pravděpodobnost: výběr náhodných kombinací
Existují různé algoritmy pro výběr náhodné kombinace z dané sady nebo seznamu. Odmítnutí vzorkování je extrémně pomalé pro velké velikosti vzorků. Jedním ze způsobů, jak efektivně vybrat k -kombinaci z populace velikosti n, je iterovat přes každý prvek populace a v každém kroku vybrat tento prvek s dynamicky se měnící pravděpodobností . (viz odběr vzorků z nádrže ).
Viz také
Poznámky
Reference
- Benjamin, Arthur T .; Quinn, Jennifer J. (2003), Proofs that Really Count: The Art of Combinatorial Proof , The Dolciani Mathematical Expositions 27, The Mathematical Association of America, ISBN 978-0-88385-333-7
- Brualdi, Richard A. (2010), Introductory Combinatorics (5th ed.), Pearson Prentice Hall, ISBN 978-0-13-602040-0
- Erwin Kreyszig , Advanced Engineering Mathematics , John Wiley & Sons, INC, 1999.
- Mazur, David R. (2010), Combinatorics: A Guided Tour , Mathematical Association of America, ISBN 978-0-88385-762-5
- Ryser, Herbert John (1963), Combinatorial Mathematics , The Carus Mathematical Monographs 14, Mathematical Association of America
externí odkazy
- Topcoder tutoriál o kombinatorice
- C kód pro generování všech kombinací n prvků vybraných jako k
- Mnoho běžných typů problémů s permutací a kombinací matematiky s podrobnými řešeními
- Neznámý Formula U kombinací, když volby se mohou opakovat a objednávka dělá ne ohledu na to,
- Kombinace s opakováním (podle: Akshatha AG a Smitha B)
- Hod kostkami s daným součtovým problémem Aplikace kombinací s opakováním na házení více kostkami