Migrated from Gitlab

This commit is contained in:
elvis
2024-07-30 15:01:18 +02:00
parent 185796896f
commit e808f591da
15 changed files with 2659 additions and 2 deletions

46
Makefile Normal file
View File

@ -0,0 +1,46 @@
NAME = tesi
OUTDIR = output
.DEFAULT_GOAL := all
.PHONY : all compile clean cleanall
# -PHONY------------------------------------------------------------------------
all: compile
@rm -f $(NAME).{aux,log,out,toc}
@$(MAKE) -C presentazione all
@mkdir -p $(OUTDIR)
@cp $(NAME).pdf $(OUTDIR)/$(NAME).pdf
compile:
@echo "Compiling Thesis"
@echo "Step 1/4 - pdflatex"
@pdflatex -halt-on-error --synctex=1 -interaction=nonstopmode -draftmode $(NAME).ltx > $(NAME).tmp.log
@grep '^!.*' --color=always $(NAME).tmp.log || rm -f $(NAME).tmp.log
@echo "Step 2/4 - biber"
@biber -q $(NAME).bcf
@echo "Step 3/4 - pdflatex"
@pdflatex -halt-on-error --synctex=1 -interaction=nonstopmode -draftmode $(NAME).ltx > $(NAME).tmp.log
@grep '^!.*' --color=always $(NAME).tmp.log || rm -f $(NAME).tmp.log
@echo "Step 4/4 - pdflatex"
@pdflatex -halt-on-error --synctex=1 -interaction=nonstopmode $(NAME).ltx > $(NAME).tmp.log
@grep '^!.*' --color=always $(NAME).tmp.log || rm -f $(NAME).tmp.log
@echo "Compiled Thesis"
clean:
@rm -f $(NAME).{aux,log,out,toc,synctex\(busy\),synctex.gz,bbl,bcf,blg,run.xml,dvi,fls,fdb_latexmk}
@rm -f titlepage.log
@$(MAKE) -C presentazione clean
cleanall: clean
@rm -f $(NAME).pdf
@$(MAKE) -C presentazione cleanall
@rm -rf $(OUTDIR)
print-%: ; @echo $* = $($*)

View File

@ -1,3 +1,4 @@
# Tesi_Triennale
# Tesi
Tesi Triennale
To compile simply run `make` in root foolder.
Two pdf should be created in the output folder

319
applicazioni.ltx Normal file
View File

