Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

appunti su binomiale, tre carte ed Ehrenfest, teoria su binomiale, action md to pdf #2

Merged
merged 16 commits into from
Feb 5, 2025
Merged
76 changes: 76 additions & 0 deletions .github/workflows/md-to-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# .github/workflows/convert-to-pdf.yml

name: Docs to PDF
# This workflow is triggered on pushes to the repository.
on:
push:
branches:
- main
# Paths can be used to only trigger actions when you have edited certain files, such as a file within the /docs directory
paths:
- 'teoria/**.md'

jobs:
converttopdf:
name: Build PDF
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Flatten image directory by copying
run: |
find teoria/images -type f -name "*.png" -exec cp {} teoria/images/ \;
find teoria/images -type f -name "*.jpg" -exec cp {} teoria/images/ \;
find teoria/images -type f -name "*.jpeg" -exec cp {} teoria/images/ \;
find teoria/images -type f -name "*.gif" -exec cp {} teoria/images/ \;
find teoria/images -type f -name "*.svg" -exec cp {} teoria/images/ \;
ls -la teoria/images

- name: Preprocess Obsidian Markdown
run: |
find teoria -type f -name "*.md" -exec sed -i 's/!\[\[\(.*\)\]\]/![\1](images\/\1)/g' {} +
find teoria -type f -name "*.md" -exec sed -i '/table-of-contents/{N;d;}' {} +

