From bedd8f5708fe2b350519478064b2727266a17902 Mon Sep 17 00:00:00 2001
From: Walmes Zeviani <walmes@ufpr.br>
Date: Wed, 15 Aug 2018 18:53:55 -0300
Subject: [PATCH] Adiciona slides de GNA de v.a. discretas.

---
 _site.yml                      |   4 +
 slides/03-gna-uniforme.Rnw     |   2 +-
 slides/04-gna-nao-uniforme.Rnw | 258 +++++++++++++++++++++++++++++++++
 slides/config/preamble.tex     |   1 +
 4 files changed, 264 insertions(+), 1 deletion(-)
 create mode 100644 slides/04-gna-nao-uniforme.Rnw

diff --git a/_site.yml b/_site.yml
index 670cd43..ebb9003 100644
--- a/_site.yml
+++ b/_site.yml
@@ -31,10 +31,14 @@ navbar:
         href: slides/02-docum-codigo.pdf
       - text: "GNA Uniformes"
         href: slides/03-gna-uniforme.pdf
+      - text: "GNA de v.a. Discretas"
+        href: slides/04-gna-nao-uniforme.pdf
       - text: "----------"
       - text: "Arquivos complementares"
       - text: "GNA Uniformes (2015)"
         href: http://leg.ufpr.br/~walmes/ensino/ce089-2015-02/aula02_gna-2015-02.html
+      - text: "MTIP (2015)"
+        href: http://www.leg.ufpr.br/~walmes/ensino/ce089-2015-02/aula03_tip-2015-02.html
 #      - text: "Estruturas de controle"
 #        href: slides/01-estru-repet.html
 #      - text: "Teorema da Transformação da Probabilidade"
diff --git a/slides/03-gna-uniforme.Rnw b/slides/03-gna-uniforme.Rnw
index 65eb722..7733fa7 100644
--- a/slides/03-gna-uniforme.Rnw
+++ b/slides/03-gna-uniforme.Rnw
@@ -33,7 +33,7 @@ source("config/setup.R")
   \begin{itemize}
   \item Simulação computacional de processos estocásticos depende da
     geração de números aleatórios (GNA).
-  \item TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO
+  \item Inferência Bayesiana, jogos digitais, otimização estocástica também.
   \end{itemize}
 
   {\large Objetivos}