@ -0,0 +1,319 @@
\section{Applicazione a problemi}\label{applicazioneprob}
\subsubsection{``Submodular Cover'', ``Submodular Knapsack Constraints'' e ``Submodular Welfare Problem''}
Fra i problemi più famosi dell'informatica ci sono il problema dello zaino e il ``minimum set cover''. Si vede ora come si può arrivare ai problemi più specifici che riguardano le funzioni submodulari affrontate in ``Generalized submodular information measures: Theoretical properties, examples, optimization algorithms, and applications''\cite{generalizedsubmodular2022}.
\paragraph{``Minimum Set Cover''\cite{gareyjohnson2003}}
Dato un insieme $S = \{ s_1, \ldots, s_t \}$ e un insieme $C = \{c_1, \ldots, c_k\} \subseteq \mathcal{P}(S)$ con $\forall s\in S, \exists c_j \in C $ tale che $ s \in c_j$,
sia una ``set cover'' dell'insieme $S$ un insieme $I \subseteq \{1, \ldots, j\}$ tale che $ \bigcup_{i \in I}c_i = S $.
La soluzione del problema è quindi l'insieme $I^*$ con cardinalità minima. Il problema è NP-hard dato che si riconduce a 3-dimensional matching\cite{gareyjohnson2003}.
\paragraph{``Submodular Set Cover''\cite{wolsey1982}}
Data una funzione $f: \mathcal{P}(S) \to \mathbb{R}$ submodulare non decrescente, il problema consiste nel trovare il sottoinsieme di peso minimo tale che ``copra'' tutti gli elementi dell'insieme $S$, cioè abbia lo stesso valore rispetto la funzione $f$.
\[ I^* = \min_{I \subset S}\{ \sum_{i \in I}c_i | f(I) = f(S) \} \]
Si osserva che ci si può ricondurre al ``minimum set cover'' prendendo $f(I) = \sum_{i=1}^t \min\{\sum_{j \in S}a_{ij},b_i\}$.
\paragraph{``SCSC (Submodular Cost Submodular Cover)''\cite{submodularoptimization2013}}
Il problema che viene affrontato è un'ulteriore generalizzazione che richiede che la funzione costo sia polimatroide invece di modulare come nel caso precedente.
$\min_{I \subseteq S}\{f(I)|g(I) \ge c\} \textnormal{ con } f,g $ funzioni submodulari, monotone non decrescenti e normalizzate, cioè $ f(\emptyset) = g(\emptyset) = 0$.
\begin{center}
{\color{black!30} \dotfill}
\end{center}
\paragraph{Problema dello Zaino\cite{gareyjohnson2003}}
Dato un insieme $S = \{ s_1, \ldots, s_t\}$ e una funzione $f: S \to \mathbb{Z}^+$, un valore $b$ che è la dimensione dello zaino e un intero positivo $K$,
sia $I$ una partizione dell'insieme $S$ tale che $\sum_{i \in I} f(i) \le b$.
La soluzione del problema è quindi l'insieme $I^*$ con $\sum_{i \in I^*} f(i)$ massimo.
\paragraph{``Submodular Knapsack Problem''\cite{submodularknapsackpolytope2009}}
Data una funzione $f$ submodulare, il problema consiste nel trovare l'insieme con peso dato da $f$ più vicino al limite $b$. In particolare trovare $I^*$ tale che $I^* = \max_{I \subset S}\{ \sum_{i \in I}f(i) \le b \} $ con $f$ una funzione submodulare.
Si osserva che per $f$ modulare ci si riconduce al problema dello zaino.
\paragraph{``SCSK (Submodular Cost Submodular Knapsack)''\cite{submodularoptimization2013}}
Simile al caso precedente, si generalizza il problema richiedendo che l'obbiettivo da massimizzare sia una funzione submodulare.
$\max_{I \subseteq S}\{g(I)|f(I) \le b\} $ con $ f,g $ funzioni submodulari, monotone non decrescenti e normalizzate, cioè $ f(\emptyset) = g(\emptyset) = 0$.
Sia SCSC che SCSK sono NP-hard, tuttavia sono notevolmente più difficili da affrontare rispetto a ``submodular set cover'' e ``submodular knapsack'' perchè le garanzie sui limiti e sulla complessità cambiano polinomialmente rispetto alla curvatura di $f$, mentre solo in modo costante rispetto alla curvatura di $g$.
I problemi SCSC e SCSK sono fortemente connessi fra loro, infatti in tempo polinomiale si può trasformare ogni istanza di un problema in un'istanza dell'altro\cite{submodularoptimization2013}.
Entrambi i problemi possono essere affrontati tramite un algoritmo ``greedy'', su cui si hanno limiti noti\cite{submodularoptimization2013}.
\paragraph{``Submodular Welfare Problem''}
Un altro problema NP-hard\cite{submodularwelfare2010} per le funzioni submodulari è il ``submodular welfare problem'':
\begin{definizione}
Dati $m$ oggetti, $n$ giocatori a cui è associata una funzione submodulare $\omega_i: \mathcal{P}(\{1,\ldots,m\})\to \mathbb{R}^{+}$, trovare una partizione di $ \{1,\ldots,m\} = S_1 \cup S_2 \cup \ldots \cup S_n$ tale che $ \sum_{i=1}^{n}\omega_i(S_i) $ sia massima.
\end{definizione}
Pure questo problema ha un'approssimazione di almeno $ 1 - \frac{1}{e}$\cite{combinatorialauctions2006} grazie a un rilassamento di programmazione lineare del problema e con ``randomized rounding''\cite{combinatorialauctions2006}.
\subsubsection{Algoritmo ``greedy'' e curvatura}
%% cite{sviridenkovondrakward2014} per tutta la roba sulla curvatura
Per risolvere problemi di massimizzazione di funzioni submodulari non decrescenti soggette a limiti di cardinalità si impiega spesso l'algoritmo ``greedy'', che ha come risultato classico l'approssimazione di $1-\frac{1}{e}$ rispetto alla soluzione ottima\cite{nemhauserwolseyfisher1978}. L'approssimazione è ottima se si suppone che la funzione submodulare possa essere valutata un numero polinomiale di volte.
Esistono versioni continue\cite{vondrakjan2014}\cite{vondrakjan2020} che migliorano sia la complessità che le garanzie sull'approssimazione.
L'algoritmo ``greedy'' costruisce la soluzione partendo dall'insieme vuoto, senza backtracking, aggiungendo ad ogni passaggio l'elemento con valore dato da $f$ più alto fra quelli non ancora scelti.
\begin{center}
{\linespread{1}
\begin{algorithm}[H]
\renewcommand{\thealgorithm}{``greedy''\cite{nemhauserwolseyfisher1978}}
\caption{}\label{alg:cap}
\begin{algorithmic}[1]
\State{$S^0 \gets \emptyset, V^0 \gets V, t \gets 1$}
\While{$ t \ne k $}
\State{$ i(t) \in V^{t-1} $ tale che $ f(S^{t-1}|\{i(t)\})=\max_{i \in V^{t-1}}(S^{t-1}) $}
\If{$ f(S^{t-1}|\{i(t)\}) \le 0$}
\State{$ k^* \gets t-1\qquad $}\Comment{$ k^* < k $}
\State{\textbf{return} {$ S^{k^*} $}}
\ElsIf{$ f(S^{t-1}|\{i(t)\}) > 0 $}
\State{$ S^t \gets S^{t-1} \cup \{ i(t) \} $}
\State{$ V^t \gets V^{t-1} \setminus \{i(t)\} $}
\State{$ t \gets t + 1$}
\EndIf % chktex 1
\EndWhile % chktex 1
\State{$ k^* \gets k\qquad $}\Comment{$ k^* == k $}
\State{\textbf{return} {$ S^{k^*} $}}
\end{algorithmic}
\end{algorithm}
}
\end{center}
Accade molto spesso che si ottengano risultati molto più vicini all'ottimo rispetto al caso peggiore di $1-\frac{1}{e}$.
Per quantificare questo fenomeno si impiega la nozione di curvatura, cioè si stabilisce quanto la funzione sia distante dall'essere lineare.
\begin{definizione}
Una funzione submodulare $f: \mathcal{P}(V) \to \mathbb{R}^+$ ha curvatura $\kappa \in [0, 1]$ se $f(S+j) - f(S) \ge (1 - \kappa)f({j}), \forall S \subset E, \forall j \in V \setminus S$.
\end{definizione}
In particolare se $\kappa = 0$ allora la funzione è lineare.
\sloppy L'algoritmo ``greedy'' per funzioni submodulari non decrescenti produce un'ap\-pros\-si\-ma\-zio\-ne di almeno $\frac{1-e^{-\kappa}}{\kappa}$, che tende a $1$ per $ \kappa \to 0 $\cite{sviridenkovondrakward2014}.
%% NOTE forse scrivere anche che in \cite{sviridenkovondrakward2014} c'è un'approssimazione migliore di (1-\frac{c}{e}-O(\epsilon))
Si può anche definire la curvatura rispetto ad un insieme:
\begin{definizione}
Una funzione submodulare $f: \mathcal{P}(V) \to \mathbb{R}^+$ ha curvatura $\kappa_f(S) = 1 - \min_{j\in S} \frac{f(j|S \setminus j)}{f(j)}$ rispetto ad un insieme $S \subseteq V$.
\end{definizione}
\subsection{Submodular Mutual Information-Based Selection}
Il problema consiste nella massimizzazione della funzione d'informazione submodulare fra un sottoinsieme e il complementare, limitando la cardinalità dell'insieme, cioè massimizzare $\mathcal{I}_f(A;V \setminus A)$ con $\norm{A}=k$.
Rispetto ad ottimizzare soltanto $f(A)$ si ha stabilità migliore rispetto a ``outliers'' dato che si impone somiglianza fra $A$ e $V \setminus A$.
%% TODO vedere se includere questo passaggio pg 13 basso sinistra
% Per esempio nel caso in cui $\mathcal{I}_f(A;V \setminus A) = \omega(\gamma(A)\cap\gamma(V \setminus A))$ e $f(A = \omega(\gamma(A)))$, la presenza di ``outliers''
Si osserva che $\mathcal{I}_f(A;V \setminus A)$ è submodulare ma non monotona, quindi l'approssimazione garantita dall'argoritmo ``\textit{greedy}'' precedente di $(1- \frac{1}{e})$\cite{nemhauserwolseyfisher1978} non è garantita.
Tuttavia si può ottenere una garanzia di $\frac{1}{e}$ attraverso un algoritmo ``randomized greedy''\cite{feigemirroknivondrak2011} dato che la funzione è non monotona submodulare e si limita la cardinalità.
\begin{teorema}\cite{generalizedsubmodular2022} %% TODO dimostrazione
Sia $f(j)\le1, \forall j \in V$, allora $g(A) = \mathcal{I}_f(A;V \setminus A)$ è $\epsilon$-ap\-pros\-si\-ma\-ti\-va\-men\-te monotona per un $A$ con fattore $\kappa_f(A)$, cioè $g(j|A) \ge -\kappa_f(A), \forall j \in V, A \subseteq V$, con $\kappa_f(A) = \max_{j \in V \setminus A}\frac{f(j|V \setminus (A \cup j))}{f(j)}$.
\end{teorema}
\begin{definizione}[$\epsilon$-approssimativamente monotona\cite{maxmizingapproximation2019}]
Sia $\epsilon \ge 0$. $f: \mathcal{P}(V) \to \mathbb{R}$ è $\epsilon$-approssimativamente monotona se $ \forall S \subseteq V, \forall s \notin S$ si ha $ f(S \cup \{s\}) \ge f(S) - \epsilon $, o in modo equivalente $f(\{s\}|S) \ge - \epsilon$.
\end{definizione}
\begin{dimostrazione}
Sia $g(A) = \mathcal{I}_f(A;V \setminus A) = f(A) + f(V \setminus A) - f(V)$. Per studiare la monotonicità di $g(A)$ si considera il guadagno aggiungendo un elemento $j \notin A$ ad $A$: $g(j|A) = g(A \cup \{j\}) - g(A) = f(A \cup \{j\}) + f(V \setminus (A \cup {j})) - f(V \setminus A)$. Quindi $ g(j|A) = f(j|A) - f(j|V \setminus (A \cup \{j\}))$.
La differenza può essere sia negativa che positiva, quindi in generale è soltanto $\epsilon$-approssimativamente monotona:
sia $\kappa_f(A) = \max_{j\in V \setminus A} (\frac{f(j|V\setminus (A \cup \{j\}))}{f(j)})$ la curvatura di $f$ per l'insieme $A$. Si ha quindi che $g(j|A) \ge f(j|A) - \kappa_f(A)\cdot f(j)$.
Dato che $f$ è monotona, $f(j|A)\ge0 \implies g(j|A) \ge - \kappa_f(A) \cdot f(j)$.
Se si assume che $\forall j \in V, f(j)\le 1$ allora $g(j|A)\ge - \kappa_f(A)$.
\end{dimostrazione}
L'algoritmo ``greedy'' garantisce di fornire una soluzione $\hat{A}$ con $\bigl|\hat{A}\bigr|=k$ e tale che $ \mathcal{I}_f(\hat{A};V \setminus \hat{A}) \ge (1-\frac{1}{e})\cdot(g(A^*) - k \cdot \kappa_f(A^*))$, dove $A^*$ è la soluzione ottima. %% usin \bigl and \bigr because \left and \right use the hat bounding box
\subsection{Query-Based and Privacy Preserving Summarization}
Si consideri il problema di massimizzazione dell'informazione mutua rispetto a un ``query set'' $Q$ e/o un ``private set'' $P$.
\subsubsection{Query-Based Summarization}
Si considera il problema quando $P=\emptyset$. Si ottengono due formulazioni del problema: ``direct optimization'' massimizzando l'informazione mutua e ``constrained formulation using conditional gain''.
\textit{Ottimizzazione diretta massimizzando l'informazione mutua}
Il problema può essere formulato come la massimizzazione dell'informazione mutua fra il ``query set'' $Q$ e l'insieme $A$, più un termine di correzione per diversità/rappresentazione.
\[ \max_{A \subseteq V, \norm{A} \le j} \mathcal{I}_f(A;Q) + \lambda \cdot g(A) \]
dove $g$ è una funzione submodulare e $\lambda \in \mathbb{R}$.
Si ha quindi un compromesso fra la massimizzazione della rilevanza rispetto alla ``query'' e rappresentazione/diversificazione tramite $g(A)$ con un parametro $\lambda$ come peso.
Si osserva che $ \mathcal{I}_f(A;Q) $ non è in generale submodulare in $A$ rispetto a $Q$.
\begin{teorema}\cite{generalizedsubmodular2022}
Se $f^{(3)}(i,j,k;A) \ge 0$ e $g$ è monotona submodulare, allora l'algoritmo ``greedy'' ottiene un'approssimazione di almeno $1-\frac{1}{e}$.
\end{teorema}
In particolare i problemi di ``set cover'' e ``facility location'' soddisfano queste ipotesi.
Si osserva che non avere una ``query'' vuol dire che $Q=V$, che implica $\mathcal{I}_f(A;Q) = f(A)$.
\textit{``Constrained formulation'' usando guadagno condizionale}
Una formulazione equivalente del problema è la seguente:
\begin{equation*}
\begin{dcases}
\max_{A \subseteq V}g(A) \\
f(A|Q) \le \epsilon \\
\norm{A} \le k
\end{dcases}
\end{equation*}
Siccome $\mathcal{I}_f(A;Q) = f(A) - f(A|Q)$, massimizzare $\mathcal{I}_f(A;Q)$ è equivalente a minimizzare $f(A|Q)$.
Dato che sia $f(A|B)$ e $g(A)$ sono funzioni submodulari in $A$, il problema si riduce alla massimizzazione submodulare con molteplici vincoli sulla cardinalità.
In particolare la seconda formulazione del problema ammette nel peggiore dei casi un'approssimazione di $ \left[ 1-\frac{1}{e}, \frac{n}{1+(n-1)(1-\kappa_f)} \right] $, dove $\kappa_f = 1-\min_{j \in V}\frac{f(j|V \setminus j)}{f(j)}$ è la curvatura.
\begin{definizione}\cite{submodularoptimization2013}
Un algoritmo è un algoritmo $[\alpha,\beta]$ bi-criterio se è garantito di ottenere l'insieme soluzione $S$ tale che $f(S) \ge \alpha f(S^*)$ e $g(S) \le k' = \beta k$, dove $S^*$ è la soluzione ottima.
\end{definizione}
Per il problema precedente quindi il fattore di approssimazione su $g(A)$ è $\alpha$, tuttavia $f(A|Q) \le \beta \epsilon$ e $ \norm{A} \le \beta k$ per $\beta>1$.
%% TODO aggiungere forse una riga su quale algoritmo è migliore pag 14
\par
Si osserva che però la seconda formulazione del problema richiede meno ipotesi per ammettere garanzie sul limite; se verificate le garanzie sono costanti nel primo caso, mentre nel secondo hanno un fattore polinomiale; infine il parametro $\epsilon$ è simile al parametro $\lambda$, ma è meno indiretto nell'effetto sulla somiglianza della ``query''.
\subsubsection{Privacy Preserving Summarization}
Rispetto al ``query based summarization'', l'obiettivo è quello di ottenere un ``riassunto'' $A$ che ha poca informazione mutua rispetto l'insieme $P$, che contiene quindi informazioni che non vogliono essere contenute in $A$.
\textit{Ottimizzazione diretta minimizzando l'informazione mutua}
In modo simile al \textit{Ottimizzazione diretta massimizzando l'informazione mutua} del problema con ``query'', si può ottenere la formulazione seguente\label{NSMImax}:
\[ \max_{A \subseteq V, \norm{A}\le k}\lambda g(A) - \mathcal{I}_f(A;P) = \max_{A \subseteq V, \norm{A}\le k} \lambda g(A) +f(P|A) \]
$f(P|A)$ è submodulare in $A$ soltanto se $f^{(3)}(i,j,k;A)\le 0$, quindi la massimizzazione non è trattabile nella maggior parte dei casi.
Inoltre nel caso in cui $P=\emptyset$, cioè non ci sono limiti per l'insieme di ``privacy'', $\mathcal{I}_f(A;P) = \mathcal{I}_f(A;\emptyset) = 0$, quindi non si riottiene il caso della semplice massimizzazione di $f(A)$.
\textit{Ottimizzazione diretta massimizzando il guadagno condizionale}
Invece di massimizzare $f(P|A)$ viene massimizzato $f(A|P)$. Anche se risulta un problema differente, l'obiettivo che cerca di raggiungere è simile, cioè ottenere l'insieme $A$ più distante da $P$.
\[ \max_{A\subseteq V, \norm{A}\le k} \lambda g(A) + f(A|P) \]
Il problema è quindi un'istanza della massimizzazione di una funzione monotona submodulare, quindi l'algoritmo ``greedy'' ammette approssimazione di $1 - \frac{1}{e}$.
Si osserva che avere un insieme di ``privacy'' vuoto risulta nella massimizzazione della funzione $f(A)$.
\textit{``Constrained formulation'' usando l'informazione mutua}
Si vuole di nuovo ottenere un parametro per manipolare meglio la differenza richiesta fra $A$ e $P$.
\begin{equation*}
\begin{dcases}
\max_{A\subseteq V}g(A)\\
\mathcal{I}_f(A;P)\le\epsilon\\
\norm{A} \le k
\end{dcases}
\end{equation*}
Invece di minimizzare $\mathcal{I}_f(A;P)$, viene aggiunto ai limiti. Si osserva inoltre che $\mathcal{I}_f(A;P)$ è submodulare se la terza derivata parziale di $f$ è non negativa, come nei problemi di ``facility location'' o ``set cover''.
Quindi questa formulazione è più facilmente trattabile rispetto alle altre, oltre ad avere controllo esplicito della privacy attraverso $\epsilon$.
Infine se $P=\emptyset$ si ottiene $\mathcal{I}_f(A;P) = \mathcal{I}_f(A;\emptyset) = 0$, e il problema si riconduce alla massimizzazione di $f(A)$.
\subsubsection{Joint Query e Privacy Preserving Summarization}
Si consideri quindi il problema di ottenere simultaneamente un riassunto $A$ rispetto a una ``query'' $Q$, rispettando un insieme di ``privacy'' $P$.
Come per i casi precedenti si possono individuare diverse formulazioni del problema.
\textit{Ottimizzazione diretta utilizzando l'informazione mutua}
\[ \max_{A\subseteq V, \norm{A}\le k} \mathcal{I}_f(A;Q) - \mathcal{I}_f(A;P) + \lambda g(A) \]
Tuttavia questa formulazione non è adeguata quando si pone $Q=V$ o $Q=\emptyset$. Infatti per $Q=V$ si ottiene $f(A)-\lambda g(A) - \mathcal{I}_f(A;P)$, simile ad una formulazione precedente inapprossimabile (\ref{NSMImax}), mentre per $Q=\emptyset$ si ottiene $ \lambda g(A) - \mathcal{I}_f(A;P)$, che è esattamente una formulazione precedente inapprossimabile (\ref{NSMImax}).
\textit{Ottimizzazione diretta sommando i termini ``query'' e ``privacy''}
\sloppy In\-ve\-ce di usare un solo iperparametro, si parametrizza sia $\mathcal{I}_f(A;Q)$ che $f(A|P)$:
\begin{equation*}
\max_{A\subseteq V, \norm{A}\le k} \lambda_1 \mathcal{I}_f(A;Q) + \lambda_2 f(A|P) + g(A)
\end{equation*}
Questa formulazione permette un'approssimazione di $1 - \frac{1}{e}$ della soluzione ottima\cite{generalizedsubmodular2022}.
Inoltre per $ P=\emptyset $ e $ Q=V $ si ottengono rispettivamente ``query based summarization'' e ``privacy preserving summarization''.
\textit{``Constrained formulation by combining the query and privacy constraints''}
In modo simile ai problemi separati precedenti, si possono usare vincoli invece che sommare i termini:
\begin{equation*}
\begin{cases}
\max\limits_{A\subseteq V} g(A) \\
f(A|Q) \le \epsilon_1 \\
\mathcal{I}_f(A;P) \le \epsilon_2 \\
\norm{A} \le k \\
\end{cases}
\end{equation*}
\sloppy Tut\-ta\-vi\-a, come per ``privicy preserving summarization'', è necessario che $\mathcal{I}_f(A;P)$ sia submodulare, che quindi richiede che $f^{(3)}$ sia non negativa.
Nei casi in cui la derivata terza potrebbe non essere non negativa si può riformulare il problema usando $f(A|Q)$:
\begin{equation*}
\begin{cases}
\max_{A\subseteq V}g(A) + \lambda_2 f(A|P)\\
f(A|Q) \le \epsilon_1 \\
\norm{A} \le k \\
\end{cases}
\end{equation*}
Sia la funzione da massimizzare che la funzione ``constraint'' sono submodulari, quindi è un istanza del problema \textnormal{SCSK}.
\textit{Ottimizzazione diretta con una funzione obbiettivo comune per i termini ``privacy'' e ``query''}
Si può semplificare la formulazione del problema combinando le due funzioni obiettivo in un'unica funzione, rimuovendo quindi un iperparametro.
\begin{equation*}
\max_{A\subseteq V, \norm{A}\le k} \mathcal{I}_f(A;Q|P) + \lambda g(A)
\end{equation*}
Dato che $\mathcal{I}_f(A;Q|P) = \mathcal{I}_f(A;Q) - \mathcal{I}_f(A;Q;P)$, per massimizzare la funzione contemporaneamente si massimizza l'informazione mutua fra $A$ e $Q$, cioè si trova un insieme $A$ simile a $Q$, e si minimizza l'informazione mutua fra $A$ e $P$ attraverso $\mathcal{I}_f(A;Q;P)$, dato che $A$ e $Q$ saranno già simili dato il primo termine.
Si osserva che nel caso $Q = V$ si massimizza $f(A|P) + \lambda g(A)$, nel caso $P = \emptyset$ si massimizza $ \mathcal{I}_f(A;Q) +\lambda g(A) $, nel caso $Q = V, P = \emptyset$ si massimizza $f(A) + \lambda g(A)$.
Questa formulazione del problema ammette una approssimazione di $1-\frac{1}{e}$ per tutte le funzioni monotone submodulari con terza derivata parziale non negativa, cioè $f^{(3)}(i,j,k;A) = f^{(2)}(j,k;A \cup i) - f^{(2)}(j,k;A) \ge 0 $.
\subsection{Clustering and Partitioning using the Multi-Set Mutual Information}
Attraverso l'informazione mutua si possono risolvere sia problemi di ``clustering'' che di partizionamento.
\textit{``Clustering''}
Usando la correlazione totale si ottiene un problema di partizionamento submodulare noto:
\[ \min\limits_{A_1, \ldots,A_k \textnormal{ tali che } \cup_{i=1}^{k} A_i=V \wedge (\forall i,j: A_i \cap A_j = \emptyset)}C_f(A_1,\ldots, A_k) \]
Infatti è equivalente a minimizzare $\sum_{i=1}^{k}f(A_i) - f(\bigcup_{i=1}^{k} A_i)= \sum_{i=1}^{k}f(A_i) - f(V)$. Dato che $f(V)$ è costante, il problema risulta un ``submodular multiway partition problem''.
\begin{definizione}[``submodular multiway partition problem'']\cite{submultiwaypartition2011}
Dato un inisieme $V$, un insieme $S = {s_1,\ldots, s_k} \subset V$ di cardinalità $k$ e una funzione $f: \mathcal{P}(V) \to \mathbb{R}^+$ submodulare non negativa, si suddivida $V$ in $k$ insiemi $A_1, \ldots, A_k$ tali che per $1 \le i \le k, s_i \in A_i$ e $\sum_{i=1}^k f(A_i)$ è minima.
\end{definizione}
\textit{``Diverse partitioning''}
Partendo dalla correlazione totale:
\begin{equation*}
\min\limits_{A_1, \ldots,A_k \textnormal{ tali che } \cup_{i=1}^{k} A_i=V \wedge (\forall i,j: A_i \cap A_j = \emptyset)}C_f(A_1,\ldots, A_k)
\end{equation*}
Risulta equivalente a:
\begin{equation*}
\begin{aligned}
&\max\sum_{i=1}^{k}f(A_i)-f(\bigcup_{i=1}^{k}A_i)\\
= &\max\sum_{i=1}^{k}f(A_i)-f(V)\\
\end{aligned}
\end{equation*}
Il problema quindi è equivalente al ``submodular welfare problem'', in cui le funzioni obiettivo però differiscono di una costante uguale a $f(V)$.
\subsection{Minimization of Submodular Information Metric}
Si vuole trovare il sottoinsieme $A\in \mathcal{P}(V)$ in modo che abbia distanza minima da $S_1, S_2, \ldots, S_m$:
\[ \min\limits_{A \subseteq V} \sum_{i=1}^m D_f(A,S_i) \]
Il problema è molto simile a trovare un insieme rappresentativo con una metrica submodulare di hamming dato che è un'approssimazione valida di $D_f(A,S)$.
In particolare la metrica submodulare di hamming è $D^{\textnormal{SHA}}(A,S)=f(A\setminus S) + f(S\setminus A)$ che è submodulare in $A$ per $S$ fissato.
Quindi è possibile ottenere una soluzione esatta in tempo polinomiale\cite{generalizedsubmodular2022}.
Inoltre si ha una garanzia di $1-\kappa_f$ sulla soluzione trovata, dove $\kappa_f$ è la curvatura di $f$.

4
conclusioni.ltx Normal file
View File

@ -0,0 +1,4 @@
\section{Conclusioni}
Lo studio delle funzioni polimatroidi fornisce una forte generalizzazione sulle funzioni entropiche, in particolare le proprietà studiate forniscono le basi per numerosi problemi di ottimizzazione.
In un lavoro futuro si potrà andare a studiare altri tipi di funzioni submodulari e problemi associati come ``log-determinants''\cite{logdeterminant2017} per ``determinantal poin process''\cite{entropictracelogdet2017}, cioè un'espressione per l'entropia gaussiana\cite{generalizedsubmodular2022}, oppure estendere il lavoro con esperimenti su dati.

611
definizioni.ltx Normal file
View File

@ -0,0 +1,611 @@
\section{Verso la definizione sublineare dell'entropia}
\subsection{Matroidi}\label{matroidi}
La teoria dei matroidi\cite{lawler2004} fu fondata da Hassler Whitney nel 1935 nella pubblicazione ``\textsc{On the Abstract Properties of Linear Dependence}''\cite{whitney1935} grazie ad uno studio sulla teoria algebrica della dipendenza lineare.
Data una matrice le colonne sono o linearmente dipendenti fra loro oppure linearmente indipendenti.
Whitney fa notare che esistono solo queste due classi, ma che non sono arbitrarie. Per esempio un sottoinsieme di colonne linearmente indipendenti è indipendente. Oppure se $I_p$ e $I_{p+1}$ sono insiemi di colonne linearmente indipendenti con rispettivamente $p$ e $p+1$ elementi allora, esiste una colonna $i\in I_{p+1}$ tale che $i\cup I_{p}$ è indipendente.\medskip
\begin{definizione}\cite{lawler2004} Un \textsc{matroide} $M = (E, \mathscr{I})$ è una struttura in cui $E$ è un insieme finito di elementi e $\mathscr{I}\subset \mathcal{P}(E)$, tale che:
\begin{itemize}
\item $\emptyset \in \mathscr{I}$ e $\forall i\subset I \in \mathscr{I}$, $i \in \mathscr{I}$
\item se $ I_p $ e $ I_{p+1} $ sottoinsiemi di $\mathscr{I}$, che contengono rispettivamente $p$ e $p+1$ elementi, allora $\exists i\in I_{p+1} - I_{p}$ tale che $ I_p \cup i \in \mathscr{I} $
\end{itemize}
\end{definizione}
$\mathcal{P}(E)$ si riferisce all'insieme delle parti di $E$.
Si consideri la matrice $A$:
\begin{equation*}
A =
\begin{+bmatrix}
a_{11} & \cdots & a_{1n}\\
\vdots & \ddots & \vdots\\
a_{m1} & \cdots & a_{mn}
\end{+bmatrix}
\end{equation*}
e siano le sue colonne $C_1, \ldots, C_n$. Ogni sottoinsieme $N$ di queste colonne è una matrice; se si considerano le colonne come elementi astratti si ottiene un matroide $M$.
Tuttavia non tutti i matroidi si possono esprimere come matrici\cite{whitney1935}.
La definizione di indipendenza è quindi relativa all'appartenenza all'insieme $\mathscr{I}$, non ad una proprietà intrinseca degli elementi.
\subsection{Politopi e Poliedri}\label{politopiepoliedri}
\begin{small}
\vspace{-0.8em}
\hspace{5em}\textit{tratto da }\cite{ziegler2007}
\end{small}
\begin{definizione}
Un $\mathcal{V}$-\textsc{politopo} è l'inviluppo convesso di un insieme finito di punti in $\mathbb{R}^d$.
\end{definizione}
L'inviluppo convesso di un insieme $K$ di punti è definito come:
\[ \text{conv}(K) = \{\lambda_1 \textbf{x}_1 + \ldots + \lambda_k \textbf{x}_k : \{\textbf{x}_1,\ldots,\textbf{x}_k \}\subseteq K, \lambda_i\geq0, \sum_{i=1}^k \lambda_i = 1 \} \]% chktex 11
\begin{definizione}
Un $\mathcal{H}$-poliedro è l'intersezione di un numero finito di semispazi chiusi in $\mathbb{R}^d$.
\end{definizione}
A differenza di un politopo, un $\mathcal{H}$-\textsc{poliedro} non è limitato nel piano.
Un $\mathcal{H}$-\textsc{politopo} è un $\mathcal{H}$-poliedro ``finito'', in particolare che non contiene semirette $\{\textbf{x}+t \textbf{y}:t>0\}$ per ogni $\textbf{y}\ne \textbf{0}$.
Un \textsc{politopo} è un insieme di punti $P\subseteq\mathbb{R}^d$ che può essere sia un $\mathcal{V}$-politopo o un $\mathcal{H}$-politopo.
\begin{figure}[htbp]
\centering\label{points}
\def\svgwidth{.6\textwidth}
\subimport{figures}{politopi.pdf_tex}
\caption{$\mathcal{V}$-politopo e $\mathcal{H}$-politopo}
\end{figure}
La dimensione di un politopo è la dimensione del suo inviluppo affine.
In particolare i politopi che hanno dimensione 0 sono i punti, quelli che hanno dimensione 1 sono i segmenti di linea.
\begin{definizione}
Un $\mathcal{H}$-\textsc{poliedro} $P\subseteq\mathbb{R}^d$ è definito come l'intersezione di semispazi:
\[ P = P(A, \textbf{z}) = \{ \textbf{x}\in\mathbb{R}^d : A \textbf{x} \le \textbf{z} \}\quad \text{ per qualche } A\in\mathbb{R}^{m\times d}, \textbf{z}\in\mathbb{R}^m \]
\end{definizione}
Si definisce quindi il cono di un insieme di punti $Y$ come:
\[ \text{cono}(Y) = \{ \lambda_1 \textbf{y}_1 + \ldots + \lambda_k \textbf{y}_k : \{\textbf{y}_1,\ldots,\textbf{y}_k\}\subseteq Y, \lambda_i \ge 0\} \]% chktex 11
Nel caso in cui $Y\subseteq\mathbb{R}^d$ si riduce a:
\[ \text{cono}(Y) \coloneq \{Y \textbf{t} : \textbf{t}\ge0\} \]
Se $Y = \emptyset$ allora $\text{cono}(Y)=\{\textbf{0}\}$
Si definisce la somma di Minkowski di due insiemi $P, Q \subseteq \mathbb{R}^d$ come:
\[ P + Q \coloneq \{ \textbf{x}+\textbf{y}:\textbf{x}\in P, \textbf{y}\in Q \} \]
\begin{definizione}
Un $\mathcal{V}$-\textsc{poliedro} $P$:
\[ P = \text{conv}(V) + \text{cono}(Y)\hspace{2em}\text{ per qualche } V\in \mathbb{R}^{d\times n}, Y\in \mathbb{R}^{d\times n'} \]
\end{definizione}
\begin{teorema}
Un insieme $P\in\mathbb{R}^d$ è un $\mathcal{V}$-poliedro:
\begin{align}
P = \text{conv}(V) + \text{cono}(Y)\hspace{2em}&\text{per qualche } V\in \mathbb{R}^{d\times n}, Y\in \mathbb{R}^{d\times n'} \notag
\shortintertext{se e solo se è un $\mathcal{H}$-poliedro:}
P=P(A, \textbf{z})\hspace{2em}&\text{per qualche } A\in \mathbb{R}^{m\times d}, \textbf{z}\in \mathbb{R}^{m} \notag
\end{align}
\end{teorema}
\subsection{Funzioni Submodulari e Polimatroidi}\label{polimatroidi}
Dato un insieme S, sia $f$ una funzione definita su $\mathcal{P}(S)$. $f$ è chiamata submodulare se\cite{schrijver2003}:
\[ f(T) + f(U) \ge f(T \cap U) + f(T \cup U) \quad \text{ per ogni } T,U \subset S \]
$f$ è chiamata supermodulare se $-f$ è submodulare. $f$ è modulare se $f$ è sia submodulare che supermodulare.
Una funzione $f$ su $\mathcal{P}(S)$ è chiamata non decrescente se $f(T) \le f(U)$ per qualsiasi $T \subseteq U \subseteq S$, e non crescente se $f(T) \ge f(U)$ per qualsiasi $T \subseteq U \subseteq S$. Se $f(\emptyset)=0$ allora $f$ si chiama normalizzata.
Ogni funzione modulare $f$ su $\mathcal{P}(S)$ soddisfa $f(U) = \omega(U) + \gamma$ per $U \subseteq S$, per $\gamma \in \mathbb{R}$ unico e per una funzione $\omega: S \to \mathbb{R} $ univoca tale che $\omega(U) \coloneq \sum\nolimits_{s \in U} \omega(s)$.
La submodularità è quindi l'analogo discreto della convessità.
\begin{definizione}\cite{schrijver2003} Si definiscono due poliedri associati ad una funzione $f$ su $\mathcal{P}(S)$:
\begin{equation*}
\label{Poliedri associati a $f$}
\begin{aligned}
P_f &\coloneq \{x \in \mathbb{R}^S : x \ge \textbf{0},&x(U) \le f(U), \forall U \subseteq S \}\\
EP_f &\coloneq \{x \in \mathbb{R}^S :&x(U) \le f(U), \forall U \subseteq S \}
\end{aligned}
\end{equation*}
$P_f$ è chiamato il polimatroide associato a $f$, $EP_f$ è chiamato il polimatroide esteso associato a $f$.
\end{definizione}
Si osserva che $P_f \ne \emptyset \Leftrightarrow f \ge \textbf{0}$ e che $ EP_f \ne \emptyset \Leftrightarrow f(\emptyset) \ge 0$. Un poliedro è chiamato polimatroide (esteso) se è il polimatroide (esteso) associato ad una funzione submodulare. Un polimatroide è limitato dato che $ \forall s \in S, 0 \le x_s \le f(\{s\})$ e quindi è un politopo.
Un'altra caratterizzazione delle funzioni submodulari è attraverso la definizione di derivata parziale di primo ordine\cite{generalizedsubmodular2022} o \textit{diminishing marginal returns}\cite{fujishige2005}:
\[ \forall T \subseteq V, j \notin V f(j|T) \ge f(j|V) \]
Se si definisce anche la derivata parziale di secondo ordine, si può avere un'altra caratterizzazione delle funzioni submodulari\cite{generalizedsubmodular2022}:
\begin{equation*}
\begin{aligned}
f^{(2)}(j,k;T) \coloneq &f(j|T \cup \{k\}) - f(j|T)\\
= &f(T \cup \{k\} \cup \{j\}) + f(T) - f(T \cup \{k\}) - f(T \cup \{j\})
\end{aligned}
\end{equation*}
con $T \subseteq V \setminus \{j,k\}$.
Una funzione $f$ è submodulare se le derivate parziali di secondo ordine rispetto a un insieme $T$ sono sempre negative, cioè:
\[ \forall\ T, \forall j,k \notin T \text{ si ha che } f^{(2)}(j, k; T) \le 0 \]
Si può anche definire la derivata parziale di terzo ordine:
\begin{center}
\begin{tblr}{colspec={Q[l,m]Q[r,m]Q[l,m]}}
$f^{(3)}(i,j,k;A) $ & $\coloneq$ &$f^{(2)}(j,k;A\cup \{i\})-f^{(2)}(j,k;A)$\\
& $=$ &$f(A\cup\{i\}\cup\{j\}\cup\{k\})-f(A\cup\{i\}\cup\{j\}) +$\\
& \SetCell[c=2]{r} $-f(A\cup\{i\}\cup\{k\})-f(A\cup\{i\}\cup\{j\})+$ \\
& \SetCell[c=2]{r} $+f(A\cup\{i\})+f(A\cup\{j\})+f(A\cup\{k\})+$\\
& \SetCell[c=2]{r} $-f(A)$
\end{tblr}
\end{center}
Sarà necessaria per definire quando l'informazione mutua sia submodulare.
\subsection{Entropia e Funzioni polimatroidi}\label{funzionipolimatroidi}
\begin{small}
\vspace{-0.8em}
\hspace{5em}\textit{tratto da }\cite{generalizedsubmodular2022}
\end{small}
\begin{definizione}
Una funzione $f$ si chiama funzione polimatroide se è monotona, non negativa, non decrescente e submodulare.
\end{definizione}
In generale funzioni polimatroidi possono essere viste come funzioni d'informazione $ \mathcal{I}_f(A) = f(A) $ dato che soddisfano tutte le disuguaglianze di Shannon\cite{shannon1948}:
\begin{itemize}
\item $f(A)$ è normalizzata, cioè $f(\emptyset) = 0$
\item $f(A)$ è monotona non decrescente, cioè per $A \subseteq B \subseteq S$ allora $f(B) \ge f(A)$
\item $f(A)$ è submodulare, cioè $f(A) + f(B) \geq f(A \cup B) + f(A \cap B), \forall A, B \subset V$
\end{itemize}
L'insieme di funzioni che soddifano queste tre proprietà vengono chiamate funzioni polimatroidi dato che esiste un isomorfismo tra questa classe di funzioni e la classe dei polimatroidi prima definiti.
\begin{teorema}
La classe delle funzioni polimatroidi è strettamente più generale della classe delle funzioni entropiche.
\end{teorema}
Sia $\Gamma^S_n$ la classe di tutte le funzioni sull'insieme V, con $|V| = n$, che soddisfano le disuguaglianze di Shannon.
Una funzione $f$ è costruibile se esiste un insieme di $n$ variabili aleatorie indicizzate su $V$, tali che l'entropia di ogni sottoinsieme di queste variabili sia uguale a $f$ applicato al corrispondente sottoinsieme di $V$.
Sia $\Gamma^H_n$ la classe di funzioni \textit{costruibili} sull'insieme $|V| = n$, cioè tutte le funzioni entropiche su sottoinsiemi di $n$ variabili aleatorie.
Sia $cl(\Gamma^H_n)$ la chiusura di $\Gamma^H_n$; in particolare $\Gamma^H_n \ne cl(\Gamma^H_n)$ per $n \ge 3$.
Il teorema può essere espresso quindi come $\Gamma^S_n \supset cl(\Gamma^H_n)$ e $\Gamma^S_n \supset \Gamma^H_n$ per $n\geq4$.
In particolare si ha $\Gamma^H_2 = \Gamma^S_2$ e $\Gamma^H_3 \ne cl(\Gamma^H_3) = \Gamma^S_3$.
Si osserva che $\Gamma^S_n$ è un cono convesso, dato che se $f_1$ e $f_2$ sono funzioni polimatroidi allora $\lambda_1 f_1 + \lambda_2 f_2$ è una funzione polimatroide se $\lambda_1,\lambda_2\ge0$ e dato che la funzione costante $f(A) = 0, \forall A$ appartiene a $\Gamma^S_n$.
In modo simile all'entropia, si vuole quindi caratterizzare la quantità di informazione che si aggiunge dall'insieme $A$ dato l'insieme $B$:
\begin{definizione}
Data una funzione $f: \mathcal{P}(V) \to \mathbb{R}$ sia $ f(A|B) \coloneq f(A\cup B) - f(B) $ il ``conditional gain''.
\end{definizione}
Si osserva che:
\begin{tblr}{colspec={Q[l,m]Q[l,m]}, column{2} = {leftsep = 0em, wd=15em}}
$f(A|B) \ge 0 $ & se $f$ è monotona \\
$f(A|B) \le f(A) $ & se $ f $ è subadditiva \\
\SetCell[c=2]{r} {\small \textit{(``conditioning reduces valuation'')}} \\
$ f(A|B\cup C) \le f(A|B) $ con $ C\neq \emptyset $ & se $ f $ è submodulare \\
\SetCell[c=2]{r} {\small \textit{(``further conditioning reduces valuation'')}}\\
$f(A|B)$ è submodulare in $A$ dato $B$ & se $ f $ è submodulare
\end{tblr}
Inoltre:
\[ f(A|B)=0 \Longleftrightarrow f(j|B)=0, \forall j \in A \]
cioè ogni elemento di $A$ non ha informazione aggiuntiva rispetto a $B$.
Data una funzione submodulare $g(A) = \lambda_1 f_1(A)+ \lambda_2 f_2(A)$, allora $ g(A|B) = \lambda_1 f_1(A|B) + \lambda_2 f_2(A|B) $.
Un limite rilevante per qualsiasi funzione $f$ polimatroide è il seguente:
\[ f(\cup_i A_i) = \mathcal{I}_f(\cup_i A_i) \le \sum_i f(A_i) = \sum_i \mathcal{I}_f(A_i) \]
In particolare si ha uguaglianza quando tutti gli insiemi $A_i$ sono indipendenti.
Un'altra proprietà rilevante è la seguente:
$\mathcal{I}_f(A) = 0 \Leftrightarrow f(j)=0, \forall j \in A$, cioè che si ha informazione nulla soltanto se ogni elemento dell'insieme ha informazione nulla.
Nel caso dell'entropia la formula è equivalente a: $H(X) = 0 \Leftrightarrow X$ è costante.
In generale quando $\mathcal{I}_f(A)=0$ vuole dire che ogni variabile $j\in A$ può essere ignorata, dato che non ha informazione.
\begin{definizione}
Dati due insiemi $A$ e $B$, l'informazione mutua fra i due insiemi è:
$\mathcal{I}_f(A;B) \coloneq f(A) + f(B) - f(A \cup B)$
\end{definizione}
Come per l'entropia di Shannon si ha simmetria rispetto agli insiemi:
\begin{equation*}
\mathcal{I}_f(A;B) = f(A) - f(A|B) = f(B) - f(B|A)
\end{equation*}
Dalla definizione di $\mathcal{I}_f(A;B)$ seguono le proprietà:
\begin{center}
\begin{tblr}{Q[r,m]Q[l,m]X[1,l]}
$\bullet$& $ \mathcal{I}_f(A;B) = \mathcal{I}_f(B;A) $ & \\
$\bullet$& $ \mathcal{I}_f(A;A) = f(A) $ & \\
$\bullet$& $ \mathcal{I}_g(A;B) = \lambda_1 \mathcal{I}_{f_1}(A;B) + \lambda_2 \mathcal{I}_{f_2}(A;B) $ &se $g(A) = \lambda_1 f_1(A) + \lambda_2 f_2(A)$ \\
$\bullet$& $ \mathcal{I}_f(A;B) = c $ &se $\forall A, f(A) = c $ \\
$\bullet$& $ \mathcal{I}_f(A;\emptyset) = 0 $ \\
$\bullet$& $ \mathcal{I}_f(A;V) = f(A) $ \\
$\bullet$& $ \mathcal{I}_f(A;B) \ge 0 $ &se $f$ è submodulare \\
$\bullet$& \SetCell[c=2]{l}
\begin{tblr}{colspec={Q[l,m]Q[l,m]}, column{1} = {leftsep = 0em}}
$\min(f(A),f(B)) \ge \mathcal{I}_f(A;B) \ge f(A \cap B) $ & {se $f$ è non \\ negativa \\ submodulare}
\end{tblr} \\
$\bullet$& $\mathcal{I}_f(A;B) $ è monotona in $A$ & per $B$ fisso \\
$\bullet$& \SetCell[c=2]{l}
\begin{tblr}{colspec={Q[l,m]Q[c,m]Q[r,m]}, column{1} = {leftsep = 0em}}
{$ \mathcal{I}_f(A;B) $ è submodulare in $A$ \\con $B$ fisso } &$\iff$ &{$f^{(2)}(j,k;A)$ è monotona non\\ decrescente in $A \subseteq V \setminus \{j,k\}$}
\end{tblr} \\
$\bullet$& \SetCell[c=2]{l}
\begin{tblr}{colspec={Q[l,m]Q[c,m]Q[c,m]}, column{1} = {leftsep = 0em}}
{$ \mathcal{I}_f(A;B) $ è submodulare in $A$ \\con $B$ fisso} &$\iff$ &$f^{(3)}(i,j,k;A) \geq 0$
\end{tblr}
\end{tblr}
\end{center}
Si può definire anche la ``submodular conditional mutual information'' degli insiemi $A$ e $B$ dato l'insieme $C$:
\begin{definizione}
Dati tre insiemi $A, B$ e $C$, sia:
\begin{align*}
\mathcal{I}_f(A;B|C)\coloneq &f(A|C)+f(B|C)-f(A \cup B|C) \\
= &f(A\cup C) + f(B \cup C) -f(A \cup B \cup C)- f(C)
\end{align*}
la ``submodular conditional mutual information''.
\end{definizione}
Seguono alcune proprietà:
\begin{center}
\begin{tblr}{Q[l,m]Q[l,m]X[1,l]}
$\bullet$& $ \mathcal{I}_f(A;B|C) = f(A|C) $ &se $ A \subseteq B $ \\
$\bullet$& $ \mathcal{I}_f(A;\emptyset|C) = 0 $ & \\
$\bullet$& $ \mathcal{I}_f(A;B|C) \ge 0 $ &se $f$ è non negativa submodulare \\
$\bullet$& \SetCell[c=2]{l} $ \min(f(A|C),f(B|C)) \ge \mathcal{I}_f(A;B|C) \ge f(A \cap B|C) $ \\
& & se $f$ è non negativa submodulare \\
$\bullet$& $ \mathcal{I}_f(A;B|C) $ è monotona in A &per $B$ e $C$ fissi \\
$\bullet$& \SetCell[c=2]{l}
\begin{tblr}{colspec={Q[l,m]Q[c,m]Q[r,m]}, column{1} = {leftsep = 0em}}
{$ \mathcal{I}_f(A;B|C) $ è submodulare in $A$ \\con $B$ e $C$ fissi} &$\iff$ &{$f^{(2)}(j,k;A)$ è monotona non\\ decrescente in $A \subseteq V \setminus \{j,k\}$}
\end{tblr} \\
$\bullet$& \SetCell[c=2]{l}
\begin{tblr}{colspec={Q[l,m]Q[c,m]Q[c,m]}, column{1} = {leftsep = 0em}}
{$ \mathcal{I}_f(A;B|C) $ è submodulare in $A$ \\con $B$ e $C$ fissi} &$\iff$ &$f^{(3)}(i,j,k;A) \geq 0$
\end{tblr}
\end{tblr}
\end{center}
Di particolare importanza è la submodularità di $ \mathcal{I}_f(A;B) $ e $ \mathcal{I}_f(A;B|C) $ rispetto a $f$.
Segue quindi la dimostrazione della monotonicità di $\mathcal{I}_f(A;B)$ per $B$ fisso, poi l'equivalenza della monotonia di $f^{(2)}$ alla positività di $f^{(3)}$ e infine l'equivalenza fra la submodularità di $\mathcal{I}_f(A;B)$ e la monotonia di $f^{(2)}$.
Si osserva infine che le dimostrazioni valgono anche per $ \mathcal{I}_f(A;B|C) $.
\begin{dimostrazione}[$\mathcal{I}_f(A;B)$ è monotona per $B$ fisso]
Sia $g(A) = \mathcal{I}_f(A;B)$ con $B$ fisso e $f$ submodulare. Si consideri quindi il guadagno dall'aggiungere un elemento $j\notin A\cup B$ ad $A$: $g(j|A) = g(\{j\}\cup A)-g(A) = f(\{j\}\cup A)+f(B)-f(\{j\}\cup A \cup B) -\left(f(A)+f(B)-f(A \cup B)\right) = f(\{j\}\cup A) - f(A) - \left( f(\{j\}\cup A \cup B) -f(A \cup B) \right) = f(j|A)-f(j|A\cup B)$.
Dato che $f$ è submodulare si ha $f(j|A)\ge f(j|A \cup B) \implies g(j|A) \ge 0$.
\end{dimostrazione}
\begin{dimostrazione}[$f^{(2)}$ è monotona non decrescente se e solo se $f^{(3)}$ è sempre positiva]
Dalla definizione di $f^{(3)}(i,j,k;A) = f^{(2)}(j,k;A \cup i) - f^{(2)}(j,k;A)$ segue che $ f^{(3)}(i,j,k;A)\ge 0 \implies f^{(2)}(j,k;A \cup i) \ge f^{(2)}(j,k;A) $.
Per induzione si ha $\forall A,C \subseteq V, f^{(2)}(j,k;A\cup C) \ge f^{(2)}(j,k;A)$.
Cioè $\forall A,B \subseteq V, A \subseteq B, f^{(2)}(j,k;B) \ge f^{(2)}(j,k;A)$.
\end{dimostrazione}
\begin{dimostrazione}[$\mathcal{I}_f(A;B)$ è submodulare se e solo se $f^{(2)}$ è monotona non decrescente]
Sia $g(A) = \mathcal{I}_f(A;B)$ con $B$ fisso. In particolare $g(j|A) = f(j|A) - f(j| A \cup B)$ dalla dimostrazione precedente. Per monotonicità di $f^{(2)}$ si ha $\forall j,k \notin A$:
\begin{center}
\begin{tblr}{colspec={Q[l,m]Q[r,m]X[1,l]},rows = {abovesep=0pt,belowsep=0pt}}
& $ f^{(2)}(j,k;A) $ &$\le f^{(2)}(j,k;A \cup B)$ \\
$\implies$ & $ f(j|A \cup \{k\}) - f(j|A) $ &$\le f(j|A\cup B \cup \{k\}) - f(j|A \cup B)$ \\
$\implies$ & $f(j|A \cup k) - f(j|A\cup B\cup \{k\})$ &$\le f(j|A) - f(j|A \cup B)$ \\
$\implies$ & $g(j|A \cup \{k\})$ &$\le g(j|A)$ \\
\end{tblr}
\end{center}
Per induzione si ha che $g(j|C) \le g(j|A)$ per $\forall C \supseteq A$, cioè $g$ è submodulare.
Per dimostrare l'inverso si assume che $\mathcal{I}_f(A;B)$ sia submodulare in $A$, ma che $f^{(2)}(j,k;A)$ non sia necessariamente monotona.
Cioè $\exists A,C$ con $A \cap C = \emptyset$ tali che $f^{(2)}(j,k;A)\ge f^{(2)}(j,k;A\cup C)$.
Sia $h(A) = \mathcal{I}_f(A;C)$. Seguendo la catena di disuguaglianze precedente si ottiene che $h(j|A\cup \{k\})\ge h(j|A)$, che contraddice la submodularità di $\mathcal{I}_f(A;C)$ per qualsiasi insieme $C$ fisso.
\end{dimostrazione}
Dato che $\mathcal{I}_f(A;B|C) = f(A|C) + f(B|C) - f(A\cup B|C) = g(A)+g(B)-g(A\cup B) = \mathcal{I}_g(A;B)$, allora le dimostrazioni sopra valgono anche per il caso della ``submodular conditional mutual information'', poichè $f^{(3)}(i,j,k;A)\ge0, \forall A \subseteq V \implies f^{(3)}(i,j,k;A\cup C)\ge 0,\forall A \subseteq V \implies g^{(3)}(i,j,k;A) \ge 0$.
La definizione dell'informazione mutua si può estendere anche a più di due insiemi:
\begin{definizione}[``submodular multi-set mutual information'']
\[ \mathcal{I}_f(A_1;A_2;\ldots;A_k) \coloneq - \sum_{T \subseteq \{1,\ldots,k\}}{(-1)}^{\norm{T}}f(\bigcup\limits_{i \in T}A_i) \]
\end{definizione}
Nello stesso modo si può estendere ``submodular conditional mutual information'':
\begin{definizione}[``submodular conditional k-set mutual information'']
\[ \mathcal{I}_f(A_1;A_2;\ldots;A_k|C) \coloneq - \sum_{T\subseteq \{1,\ldots,k\}}{(-1)}^{\norm{T}}f(\bigcup\limits_{i\in T}A_i|C) \]
\end{definizione}
Si osserva che nel caso in cui $k=2$ le definizioni coincidono con quelle prima presentate.
\begin{definizione}[``Submodular total correlation'']
\begin{equation*}
C_f(A_1;A_2; \ldots; A_k) \coloneq \left( \sum_{i=1}^{k}f(A_i) \right) - f(\cup_{i=1}^k A_i)
\end{equation*}
\end{definizione}
\begin{definizione}[``Submodular conditional total correlation'']
\begin{equation*}
C_f(A_1; A_2;\ldots; A_k|C) \coloneq \left( \sum_{i=1}^{k}f(A_i|C) \right) - f(\cup_{i=1}^k A_i | C)
\end{equation*}
\end{definizione}
Si osserva che per $k=2$ le definizioni corrispondono a quelle della ``submodular mutual information'' e ``submodular conditional mutual information'' rispettivamente.
Seguono alcune proprietà di $\mathcal{I}_f(A_1;A_2;\ldots;A_k)$ e di $C_f(A_1;A_2; \ldots; A_k)$:
\begin{center}
\begin{tblr}{Q[l,m]Q[l,m]Q[l,m]}
$\bullet$&\SetCell[c=2]{l} $ \mathcal{I}_g(A_1;A_2; \ldots; A_k) = \lambda_1 \mathcal{I}_{f_1}(A_1;A_2; \ldots; A_k) + \lambda_2 \mathcal{I}_{f_2}(A_1;A_2; \ldots; A_k) $ \\
\SetCell[c=3]{r} se $g(A) = \lambda_1 f_1(A) + \lambda_2 f_2(A)$ \\
$\bullet$&\SetCell[c=2]{l} $ C_g(A_1;A_2; \ldots; A_k) = \lambda_1 C_{f_1}(A_1;A_2; \ldots; A_k) + \lambda_2 C_{f_2}(A_1;A_2; \ldots; A_k) $ \\
\SetCell[c=3]{r} se $g(A) = \lambda_1 f_1(A) + \lambda_2 f_2(A)$ \\
$\bullet$& $ \mathcal{I}_g(A_1;A_2; \ldots; A_k) = c $ &se $g(A) = c, \forall A \neq \emptyset$ e $g(\emptyset) = 0$ \\
$\bullet$& $ C_g(A_1;A_2; \ldots; A_k) = (k-1)\cdot c $ &se $g(A) = c, \forall A \neq \emptyset$ e $g(\emptyset) = 0$ \\
$\bullet$&\SetCell[c=2]{l} $ \mathcal{I}_f(A_1;\ldots;A_k;A_{k+1}) = \mathcal{I}_f(A_1; \ldots; A_k) - \mathcal{I}_f(A_1; \ldots;A_k| A_{k+1}) $ \\
$\bullet$&\SetCell[c=2]{l} $ \mathcal{I}_f(A_1;\ldots;A_k|A_{k+1}) = \mathcal{I}_f(A_1 \cup A_{k+1};\ldots;A_k \cup A_{k+1}) - f(A_{k+1}) $ \\
$\bullet$& $ C_f(A_1;A_2; \ldots; A_k) \le \sum_{i=1}^{k}f(A_i) $ &se $f$ e una funzione polimatroide \\
$\bullet$& \SetCell[c=2]{l} $ \mathcal{I}_f(A_1;A_2; \ldots; A_k) \le \min(f(A_1), \ldots, f(A_k)) $ \\
\SetCell[c=3]{r} se $f$ appratiene alla classe delle funzioni ``facility location'' o ``set cover'' \\
$\bullet$& $ \mathcal{I}_f(A_1; \ldots; A_k;\emptyset) = 0 $ &se $f$ è una funzione normalizzata e \\
\SetCell[c=3]{r} submodulare \\
$\bullet$& $ C_f(A_1; \ldots; A_k;\emptyset) = C_f(A_1; \ldots; A_k) $ &se $f$ è una funzione normalizzata e \\
\SetCell[c=3]{r} submodulare \\
\end{tblr}
\end{center}
Per esprimere la ``distanza'' fra due insiemi $A$ e $B$ si definisce la ``submodular variation of information'':
\begin{definizione}
Dati gli insiemi $A$ e $B$ sia
\begin{align*}
D_f(A;B) \coloneq &f(A\cup B) - \mathcal{I}_f(A;B) \\
= &f(A|B) - f(B|A)
\end{align*}
la ``submodular variation of information''.
\end{definizione}
Si nota che non è una metrica in generale, ma solo una pseudo-metrica.
\begin{definizione}\cite{steenseebach1979}
Data una funzione $d: X \times X \to \mathbb{R}$ è una metrica se:
\begin{align*}
&d(x_1, x_2) \ge 0 \\
&d(x_1,x_2) = 0 \iff x_1 = x_2 \\
&d(x_1, x_2) = d(x_2, x_1) \\
&d(x_1, x_2) \le d(x_1, x_3) + d(x_3, x_2) \\
\intertext{Invece è una pseudo-metrica se:}
&d(x_1, x_2) \ge 0 \\
&d(x_1, x_2) = d(x_2, x_1) \\
&d(x_1, x_2) \le d(x_1, x_3) + d(x_3, x_2) \\
\end{align*}
\end{definizione}
$D_f(A,B)$ è una metrica se $f$ ha curvatura $\kappa_f < 1$. Se $\kappa_f = 0$ allora $D_f(A,B) = \sum_{v \in A \setminus B}f(v) + \sum_{v \in B \setminus A}f(v)$, che è la distanza di Hamming.
\begin{definizione}
Data una funzione $f$ submodulare, la metrica submodulare di Hamming $D_{f}^{\textnormal{SH}}(A,B)$ è definita come:
\begin{equation*}
D_{f}^{\textnormal{SH}}(A,B) = f\left( (A \setminus B) \cup (B \setminus A) \right)
\end{equation*}
\end{definizione}
Più utile è la sua approssimazione additiva chiamata $D_{f}^{\textnormal{SHA}}(A,B)$:
\[ D_{f}^{\textnormal{SHA}}(A,B) = f(A \setminus B) + f(B \setminus A) \]
Si ha quindi la seguente catena di disuguaglianze\cite{submodularcombinatorialinformation2021}:
\begin{center}
\begin{tblr}{X[1,l]X[1,l]X[1,l]X[1,l]X[2,l]}
\SetCell[c=5]{l} $ (1-\kappa_f(A \cup B))\cdot D^{\text{SH}}(A,B) \le $ \\
& \SetCell[c=4]{l} $ \le (1-\kappa_f(A \cup B)) \cdot D^{\text{SHA}}(A,B) \le $ \\
& & \SetCell[c=3]{l} $ \le D_f(A,B) \le $ \\
& & & \SetCell[c=2]{l} $ \le D^{\text{SH}}(A,B) \le $ \\
& & & & \SetCell[c=1]{l} $ \le D^{\text{SHA}}(A,B) $ \\
\end{tblr}
\end{center}
per $f$ monotona submodulare e $A, B$ qualsiasi. $\kappa_f(A)$ è la curvatura della funzione $f$ rispetto a un insieme $A$: $\kappa_f(A) = 1 - \min_{j\in A} \frac{f(j|A \setminus j)}{f(j)} $.
Due variabili aleatorie $X$ e $Y$ sono indipendenti quando l'informazione mutua $ \mathcal{I}(X;Y) = H(X,Y) = -\sum_{x \in X} \sum_{y \in Y}P(x,y) \log_2(P(x,y)) = 0 $, cioè per qualsiasi valore $x$ e $y$ che possono assumere $P(x,y) \log_2(P(x,y))$ risulti sempre uguale a 0.
Tuttavia la definizione per funzioni su insiemi diventa più intricata. Seguono alcune delle definizioni:
\begin{center}
\begin{tblr}{
colspec={Q[c,m]Q[co=1,c,m]Q[c,m]Q[co=2,l,m]},
column{1}= {leftsep = 0em},
hlines = {dash=dashed,fg=black!30}}
$\bullet$& Joint Independence (\textbf{J}) & $A \perp_f^{\text{J}} B $ se& $ \mathcal{I}_f(A;B) = 0 $ \\
$\bullet$& Marginal Independence (\textbf{M}) & $A \perp_f^{\text{M}} B $ se& {$ \forall a \in A, f(\{a\}|B) = f(\{a\}) $ e \\ $ \forall b \in B, f(\{b\}|A) = f(\{b\}) $} \\
$\bullet$& Pairwise Independence (\textbf{P}) & $A \perp_f^{\text{P}} B $ se& {$\forall a \in A, b \in B, f(\{a\}|\{b\}) = f(\{a\}) \land$ \\ $f(\{b\}|\{a\}) = f(\{b\}) $} \\
$\bullet$& Subset Marginal Independence (\textbf{SM}) & $A \perp_f^{\text{SM}} B $ se& {$\forall a \in A, X \subseteq B, f(\{a\}|X) = f(\{a\}) $ e\\ $\forall b \in B, X \subseteq A, f(\{b\}|X) = f(\{b\}) $} \\
$\bullet$& Modular Independence (\textbf{Mod}) & $A \perp_f^{\text{Mod}} B $ se& {$ \forall X \subseteq A \cup B, j \in A \cup B \setminus X, $ \\ $ f(\{j\}|X) = f(\{j\}) $} \\
$\bullet$& Subset Modular Independence (\textbf{SMod}) & $A \perp_f^{\text{SMod}} B $ se& {$\forall X \subseteq A \lor X \subseteq B, j \in A \cup B \setminus X, $ \\ $ f(\{j\}|X) = f(\{j\}) $} \\
\end{tblr}
\end{center}
Quando si riferirà all'indipendenza fra due insiemi si userà ``joint independence'' quando non specificato.
Esiste anche la nozione di indipendenza fra due insiemi $A$ e $B$ dato un insieme $C$: $A \perp^{\text{J}}_f B | C $ se $ \mathcal{I}_f(A;B|C) = 0 $, cioè se $ \mathcal{I}_f(A;B \cup C) = \mathcal{I}_f(A;C) \land \mathcal{I}_f(B;A \cup C) = \mathcal{I}_f(B;C)$. Si possono dare definizioni corrispondenti per \textbf{M}, \textbf{P}, \textbf{SM}, \textbf{Mod} e \textbf{SMod}.
\begin{teorema}
Sia $f$ una funzione prolimatroide, $A \perp_{f}^{\text{J}} B \Rightarrow A \cap B = \emptyset$.
\end{teorema}
\begin{dimostrazione}
$A \perp_{f}^{\text{J}} B $ implica $ \mathcal{I}_f(A;B) = 0 $, cioè $f(A) + f(B) = f(A \cup B)$.
Per submodularità di $f$ si ha che $ f(A) + f(B) \ge f(A \cup B) + f(A \cap B) \implies f(A) + f(B) - f(A \cup B) \ge f(A \cap B) \implies f(A \cap B) \le 0$.
Dato che $f$ è monotona e normalizzata, $f(A \cap B)$ non può essere negativa, quindi $ f(A \cap B) = 0 $.
Dato che $\forall a \in V, f(a) > 0$, allora $A \cap B$ deve essere uguale a $\emptyset$, cioè $A$ e $B$ sono disgiunti.
\end{dimostrazione}
\begin{teorema}
Per qualsiasi $f$ submodulare sono valide le seguenti relazioni:
\begin{center}
\begin{tblr}{colspec={ccccccccc}, rows = {abovesep=0pt,belowsep=0pt}}
\textbf{Mod}& $\Rightarrow$& \textbf{J}& $\Rightarrow$& \textbf{M}& $\Leftrightarrow$& \textbf{SM}& $\Rightarrow$& \textbf{P} \\
e \\
\textbf{Mod}& $\Rightarrow$& \textbf{SMod}& $\Rightarrow$& \textbf{M}&. & & & & \\
\end{tblr}
\end{center}
Esistono $f$ submodulari per cui l'inverso delle implicazioni non sono vere.
\end{teorema}
Si osserva che per $f$ submodulare si ha sempre $A \perp_f \emptyset$ e $A \perp_f C | B$ per $A \subseteq B$ e $C$ qualsiasi.
Se $f$ modulare allora tutte le definizioni di indipendenza sono equivalenti.
Se $f$ è una ``set cover function'' allora \textbf{J} $\Leftrightarrow$ \textbf{M} $\Leftrightarrow$ \textbf{SM} $\Leftrightarrow$ \textbf{P} e \textbf{Mod} $\Leftrightarrow$ \textbf{SMod}.
Se $f$ è la funzione entropia $H$ allora \textbf{Mod} $\Rightarrow$ \textbf{J} $\Rightarrow$ \textbf{M} $\Leftrightarrow$ \textbf{SM} $\Rightarrow$ \textbf{P}.
\subsection{Esempi di funzioni submodulari}\label{esempisubmodulari}
\begin{small}
\vspace{-0.6em}
\hspace{5em}\textit{tratto da }\cite{generalizedsubmodular2022}
\end{small}
\subsubsection{Weighted Set Cover}
Sia $f$ una ``weighted set cover function'', $f(A) = \omega(\bigcup\nolimits_{a\in A} \gamma(a)) = \omega(\gamma(A))$ con $\omega$ un vettore di pesi su $\mathbb{R}^{\gamma(V)}$ e senza perdita di generalità sempre positivo, $\omega(a) > 0, \forall a \in \gamma(V)$ dato che se esiste $b$ tale che $\omega(b) = 0$ si può semplicemente togliere $b$ da $\gamma(V)$.
$\gamma$ associa ogni sottoinsieme ad un altro sottoinsieme dei ``concetti''\cite{generalizedsubmodular2022} in $U = \gamma(V) \subseteq V$, $\omega(\gamma(A))$ è il peso dei ``concetti'' coperti dagli elementi in $A$.
Si osserva che $\gamma(A \cup B) = \gamma(A) \cup \gamma(B)$, da cui segue $f(A \cup B) = \omega(\gamma(A \cup B)) = \omega(\gamma(A) \cup \gamma(B))$.
Si può anche definire il problema in modo equivalente: sia $U$ l'insieme di tutti i ``concetti'', $U = \gamma(V)$, e sia
\begin{equation*}
c_u(i) =
\begin{cases}
1 & \text{se } u \in \gamma(\{i\})\\
0 & \text{altrimenti}
\end{cases}
\end{equation*}
cioè se $u$ è coperto dall'elemento $i$.
In modo analogo sia $c_u(A) = \sum_{a \in A}c_u(a) $ il numero di ``concetti'' nell'insieme $A$.
Si ottiene quindi $f(A) = \sum_{u \in U}\omega_u \min(c_u(A),1)$.
\begin{center}
\begin{tblr}{colspec={X[1,c]|X[1,c]|X[3,c]},
rowspec={Q[m]|Q[m]|Q[m]|Q[m]|Q[m]}
}
funzione & $f(A)$ & $\omega(\gamma(A))$ \\
submodular mutual information & $\mathcal{I}_f(A;B)$ & $\sum\limits_{u \in U} \omega_u \cdot \min(c_u(A),c_u(B),1) $ \\
submodular conditional gain & $f(A|B)$ & $\sum\limits_{u\in U} \omega_u \cdot (1-\min(c_u(B),1)) \cdot \min(c_u(A),1) $ \\
submodular information metric & $D_f(A,B)$ & $\omega(\gamma(A)\setminus \gamma(B)) + \omega(\gamma(B)\setminus \gamma(A))$ \\
submodular multi-set mutual information & $\mathcal{I}_f(A_1;\ldots;A_k) $ & $\sum\limits_{u \in U} \omega_u \cdot \min(c_u(A_1),\ldots,c_u(A_k),1)$ \\
\end{tblr}
\end{center}
Inoltre si ha che $A\perp_{f}B$ se e solo se $\gamma(A)\cap\gamma(B) = \emptyset$, quindi $A\perp_{f}C|B$ se e solo se $\gamma(A)\cap \gamma(C)\subseteq\gamma(B)$.
\subsubsection{Probabilistic Set Cover}
Sia $f$ una ``probabilistic set cover function'',
cioè $f(A) = \sum\nolimits_{i \in U}\omega_i \cdot (1-\prod\nolimits_{a\in A}(1-p_{ia}))$, dove $p_{ia}$ rappresenta la probabilità che l'elemento $a \in A$ ricopra l'elemento $i \in U = \gamma(V)$ e $\omega_i > 0$.
Nel caso $p_{ia} \in \{0,1\}$ si considera l'equivalente problema non probabilistico; per altri valori di $p$ si ha invece una generalizzazione del problema precedente.
Sia $P_i(A) = \prod_{a \in A}(1-p_{ia})$, cioè la probabilità che nessuno degli elementi di $A$ copra l'elemento $i$.
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[1,c]|X[3,c]},
rowspec={Q[m]|Q[m]|Q[m]|Q[m]|Q[m]}
}
funzione & $f(A)$ & $ \sum\limits_{i \in U}(1-P_i(A)) $ \\
submodular mutual information & $\mathcal{I}_f(A;B)$ & $ \sum\limits_{i \in U}\omega_i \cdot (1-(P_i(A) + P_i(B) - P_i(A \cup B))) $ \\
submodular conditional gain & $f(A|B)$ & $ \sum\limits_{i \in U} \omega_i \cdot P_i(B) \cdot (1-P_i(A \setminus B)) $ \\
submodular information metric & $D_f(A,B)$ & $ \sum\limits_{i \in U} \omega_i \cdot (P_i(B)\cdot(1-P_i(A \setminus B)) + P_i(A)(1-P_i(B \setminus A))) $ \\
submodular multi-set mutual information & $\mathcal{I}_f(A_1;\ldots;A_k) $ & $ \sum\limits_{i \in U} \omega \cdot \prod\limits_{j=1}^k(1-P_i(A_j)) $ \\
\end{tblr}
\end{center}
Sia ha che $A \perp_f B$ se e solo se $ \forall i \in U = \gamma(V), P_i(A) = 1 \vee P_i(B) = 1 $, cioè ogni elemento $i \in U$ non è coperto da $A$ né da $B$. In modo simile $ A \perp_f B|C $ se e solo se $P_i(A)=1 \vee P_i(B)=1$ quando $P_i(C) > 0$.
% Per definizione si può anche semplificare $D_f(A;B) = f(A|B)+f(B|A)$.
Si può osservare che $\mathcal{I}_f(A;B)$ è submodulare per $A$ con $B$ fisso. $\mathcal{I}_f(A;B)$ è quindi espresso equivalentemente come un'istanza di una ``probabilistic set cover function'' con i pesi per ogni elemento $i \in U$ uguali a $\omega_i(1-P_i(B))$ invece che $\omega_i$.
\subsubsection{Facility Location}
Sia $f(A) = \sum\nolimits_{i\in V}\max_{a\in A}s_{ia}$, dove $s$ è la matrice di similitudine fra gli elementi in $V$. In particolare $s$ per punti identici vale $1$, altrimenti ha valori inferiori a $1$.
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[1,c]|X[3,c]},
rowspec={Q[m]|Q[m]|Q[m]|Q[m]|Q[m]}
}
funzione & $f(A)$ & $ \sum\limits_{i \in V}\max\limits_{a \in A}s_{ia} $ \\
submodular mutual information & $\mathcal{I}_f(A;B)$ & $ \sum\limits_{i\in V}\min(\max\limits_{a\in A}s_{ia}, \max\limits_{b \in B}s_{ib}) $ \\
submodular conditional gain & $f(A|B)$ & $ \sum\limits_{i\in V}\max(0,\max\limits_{a\in A}s_{ia} - \max\limits_{b\in B} s_{ib}) $ \\
submodular information metric & $D_f(A,B)$ & $ \sum\limits_{i\in V}\lvert \max\limits_{a\in A}s_{ia} - \max\limits_{b\in B} s_{ib} \rvert $ \\
submodular multi-set mutual information & $\mathcal{I}_f(A_1;\ldots;A_k) $ & $ \sum\limits_{i\in V} \min(\max\limits_{a_1 \in A_1}s_{ia_1},\ldots,\max\limits_{a_k \in A_k}s_{ia_k}) $ \\
\end{tblr}
\end{center}
Inoltre $A \perp_f B$ se $\forall i \in V, (\forall j \in A, s_{ij}=0) \lor (\forall j \in B, s_{i,j}=0)$.
Si ha quindi $A \perp_f C|B$ se $ \forall i \in V, (\max_{j\in B}s_{ij}\ge \max_{j\in A}s_{ij}) \lor (\max_{j\in B}s_{ij}\ge \max_{j\in C}s_{ij}) $.
%% TODO espandere la descrizione delle formule
\subsubsection{Generalized Graph Cut}
Sia $f(A) = \lambda (\sum_{i\in V} \sum_{a\in A} s_{ia}) - \sum_{a_1,a_2 \in A} s_{a_1,a_2}$, con $s$ una matrice di similitudine, la funzione che generalizza il taglio di un grafo. Per garantire che $f$ sia una funzione monotona submodulare si richiede $\lambda \ge 2$.
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[1,c]|X[3,c]},
rowspec={Q[m]|Q[m]|Q[m]Q[m]}
}
funzione & $f(A)$ & $ \lambda (\sum\limits_{i\in V} \sum\limits_{a\in A} s_{ia}) - \sum\limits_{a_1,a_2 \in A} s_{a_1,a_2} $ \\
submodular mutual information & $\mathcal{I}_f(A;B)$ & $ f(A \cap B) + 2\sum\limits_{a \in A, b \in B}s_{ab}-2\sum\limits_{c\in A \cup B, d \in A \cap B}s_{cd} $ \\
submodular conditional gain & $f(A|B)$ & $ f(A \setminus B) - 2 \sum\limits_{a' \in A \setminus B} \sum\limits_{b\in B}s_{a'b} $ \\
\end{tblr}
\end{center}
In particolare se $A \cap B=\emptyset$ allora $ \mathcal{I}_f(A;B) = 2\sum\limits_{a \in A}\sum\limits_{b \in B}s_{ab} $, cioè la somiglianza fra gli insiemi $A$ e $B$. Inoltre $f(A|B) = f(A) - 2 \sum\limits_{a \in A}\sum\limits_{b \in B}s_{ab}$.
Si nota inoltre che $A \perp_f B$ se e solo se $ \mathcal{I}_f(A;B)=0 $ se e solo se $ s_{ab}=0, \forall a \in A, b \in B $.
Se si pone $B = V \setminus A$ si ottiene proprio la ``graph cut function'': $ \mathcal{I}_f(A;V \setminus A) = 2\sum\limits_{a\in A}\sum\limits_{b \in V \setminus A}s_{ab} $.
\subsubsection{Saturated Cover}
Sia $f(A) = \sum_{i\in V}\min(\alpha_i,\sum_{a\in A}s(i,a))$, con $s$ un kernel di similitudine come nel problema del ``facility location'' e $V = \{1,\ldots,n\}$.
Sia $m_i(A) = \sum_{a\in A} s(i,a)$, cioè un ``punteggio'' di $A$ per l'elemento $i$.
Per modularità si ha che $m_i(A\cup B) = m_i(A) + m_i(B) - m_i(A\cap B)$.
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[1,c]|X[3,c]},
rowspec={Q[m]|Q[m]|Q[m]}
}
funzione & $f(A)$ & $ \sum\limits_{i\in V}\min(\alpha_i,m_i(A)) $ \\
submodular mutual information & $\mathcal{I}_f(A;B)$ & $ \sum\limits_{i\in V}(\min(\alpha_i,m_i(A)) + \min(\alpha_i,m_i(B)) - \min(\alpha_i,m_i(A \cup B))) $ \\
submodular conditional gain & $f(A|B)$ & $ \sum\limits_{i \in V}\min(\alpha_i,m_i(A \cup B)) - \min(\alpha_i,m_i(B)) $ \\
\end{tblr}
\end{center}
Si può semplificare l'espressione di $\mathcal{I}_f(A;B)$ differenziando i casi rispetto a $i$ nella sommatoria:
\begin{tblr}{width=\linewidth,
colspec={Q[c,l]Q[c,l]Q[c,l]}}
$\bullet$& se $m_i(A) \ge \alpha_i, m_i(B) \le \alpha_i$ & allora si ottiene \ $m_i(B)$ \\
$\bullet$& se $m_i(A) \le \alpha_i, m_i(B) \ge \alpha_i$ & allora si ottiene \ $m_i(A)$ \\
$\bullet$& se $m_i(A) \ge \alpha_i, m_i(B) \ge \alpha_i$ & allora si ottiene \ $\alpha_i$ \\
$\bullet$& se $m_i(A \cup B) \le \alpha_i$ & allora si ottiene \ $m_i(A \cap B)$ \\
$\bullet$& \SetCell[c=1]{l,m} {se $m_i(A) \le \alpha_i, m_i(B) \le \alpha_i$, \\ $ m_i(A \cup B) \ge \alpha_i$} & allora si ottiene \ $m_i(A) + m_i(B) - \alpha_i$ \\
\end{tblr}
Si ottiene quindi: $\mathcal{I}_f(A;B) = \sum_{i \in V}\min(\alpha_i,m_i(A),m_i(B),m_i(A)+m_i(B)-\alpha_i)-\min(0,m_i(A \cup B)-\alpha_i)$.
%% \subsubsection{Log-Determinant} forse %%

1
figures/marchio.eps Executable file

File diff suppressed because one or more lines are too long

BIN
figures/politopi.pdf Normal file

Binary file not shown.

58
figures/politopi.pdf_tex Normal file
View File

@ -0,0 +1,58 @@
%% Creator: Inkscape 1.2.1 (9c6d41e4, 2022-07-14), www.inkscape.org
%% PDF/EPS/PS + LaTeX output extension by Johan Engelen, 2010
%% Accompanies image file 'politopi.pdf' (pdf, eps, ps)
%%
%% To include the image in your LaTeX document, write
%% \input{<filename>.pdf_tex}
%% instead of
%% \includegraphics{<filename>.pdf}
%% To scale the image, write
%% \def\svgwidth{<desired width>}
%% \input{<filename>.pdf_tex}
%% instead of
%% \includegraphics[width=<desired width>]{<filename>.pdf}
%%
%% Images with a different path to the parent latex file can
%% be accessed with the `import' package (which may need to be
%% installed) using
%% \usepackage{import}
%% in the preamble, and then including the image with
%% \import{<path to file>}{<filename>.pdf_tex}
%% Alternatively, one can specify
%% \graphicspath{{<path to file>/}}
%%
%% For more information, please see info/svg-inkscape on CTAN:
%% http://tug.ctan.org/tex-archive/info/svg-inkscape
%%
\begingroup%
\makeatletter%
\providecommand\color[2][]{%
\errmessage{(Inkscape) Color is used for the text in Inkscape, but the package 'color.sty' is not loaded}%
\renewcommand\color[2][]{}%
}%
\providecommand\transparent[1]{%
\errmessage{(Inkscape) Transparency is used (non-zero) for the text in Inkscape, but the package 'transparent.sty' is not loaded}%
\renewcommand\transparent[1]{}%
}%
\providecommand\rotatebox[2]{#2}%
\newcommand*\fsize{\dimexpr\f@size pt\relax}%
\newcommand*\lineheight[1]{\fontsize{\fsize}{#1\fsize}\selectfont}%
\ifx\svgwidth\undefined%
\setlength{\unitlength}{231.29480869bp}%
\ifx\svgscale\undefined%
\relax%
\else%
\setlength{\unitlength}{\unitlength * \real{\svgscale}}%
\fi%
\else%
\setlength{\unitlength}{\svgwidth}%
\fi%
\global\let\svgwidth\undefined%
\global\let\svgscale\undefined%
\makeatother%
\begin{picture}(1,0.43391289)%
\lineheight{1}%
\setlength\tabcolsep{0pt}%
\put(0,0){\includegraphics[width=\unitlength,page=1]{politopi.pdf}}%
\end{picture}%
\endgroup%

15
introduzione.ltx Normal file
View File

@ -0,0 +1,15 @@
\section{Introduzione}
Entropia e mutua infomazione hanno trovato numerose applicazioni in machine learning. Si studia quindi una generalizzazione: le funzioni submodulari. Questa classe di funzioni è speciale dato che la minimizzazione è nota essere risolubile in tempo polinomiale\cite{datastructuresandalg2012}, mentre la massimizzazione, per quanto NP-completa, ammette approssimazione a meno di un fattore costante. Lo studio è incentivato dal fatto che molti problemi pratici si esprimono in termini di funzioni submodulari; ad esempio min-cut è un esempio di minimizzazione di una funzione submodulare. Esempi di massimizzazione di funzione submodulare sono il ``set-covering problem''\cite{setcovering1970}, ``uncapacitated competitive facility location problem''\cite{benati2003}, ``quadratic cost partition problem''\cite{goldengoringhosh2005}, ``generalized transpotation problem''\cite{maximizingsubmodularsetfunctions1981}.
Nel capitolo\ \ref{matroidi} saranno quindi illustrate le basi della teoria dei matroidi.
Lo studio dei matroidi parte da Hassler Whitney che nel 1935\cite{whitney1935} pone le basi per lo studio dell'argomento. Applicazioni della materia coprono numerosi campi, studio di grafi\cite{tutte1971}\cite{iri1979}, network flow\cite{lawler2004}, network analysis e network synthesis\cite{Recski2011}, descrizione di sistemi dinamici\cite{murota2010} e come approccio a una possibile soluzione al problema dei 4 colori\cite{tutte196615}\cite{ams1996matroid}.
Nel capitolo\ \ref{politopiepoliedri} si daranno le definizioni di poliedri e politopi.
Nei capitoli\ \ref{polimatroidi} e\ \ref{funzionipolimatroidi} si definirà prima i polimatroidi seguito dalle funzioni submodulari e loro proprietà.
Lo studio dei polimatroidi, come i matroidi generalizzano l'organizzazione di iperpiani, tratta dell'organizzazione di sottospazi e ha numerose applicazioni in programmazione lineare\cite{edmonds2001}\cite{schrijver2003} e teoria dei codici\cite{rankmetricqpoly2019}.
Nel capitolo\ \ref{esempisubmodulari} vedremo alcuni esempi di funzioni submodulari: ``weighted set cover'', ``probabilistic set cover'', ``facility location'', ``generalized graph cut'' e ``saturated cover'' e alcune delle loro proprietà.
Infine nella sezione\ \ref{applicazioneprob} vedremo quindi alcune applicazioni delle funzioni submodulari precedentemente illustrate in problemi come ``sensor placement'', ``query based, privacy preserving summarization'' e ``clustering'' attraverso informazione mutua.

34
presentazione/Makefile Normal file
View File

@ -0,0 +1,34 @@
NAME = main
OUTDIR = ../output
.DEFAULT_GOAL := all
.PHONY : all compile clean cleanall
# -PHONY------------------------------------------------------------------------
all: compile
@rm -f $(NAME).{aux,log,out,toc}
@mkdir -p $(OUTDIR)
@cp $(NAME).pdf $(OUTDIR)/$(NAME).pdf
compile:
@echo "Compiling Presentation"
@echo "Step 1/2 - pdflatex"
@pdflatex -halt-on-error --synctex=1 -interaction=nonstopmode -draftmode $(NAME).ltx > $(NAME).tmp.log
@grep '^!.*' --color=always $(NAME).tmp.log || rm -f $(NAME).tmp.log
@echo "Step 2/2 - pdflatex"
@pdflatex -halt-on-error --synctex=1 -interaction=nonstopmode $(NAME).ltx > $(NAME).tmp.log
@grep '^!.*' --color=always $(NAME).tmp.log || rm -f $(NAME).tmp.log
@echo "Compiled Presentation"
clean:
@rm -f $(NAME).{aux,log,out,toc,synctex\(busy\),synctex.gz,bbl,bcf,blg,run.xml,dvi,fls,fdb_latexmk,nav,snm}
cleanall: clean
@rm -f $(NAME).pdf
print-%: ; @echo $* = $($*)

File diff suppressed because one or more lines are too long

817
presentazione/main.ltx Normal file
View File

@ -0,0 +1,817 @@
\documentclass[11pt]{beamer}
%\documentclass[11pt, draft]{beamer}
\usetheme{Antibes} % or Malmoe -> more somber
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Load Packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\usepackage[utf8]{inputenc} %% use UTF-8, maybe not needed since 2018
\usepackage[english,main=italian]{babel} %% language
\usepackage{import} %% specify path for import
%% math packages
\usepackage{graphicx} %% for pictures
\usepackage{float}
\usepackage{amssymb} %% math symbols
\usepackage{amsmath} %% math matrix etc
\usepackage{listings} %% code block
\usepackage{tabularray} %% better tables
\usepackage{booktabs} %% rules for tables
\usepackage{mathrsfs}
\usepackage{mathtools}
\usepackage{algorithm} %% for algorithms
\usepackage{algpseudocode} %% loads algorithmicx
\usepackage{amsthm}
\usepackage{thmtools} %% theorems
\usepackage{nicematrix} %% better matrixes
%% plot packages
\usepackage{pgfplots} %% plots used with \begin{tikzpicture}
\usepackage{tikz} %% for pictures
\usetikzlibrary{trees, fit}
\pgfplotsset{width=10cm,compat=newest}
%% design packages
\usepackage{enumitem} %% for lists and enumerating
\usepackage{color}
\usepackage{xcolor,colortbl} % xcolor for defining colors, colortbl for table colors
\usepackage{makecell} %% for multiple lines in cell of table
\usepackage{cancel}
\usepackage{pgfornament} %% ornaments
%% load last
% \usepackage[hidelinks]{hyperref} %% links for table of contents, load last
% \usepackage{bookmark} %% for better table of contents
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Configuration of the packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% use bar instead of arrow for vectors
\renewcommand{\vec}[1]{\bar{#1}}
%% easy norm
\newcommand{\norm}[1]{\left\lvert#1\right\rvert}
%% items in itemize emph+box
%% usage: \ieb{Class:} for simple item
%% \ieb[4cm]{Class:} for specific size of box
\newcommand{\ieb}[2][2cm]{
\makebox[#1][l]{\emph{#2}}
} %% TODO: replace with description environment (? maybe)
% less vertical space around align & align*
\newcommand{\zerodisplayskips}{
\setlength{\abovedisplayskip}{0pt}
\setlength{\belowdisplayskip}{0pt}
\setlength{\abovedisplayshortskip}{0pt}
\setlength{\belowdisplayshortskip}{0pt}
}
% make dotfill use all the space available
\renewcommand{\dotfill}{
\leavevmode\cleaders\hbox to 1.00em{\hss .\hss }\hfill\kern0pt } % chktex 1 chktex 26
% section not in table of contents
\newcommand{\hiddensection}[1]{
\stepcounter{section}
\section*{{#1}}
}
\newcommand{\hiddensubsection}[1]{
\stepcounter{subsection}
\subsection*{{#1}}
}
\setlength{\fboxsep}{-\fboxrule} % for debugging
%% PACKAGE tabularray
\UseTblrLibrary{amsmath}
%% PACKAGE color
\definecolor{red}{rgb}{1, 0.1, 0.1}
\definecolor{lightgreen}{rgb}{0.55, 0.87, 0.47}
\definecolor{gray}{rgb}{0.3, 0.3, 0.3}
\newcommand{\lgt}{\cellcolor{lightgreen}} %% light green in tables
\newcommand{\gry}{\textcolor{gray}} %% gray text
%% PACKAGE minipage
\newcommand{\thend}[1]{\begin{center}
\begin{minipage}[c][1em][c]{#1}
\dotfill{}
\end{minipage}
\end{center}}
%% PACKAGE thmtools
\declaretheoremstyle[
headfont=\normalfont\bfseries,
notefont=\mdseries,
bodyfont=\normalfont,
]{steo}
\declaretheorem[numbered=no, style=steo]{teorema}
% \declaretheorem[thmbox=S]{teorema}
\declaretheoremstyle[
headfont=\normalfont\bfseries,
notefont=\mdseries,
bodyfont=\normalfont,
]{sdef}
\declaretheorem[numbered=no, style=sdef]{definizione}
\declaretheoremstyle[
spaceabove=-6pt,
spacebelow=6pt,
headfont=\normalfont\bfseries,
bodyfont=\normalfont,
postheadspace=1em,
headpunct={:}
]{sprf}
\declaretheorem[name={Dimostrazione}, style=sprf, numbered=no]{dimostrazione}
%% PACKAGE
\lstset{
language=C,
showspaces=false,
basicstyle=\small\ttfamily,
numbers=left,
numberstyle=\tiny,
breaklines=true,
postbreak=\mbox{\textcolor{red}{$\hookrightarrow$}\space},
backgroundcolor = \color{lightgray},
}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\title[Tesi]{ENTROPIA E MISURE SUBMODULARI DELL'INFORMAZIONE}
\author{Elvis Rossi}
\institute[DIPARTIMENTO DI INFORMATICA]{Dipartimento di Informatica \\
\medskip
Corso di Laurea Triennale in Informatica}
\date{\today\ \\ TESI DI LAUREA}
\logo{\includegraphics[keepaspectratio=true,scale=0.1]{figures/cherubino.eps}}
% \subtitle{} TODO maybe add subtitle?
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\begin{document}
\begin{frame}
\titlepage % chktex 1
\end{frame}
\section*{Indice}
\begin{frame}[allowframebreaks]
\frametitle{Indice}
\tableofcontents
\end{frame}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
% \section{Introduzione}
% %% - - - - - - - - - - - - - - - - - %%
% \subsection{Matroidi}
% \begin{frame}
% \begin{definizione}
% Un \textsc{matroide} $M = (E, \mathscr{I})$ è formato \\
% da un insieme finito di elementi $E$ e da da un sottoinsieme $\mathscr{I}$ dell'insieme delle parti $\mathcal{P}(E)$ tale che:
% \begin{itemize}
% \item[$-$] $\emptyset \in \mathscr{I}$
% \item[$-$] per ogni sottoinsieme $A$ contenuto in $ I \in \mathscr{I} \Rightarrow A \in \mathscr{I}$
% \item[$-$] se $I_p$ con $p$ elementi e $I_{p+1}$ con $p+1$ elementi, sottoinsiemi di $\mathscr{I}$, allora esiste un elemento $i$ di $I_{p+1} \setminus I_p$ tale che $I_p \cup \{i\} \in \mathscr{I}$
% \end{itemize}
% \end{definizione}
% \end{frame}
% \begin{frame}
% Quindi se consideriamo una matrice come un insieme astratto di colonne si ottiene un matroide\\
% \begin{equation*}
% M =
% \begin{bNiceMatrix}[right-margin,cell-space-limits=3pt]
% a_{11} & a_{12} & \cdots & a_{1n}\\
% \vdots & \ddots & & \vdots\\
% a_{m1} & a_{m2} & \cdots & a_{mn}
% \CodeAfter
% \tikz \node [draw=red, rounded corners = 2pt, inner sep=0.5pt ,fit=(1-1)(3-1)] {} ;
% \tikz \node [draw=red, rounded corners = 2pt, inner sep=0.5pt ,fit=(1-2)(3-2)] {} ;
% \tikz \node [draw=red, rounded corners = 2pt, inner sep=0.5pt ,fit=(1-4)(3-4)] {} ;
% \end{bNiceMatrix}
% \end{equation*}
% Tuttavia non tutti i matroidi possono essere espressi come matrici\\
% L'indipendenza è quindi relativa all'appartenenza all'insieme $\mathscr{I}$, non a una relazione fra gli elementi
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Politopi e Poliedri}
% \begin{frame}
% \begin{definizione}[inviluppo convesso]
% {\fontsize{10}{12}\[ \text{conv}(K) = \{\lambda_1 \textbf{x}_1 + \ldots + \lambda_k \textbf{x}_k : \{\textbf{x}_1,\ldots,\textbf{x}_k \}\subseteq K, \lambda_i\geq0, \sum_{i=1}^k \lambda_i = 1 \} \]} % chktex 11
% \end{definizione}
% \begin{definizione}[cono]
% \[ \text{cono}(Y) = \{ \lambda_1 \textbf{y}_1 + \ldots + \lambda_k \textbf{y}_k : \{\textbf{y}_1,\ldots,\textbf{y}_k\}\subseteq Y, \lambda_i \ge 0\} \] % chktex 11
% \end{definizione}
% \end{frame}
% \begin{frame} %%% TODO immagini V-politopo e V-poliedro
% \begin{definizione}
% Un $\mathcal{V}$-\textsc{politopo} è l'inviluppo convesso di un insieme finito di punti in $\mathbb{R}^d$
% \end{definizione}
% \begin{definizione}
% Un $\mathcal{V}$-\textsc{poliedro} è la somma di Minkowski di una convoluzione di punti e un cono
% \end{definizione}
% \end{frame}
% \begin{frame} %%% TODO immagini H-politopo e H-poliedro
% \begin{definizione}
% Un $\mathcal{H}$-\textsc{politopo} è un $\mathcal{H}$-\textsc{poliedro} ``finito'', cioè che non contiene semirette.
% \end{definizione}
% \begin{definizione}
% Un $\mathcal{H}$-\textsc{poliedro} è l'intersezione di un numero finito di semispazi chiusi in $\mathbb{R}^d$\\
% cioè data una matrice $A$ di dimensione $m \times d$ e un vettore $\textbf{z}$ di $\mathbb{R}^m$\\
% $P(A,\textbf{z}) = \{ \textbf{x}\in\mathbb{R}^d : A \textbf{x} \le \textbf{z} \}$
% \end{definizione}
% \end{frame}
% \begin{frame}
% Le definizioni di $\mathcal{V}$-\textsc{politopo} e di $\mathcal{H}$-\textsc{politopo} sono equivalenti.
% Le definizioni di $\mathcal{V}$-\textsc{poliedro} e di $\mathcal{H}$-\textsc{poliedro} sono equivalenti.
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\section{Funzioni submodulari e Proprietà}
\begin{frame} %% TODO drawing?
\begin{definizione}[Submodularità]
Data $f: \mathcal{P}(S) \to \mathbb{R}$, è submodulare se:
\begin{equation*}
f(T) + f(U) \ge f(T \cap U) + f(T \cup U)\quad \text{ per ogni } T,U \subset S
\end{equation*}
\end{definizione}
\begin{definizione}
$f$ è supermodulare se $-f$ è submodulare
\end{definizione}
\begin{definizione}
$f$ è modulare se è sia submodulare che supermodulare
\end{definizione}
Se $f$ è modulare allora $f(U) = \omega(U)+ \gamma$ con $\gamma$ costante e $\omega: S \to \mathbb{R}$ \\
\begin{flushright}
$\omega(U) = \sum_{s \in U}\omega(s)$\hspace*{1em}
\end{flushright}
\end{frame}
% \begin{frame}
% \begin{definizione}
% $f$ è chiamata non decresecente se $f(T) \le f(U)$ per qualsiasi $T \subseteq U \subseteq S$
% \end{definizione}
% \begin{definizione}
% $f$ è chiamata non crescente se $f(T) \ge f(U)$ per qualsiasi $T \subseteq U \subseteq S$
% \end{definizione}
% \begin{definizione}
% $f$ è chiamata normalizzata se $f(\emptyset) = 0$
% \end{definizione}
% \end{frame}
% \begin{frame}
% Si possono definire due poliedri associati a una funzione $f$ submodulare
% \begin{definizione}[Polimatroide associato a $f$]
% \begin{equation*}
% P_f = \{x \in \mathbb{R}^S: x \ge \textbf{0}, x(U) \le f(U), \forall U \subseteq S \}
% \end{equation*}
% \end{definizione}
% \begin{definizione}[Polimatroide esteso associato a $f$]
% \begin{equation*}
% EP_f = \{x \in \mathbb{R}^S: x(U) \le f(U), \forall U \subseteq S \}
% \end{equation*}
% \end{definizione}
% \end{frame}
\begin{frame}
\begin{definizione}[Derivata prima e Conditional Gain]
\begin{equation*}
f^{(1)}(j;V) = f(j|V) = f(\{j\} \cup V) - f(V)
\end{equation*}
\begin{equation*}
f(A|B) = f(A \cup B) - f(B)
\end{equation*}
\end{definizione}
\begin{definizione}[Derivata seconda]
\begin{equation*}
f^{(2)}(j,k;V) = f(j|V \cup \{k\}) - f(j|V)
\end{equation*}
\end{definizione}
\begin{definizione}[Derivata terza]
\begin{equation*}
f^{(3)}(i,j,k;V) = f^{(2)}(j,k;V\cup \{i\}) - f^{(2)}(j,k;V)
\end{equation*}
\end{definizione}
\end{frame}
\begin{frame}
\begin{definizione}[Submodularità]
$f$ è submodulare se $f(j|T) \ge f(j|V)\quad\quad \forall T \subseteq V, j \notin V$
\end{definizione}
\begin{definizione}[Submodularità]
$f$ è submodulare se $f^{(2)}(j,k;T)\le 0\quad\quad \forall j,k \notin T $
\end{definizione}
\end{frame}
\begin{frame}
\begin{definizione}
$f$ è una funzione polimatroide se è monotona, non negativa e submodulare.
\end{definizione}
Quindi possono essere viste come funzioni d'informazione $\mathcal{I}_f(A) = f(A)$ dato che soddisfano tutte le disuguaglianze di Shannon:
\begin{itemize}
\item[$-$] $f(A)$ è normalizzata, cioè $f(\emptyset) = 0$
\item[$-$] $f(A)$ è monotona non decrescente, cioè per $A \subseteq B \subseteq S$ allora $f(B) \ge f(A)$
\item[$-$] $f(A)$ è submodulare, cioè $f(A) + f(B) \geq f(A \cup B) + f(A \cap B), \forall A, B \subset V$
\end{itemize}
In particolare la classe delle funzioni polimatroidi è strettamente più generale della classe delle funzioni entropiche.
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{$\mathcal{I}_f(A;B)$ e $\mathcal{I}_f(A;B|C)$}
\begin{frame}
\begin{definizione}[Informazione Mutua]
Data una funzione $f: \mathcal{P}(V) \to \mathbb{R}$, sia $\mathcal{I}_f(A;B) = f(A) - f(A|B)$
\end{definizione}
Come per l'informazione mutua dell'entropia $\mathcal{I}_f(A;B) = \mathcal{I}_f(B;A)$\\
Inoltre l'informazione mutua fra lo stesso elemento è proprio l'informazione dell'elemento: $\mathcal{I}_f(A;A) = f(A)$
\begin{definizione}[Conditional Mutual Information]
Data una funzione $f: \mathcal{P}(V) \to \mathbb{R}$, sia $\mathcal{I}_f(A;B|C) = f(A|C) + f(B|C) - f(A \cup B|C)$
\end{definizione}
\end{frame}
\begin{frame}
\begin{teorema}
Se $B$ costante, $\mathcal{I}_f(A;B)$ è submodulare in $A$
\begin{center}
se e solo se
\end{center}
$f^{(2)}(j,k;A)$ è monotona non decrescente in $A \subseteq V \setminus \{j,k\}$
\end{teorema}
\begin{teorema}
Se $B$ costante, $\mathcal{I}_f(A;B)$ è submodulare in $A$
\begin{center}
se e solo se
\end{center}
$f^{(3)}(i,j,k;A) \ge 0$
\end{teorema}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{$\perp_f$}
% \begin{frame}
% Date tutte le definizioni precedenti si può adesso definire quando due insiemi sono indipendenti rispetto alla funzione di informazione submodulare\\
% Tuttavia il modo di definire questa indipendenza non è unico per le funzioni submodulari\\
% \begin{definizione}[Joint Independence]
% $A\perp_f^{\text{J}}B$ se $\mathcal{I}_f(A;B) = 0$
% \end{definizione}
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\section{Esempi di funzioni submodulari}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Weighted Set Cover}
\begin{frame} %% TODO disegno?
\begin{definizione}[Weighted Set Cover Function]
$f(A) = \omega(\bigcup\nolimits_{a\in A} \gamma(a)) = \omega(\gamma(A))$ con $\omega$ un vettore di pesi su $\mathbb{R}^{\gamma(V)}$
\end{definizione}
Si osserva che $\gamma(A \cup B) = \gamma(A) \cup \gamma(B)$, da cui segue $f(A \cup B) = \omega(\gamma(A \cup B)) = \omega(\gamma(A) \cup \gamma(B))$.
\begin{center}
\begin{tblr}{colspec={X[1,c]|X[4,c]},
rowspec={Q[m]|Q[m]}
}
$\mathcal{I}_f(A;B)$ & $\sum\limits_{u \in U} \omega_u \cdot \min(c_u(A),c_u(B),1) $ \\
$f(A|B)$ & $\sum\limits_{u\in U} \omega_u \cdot (1-\min(c_u(B),1)) \cdot \min(c_u(A),1) $ \\
\end{tblr}
\end{center}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Probabilistic Set Cover}
\begin{frame} %% TODO disegno
\begin{definizione}[Probabilistic Set Cover Function]
$f(A) = \sum\nolimits_{i \in U}\omega_i \cdot (1-\prod\nolimits_{a\in A}(1-p_{ia}))$, dove $p_{ia}$ rappresenta la probabilità che l'elemento $a \in A$ ricopra l'elemento $i \in U = \gamma(V)$ e $\omega_i > 0$.
\end{definizione}
Dato $P_i(A) = \prod_{a \in A}(1-p_{ia})$
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[4,c]},
rowspec={Q[m]|Q[m]}
}
$\mathcal{I}_f(A;B)$ & $ \sum\limits_{i \in U}\omega_i \cdot (1-(P_i(A) + P_i(B) - P_i(A \cup B))) $ \\
$f(A|B)$ & $ \sum\limits_{i \in U} \omega_i \cdot P_i(B) \cdot (1-P_i(A \setminus B)) $ \\
\end{tblr}
\end{center}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Facility Location}
\begin{frame}
\begin{definizione}[Facility Location Function]
$f(A) = \sum\nolimits_{i\in V}\max_{a\in A}s_{ia}$, dove $s$ è la matrice di similitudine fra gli elementi in $V$
\end{definizione}
$s_{ii} = 1$, altrimenti ha valori inferiori a 1
\begin{center}
\begin{tblr}{width=\linewidth,
colspec={X[1,c]|X[4,c]},
rowspec={Q[m]|Q[m]}
}
$\mathcal{I}_f(A;B)$ & $ \sum\limits_{i\in V}\min(\max\limits_{a\in A}s_{ia}, \max\limits_{b \in B}s_{ib}) $ \\
$f(A|B)$ & $ \sum\limits_{i\in V}\max(0,\max\limits_{a\in A}s_{ia} - \max\limits_{b\in B} s_{ib}) $ \\
\end{tblr}
\end{center}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Generalized Graph Cut}
% \begin{frame}
% \begin{definizione}[Generalized Graph Cut Function]
% $f(A) = \lambda\cdot(\sum_{i\in V} \sum_{a\in A} s_{ia}) - \sum_{a_1,a_2 \in A} s_{a_1,a_2}$, con $s$ una matrice di similitudine
% \end{definizione}
% In modo che $f$ sia una funzione monotona submodulare si richiede che $\lambda \ge 2$
% \begin{center}
% \begin{tblr}{width=\linewidth,
% colspec={X[1,c]|X[4,c]},
% rowspec={Q[m]|Q[m]}
% }
% $\mathcal{I}_f(A;B)$ & $ f(A \cap B) + 2\sum\limits_{a \in A, b \in B}s_{ab}-2\sum\limits_{c\in A \cup B, d \in A \cap B}s_{cd} $ \\
% $f(A|B)$ & $ f(A \setminus B) - 2 \sum\limits_{a' \in A \setminus B} \sum\limits_{b\in B}s_{a'b} $ \\
% \end{tblr}
% \end{center}
% Se si pone $B = V \setminus A$ allora si ottiene proprio una graph cut function: $ \mathcal{I}_f(A;V \setminus A) = 2\sum\limits_{a\in A}\sum\limits_{b \in V \setminus A}s_{ab} $
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Saturated Cover}
% \begin{frame}
% \begin{definizione}[Saturated Cover Function]
% $f(A) = \sum_{i\in V}\min(\alpha_i,\sum_{a\in A}s(i,a))$, con $s$ un kernel di similitudine come nel problema del ``facility location'' e $V = \{1,\ldots,n\}$
% \end{definizione}
% Sia $m_i(A) = \sum_{a\in A} s(i,a)$, cioè un ``punteggio'' di $A$ per l'elemento $i$.
% \begin{center}
% \begin{tblr}{width=\linewidth,
% colspec={X[1,c]|X[4,c]},
% rowspec={Q[m]|Q[m]}
% }
% $\mathcal{I}_f(A;B)$ & $ \sum\limits_{i\in V}(\min(\alpha_i,m_i(A)) + \min(\alpha_i,m_i(B)) - \min(\alpha_i,m_i(A \cup B))) $ \\
% $f(A|B)$ & $ \sum\limits_{i \in V}\min(\alpha_i,m_i(A \cup B)) - \min(\alpha_i,m_i(B)) $ \\
% \end{tblr}
% \end{center}
% Si può semplificare l'espressione di $\mathcal{I}_f(A;B)$ e si ottiene:
% \begin{tblr}{width=\linewidth,colspec={Q[l,m]Q[l,m]},rowspec={Q[m]Q[m]}}
% $\mathcal{I}_f(A;B)$& $= \sum\limits_{i \in V}\min(\alpha_i,m_i(A),m_i(B),m_i(A)+m_i(B)-\alpha_i)+ $\\
% \SetCell[c=2]{r,m} $-\min(0,m_i(A \cup B)-\alpha_i)$
% \end{tblr}
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\section{Problemi per le funzioni submodulari}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Minimizzazione}
% %% - - - - - - - - - - - - - - - - - %%
% \subsubsection{Minimum Set Cover}
% \begin{frame}
% \begin{definizione}[Minimum Set Cover Problem]
% Dato un insieme $S = \{ s_1, \ldots, s_t \}$ e un insieme $C = \{c_1, \ldots, c_k\} \subseteq \mathcal{P}(S)$ con $\forall s\in S, \exists c_j \in C $ tale che $ s \in c_j$,
% sia una ``set cover'' dell'insieme $S$ un insieme $I \subseteq \{1, \ldots, j\}$ tale che $ \bigcup_{i \in I}c_i = S $.
% Trovare l'insieme $I^*$ con cardinalità minima.
% \end{definizione}
% Il problema è NP-hard dato che si riduce a 3-dimensional matching.
% \end{frame}
% %% - - - - - - - - - - - - - - - - - %%
% \subsubsection{Submodular Set Cover}
% \begin{frame}
% \begin{definizione}[Submodular Set Cover]
% Data una funzione $f: \mathcal{P}(S) \to \mathbb{R}$ submodulare non decrescente, trovare il sottoinsieme di peso minimo tale che ``copra'' tutti gli elementi dell'insieme $S$. Cioè:
% \[ I^* = \min_{I \subset S}\{ \sum_{i \in I}c_i | f(I) = f(S) \} \]
% Con $c_i$ un peso associato all'elemento $i$ di $S$.
% \end{definizione}
% \end{frame}
% %% - - - - - - - - - - - - - - - - - %%
% \subsubsection{Submodular Cost Submodular Cover}
% \begin{frame}
% \begin{definizione}[Submodular Cost Submodular Cover]
% Date due funzioni $f,g: \mathcal{P}(S) \to \mathbb{R}$ polimatroidi, trovare $I$ che minimizzi:
% \[ \min_{I \subseteq S}\{f(I)|g(I) \ge c\} \]
% \end{definizione}
% \end{frame}
% %% - - - - - - - - - - - - - - - - - %%
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Problema dello zaino}
% \begin{frame}
% \begin{definizione}[Problema dello zaino]
% Dato un insieme $S = \{ s_1, \ldots, s_t\}$ e una funzione $f: S \to \mathbb{Z}^+$, un valore $b$ che è la dimensione dello zaino e un intero positivo $K$,
% sia $I$ una partizione dell'insieme $S$ tale che $\sum_{i \in I} f(i) \le b$.
% La soluzione del problema è quindi l'insieme $I^*$ con $\sum_{i \in I^*} f(i)$ massimo.
% \end{definizione}
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Submodular Knapsack Problem}
\begin{frame}
\begin{definizione}[Submodular Knapsack Problem]
Data una funzione $f$ submodulare, il problema consiste nel trovare l'insieme con peso dato da $f$ più vicino al limite $b$.\\
In particolare trovare $\max\limits_{I \subseteq S}\{ f(I) \le b \} $
\end{definizione}
\begin{definizione}[Submodular Cost Submodular Knapsack]
Date due funzioni $f,g: \mathcal{P}(S) \to \mathbb{R}$ polimatroidi, trovare $I$ che massimizzi:
\[ \max_{I \subseteq S}\{g(I)|f(I) \le b\} \]
\end{definizione}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \subsection{Submodular Welfare Problem}
% \begin{frame}
%
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\section{Algoritmo Greedy}
\begin{frame}
% Per risolvere questi problemi di massimizzazione e minimizzazione si usa sia nel caso dei matroidi che nel caso dei polimatrodi l'agoritmo greedy.
\begin{center}
\begin{algorithm}[H]
\renewcommand{\thealgorithm}{``greedy''}
\caption{}\label{alg:cap}
\begin{algorithmic}[1]
\State{$S^0 \gets \emptyset, V^0 \gets V, t \gets 1$}
\While{$ t \ne k $}
\State{$ i(t) \in V^{t-1} $ tale che $ f(\{i(t)\}|S^{t-1})=\max\limits_{i \in V^{t-1}}f(\{i\}|S^{t-1}) $}
\If{$ f(\{i(t)\}|S^{t-1}) \le 0$}
\State{$ k^* \gets t-1\qquad $}\Comment{$ k^* < k $}
\State{\textbf{return} {$ S^{k^*} $}}
\ElsIf{$ f(S^{t-1}|\{i(t)\}) > 0 $}
\State{$ S^t \gets S^{t-1} \cup \{ i(t) \} $}
\State{$ V^t \gets V^{t-1} \setminus \{i(t)\} $}
\State{$ t \gets t + 1$}
\EndIf % chktex 1
\EndWhile % chktex 1
\State{$ k^* \gets k\qquad $}\Comment{$ k^* == k $}
\State{\textbf{return} {$ S^{k^*} $}}
\end{algorithmic}
\end{algorithm}
\end{center}
\end{frame}
\begin{frame}
Per la massimizzazione si ottiene un'approssimazione di almeno $1-\frac{1}{e}$ rispetto al valore ottimo\\
L'approssimazione dell'algoritmo è ottima se si suppone che la funzione oracolo si possa valutare un numero polinomiale di volte
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Curvatura}
\begin{frame}
Tuttavia spesso si ottengo risultati molto più vicini all'ottimo
\begin{definizione}[Curvatura]
Una funzione submodulare $f: \mathcal{P}(V) \to \mathbb{R}^+$ ha curvatura $\kappa \in [0, 1]$ se $f(S+j) - f(S) \ge (1 - \kappa)f({j}), \forall S \subset E, \forall j \in V \setminus S$\\
cioè $\kappa_f = 1- \min_{j\in V} \frac{f(j|V\setminus \{j\})}{f(j|\emptyset)}$
\end{definizione}
Se $\kappa = 0$ allora la funzione è lineare\\
Per funzioni submodulari non decrescenti si ha un'approssimazione di almeno $\frac{1-e^{-\kappa_f}}{\kappa_f}$, che tende a $1$ per $ \kappa_f \to 0 $
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \section{Submodular Mutual Information-Based Summarization}
% \begin{frame}
% Il problema consiste nel massimizzare $\mathcal{I}_f(A;V \setminus A)$ con $\norm{A}=k$\\
% $\mathcal{I}_f(A;V \setminus A)$ è submodulare non monotona\\
% Quindi l'approssimazione di almeno $1-\frac{1}{e}$ dell'algoritmo greedy non è garantita\\
% \begin{teorema}
% Sia $f(j)\le1, \forall j \in V$, allora $g(A) = \mathcal{I}_f(A;V \setminus A)$ è $\epsilon$-ap\-pros\-si\-ma\-ti\-va\-men\-te monotona per un $A$ con fattore $\kappa_f(A)$,\\
% cioè $g(j|A) \ge -\kappa_f(A), \forall j \in V, A \subseteq V$, con $\kappa_f(A) = \max_{j \in V \setminus A}\frac{f(j|V \setminus (A \cup j))}{f(j)}$
% \end{teorema}
% Si ottiene quindi $\hat{A}$ con $\bigl|\hat{A}\bigr|=k$ tale che $ \mathcal{I}_f(\hat{A};V \setminus \hat{A}) \ge (1-\frac{1}{e})\cdot(g(A^*) - k \cdot \kappa_f(A^*))$
% \end{frame}
%% - - - - - - - - - - - - - - - - - %%
\section{Query-Based and Privacy Preserving Summarization}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Query-Based Summarization}
\begin{frame}
\textit{Ottimizzazione diretta massimizzando l'informazione mutua}\\
Data $g$ funzione submodulare e $\lambda \in \mathbb{R}$, massimizzare l'informazione mutua fra ``query set'' $Q$ e l'insieme $A$, più un termine di correzione per diversità/rappresentazione\\
\[ \max_{A \subseteq V, \norm{A} \le j} \mathcal{I}_f(A;Q) + \lambda \cdot g(A) \]
In generale $\mathcal{I}_f(A;Q)$ non è submodulare, ma lo è se $f^{(3)}(i,j,k;A) \ge 0$ e $g$ è monotona submodulare
\end{frame}
\begin{frame}
\textit{Constrained formulation usando il conditional gain}\\
\begin{equation*}
\begin{dcases}
\max_{A \subseteq V}g(A) \\
f(A|Q) \le \epsilon \\
\norm{A} \le k
\end{dcases}
\end{equation*}
$\mathcal{I}_f(A;Q) = f(A) - f(A|Q)$ allora massimizzare $\mathcal{I}_f(A;Q)$ è equivalente a minimizzare $f(A|Q)$\\
La formulazione ammette un'approssimazione bi-criteria di $ \left[ \textcolor[RGB]{148,17,0}{ 1-\frac{1}{e}}, \textcolor[RGB]{0,84,147}{\frac{n}{1+(n-1)(1-\kappa_f)}} \right] $\\
cioè una soluzione $ g(\hat{A})\ge (\textcolor[RGB]{148,17,0}{1-\frac{1}{e}})\cdot g(A^*) $, $f(A|Q)\le \textcolor[RGB]{0,84,147}{\frac{n}{1+(n-1)(1-\kappa_f)}} \cdot \epsilon$ e $ \norm{\hat{A}} \le \textcolor[RGB]{0,84,147}{\frac{n}{1+(n-1)(1-\kappa_f)}} \cdot k $
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Privacy Preserving Summarization}
\begin{frame}
\textit{Ottimizzazione diretta minimizzando l'informazione mutua}\\
\[ \max_{A \subseteq V, \norm{A}\le k}\lambda g(A) - \mathcal{I}_f(A;P) = \max_{A \subseteq V, \norm{A}\le k} \lambda g(A) +f(P|A) \]
$f(P|A)$ è submodulare in $A$ soltanto se $f^{(3)}(i,j,k;A)\le 0$, quindi la massimizzazione non è trattabile nella maggior parte dei casi
\end{frame}
\begin{frame}
\textit{Ottimizzazione diretta massimizzando il conditional gain}\\
Invece di massimizzare $f(P|A)$ viene massimizzato $f(A|P)$\\
\[ \max_{A\subseteq V, \norm{A}\le k} \lambda g(A) + f(A|P) \]
L'algoritmo greedy ammette un'approssimazione di almeno $1-\frac{1}{e}$
\end{frame}
\begin{frame}
\textit{Constrained formulation usando l'informazione mutua}\\
\begin{equation*}
\begin{dcases}
\max_{A\subseteq V}g(A)\\
\mathcal{I}_f(A;P)\le\epsilon\\
\norm{A} \le k
\end{dcases}
\end{equation*}
$\mathcal{I}_f(A;P)$ è submodulare se $f^{(3)}(i,j,k;A) \ge 0$\\
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
\subsection{Joint Query e Privacy Preserving Summarization}
\begin{frame}
\textit{Ottimizzazione diretta utilizzando l'informazione mutua}\\
\[ \max_{A\subseteq V, \norm{A}\le k} \mathcal{I}_f(A;Q) - \mathcal{I}_f(A;P) + \lambda g(A) \]
Tuttavia non è adeguata quando si pone $Q=V$ o $Q=\emptyset$\\
\begin{center}
\begin{tblr}{Q[r,m]Q[l,m]}
$Q=V$ & $f(A)-\lambda g(A) - \mathcal{I}_f(A;P)$\\
$Q=\emptyset$ & $ \lambda g(A) - \mathcal{I}_f(A;P)$
\end{tblr}
\end{center}
\end{frame}
\begin{frame}
\textit{Ottimizzazione diretta sommando i termini $Q$ e $P$}\\
\begin{equation*}
\max_{A\subseteq V, \norm{A}\le k} \lambda_1 \mathcal{I}_f(A;Q) + \lambda_2 f(A|P) + g(A)
\end{equation*}
Si ha quindi un'approssimazione di almeno $1-\frac{1}{e}$\\
\end{frame}
\begin{frame}
\textit{Constrained formulation by combining $Q$ and $P$}\\
\begin{equation*}
\begin{cases}
\max\limits_{A\subseteq V} g(A) \\
f(A|Q) \le \epsilon_1 \\
\mathcal{I}_f(A;P) \le \epsilon_2 \\
\norm{A} \le k \\
\end{cases}
\end{equation*}
Tuttavia si necessita che $\mathcal{I}_f(A;P)$ sia submodulare, quindi che $f^{(3)} \ge 0$
\end{frame}
\begin{frame}
Si può quindi riformulare usando $f(A|P)$ invece che $\mathcal{I}_f(A;P)$\\
\begin{equation*}
\begin{cases}
\max_{A\subseteq V}g(A) + \lambda_2 f(A|P)\\
f(A|Q) \le \epsilon_1 \\
\norm{A} \le k \\
\end{cases}
\end{equation*}
Risulta quindi un'istanza del Submodular Cost Submodular Knapsack Problem
\end{frame}
\begin{frame}
\textit{Ottimizzazione diretta con una funzione obbiettivo comune per i termini $P$ e $Q$}\\
\begin{equation*}
\max_{A\subseteq V, \norm{A}\le k} \mathcal{I}_f(A;Q|P) + \lambda g(A)
\end{equation*}
$\mathcal{I}_f(A;Q|P) = \mathcal{I}_f(A;Q) - \mathcal{I}_f(A;Q;P)$ quindi si massimizza la somiglianza con $Q$ e si minimizza la somiglianza con $P$\\
Si ha quindi un'approssimazione di almeno $1-\frac{1}{e}$ se $f^{(3)}(i,j,k;A)\ge 0$
\begin{center}
\begin{tblr}{Q[r,m]Q[l,m]}
se $Q=V$ & $f(A|P)+\lambda g(A)$\\
se $P=\emptyset$ & $\mathcal{I}_f(A;Q)+\lambda g(A)$\\
se $Q=V, P=\emptyset$ & $f(A) +\lambda g(A)$\\
\end{tblr}
\end{center}
\end{frame}
\begin{frame}
\end{frame}
%% - - - - - - - - - - - - - - - - - %%
% \section{Clustering and Partitioning using the Multi-Set Mutual Information}
%% - - - - - - - - - - - - - - - - - %%
\hiddensection{Minimization of Submodular Information Metric}
\hiddensubsection{$D_f(A;B)$}
\begin{frame}
\begin{definizione}[Variation of Information]
Data $f: \mathcal{P}(V) \to \mathbb{R}$, sia $D_f(A;B) = f(A \cup B) - \mathcal{I}_f(A;B) = f(A|B) - f(B|A)$
\end{definizione}
Tuttavia $D_f(A;B)$ è una metrica soltanto se $f$ ha curvatura $\kappa_f = 1 - \min_{j\in A} \frac{f(j|V\setminus \{j\})}{f(j|\emptyset)}$ minore di $1$\\
Se la curvatura è $0$ allora è proprio uguale alla distanza di Hamming
\begin{definizione}[Distanza Submodulare di Hamming]
Data $f: \mathcal{P}(V) \to \mathbb{R}$, sia $D^{\text{SH}}_f(A;B) = f((A \setminus B) \cup (B \setminus A))$
\end{definizione}
Di cui si ha un'approssimazione additiva
\begin{definizione}
Data $f: \mathcal{P}(V) \to \mathbb{R}$, sia $D^{\text{SHA}}_f(A;B) = f(A \setminus B) + f(B \setminus A)$
\end{definizione}
\end{frame}
\hiddensubsection{Minimization}
\begin{frame}
Minimizzare la distanza fra $A \in \mathcal{P}(V)$ e $S_1, S_2, \ldots, S_m$:
\[ \min\limits_{A \subseteq V} \sum_{i=1}^m D_f(A,S_i) \]
il problema è simile a trovare un insieme rappresentativo con una metrica submodulare di hamming dato che è un'approssimazione valida di $D_f(A,S)$\\
$D^{\textnormal{SHA}}(A,S)$ è submodulare in $A$ per $S$ fisso\\
Si trova una soluzione in tempo polinomiale con approssimazione di $1-\kappa_f$
\end{frame}
\hiddensection{Domande}
\begin{frame}
% left empty
\end{frame}
\begin{frame}
Se otteniamo $S_k$ dall'algoritmo greedy allora:
\[ f(S^k) \ge (1-\frac{1}{e}) \cdot f(O) \]
\begin{dimostrazione}
\[ f(S^{k+1}) - f(S^k) \ge \frac{1}{k}(f(O) - f(S^k)), \forall 0 \le i \le k \]
a ogni passaggio l'incremento non è troppo piccolo\\
perchè se $O = \{o_1, \ldots, o_k\}$ per ogni $i$ si ha monotonicità:
\end{dimostrazione}
\end{frame}
\begin{frame}
\begin{dimostrazione}
\begin{equation*}
\begin{aligned}
f(O) &\le f(O \cup S^k)\\
&= f(S^k) + \sum_{j=1}^{k}\left( f(S^k \cup \{ o_1, \ldots, o_j\}) - f(S^k \cup \{o_1,\ldots, o_{j-1}\}) \right)\\
&= f(S^k) + \sum_{j=1}^{k}\left( f(\{o_j\}|S^k \cup \{o_1,\ldots, o_{j-1}\}) \right)\\
&\le f(S^k) + \sum_{j=1}^{k}\left( f(\{o_j\}|S^k) \right) \\
&\le f(S^k) + k\cdot f(\{i(t)\}|S^{k})
\end{aligned}
\end{equation*}
\end{dimostrazione}
\end{frame}
\begin{frame}
\begin{dimostrazione}
cioè:
\[ \left(f(O)-f(S^k)\right) - \left(f(O)-f(S^{k+1})\right) \ge \frac{1}{k}\left(f(O)-f(S^k)\right) \]
\[ f(O)-f(S^{k+1}) \le \left( 1 -\frac{1}{k} \right)(f(O)-f(S^*k)) \]
per induzione:
\[ f(O)-f(S^{k+1}) \le {\left( 1 -\frac{1}{k} \right)}^{k}(f(O)-f(S^0)) \le \frac{1}{e} f(O) \]
\end{dimostrazione}
\end{frame}
\end{document}

465
tesi.bib Normal file
View File

@ -0,0 +1,465 @@
@inbook{Recski2011,
author = "Recski, Andr{\'A}s",
editor = "Barlotti, A.",
title = "Engineering Applications of Matroids - A Survey ",
bookTitle = "Matroid Theory and its Applications",
year = 2011,
publisher = "Springer Berlin Heidelberg",
address = "Berlin, Heidelberg",
pages = "300--321",
isbn = "978-3-642-11110-5",
doi = "10.1007/978-3-642-11110-5_6",
url = "https://doi.org/10.1007/978-3-642-11110-5_6"
}
@book{ams1996matroid,
title = {Matroid Theory: AMS-IMS-SIAM Joint Summer Research
Conference on Matroid Theory, July 2-6, 1995,
University of Washington, Seattle},
author = {AMS-IMS-SIAM Joint Summer Research Conference on
Matroid, Theory and Bonin, J.E. and Oxley, J.G. and
Servatius, B. and AMS-IMS-SIAM Joint Summer Research
Conference on Matroid Theory and Oxley,
P.M.M.D.J.G. and American Mathematical Society},
isbn = 9780821805084,
lccn = 96018251,
series = {Contemporary mathematics - American Mathematical
Society},
year = 1996,
publisher = {American Mathematical Society}
}
@article{benati2003,
title = {An Improved Branch \& Bound Method for the
Uncapacitated Competitive Location Problem},
volume = 122,
doi = {10.1023/a:1026182020346},
number = {1/4},
journal = {Annals of Operations Research},
author = {Benati, Stefano},
year = 2003,
pages = {43-58}
}
@inproceedings{combinatorialauctions2006,
author = {Dobzinski, Shahar and Schapira, Michael},
title = {An Improved Approximation Algorithm for
Combinatorial Auctions with Submodular Bidders},
year = 2006,
isbn = 0898716055,
publisher = {Society for Industrial and Applied Mathematics},
address = {USA},
booktitle = {Proceedings of the Seventeenth Annual ACM-SIAM
Symposium on Discrete Algorithm},
pages = {1064-1073},
numpages = 10,
location = {Miami, Florida},
series = {SODA '06}
}
@article{datastructuresandalg2012,
doi = {10.48550/ARXIV.1207.0560},
url = {https://arxiv.org/abs/1207.0560},
author = {Iyer, Rishabh and Bilmes, Jeff},
keywords = {Data Structures and Algorithms (cs.DS), Machine
Learning (cs.LG), FOS: Computer and information
sciences, FOS: Computer and information sciences},
title = {Algorithms for Approximate Minimization of the
Difference Between Submodular Functions, with
Applications},
publisher = {arXiv},
year = 2012,
copyright = {Creative Commons Public Domain Dedication and
Certification}
}
@inproceedings{edmonds2001,
title = {Submodular Functions, Matroids, and Certain
Polyhedra},
author = {Jack Edmonds},
booktitle = {Combinatorial Optimization},
year = 2001
}
@InProceedings{entropictracelogdet2017,
author = "Fitzsimons, Jack and Granziol, Diego and Cutajar,
Kurt and Osborne, Michael and Filippone, Maurizio
and Roberts, Stephen",
editor = "Ceci, Michelangelo and Hollm{\'e}n, Jaakko and
Todorovski, Ljup{\v{c}}o and Vens, Celine and
D{\v{z}}eroski, Sa{\v{s}}o",
title = "Entropic Trace Estimates for Log Determinants",
booktitle = "Machine Learning and Knowledge Discovery in
Databases",
year = 2017,
publisher = "Springer International Publishing",
address = "Cham",
pages = "323-338",
isbn = "978-3-319-71249-9"
}
@article{feigemirroknivondrak2011,
title = {Maximizing Non-monotone submodular functions},
volume = 40,
doi = {10.1137/090779346},
number = 4,
journal = {SIAM Journal on Computing},
author = {Feige, Uriel and Mirrokni, Vahab S. and Vondr\'ak,
Jan},
year = 2011,
pages = {1133-1153}
}
@book{fujishige2005,
title = {Submodular functions and optimization},
publisher = {Elsevier},
author = {Fujishige, Satoru},
year = 2005
}
@inbook{gareyjohnson2003,
place = {New York},
title = {Appendix: A List of NP-Complete Problems},
booktitle = {Computers and intractability: A guide to the theory
of NP - completeness},
publisher = {W.H. Freeman and Co.},
author = {Garey, Michael R. and Johnson, David S.},
year = 2003,
pages = {187-288}
}
@article{generalizedsubmodular2022,
title = {Generalized submodular information measures:
Theoretical properties, examples, optimization
algorithms, and applications},
volume = 68,
doi = {10.1109/tit.2021.3123944},
number = 2,
journal = {IEEE Transactions on Information Theory},
author = {Iyer, Rishabh and Khargonkar, Ninad and Bilmes, Jeff
and Asnani, Himanshu},
year = 2022,
pages = {752-781}
}
@article{goldengoringhosh2005,
title = {A multilevel search algorithm for the maximization
of submodular functions applied to the quadratic
cost partition problem},
volume = 32,
DOI = {10.1007/s10898-004-5909-z},
number = 1,
journal = {Journal of Global Optimization},
author = {Goldengorin, Boris and Ghosh, Diptesh},
year = 2005,
pages = {65-82}
}
@article{iri1979,
title = {A review of recent work in Japan on principal
partitions of matroids and their applications},
volume = 319,
doi = {10.1111/j.1749-6632.1979.tb32805.x},
number = {1 Second Intern},
journal = {Annals of the New York Academy of Sciences},
author = {Iri, Masao},
year = 1979,
pages = {306-319}
}
@book{lawler2004,
place = {Mineola, NY},
title = {Combinatorial Optimization: Networks and matroids},
publisher = {Dover Publications},
author = {Lawler, Eugene},
year = 2004
}
@misc{logdeterminant2017,
doi = {10.48550/ARXIV.1704.01445},
url = {https://arxiv.org/abs/1704.01445},
author = {Fitzsimons, Jack and Cutajar, Kurt and Osborne,
Michael and Roberts, Stephen and Filippone,
Maurizio},
keywords = {Machine Learning (stat.ML), Numerical Analysis
(math.NA), Computation (stat.CO), FOS: Computer and
information sciences, FOS: Computer and information
sciences, FOS: Mathematics, FOS: Mathematics},
title = {Bayesian Inference of Log Determinants},
publisher = {arXiv},
year = 2017,
copyright = {arXiv.org perpetual, non-exclusive license}
}
@incollection{maximizingsubmodularsetfunctions1981,
title = {Maximizing Submodular Set Functions: Formulations
and Analysis of Algorithms*},
editor = {P. Hansen},
series = {North-Holland Mathematics Studies},
publisher = {North-Holland},
volume = 59,
pages = {279-301},
year = 1981,
booktitle = {Annals of Discrete Mathematics (11)},
issn = {0304-0208},
doi = {10.1016/S0304-0208(08)73471-6},
url =
{https://www.sciencedirect.com/science/article/pii/S0304020808734716},
author = {G.L. Nemhauser and L.A. Wolsey},
}
@article{maxmizingapproximation2019,
title = {Maximizing submodular or monotone approximately
submodular functions by multi-objective evolutionary
algorithms},
journal = {Artificial Intelligence},
volume = 275,
pages = {279-294},
year = 2019,
issn = {0004-3702},
doi = {10.1016/j.artint.2019.06.005},
url =
{https://www.sciencedirect.com/science/article/pii/S0004370219301535},
author = {Chao Qian and Yang Yu and Ke Tang and Xin Yao and
Zhi-Hua Zhou},
keywords = {Evolutionary algorithms, Submodular optimization,
Multi-objective evolutionary algorithms, Running
time analysis, Computational complexity},
}
@book{murota2010,
place = {Berlin},
title = {Matrices and matroids for systems analysis},
publisher = {Springer},
author = {Murota, Kazuo},
year = 2010
}
@article{nemhauserwolseyfisher1978,
title = {An analysis of approximations for maximizing
submodular set functions-I},
volume = 14,
DOI = {10.1007/bf01588971},
number = 1,
journal = {Mathematical Programming},
author = {Nemhauser, G. L. and Wolsey, L. A. and Fisher,
M. L.},
year = 1978,
pages = {265-294}
}
@misc{pagariapezzoli2021,
doi = {10.48550/ARXIV.2105.04214},
url = {https://arxiv.org/abs/2105.04214},
author = {Pagaria, Roberto and Pezzoli, Gian Marco},
keywords = {Algebraic Geometry (math.AG), Combinatorics
(math.CO), FOS: Mathematics, FOS: Mathematics,
05B35, 14N20, 52C35},
title = {Hodge Theory for Polymatroids},
publisher = {arXiv},
year = 2021,
copyright = {Creative Commons Attribution 4.0 International}
}
@article{rankmetricqpoly2019,
title = {Rank-metric codes and Q-polymatroids},
volume = 52,
doi = {10.1007/s10801-019-00889-4},
number = 1,
journal = {Journal of Algebraic Combinatorics},
author = {Gorla, Elisa and Jurrius, Relinde and L{\'o}pez,
Hiram H. and Ravagnani, Alberto},
year = 2019,
pages = {1-19}
}
@book{schrijver2003,
place = {Berlin},
title = {Combinatorial optimization: Polyhedra and
efficiency},
publisher = {Springer},
author = {Schrijver, Alexander},
year = 2003
}
@article{setcovering1970,
ISSN = {0030364X, 15265463},
URL = {http://www.jstor.org/stable/169305},
author = {Egon Balas and Manfred W. Padberg},
journal = {Operations Research},
number = 6,
pages = {1152-1161},
publisher = {INFORMS},
title = {On the Set-Covering Problem},
volume = 20,
year = 1972
}
@article{shannon1948,
title = {A mathematical theory of communication},
volume = 27,
doi = {10.1002/j.1538-7305.1948.tb00917.x},
number = 4,
journal = {Bell System Technical Journal},
author = {Shannon, C. E.},
year = 1948,
month = 10,
pages = {623-656}
}
@inbook{steenseebach1979,
place = {Estados Unidos},
booktitle = {Counterexamples in topology},
publisher = {Springer},
author = {Steen, Lynn Arthur and Seebach, Arthur},
year = 1979,
pages = {34-40}
}
@article{submodularcombinatorialinformation2021,
author = {Rishabh K. Iyer and Ninad Khargoankar and Jeff
A. Bilmes and Himanshu Asanani},
title = {Submodular Combinatorial Information Measures with
Applications in Machine Learning},
journal = {CoRR},
volume = {abs/2006.15412},
year = 2020,
url = {https://arxiv.org/abs/2006.15412},
eprinttype = {arXiv},
eprint = {2006.15412},
timestamp = {Wed, 01 Jul 2020 15:21:23 +0200},
biburl =
{https://dblp.org/rec/journals/corr/abs-2006-15412.bib},
bibsource = {dblp computer science bibliography,
https://dblp.org}
}
@article{submodularknapsackpolytope2009,
title = {The submodular knapsack polytope},
journal = {Discrete Optimization},
volume = 6,
number = 4,
pages = {333-344},
year = 2009,
issn = {1572-5286},
DOI = {10.1016/j.disopt.2009.03.002},
url =
{https://www.sciencedirect.com/science/article/pii/S157252860900019X},
author = {Alper Atamt\"urk and Vishnu Narayanan},
}
@inproceedings{submodularoptimization2013,
author = {Iyer, Rishabh and Bilmes, Jeff},
title = {Submodular Optimization with Submodular Cover and
Submodular Knapsack Constraints},
year = 2013,
publisher = {Curran Associates Inc.},
address = {Red Hook, NY, USA},
booktitle = {Proceedings of the 26th International Conference on
Neural Information Processing Systems - Volume 2},
pages = {2436-2444},
numpages = 9,
location = {Lake Tahoe, Nevada},
series = {NIPS'13},
}
@article{submodularwelfare2010,
author = {Feige, Uriel and Vondr\'ak, Jan},
year = 2010,
month = 01,
pages = {247-290},
title = {The Submodular Welfare Problem with Demand Queries.},
volume = 6,
journal = {Theory of Computing},
doi = {10.4086/toc.2010.v006a011}
}
@misc{submultiwaypartition2011,
doi = {10.48550/ARXIV.1105.2048},
url = {https://arxiv.org/abs/1105.2048},
author = {Chekuri, Chandra and Ene, Alina},
title = {Approximation Algorithms for Submodular Multiway
Partition},
publisher = {arXiv},
year = 2011,
copyright = {arXiv.org perpetual, non-exclusive license}
}
@article{sviridenkovondrakward2014,
title = {Optimal approximation for submodular and
supermodular optimization with bounded curvature},
DOI = {10.1137/1.9781611973730.76},
journal = {Proceedings of the Twenty-Sixth Annual ACM-SIAM
Symposium on Discrete Algorithms},
author = {Sviridenko, Maxim and Vondr\'ak, Jan and Ward,
Justin},
year = 2014
}
@article{tutte196615,
title = {On the algebraic theory of graph colorings},
journal = {Journal of Combinatorial Theory},
volume = 1,
number = 1,
pages = {15-50},
year = 1966,
issn = {0021-9800},
doi = {10.1016/S0021-9800(66)80004-2},
url =
{https://www.sciencedirect.com/science/article/pii/S0021980066800042},
author = {W.T. Tutte},
}
@book{tutte1971,
place = {New York, NY},
title = {Introduction to the theory of Matroids},
publisher = {American Elsevier},
author = {Tutte, William Thomas},
year = 1971
}
@misc{vondrakjan2014,
author = {Vondr\'ak Jan},
title = {Submodularity and curvature: the optimal algorithm},
url =
{https://theory.stanford.edu/~jvondrak/data/submod-curv.pdf},
year = 2014,
}
@misc{vondrakjan2020,
author = {Ashwinkumar Badanidiyuru and Amin Karbasi and Ehsan
Kazemi and Jan Vondr\'ak},
title = {Submodular Maximization Through Barrier Functions},
year = 2020,
eprint = {arXiv:2002.03523},
}
@article{whitney1935,
title = {On the abstract properties of linear dependence},
volume = 57,
DOI = {10.2307/2371182},
number = 3,
journal = {American Journal of Mathematics},
author = {Whitney, Hassler},
year = 1935,
pages = 509
}
@article{wolsey1982,
title = {An analysis of the greedy algorithm for the
submodular set covering problem},
volume = 2,
doi = {10.1007/bf02579435},
number = 4,
journal = {Combinatorica},
author = {Wolsey, L. A.},
year = 1982,
pages = {385-393}
}
@book{ziegler2007,
title = {Lectures on Polytopes},
publisher = {Springer},
author = {Ziegler G{\" u}nter M.},
year = 2007
}

243
tesi.ltx Normal file
View File

@ -0,0 +1,243 @@
\documentclass[12pt, oneside]{article}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Load Packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\usepackage[
top=2.5cm,
bottom=2.5cm,
left=4cm,
right=2.5cm,
headheight=22pt,
centering
]{geometry}
\geometry{a4paper}
\usepackage[utf8]{inputenc} %% use UTF-8, maybe not needed since 2018
\usepackage[english,main=italian]{babel} %% language
\pagestyle{headings}
\usepackage{scrlayer-scrpage}
\usepackage{csquotes} %% correct language also for citations
\ifoot[]{}
\cfoot[]{}
\ofoot[\pagemark]{\pagemark}
\pagestyle{scrplain}
\usepackage[
backend=biber,
style=numeric,
sorting=ynt
]{biblatex} %% for citations
\addbibresource{tesi.bib}
\usepackage{import} %% specify path for import
%% math packages
\usepackage{graphicx} %% for pictures
\usepackage{float}
\usepackage{amssymb} %% math symbols
\usepackage{amsmath} %% math matrix etc
\usepackage{listings} %% code block
\usepackage{tabularray} %% better tables
\usepackage{booktabs} %% rules for tables
\usepackage{mathrsfs}
\usepackage{mathtools}
\usepackage{algorithm} %% for algorithms
\usepackage{algpseudocode} %% loads algorithmicx
\usepackage{amsthm}
\usepackage{thmtools} %% theorems
%% plot packages
\usepackage{pgfplots} %% plots used with \begin{tikzpicture}
\usepackage{tikz} %% for pictures
\usetikzlibrary{trees}
\pgfplotsset{width=10cm,compat=newest}
%% design packages
\usepackage{enumitem} %% for lists and enumerating
\usepackage{color}
\usepackage{xcolor,colortbl} % xcolor for defining colors, colortbl for table colors
\usepackage{makecell} %% for multiple lines in cell of table
\usepackage{cancel}
\usepackage{pgfornament} %% ornaments
%% load last
\usepackage[hidelinks]{hyperref} %% links for table of contents, load last
\usepackage{bookmark} %% for better table of contents
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Configuration of the packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\linespread{1.5}
\raggedbottom %% spaces if page is empty % chktex 1
%% set max table of contents recursion to subsection (3->subsubsecition)
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{3}
%% use bar instead of arrow for vectors
\renewcommand{\vec}[1]{\bar{#1}}
%% easy norm
\newcommand{\norm}[1]{\left\lvert#1\right\rvert}
%% itemize use less vertical space (use olditemize for default behaviour)
\let\olditemize=\itemize%% old itemize
\let\endolditemize=\enditemize%% old end itemize
\renewenvironment{itemize}{\olditemize\itemsep-0.2em}{\endolditemize}
%% items in itemize emph+box
%% usage: \ieb{Class:} for simple item
%% \ieb[4cm]{Class:} for specific size of box
\newcommand{\ieb}[2][2cm]{
\makebox[#1][l]{\emph{#2}}
} %% TODO: replace with description environment (? maybe)
% less vertical space around align & align*
\newcommand{\zerodisplayskips}{
\setlength{\abovedisplayskip}{0pt}
\setlength{\belowdisplayskip}{0pt}
\setlength{\abovedisplayshortskip}{0pt}
\setlength{\belowdisplayshortskip}{0pt}
}
% make dotfill use all the space available
\renewcommand{\dotfill}{
\leavevmode\cleaders\hbox to 1.00em{\hss .\hss }\hfill\kern0pt } % chktex 1 chktex 26
\setlength{\fboxsep}{-\fboxrule} % for debugging
%% PACKAGE algorithm
\floatname{algorithm}{Algoritmo}
%% PACKAGE tabularray
\UseTblrLibrary{amsmath}
%% PACKAGE color
\definecolor{red}{rgb}{1, 0.1, 0.1}
\definecolor{lightgreen}{rgb}{0.55, 0.87, 0.47}
\definecolor{gray}{rgb}{0.3, 0.3, 0.3}
\newcommand{\lgt}{\cellcolor{lightgreen}} %% light green in tables
\newcommand{\gry}{\textcolor{gray}} %% gray text
%% PACKAGE minipage
\newcommand{\thend}[1]{\begin{center}
\begin{minipage}[c][1em][c]{#1}
\dotfill{}
\end{minipage}
\end{center}}
%% PACKAGE thmtools
\declaretheoremstyle[
headfont=\normalfont\bfseries,
notefont=\mdseries,
bodyfont=\normalfont,
qed=\qedsymbol % chktex 1
]{steo}
\declaretheorem[numbered=no, style=steo]{teorema}
% \declaretheorem[thmbox=S]{teorema}
\declaretheoremstyle[
headfont=\normalfont\bfseries,
notefont=\mdseries,
bodyfont=\normalfont,
]{sdef}
\declaretheorem[numbered=no, style=sdef]{definizione}
\declaretheoremstyle[
spaceabove=-6pt,
spacebelow=6pt,
headfont=\normalfont\bfseries,
bodyfont=\normalfont,
postheadspace=1em,
qed=$\blacksquare$,
headpunct={:}
]{sprf}
\declaretheorem[name={Dimostrazione}, style=sprf, numbered=no]{dimostrazione}
%% PACKAGE
\lstset{
language=C,
showspaces=false,
basicstyle=\small\ttfamily,
numbers=left,
numberstyle=\tiny,
breaklines=true,
postbreak=\mbox{\textcolor{red}{$\hookrightarrow$}\space},
backgroundcolor = \color{lightgray},
}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\title{Tesi}
\author{
Elvis Rossi
Matricola 561394
}
\date{\today}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\begin{document}
\pagenumbering{roman}
\input{titlepage.ltx}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\newpage
\null % chktex 1
\thispagestyle{empty}
\vspace*{\fill}
\begin{center}
\color{black!30}\pgfornament[width=2cm]{123}
\end{center}
\newpage
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\tableofcontents
\newpage
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\pagenumbering{arabic}
\setcounter{page}{1}
% \newgeometry{top=2.5cm,
% bottom=2.5cm,
% left=2.5cm,
% right=4cm,
% headheight=22pt,
% centering} %% flip the inner and outer pages because we reset page counter
% %% and the last page was odd
\input{introduzione.ltx}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\input{definizioni.ltx}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\input{applicazioni.ltx}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\input{conclusioni.ltx}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\printbibliography{}
\end{document}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%

42
titlepage.ltx Normal file
View File

@ -0,0 +1,42 @@
\hypersetup{pageanchor=false}
\begin{titlepage}
\begin{figure}[!htb]
\centering
\includegraphics[keepaspectratio=true,scale=0.5]{figures/marchio.eps}
\end{figure}
\begin{center}
\large{DIPARTIMENTO DI INFORMATICA}
\vspace{1cm} \\
\LARGE{Corso di Laurea Triennale in Informatica}
\vspace{1cm} \\
\large{TESI DI LAUREA}
\vspace{1cm} \\
\LARGE{ENTROPIA E MISURE SUBMODULARI DELL'INFORMAZIONE}
\end{center}
\vspace{4cm}
\noindent
\begin{minipage}[t]{0.55\textwidth}
\raggedright%
\large{\bf Relatore: \\
\ Prof.\ Maurizio\ A.\ Bonuccelli \\}
\end{minipage}\hfill
\noindent
\begin{minipage}[t]{0.4\textwidth}
\raggedleft%
\large{\bf Candidato: \\
Elvis Rossi \\}
\end{minipage}
\vspace{25mm}
\noindent
\centering{
\large{ANNO ACCADEMICO 2021/2022}
}
\end{titlepage}
\hypersetup{pageanchor=true}