Proiectele se realizează în echipă de 2-4 persoane. Fiecare echipa va desemna un lider care va fi precizat în documentație.
Liderul echipei va trimite pe adresa andriciucalexandra@yahoo.com până la data de 1 februarie 2025 ora 22:00 o singură arhivă care va conține fișierele sursă ale proiectului împreună cu documentația.
Documentația este obligatorie și lipsa ei atrage necorectarea proiectului.
Documentația trebuie să conțină:
- numele membrilor echipei
- descrierea problemei
- aspecte teoretice folosite în rezolvarea problemei care depășesc nivelul cursului
- reprezentări grafice și orice altă formă multimedia oportună proiectului
- precizări privind pachete software folosite și surse de inspirație
- codul și comentarea acestuia, precum și a soluției prezentate
- identificarea unor eventuale dificultăți în realizarea cerințelor
- probleme care au rămas deschise în urma implementării actuale
- concluzii
Documentația se dorește o prezentare completă a proiectului astfel încât evaluarea acestuia să poată fi făcută facil și nu o documentație uzuală pentru un produs software.
Subiecte
Exercițiul 1 Obiectivul acestui exercițiu este de a simula un vector aleator \((X_1, X_2)\) repartizat uniform pe discul unitate \(D(1)\) (discul de centru \((0, 0)\) și de rază \(1\)). Densitatea acestuia este:
\[ f_{(X_1, X_2)}(x_1, x_2) = \frac{1}{\pi} 1_{D(1)}(x_1, x_2). \]
Pentru aceasta, vom folosi două metode. O primă metodă este metoda de simulare prin acceptare și respingere. Această metodă este des utilizată pentru generarea unei v.a. repartizate uniform pe o mulțime oarecare \(E\). Metoda constă în generarea unei v.a. \(X\) repartizată uniform pe o mulțime \(F \supseteq E\), mai simplă decât \(E\), apoi testăm dacă \(X\) se află în \(E\) sau nu. În caz afirmativ, păstrăm \(X\), altfel generăm o nouă realizare a lui \(X\) pe \(F\).
Justificați teoretic că putem simula un vector (cuplu) aleator repartizat uniform pe pătratul \([-1, 1]^2\) plecând de la două v.a. independente repartizate uniform pe segmentul \([-1, 1]\).
Prin metoda acceptării și respingerii, simulați \(N = 1000\) de puncte independente repartizate uniform pe discul unitate \(D(1)\). Reprezentați grafic punctele \((X_i, Y_i)\) din interiorul discului unitate cu albastru și pe celelalte cu roșu.
Calculați media aritmetică a distanței care separă cele \(N\) puncte de origine. Comparați rezultatul cu media teoretică a variabilei corespunzătoare.
O a doua metodă de simulare a unui punct \((X, Y)\) repartizat uniform pe \(D(1)\) constă în folosirea schimbării de variabilă în coordonate polare: \(X = R\cos(\theta)\) și \(Y = R\sin(\theta)\).
Plecând de la densitatea cuplului \((X, Y)\), găsiți densitatea v.a. \(R\) și \(\theta\).
Simulați \(N = 1000\) de puncte prin această metodă și ilustrați grafic aceste puncte (inclusiv conturul cercului).
Exercițiul 2 Construiți o aplicație Shiny (Shiny - Welcome to Shiny) în care să reprezentați grafic funcțiile de repartiție pentru următoarele variabile aleatoare:
\(X, 3+2X, X^2, \sum_{i=1}^{n} X_i, \sum_{i=1}^{n} X_i^2\), unde \(X_1, X_2, \dots, X_n \overset{i.i.d.}{\sim} N(0, 1)\), iar \(n\) este fixat, \(n \in \mathbb{N}\).
\(X, 3+2X, X^2, \sum_{i=1}^{n} X_i, \sum_{i=1}^{n} X_i^2\), unde \(X_1, X_2, \dots, X_n \overset{i.i.d.}{\sim} N(\mu, \sigma^2)\), cu \(\mu \in \mathbb{R}, \sigma > 0\), iar \(n\) este fixat, \(n \in \mathbb{N}\).
\(X, 2-5X, X^2, \sum_{i=1}^{n} X_i\), unde \(X_1, X_2, \dots, X_n \overset{i.i.d.}{\sim} \text{Exp}(\lambda)\), cu \(\lambda > 0\), iar \(n\) este fixat, \(n \in \mathbb{N}\).
\(X, 3X+2, X^2, \sum_{i=1}^{n} X_i\), unde \(X_1, X_2, \dots, X_n \overset{i.i.d.}{\sim} \text{Pois}(\lambda)\), cu \(\lambda > 0\), iar \(n\) este fixat, \(n \in \mathbb{N}\).
\(X, 5X+4, X^3, \sum_{i=1}^{n} X_i\), unde \(X_1, X_2, \dots, X_n \overset{i.i.d.}{\sim} \text{Binom}(r, p)\), cu \(r \in \mathbb{N}, p \in (0, 1)\), iar \(n\) este fixat, \(n \in \mathbb{N}\).
Exercițiul 3 Pentru următoarele subpuncte rezolvările trebuie să fie abordate din două perspective, adică atât dpdv teoretic, cât și prin intermediul simulărilor. Have fun!
Pe un plan sunt trasate liniile \(y =n\) (cu \(n = 0, \pm 1, \pm 2, \ldots\)) și un ac de lungime 1 este aruncat aleator pe acest plan. Arătați că probabilitatea ca acul să intersecteze vreo linie este egală cu \(\frac{2}{\pi}\).
Planul este secționat ca mai sus, de liniile \(y =n\) (unde \(n = 0, \pm 1, \pm 2, \ldots\)), iar pe plan aruncăm o cruce formată prin unirea mijloacelor a două ace perpendiculare, de lungime 1. Notăm cu Z numărul de intersecții ale crucii cu liniile de pe plan. Arătați că ( [Z/2] = ), iar \(\text{Var}(Z/2) = \frac{3 - \sqrt{2}}{\pi} - \frac{4}{\pi^2}\). Dacă ați avea de ales între a folosi acul sau crucea (deci unul din acești doi algoritmi aleatori) pentru a estima valoarea lui \(\pi\), ce ați alege? De ce?
Considerați acum o valoarea d fixată și un plan pe care sunt trasate liniile \(y =n \cdot d\) (unde \(n = 0, \pm 1, \pm 2, \ldots\)). Un ac de lungime \(L (< d)\) este aruncat la întâmplare pe acest plan. Arătați că probabilitatea ca acul să intersecteze vreo linie din plan este egală cu \(\frac{2L}{\pi d}\).
Mai departe, fixați acum poziția acului și considerați un cerc C de diamentru d, centrat în mijlocul acului. Fie \(\lambda\) o linie ale cărei direcție și distanță față de centrul lui C sunt independente și uniform distribuite pe \([0, 2 \pi]\) și, respectiv, \([0, d/2]\). Arătați că probabilitatea ca acul să se intersecteze cu linia (aleatoare) \(\lambda\) este egală (tot cu) \(\frac{2L}{\pi d}\).
Pe un plan se consideră următorul grid format cu 2 seturi de linii paralele suprapuse: primul set conține linii la distanță \(d_1\) unele de altele, iar al doilea set conține linii la distanță \(d_2\) unele de altele și perpendiculare pe cele din primul set. Un ac de lungime \(L < \min\{d_1, d_2\}\) este aruncat la întâmplare pe acest plan. Arătați că probabilitatea ca acesta să intersecteze planul este egală cu \(\frac{L (2 d_1+ 2 d_2 - L)}{\pi d_1 d_2}\).
În cadrul simulărilor pentru această problemă ce tip de strategie aleatoare a fost implementată: Las Vegas sau Monte Carlo? Justificați sumar și dați un exemplu de algoritm aleator (cu implementare) din cealaltă categorie.