Esiste una formula per una forma generale del problema del collezionista di coupon?


10

Mi sono imbattuto nel problema dei collezionisti di coupon e stavo cercando di elaborare una formula per una generalizzazione.

Se ci sono oggetti distinti e si vuole raccogliere almeno copie di ciascuna di qualsiasi di essi (dove ), qual è l'aspettativa di quanti oggetti a caso si dovrebbe comprare ?. Il normale problema del raccoglitore coupon ha e .k m m N m = N k = 1NkmmNm=Nk=1

Ci sono 12 diverse figure LEGO in una collezione. Voglio raccogliere 3 copie di ciascuna delle 10 (ogni 10) figure. Posso comprarli a caso uno alla volta. Quanti dovrei aspettarmi di acquistare prima di avere 3 copie di ognuno di 10?


3
Non ricordo di aver visto una formula per quella particolare generalizzazione, ma per una domanda specifica una tantum come quella, tenderei ad usare la simulazione.
Glen_b -Restate Monica

Risposte:


5

Non è facile da calcolare, ma può essere fatto, a condizione che (m+kk) non sia troppo grande. (Questo numero conta i possibili stati che devi tenere traccia durante la raccolta dei coupon.)

Cominciamo con una simulazione per avere un'idea della risposta. Qui, ho raccolto figure LEGO un milione di volte. La linea nera in questo diagramma traccia le frequenze del numero di acquisti necessari per raccogliere almeno tre di dieci figure diverse.

figura

La banda grigia è un intervallo di confidenza approssimativo su due lati del 95% per ogni conteggio. Al di sotto di tutto c'è una curva rossa: questo è il vero valore.

Per ottenere i valori veri, considera lo stato delle cose mentre stai raccogliendo figure, di cui ci sono tipi possibili e desideri raccogliere almeno di tipi diversi. Le uniche informazioni di cui hai bisogno per tenere traccia sono quante figure non hai visto, quante ne hai viste solo una volta, quante ne hai viste due volte e quante ne hai viste tre o più volte. Possiamo rappresentarlo convenientemente come un monomiale dove sono i conteggi associati, indici da a . In generale, utilizzeremmo i monomi del modulon=12k=3m=10x0i0x1i1x2i2x3i3ijk=0k=tj=0kxjij .

Dopo aver raccolto un nuovo oggetto casuale, sarà uno degli oggetti invisibili con probabilità , uno degli oggetti visti solo una volta con probabilità , e così via. Il risultato può essere espresso come una combinazione lineare di monomi,i0i0/ni1/n

x0i0x1i1x2i2x3i31n(i0x0i01x1i1+1x2i2x3i3++i3x0i0x1i1x2i21x3i3).

Questo è il risultato dell'applicazione dell'operatore differenziale lineare al monomiale. Evidentemente, ripetute applicazioni allo stato iniziale daranno un polinomio , con al massimo termini, dove il coefficiente di è la possibilità di trovarsi nello stato indicato dai suoi esponenti. Dobbiamo semplicemente concentrarci sui termini in con : la somma dei loro coefficienti sarà la possibilità di aver finito la raccolta dei coupon. Pertanto, l'intero calcolo richiede fino a(x1Dx0+x2Dx1+x3Dx2+x3Dx3)/nx012=x0np(n+kk)j=0kxjijpi3t(m+1)(n+kk) facili calcoli ad ogni passaggio, ripetuti tutte le volte necessarie per essere quasi certi di riuscire con la raccolta.

Esprimere il processo in questo modo consente di sfruttare l'efficienza dei sistemi di algebra del computer. Ecco, ad esempio, una soluzione generale di Mathematica per calcolare le possibilità fino a 6 pareggi. Ciò omette alcune possibilità, ma le loro possibilità totali sono inferiori a , dandoci un quadro quasi completo della distribuzione.6nk=2161017

n = 12;
threshold = 10;
k = 3;

(* Draw one object randomly from an urn with `n` of them *)
draw[p_] := 
  Expand[Sum[Subscript[x, i] D[#, Subscript[x, i - 1]], {i, 1, k}] + 
      Subscript[x, k] D[#, Subscript[x, k]] & @ p];

(* Find the chance that we have collected at least `k` each of `threshold` objects *)
f[p_] := Sum[
  Coefficient[p, Subscript[x, k]^t] /. 
   Table[Subscript[x, i] -> 1, {i, 0, k - 1}], {t, threshold, n}]

(* Compute the chances for a long series of draws *)
q = f /@ NestList[draw[#]/n &, Subscript[x, 0]^n, 6 n k];

Il risultato, che richiede circa due secondi per il calcolo (più veloce della simulazione!) È una serie di probabilità indicizzate dal numero di pareggi. Ecco una trama delle sue differenze, che sono le probabilità di terminare i tuoi acquisti in funzione del conteggio:

figura 2

Questi sono precisamente i numeri usati per disegnare la curva di sfondo rossa nella prima figura. (Un test chi-quadrato indica che la simulazione non è significativamente diversa da questo calcolo.)

Possiamo stimare il numero atteso di pareggi sommando ; il risultato dovrebbe essere buono con 14-15 decimali. Ottengo (che è corretto in ogni cifra, come determinato mediante un calcolo più lungo).1q50.7619549386733

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.