Coelestis - Il Forum Italiano di Astronomia

Coelestis - Il Forum Italiano di Astronomia (http://www.trekportal.it/coelestis/index.php)
-   Rudi Mathematici (http://www.trekportal.it/coelestis/forumdisplay.php?f=11)
-   -   Estrazioni casuali (http://www.trekportal.it/coelestis/showthread.php?t=42400)

aspesi 31-10-14 21:21

Re: Estrazioni casuali
 
Altra biada per Astromauh.... :D

Devi pagare 1 Euro. Estrai dalla tasca una moneta, poi un'altra, un'altra ancora, ecc..., finché non raggiungi (o superi per la prima volta) la somma da pagare.
Qual e' il resto che otterrai in media?


Assumiamo di avere un numero illimitato di monete da 5, 10, 20, 50 centesimi e che esse abbiano sempre la stessa probabilità di uscire dalla tua tasca.

:hello:

astromauh 01-11-14 03:12

Re: Estrazioni casuali
 
Quote:

aspesi (Scrivi 739818)

Qual e' il resto che otterrai in media?

Quote:

for v=1 to volte
somma=0
do
moneta= int(rnd * 4) + 1
if moneta=1 then moneta=5
if moneta=2 then moneta=10
if moneta=3 then moneta=20
if moneta=4 then moneta=50
somma= somma + moneta
loop until somma >= 100
sommaresto= sommaresto + somma - 100
next


response.write("Media= " & sommaresto/volte)

Circa 14.67 centesimi.


:hello:

aspesi 01-11-14 09:16

Re: Estrazioni casuali
 
Quote:

astromauh (Scrivi 739820)

Circa 14.67 centesimi.


:hello:

:ok: Esattamente 14,66111415 centesimi.
Il quiz era stato postato su questo forum:
http://www.matematicamente.it/forum/...2f2f3a#p884755
Ci ho messo un paio d'ore a risolverlo (senza simulazione).

Questa è una soluzione geniale e apparentemente corretta che era stato proposta:
"Teniamo conto solo dell'ultima moneta estratta:
se è un 5, il resto è 0; se è un 10, il resto può essere o 0 o 5; se è un 20, il resto può essere o 0 o 5 o 10 o 15; se è un 50, il resto può essere o 0 o 5 o 10 o 15 o 20 o 25 o 30 o 35 o 40 o 45. Ci sono quindi 17 casi, la somma totale dei resti è 260 e la media 15,294."

In questo modo si commette però l'errore di considerare tutti questi 17 casi equiprobabili.

Il mio ragionamento per un calcolo preciso, parte invece dalla necessità di ricostruire il numero enorme di casi possibili che si possono presentare fino al raggiungimento o superamento dei 100 centesimi e che va da 2 estrazioni (entrambe da 50 cents, resto = 0), fino a 20 estrazioni tutte da 5 cents (e resto = 0).

Cioè:

1 estrazione: 1/4 probabilità di avere 5 o 10 o 20 o 50 cents

2 estrazione: 1/16 probabilità di avere 10 o 20 o 40 o 100 cents e 1/8 probabilità di avere 15 o 25 o 30 o 55 o 60 o 70 cents

3 estrazione: 1/64 probabilità di avere 15 cents, 1/32 probabilità di avere 105 o 110 o 120 cents, 3/64 probabilità di avere 20 o 25 o 40 o 45 o 50 o 70 o 90 cents, 1/16 probabilità di avere 30 o 60 cents e 3/32 probabilità di avere 35 o 65 o 75 o 80 cents.

4 estrazione: .................................................. .....................................

.................................................. .................................................. ...........

20 estrazione: (1/4)^20 probabilità di avere 100 cents

A questo punto si moltiplicano il numero dei valori dei resti oltre i 100 cents per la loro probabilità e si fa la somma.

Con un foglio excel, questo procedimento è abbastanza semplice.

E ci si rende conto che le probabilità di trovarsi con i vari resti sono rispettivamente:
0 = 0,266521
5 = 0,155526
10 = 0,127003
15 = 0,096976
20 = 0,075502
25 = 0,056527
30 = 0,063616
35 = 0,050481
40 = 0,058582
45 = 0,049267

:hello:

astromauh 01-11-14 12:23

Re: Estrazioni casuali
 
Quote:

aspesi (Scrivi 739826)
:ok: Esattamente 14,66111415 centesimi.

Ma sei proprio sicuro che la tua soluzione sia esatta?

Mi sembra piuttosto diversa da 14,67 che avevo trovato io con la simulazione, usando
la funzione RND presente di default sul mio computer.

Ho provato ad usare la funzione random suggeritami da Mizarino, ma non ci sono
riuscito perché il computer ha iniziato a funzionare male.

A volte mi capita una cosa strana quando stresso troppo la capacità di calcolo
del mio computer. Anche se modifico il valore della variabile "volte" e gli assegno il valore 1, invece di generare un output in una frazione di secondo, il programma continua a girare a vuoto, se in precedenza avevo assegnato un valore troppo alto a questa variabile.

In pratica è come se il PC non si accorgesse che nel frattempo ho modificato il programma e ho assegnato un nuovo valore alla variabile. :mad:

Per cui a questo punto ho spento il PC, e sono andato a dormire.

Ho appena avuto il risultato di una nuova simulazione su 100 milioni di casi, con la funzione random di Mizarino, e l'output è più vicino al tuo risultato.

Media= 14,66301605

Media= 14,6625081

Media= 14,6616442

Media= 14,66130835

Media= 14,6611648

Media= 14,66201095

Media= 14,6602973

:hello:

aspesi 01-11-14 14:01

Re: Estrazioni casuali
 
Quote:

astromauh (Scrivi 739834)
Ma sei proprio sicuro che la tua soluzione sia esatta?

Sì ;)

Quote:

astromauh (Scrivi 739834)
Mi sembra piuttosto diversa da 14,67 che avevo trovato io con la simulazione, usando la funzione RND presente di default sul mio computer.
:hello:

Ti sembra diversa?
O fai dell'ironia? :rolleyes:

Comunque, c'è ancora questo quiz:
http://www.trekportal.it/coelestis/s...postcount=1110

:hello:

astromauh 01-11-14 14:38

Re: Estrazioni casuali
 
Quote:

aspesi (Scrivi 739839)
Ti sembra diversa?
O fai dell'ironia? :rolleyes:

No, non stavo facendo dell'ironia.

La prima soluzione che ho trovato era oggettivamente diversa dalla tua, 14.67 invece di 14.66.

Se avevo messo due cifre decimali nella soluzione, è perché ero relativamente sicuro che quei numeri fossero corretti, invece ripetendo le simulazioni con l'algoritmo che crea dei numeri random suggeritomi da Mizarino, i risultati si avvicinano maggiormente al tuo risultato.


Quote:

FUNCTION RAND32()
Static V(99) as Double
Static iff as integer
Static Randi as New Random()
Dim j as integer

IF IFF = 0 THEN
RANDOMIZE()
IFF = 1

FOR J = 1 TO 97
V(J)=Randi.NextDouble()
NEXT
END IF

j= Randi.Next(1,98)
RAND32=V(J)
V(j)= Randi.NextDouble()
END FUNCTION
:hello:

Erasmus 01-11-14 16:35

|
 
Quote:

aspesi (Scrivi 739818)
... monete da 5, 10, 20, 50 centesimi [...] sempre la stessa probabilità di uscire ...

Non intendo dare la risposta giusta, ma solo dire come ragiono io in questo caso.

Concepisco un albero quaternario lungo a piacere, la cui parte iniziale è quella che mostro più sotto. Alla radice R attribuisco un peso P = 1, una somma S = 0 ed una parla "vuota" (cioè di 0 lettere).
Da ogni "nodo si diramano quattro "rami" che terminano in altrettanti nodi.
Concettualmente l'albero è infinito: ma posso farlo terminare non proseguendolo da certi nodi (considerati "foglie).
Diciamo sempre A, B, C e D i quattro nodi "discendenti" (successors) da ogni nodo "ascendente" (predecessor). A ciascun nodo attribuisco il peso 1/4 (intendendo che è la stessa la probabilità che da un nodo si passi a questo o a quello dei 4 nodi "discendenti". Inoltre, associo a ciascuna delle 4 lettere A, B, C e D (ossia ai rispettivi nodi) rispettivamente i numeri 5, 10, 20 e 50.
Esamino poi tutte le parole di k caratteri sull'alfabeto {A, B, C, D} dove k è il minimo intero tale che la somma dei numeri associati alle lettere della parola non è inferiore 100.
A ciascuna di queste "parole" associo il peso (1/4)^k.
In altre parole, esamino tutti i percorsi che dalla radice R dell'albero conducono a qualche "foglia" (=nodo dal quale è in utile far proseguire l'albero) per la quale la somma dei numeri associati ai nodi di transito non è minore di 100 ... per la prima volta.
Per esempio, associando ad A il numero 5, a B il 10, a C il 20 e a D il 50, ci saranno in particolare dei percorsi lungo i quali si transita per nodi sempre associati alla stessa lettera.
Occorrono in particolare 20 nodi A (tutti associati a 5) per non restare con la somma sotto a 100.
Allora ho la parola di 20 caratteri (uguali)
AAAAAAAAAAAAAAAAAAAA
con somma 100 e peso (1/4)^20 = 1/1099511627776
Un altro percorso potrebbe essere di 2 soli nodi D (associati a 50), cioè la parola
DD
con somma 100 e peso (1/4)^2 = 1/16.
Un altro ancora potrebbe essere quello corrispondente alla parola (di 5 caratteri)
BDCAD
con somma 10 + 50 + 20 +5 + 50 = 135 e peso (1/4)^5 = 1/1024.
Insomma: mi metto a percorrere l'albero, partendo dalla radice, in tutte le direzioni.
Per ciascuna direzione, partendo da P = 1 e S = 0, ad ogni passo (= ad ogni nodo per cui transito), moltiplico P per 1/4 e aggiungo ad S il valore associato al nodo di transito; e mi fermo non appena S ≥ 100.
Il numero di percorsi è ... grandino, (ma non posso sapere in anticipo quanto vale perché i valori associati ai nodi non sono costanti dipendendo dalla lettera associata al nodo).

Ma ci sono delle apposite "routine" ricorsive per essere sicuri di percorrere l'albero fino alle "foglie" lungo tutti i percorsi possibili.
[Ogni percorso è disgiunto da ogni altro se non gli si include il nodo iniziale che è la radice, alla quale è associata la parola vuota (di 0 lettere)].
Ecco come è fatto l'albero:
Codice:

                    Parola iniziale F = <parola vuota>;
                    Ad ogni transito aggiungere ad F la lettera associata al nodo di transito.
                    [ Sia X la lettera del nodo di transito corrente (o del nodo di arrivo).  Allora, ad ogni passo, F:= F +"X"

                                                                        R    Radice: P = 1; S = 0. Parola  F = <Parola vuota>
                                                                        |    Ad ogni nodo (foglia compresa): P = P·(1/4).
                                                                        |    Addendi di S al transito per un nodo: A ––>5;  B ––>10; > 20;  D ––> 50. 
                      ____________________________ |______________________
                    A                            B                              C                            D     
                    |                              |                              |                            |
          _____|______        ______|______        ______|_____          ______|______
        A    B      C    D      A      B      C    D      A    B    C    D        A    B    C    D
      _|_  _|_    _|_  _|_    _|_  _|_  _|_  _|_  _|_  _|_  _|_  _|_    _|_  _|_  _|_  _|_
      ...    ...      ...    ...    ...    ...    ...    ...    ...    ...    ...  ...      ...    ...    ...    ...

Per rispondere al quiz, alla fine faccio la media pesata di tutte le somme S di ciascun percorso (o parola) secondo ciascun peso P e poi sottraggo 100.

Fare questo "a mano", pur non essendo pigri come Miza, ... è fuori questione!
Programmando, invece, la cosa mi pare abbastanza facile.

Penso tuttavia che un combinatorista come aspesi è capace di scrivere "a mano" tutte le "parole" possibili [su un alfabeto di 4 lettere] per avere la minima somma non minore di 100, e quindi il peso di ciascuna "parola" (che è la potenza di base 1/4 ed esponente pari al numero di lettere della "parola").

[Non ho la più pallida idea di come ha ragionato astromauh e quindi nemmeno per valutare il suo risultato].
–––
:hello:

Erasmus 01-11-14 16:50

Re: |
 
Oops!

Ho aperto stamattina il computer e c'era già la risposta di astromauh.
Mi sono messo a scrivere ... ma ho interrotto solo dopo la prima riga.

Ecco che oggi pomeriggio ho ripreso ... e (lento come sono) ho concluso solo poco fa, senza aver letto le precedenti risposte.

Vedo che, sostanzialmente, aspesi ha ragionato come me e – come avevo anticipato, (pardon: scritto senza ancora sapere cosa aveva scritto lui) – è riuscito a scrivere "a mano" i singoli percorsi possibili attribuendo loro il giusto peso.
[Il fatto che abbia subito preso il resto a 100 invece di fare la media delle somme e sottrarre 100 ad essa è irrilevante].

Bravo aspesi.

Il precedente quiz mi sta ... antipatico!
Ma resta ancora da risolvere un mio quiz di algebra (a dire il vero MOLTO FACILE) nel thread "Un po' di calcoli ... un po' di logica".
––
:hello:

astromauh 01-11-14 19:18

Re: Estrazioni casuali
 
Quote:

aspesi (Scrivi 739786)
La prima fila di un concerto (25 posti) è riservata a 15 donne e 10 uomini.
Quanti sono i modi in cui si possono disporre 15 D + 10 U, con la condizione che nessun uomo possa trovarsi vicino ad un altro uomo (mentre per le donne non esiste nessun vincolo)?

Consideriamo gli uomini indistinguibili fra loro e analogamente per le donne.

E in generale, quanti sono i modi per un numero qualsiasi U di uomini e D di donne, con la stessa condizione (nessuna consecutività per gli uomini)?

:hello:


Disponiamo i 10 uomini in fila, ma senza farli sedere. Siccome nessun uomo può trovarsi vicino ad un altro uomo, tra di essi mettiamo una donna. Rimangono quindi 6 donne (15 meno 9). Queste 6 donne restanti possono andare a mettersi vicino ad una delle 9 donne già inserite, o anche all'inizio, o alla fine della fila.

Per cui abbiamo 6 donne che possono occupare 11 posizioni, dove per posizione non si intende però una poltrona.

In quanti modi si possono quindi disporre queste 6 donne restanti?



Queste 6 donne 'restanti' possono

rimanere tutte unite -----------> 11 permutazioni

oppure dividersi in due gruppi

da 5 e da 1 -----------> 55 permutazioni

da 4 e da 2 -----------> 55 permutazioni

da 3 e da 3 -----------> 55 permutazioni

oppure dividersi in tre gruppi

da 4 e da 1 e da 1 -----------> 165 permutazioni

da 3 e da 2 e da 1 -----------> 165 permutazioni

da 2 e da 2 e da 2 -----------> 165 permutazioni

oppure dividersi in quattro gruppi

da 3 e da 1 e da 1 e da 1 -----------> 330 permutazioni

da 2 e da 2 e da 1 e da 1 -----------> 330 permutazioni

oppure dividersi in cinque gruppi

da 2 e da 1 e da 1 e da 1 e da 1 -----------> 462 permutazioni

oppure dividersi in sei gruppi

da 1 e da 1 e da 1 e da 1 e da 1 e da 1 -----------> 462 permutazioni

Modi= 11 + 55*3 + 165*3 + 330*2 + 462 + 462;

Modi= 2255

Quiz risolto per mezzo di questa pagina.


:hello:

aspesi 01-11-14 19:51

Re: |
 
Quote:

Erasmus (Scrivi 739848)
Vedo che, sostanzialmente, aspesi ha ragionato come me

;) Esattamente. Ci ho messo un po', perché pensavo si potesse risolvere più semplicemente, ma con altre procedure si arriva a soluzioni solo approssimative.

Quote:

Erasmus (Scrivi 739848)
Il precedente quiz mi sta ... antipatico!

Calcolando il risultato per casi a piccola numerosità, sono riuscito a trovare una formula semplice, che vale sempre per ogni D e U (con la stessa condizione di consecutività).

Quote:

Erasmus (Scrivi 739848)
Ma resta ancora da risolvere un mio quiz di algebra (a dire il vero MOLTO FACILE) nel thread "Un po' di calcoli ... un po' di logica".
––
:hello:

Sarà pure facile, ma per me questi quiz algebrici sono un ostacolo insormontabile. E ci ho pure guardato, cercando di eliminare il termine con x^2 sostituendo:
p = -A^2/3 + B
q = 2A^3/27 - A*B/3 + C
in modo da arrivare a:
y^3 + py + q = 0

:hello:


Tutti gli orari sono GMT. Attualmente sono le 15:33.

Powered by vBulletin versione 3.6.7
Copyright ©: 2000 - 2021, Jelsoft Enterprises Ltd.
Traduzione italiana a cura di: vBulletinItalia.it