diff --git a/slides/04-gna-nao-uniforme.Rnw b/slides/04-gna-nao-uniforme.Rnw
new file mode 100644
index 0000000..cf3b474
--- /dev/null
+++ b/slides/04-gna-nao-uniforme.Rnw
@@ -0,0 +1,258 @@
+%-----------------------------------------------------------------------
+
+\documentclass[serif, professionalfont, usenames, dvipsnames]{beamer}
+\usepackage[T1]{fontenc}
+
+% ATTENTION: preamble.tex contains all style definitions.
+\input{config/preamble.tex}
+% \usepackage[backend=bibtex, style=authoryear]{biblatex}
+\addbibresource{config/refs.bib}
+
+<<include = FALSE>>=
+source("config/setup.R")
+@
+
+%-----------------------------------------------------------------------
+
+\title{Geração de números não uniformes}
+\subtitle{Variáveis discretas e contínuas}
+\date{\small{ \Sexpr{sprintf('Atualizado em %s', Sys.Date())}}}
+
+%-----------------------------------------------------------------------
+
+\begin{document}
+
+{\setbeamertemplate{footline}{}
+  \frame{\titlepage} %--------------------------------------------------
+}
+
+\begin{frame}{}
+
+  {\large Justificativas}
+
+  \begin{itemize}
+  \item A GNA Uniformes são o ponto de partida para GNA de outras
+    distribuições.
+  \item Do ponto de vista de simulação computacional, é importante
+    gerar números de todas as distribuições de probabilidade.
+  \end{itemize}
+
+  {\large Objetivos}
+
+  \begin{itemize}
+  \item Mostrar a GNA de v.a. discretas.
+  \item Introduzir abordagens para GNA de v.a. contínuas.
+  \end{itemize}
+\end{frame}
+
+%-----------------------------------------------------------------------
+\begin{frame}{A distribuição uniforme discreta}
+
+  Se $X$ tem distribuição uniforme discreta com $k$ valores, o seu
+  suporte é o conjunto $x \in \{1, 2, \ldots, k\}$, $k \geq 2$. A função
+  de probabilidade é
+  \begin{equation}
+    p(x) = \frac{1}{k} \cdot I(x \in \{1, 2, \ldots, k\}).
+  \end{equation}
+
+  A função de probabilidade acumulada é
+  \begin{equation}
+    F(x) = \frac{x}{k}.
+  \end{equation}
+
+  A média e variância são
+  \begin{equation}
+    \text{E}(X) = \frac{k + 1}{2} \quad \text{ e } \quad \text{V}(X) = \frac{k^2 - 1}{12}.
+  \end{equation}
+
+  \myurl{https://en.wikipedia.org/wiki/Discrete_uniform_distribution}
+\end{frame}
+
+\begin{frame}[fragile]{Gráficos da uniforme discreta}
+
+<<echo = FALSE, fig.dim = c(7, 4)>>=
+x <- 1:5
+px <- rep(1/length(x), length(x))
+Px <- cumsum(px)
+
+par(mfrow = c(1, 2))
+plot(px ~ x,
+     type = "h",
+     ylim = c(0, 1/length(x) * 1.1),
+     xlab = "x",
+     ylab = "p(x)")
+points(px ~ x, pch = 19)
+plot(Px ~ x,
+     type = "s",
+     ylim = c(0, max(Px) * 1.1),
+     xlab = "x",
+     ylab = "F(x)")
+points(Px ~ x, pch = 19)
+layout(1)
+@
+
+\end{frame}
+
+\begin{frame}{Números da uniforme discreta}
+  {\large Como gerar números da uniforme discreta?}
+
+  Por compartimentalização (\emph{data binnig}).
+
+  Gera-se números da v.a. uniforme $U \sim \text{U}(0, 1)$ e obtém-se
+  números da v.a. $X$ de distribuição uniforme discreta usando
+
+  \begin{equation}
+    X = \begin{cases}
+      1, & \text{se } U < 1/k \\
+      2, & \text{se } 1/k \leq U < 2/k \\
+      \vdots & \vdots \\
+      k, & \text{se } (k-1)/k \leq U < 1. \\
+    \end{cases}
+  \end{equation}
+
+  $\bigstar$ Expresse a equação acima usando a função de distribuição $F(x)$.
+
+\end{frame}
+
+%-----------------------------------------------------------------------
+\begin{frame}{A distribuição Bernoulli}
+
+  Uma v.a. $X$ tem distribuição Bernoulli, $X \sim \text{Ber}(p)$ se sua
+  função de probabilidade é
+  \begin{equation}
+    p(x) = \begin{cases}
+      p & \text{, se } x = 1 \\
+      1 - p & \text{, se } x = 0,
+    \end{cases}
+  \end{equation}
+  em que $0 < p < 1$.
+
+  A média e variância são dados por
+
+  \begin{equation}
+    \text{E}(X) = p \quad \text{ e } \quad \text{V}(X) = p(1 - p).
+  \end{equation}
+\end{frame}
+
+\begin{frame}{Números da Bernoulli}
+  {\large Como gerar números da Bernoulli?}
+
+  Por dicotomização. Gere números $U \sim \text{U}(0, 1)$ e faça
+
+  \begin{equation}
+    X = \begin{cases}
+      1, & \text{se } U \leq p \\
+      0, & \text{se } U > p.
+    \end{cases}
+  \end{equation}
+
+  $\bigstar$ Expresse a equação acima usando a função de distribuição $F(x)$.
+
+\end{frame}
+
+%-----------------------------------------------------------------------
+\begin{frame}{A distribuição geométrica}
+
+  Uma v.a. $X$ tem distribuição Geométrica se é o número tentativas até
+  que o primeiro sucesso seja obtido em uma série de provas
+  independentes de Bernoulli ($p$ constante). Assim
+  \begin{equation}
+    p(x) = (1 - p)^{x-1}\cdot p, \quad x \in 1, 2, \ldots; 0 < p < 1.
+  \end{equation}
+
+  Representamos por $X\sim \text{Geo}(p)$ onde
+  \begin{equation}
+    \text{E}(X) = 1/p \quad \text{ e } \quad \text{V}(X) = (1-p)/p^2.
+  \end{equation}
+
+\end{frame}
+
+\begin{frame}{Números da geométrica}
+
+  A função de distribuição da geométrica é
+  \begin{equation}
+    F(x) = 1 - (1 - p)^x
+  \end{equation}
+
+  \begin{center}
+    \begin{tabular}{llll}
+      \hline
+      $x$      & $p(x)$   & $\sum_x p(x)$   & $F(x) = 1 - (1 - p)^2$ \\ \hline
+      1        & $p$      & $p$             & $p$             \\
+      2        & $pq$     & $p + pq$        & $1 - q^2$       \\
+      3        & $pq^2$   & $p + pq + pq^2$ & $1 - q^3$       \\
+      $\vdots$ & $\vdots$ & $\vdots$        & $\vdots$        \\ \hline
+    \end{tabular}
+  \end{center}
+
+  $\bigstar$ Reconhece algum padrão algébrico?
+
+\end{frame}
+
+\begin{frame}[fragile]{Gerar números da geométrica}
+
+<<eval = FALSE>>=
+random_geo <- function(p) {
+    q <- 1 - p
+    pq <- p * q
+    x <- 1
+    Fx <- p
+    u <- runif(1)
+    while (u > Fx) {
+        x <- x + 1    # Incrementa x.
+        Fx <- Fx + pq # Calcula F(x).
+        pq <- pq * q  # Atualiza.
+    }
+    return(x)
+}
+
+x <- replicate(10000, random_geo(p = 0.5))
+plot(ecdf(x))
+curve(pgeom(x - 1, p = 0.5), add = TRUE, type = "s", col = 2)
+@
+
+\end{frame}
+
+% \begin{frame}
+%   Formalização dos conceitos
+%   \url{http://www.portalaction.com.br/simulacao-monte-carlo/metodo-da-transforma-inversa}
+% \end{frame}
+% \begin{frame}
+%   \myurl{http://www.leg.ufpr.br/~walmes/ensino/ce089-2015-02/aula03_tip-2015-02.html}
+% \end{frame}
+
+%-----------------------------------------------------------------------
+{
+  \usebackgroundtemplate{\includegraphics[height=\paperheight, width=\paperwidth]{../img/looking-ahead.jpg}}
+  % \setbeamersize{text margin left=30mm}
+
+  \begin{frame}[b]{}
+
+    \hspace*{0.5\linewidth}
+    \begin{minipage}[t]{0.5\linewidth}
+
+      \hi{Próxima aula}
+      \begin{itemize}
+      \item GNA de variáveis aleatórias contínuas.
+      \item Método da transformação integral da probabilidade.
+      \end{itemize}
+
+      \hi{Avisos}
+      \begin{itemize}
+      \item Sabatina 02 já está no Moodle!
+      \end{itemize}
+
+    \end{minipage}
+
+\end{frame}
+}
+
+% %-----------------------------------------------------------------------
+% \begin{frame}[t, fragile, allowframebreaks]
+%   \frametitle{Referências bibliográficas}
+%
+%   \printbibliography[heading=none]
+% \end{frame}
+
+%-----------------------------------------------------------------------
+\end{document}
diff --git a/slides/config/preamble.tex b/slides/config/preamble.tex
index 9b336e0..10674ef 100644
--- a/slides/config/preamble.tex
+++ b/slides/config/preamble.tex
@@ -25,6 +25,7 @@
 \usepackage[utf8]{inputenc}
 \usepackage[shorthands=off,main=brazil]{babel}
 \usepackage{graphicx}
+\usepackage{fancybox}
 
 \usepackage{xcolor}
 \usepackage{setspace}
-- 
GitLab