# https://github.com/BaileyJM02/markdown-to-pdf
- name: Convert Markdown to PDF
uses: baileyjm02/markdown-to-pdf@v1
with:
input_dir: teoria
output_dir: tmp/
images_dir: teoria/images/**
build_pdf: true
build_html: false
table_of_contents: true

- name: Configure Git
run: |
git config --global user.name "GitHub Actions"
git config --global user.email "actions@github.com"

- name: Refactor artifacts
run: |
ls -la
ls -la tmp
mkdir -p artifacts/pdf
cp tmp/*.pdf artifacts/pdf/ || echo "No PDF files to copy"
ls -la artifacts/pdf

- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: docs-pdf
path: artifacts

- name: Commit and Push artifacts
run: |
git pull
git add artifacts/
if git diff --cached --quiet; then
echo "No changes to commit."
else
git commit -m "Add generated artifacts [PDF]"
git push
fi
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.obsidian/*
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Guida directory:
├── code
| └── utils
├── teoria
└── slides
└── appunti
```

---
Expand Down
Binary file added appunti/BINOM.pdf
Binary file not shown.
Binary file not shown.
Binary file added appunti/ModelloDiEhrenfest.pdf
Binary file not shown.
Binary file added appunti/TreCarte.pdf
Binary file not shown.
File renamed without changes.
Binary file added artifacts/pdf/01-TreCarte.pdf
Binary file not shown.
Binary file added artifacts/pdf/02-Ehrenfest.pdf
Binary file not shown.
Binary file added artifacts/pdf/03-Binomial.pdf
Binary file not shown.
1 change: 1 addition & 0 deletions teoria/.obsidian/app.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions teoria/.obsidian/appearance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
31 changes: 31 additions & 0 deletions teoria/.obsidian/core-plugins.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"properties": false,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": false,
"audio-recorder": false,
"workspaces": false,
"file-recovery": true,
"publish": false,
"sync": true,
"webviewer": false
}
171 changes: 171 additions & 0 deletions teoria/.obsidian/workspace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
{
"main": {
"id": "6a8905840fad29dd",
"type": "split",
"children": [
{
"id": "59d195e6991661fb",
"type": "tabs",
"children": [
{
"id": "f50e309295e582fe",
"type": "leaf",
"state": {
"type": "empty",
"state": {},
"icon": "lucide-file",
"title": "New tab"
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "6d5ba040019b532f",
"type": "split",
"children": [
{
"id": "ac252365fa1b0730",
"type": "tabs",
"children": [
{
"id": "500d5a19f68a511d",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical",
"autoReveal": false
},
"icon": "lucide-folder-closed",
"title": "Files"
}
},
{
"id": "60a617c1416935d6",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
},
"icon": "lucide-search",
"title": "Search"
}
},
{
"id": "9846a5457530175b",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {},
"icon": "lucide-bookmark",
"title": "Bookmarks"
}
}
]
}
],
"direction": "horizontal",
"width": 300
},
"right": {
"id": "677b83d133463f4c",
"type": "split",
"children": [
{
"id": "7fde1367a3df56e6",
"type": "tabs",
"children": [
{
"id": "4d99918a2c27646c",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "Backlinks"
}
},
{
"id": "6fa83e9c1a122aab",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "Outgoing links"
}
},
{
"id": "c03c1014b19f525f",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-tags",
"title": "Tags"
}
},
{
"id": "3e13cfc1efc4b2ab",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"file": "Untitled.md",
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "Outline of Untitled"
}
}
]
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false
}
},
"active": "500d5a19f68a511d",
"lastOpenFiles": [
"images/test.png",
"images",
"Untitled.md"
]
}
12 changes: 7 additions & 5 deletions teoria/01-TreCarte.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Problema delle 3 carte

Per iniziare a familiarizzare con il termine *simulazione*, si consideri il famoso [Problema di Monty Hall](https://it.wikipedia.org/wiki/Problema_di_Monty_Hall), rappresentato in questo caso da 3 carte, di cui una sola vincente.

Dopo una prima scelta del giocatore a carte coperte, il mazziere scopre una carta NON vincente tra le carte NON scelte. A questo punto al giocatore viene chiesto se vuole mantenere la sua scelta o cambiarla con l'altra carta rimasta. Quale scelta conviene prendere al giocatore per vincere?
Dopo una prima scelta del giocatore a carte coperte, il mazziere scopre una carta NON vincente tra le carte NON scelte (2). A questo punto al giocatore viene chiesto se vuole mantenere la sua scelta o cambiarla con l'altra carta rimasta. Quale scelta conviene prendere al giocatore per vincere?

Utilizzando la cosiddetta formula classica della probabilità a priori è possibile descrivere bene il problema e dare una risposta consistente, ma per il momento verrà utilizzato un approccio più intuitivo.

Expand All @@ -11,9 +13,9 @@ Uno dei modi per farlo è, infatti, cercare di simulare il problema al calcolato
### Approccio frequentista

La simulazione calcola le frequenze di vittoria a seconda della strategia scelta dal giocatore, che possiamo riassumere in 3 casi:
- mantenere la scelta originale;
- cambiare scelta;
- scegliere a caso se mantenere o cambiare scelta.
1. mantenere la scelta originale;
2. cambiare scelta;
3. scegliere a caso se mantenere o cambiare scelta.

La frequenza di realizzazione di un evento è calcolabile come numero di realizzazioni diviso numero di tentativi effettuati. Queste frequenze tendono a stabilizzarsi su valori precisi, che corrispondono proprio ai valori delle probabilità a priori.
La frequenza di realizzazione di un evento è calcolabile come il rapporto tra numero di realizzazioni e numero di tentativi effettuati. Queste frequenze tendono a stabilizzarsi su valori precisi, che corrispondono proprio ai valori delle probabilità a priori.
In particolare, le strategie descritte sopra hanno probabilità di vittoria $1 \over 3$, $2 \over 3$ e $1 \over 2$, rispettivamente.
8 changes: 5 additions & 3 deletions teoria/02-Ehrenfest.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
Tante volte un problema può essere troppo complicato per una diretta simulazione: vuoi per il gran numero di gradi di libertà coinvolti, vuoi per la intrinseca difficoltà della sua dinamica (ad esempio, instabilità numeriche).
# Modello di Ehrenfest

Tante volte un problema può essere troppo complicato per una simulazione diretta: vuoi per il gran numero di gradi di libertà coinvolti, vuoi per la intrinseca difficoltà della sua dinamica (ad esempio, instabilità numeriche).

In molti casi, questo fatto ci spinge a risolvere un problema più semplice e quindi formulare un _modello_ che ci lasci speranza di arrivare ad una soluzione.

Expand Down Expand Up @@ -101,6 +103,6 @@ $$ \rho(x) = 2^{-N} \sum_{n=0}^N \binom{N}{n} x^n = \sum_{n=0}^N p_n \, x^n
Possiamo riscrivere le probabilità $p_n$ in questo modo:
$$ p_n = \binom{N}{n} \left(\frac{1}{2}\right)^n \left(1 - \frac{1}{2}\right)^{N-n}$$
Convincendosi di questo, ci si accorge che la formula corrisponde alla _funzione di densità probabilistica_ della [distribuzione binomiale](https://it.wikipedia.org/wiki/Distribuzione_binomiale), ovvero:
$$\mathcal{B}_{N,\,p}(n) , \; p=\frac{1}{2} $$
Negli appunti a seguire verrà studiata più nel dettaglio questa distribuzione, con particolare attenzione ai [momenti](https://it.wikipedia.org/wiki/Momento_(probabilit%C3%A0)) e alla relazione con la [matrice stocastica](https://it.wikipedia.org/wiki/Matrice_stocastica) del processo.
$$ \mathcal{B}_{N,\,p}(n) , \; p=\frac{1}{2} $$
Negli appunti successivi verrà studiata più nel dettaglio questa distribuzione, con particolare attenzione ai [momenti](https://it.wikipedia.org/wiki/Momento_(probabilit%C3%A0)) e alla relazione con la [matrice stocastica](https://it.wikipedia.org/wiki/Matrice_stocastica) del processo.

39 changes: 39 additions & 0 deletions teoria/03-Binomial.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
Dall'ultima lezione sul modello di Ehrenfest si era arrivati alla conclusione che la probabilità di trovare $n$ biglie nell'urna di riferimento (ed $N-n$ nell'altra) ad un tempo $t$ significativo (ovvero che tende a $\infty$) è descritta da una [_distribuzione binomiale_](https://it.wikipedia.org/wiki/Distribuzione_binomiale).

Questa tipologia di distribuzione descrive un esperimento di prove ripetute. In particolare, la formula
$$ \mathcal{B}_{N, \,p} (n) = \binom{N}{n} \, p^n(1-p)^{N-n} $$
contiene i parametri:
- $N$ : numero di prove totali;
- $n$ : numero di prove vincenti;
- $p$ : probabilità di successo sulla singola prova.

### Momenti
I _momenti_ principali della distribuzione binomiale sono il _valore atteso_(anche _media/speranza matematica_) e la _varianza_(anche _secondo momento centrato_).

La definizione del valore atteso di una variabile aleatoria è
$$ \mathbb{E}\left[m\right] = \sum_{i=1}^{\infty} m_i \, p_i $$
Mentre per la varianza vale
$$ \sigma_{m}^2 = \mathbb{E} \left[ (m - \mathbb{E}\left[ m \right])^2 \right] $$
Queste definizioni sono entrambe ricavabili partendo dal [binomio di Newton](https://it.wikipedia.org/wiki/Teorema_binomiale)
$$ (p+q)^n = \sum_{m=0}^n \binom{n}{m} p^m \, q^{n-m} $$
Il primo passo è quello di derivare una volta rispetto a $p$
$$ n\,(p+q)^{n-1} = \sum_{m=1}^n \binom{n}{m}m\,p^{m-1}q^{n-m} $$
Poi, moltiplicando ambo i membri per $p$
$$ n\,p\,(p+q)^{n-1} = \sum_{m=0}^n \binom{n}{m}m\,p^m q^{n-m} $$
e assegnando $q = 1-p$ e dunque $p+q=1$, si ottiene il risultato che si voleva dimostrare inizialmente
$$ n\,p = \sum_{m=0}^n m\binom{n}{m} \, p^m(1-p)^{n-m} $$
Allo stesso modo, per ricavare la varianza si utilizza la derivata seconda partendo dal binomio
$$ n\,(n-1)\, \left(p+q\right)^{n-2} = \sum_{m=2}^n \binom{n}{m} m \left(m-1\right) \, p^{m-2} q^{n-m} $$
e si moltiplica per il termine $p^2$
$$ n\,(n-1)\,p^2 \, \left(p+q\right)^{n-2} = \sum_{m=2}^n \binom{n}{m} m \left(m-1\right) \, p^m q^{n-m} $$
si aggiunge poi il vincolo $p+q=1$
$$ n\,(n-1)\,p^2 = \sum_{m=0}^n m \left(m-1\right) \, \mathcal{B}_{n,p}(m) = \sum_{m=0}^n m^2\,\mathcal{B}_{n,p}(m) - \sum_{m=0}^n m\,\mathcal{B}_{n,p}(m) $$
$$ n^2p^2 - np^2 = \mathbb{E}\left[m^2\right] - \mathbb{E}\left[m\right]
= \left(\mathbb{E}\left[m\right]\right)^2 - np^2 = \mathbb{E}\left[m^2\right] - np
$$
da cui
$$ \sigma_m^2 = \mathbb{E}\left[m^2\right] - \left(\mathbb{E}\left[m\right]\right)^2 = np - np^2 = n\,p\,(1-p) $$




Empty file added teoria/images/test.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.