2.2 Sample Average Approximation with Variable Sample Size
2.2.2 Line search method with variable sample size
Krejić et. al [KK13] apresentam um método para a resolução do problema (2.12) por meio de uma modificação do algoritmo de Busca Linear com condição de Armijo, variando em cada iteração a função objetivo a ˆfNk(x) =
1 Nk
P
i∈SkF (x, ξi), onde Nk é o tamanho de uma amostra aleatória
de ξ1, ..., ξN. A ideia principal, ao igual que no Algoritmo de Dynamic Sample Size Gradient, é em
cada iteração modificar o tamanho Nkdependendo do avanço na sequência {xk}. A diferença radica
em que em [KK13] permitem o aumento ou a diminuição de Nk dependendo do comprimento do
intervalo de confiança obtido e do decrescimento na função estimada.
Definamos a quantidade de decrescimento dmk como a redução no modelo linear, i.e.,
dmk= mNkk(xk) − mNkk(xk+1) = −αkdTk∇ ˆfNk(xk), (2.18) onde mNk k (xk+ s) = ˆfNk(xk) + s T∇ ˆf Nk(xk).
Seja o intervalo de confiança da estimação ˆfNk definido por
P
f (xk) ∈ [ ˆfNk(xk) − c, ˆfNk(xk) + c]
= δ. Definamos a falta de precisão εNk
δ (xk) como uma aproximação do comprimento do intervalo de
confiança (i.e, εNk δ (xk) ≈ c) dada por: εNk δ (xk) = ˆσNk(xk) αδ √ Nk , (2.19) onde ˆ σN2k(xk) = 1 Nk− 1 Nk X i=1 F (xk, ξi) − ˆfNk(xk) 2
e αδ é o quantil da Distribuição Normal(0,1).
Se quer comparar a falta de precisão e quantidade de decrescimento de tal forma que diminuam na mesma proporção. Assim, se a quantidade de decrescimento é grande comparado com Falta de precisão (dmk> εNδk(xk)), então se diminui o tamanho amostral, pois se assume que não se precisava
uma amostra Nk tão grande para melhorar a precisão. No caso contrário em que a quantidade
de decrescimento é pequeno comparado com a falta de precisão (dmk < εNδk(xk)), se aumenta o
tamanho amostral pois se quer melhorar a estimação de ˆfNk e ficar mais próximos da precisão
desejada.
A seguir se apresentam 3 algoritmos que resumem a ideia de Krejić et. al [KK13]. O Algo- ritmo 2.2.2 é o algoritmo central do método proposto, nele se especifica a regra de atualização de xk+1. O Algoritmo 2.2.3 realiza um estudo, dependendo do análise explicado, de um possível can-
didato a tamanho amostral da seguinte iteração, e finalmente, o Algoritmo2.2.4escolhe o tamanho Nk+1 e atualiza a cota inferior Nkmin de decrescimento possível para Nk.
Analisando a estrutura do Algoritmo 2.2.2temos que noPasso 3quando já estamos numa solu- ção local para o problema de minimização de ˆfNk (i.e, k∇ ˆfNk(xk)k = 0) e a amplitude do intervalo
de confiança da estimação é igual a zero (εNk
δ = 0) o tamanho amostral aumenta numa unidade,
pois a certeza pela qual afirmamos que o f(x) é exatamente ˆfNk(x)é baixa. No caso em que ε Nk δ > 0
e k∇ ˆfNk(xk)k = 0, o tamanho aumenta ao Nmax pois com probabilidade δ o f(xk) pertence a esse
intervalo obtido. Basicamente, de forma geral, quando com probabilidade alta o f(x) pertence ao intervalo [ ˆfNk(xk) − ε
Nk
δ , ˆfNk(xk) + ε Nk
δ ], decidimos aumentar a precisão da nossa aproximação a
16 CONCEITOS 2.2 Algoritmo 2.2.2. Line search method with variable sample size
Entrada: Sejam x0 ∈ Rd, N0min, Nmax∈ R, δ, η, β, γ3, ν1 ∈ (0, 1)e η0 < 1dados.
k ← 0. Nk← N0min.
Passo 1. Gere a amostra ξ1, ..., ξNmax.
Passo 2. Avalie ˆfNk(xk) e calcule ε Nk δ usando (2.19). Passo 3. Se k∇ ˆfNk(xk)k = 0e Nk< Nmax 3.1. Se εNk δ > 0 então Nk= Nmax, N min
k = Nmax e volte aoPasso 2.
3.2. Se εNk
δ = 0 então Nk= Nk+ 1, Nkmin= Nkmin+ 1e volte aoPasso 2.
Passo 4. Encontre dk tal que dTk∇ ˆfNk(xk) < 0.
Passo 5. (Condição de Armijo) Encontre αk tal que: ˆ
fNk(xk+ αkdk) ≤ ˆfNk(xk) + ηαkd T
k∇ ˆfNk(xk).
Passo 6. xk+1 = xk+ αkdk e calcule dmk usando (2.18).
Passo 7. Determine o candidato a tamanho amostral Nk+ usando o Algoritmo2.2.3. Passo 8. Determine o tamanho amostral Nk+1 usando o Algoritmo2.2.4.
Passo 9. Determine a cota inferior do tamanho amostral Nk+1min.
Passo 10. k ← k + 1 e volte aoPasso 2 até que k∇ ˆfNk(xk)k = 0e Nk= Nmax.
Algoritmo 2.2.3. Candidato a tamanho amostral Entrada: Sejam dmk, Nkmin, εNk
δ (xk) e ν1∈ (0, 1) dados. Passo 1. Se dmk = εNk δ (xk)então Nk+= Nk. Passo 2. Se dmk > εNk δ (xk) então Nk+ ← Nk. Enquanto dmk > ε Nk+ δ (xk) e Nk+ > Nkmin faça Nk+= Nk+− 1. Passo 3. Se dmk < εNδk(xk) 3.1. Se dmk ≥ ν1εNδk(xk) então Nk+← Nk. Enquanto dmk< ε Nk+ δ (xk)e N + k < Nmax faça N + k = N + k + 1. 3.2. Se dmk < ν1εNδk(xk) então Nk+ = Nmax.
2.2 SAMPLE AVERAGE APPROXIMATION WITH VARIABLE SAMPLE SIZE 17 Algoritmo 2.2.4. Determinação do candidado a tamanho amostral
Entrada: Sejam Nk+, Nk, xk, xk+1, η0 < 1 dados.
Passo 1. Determine Nk+1 1.1. Se N+ k ≥ Nk então Nk+1 = N + k. 1.2. Se N+ k < Nk calcule ρk= ˆ fN+ k (xk) − ˆfN + k (xk+1) ˆ fNk(xk) − ˆfNk(xk+1) Se ρk≥ η0 então Nk+1 = Nk+ senão Nk+1 = Nk.
Passo 2. Atualize Nkmin
2.1. Se Nk+1≤ Nk então Nk+1min = Nkmin.
2.2. Se Nk+1> Nk então
2.2.1. Se o tamanho Nk+1 nunca foi usado, então Nk+1min = Nkmin.
2.2.2. Se alcançou-se suficiente decrescimento em ˆfNk+1 desde a última vez que Nk+1
foi usada, então Nmin
k+1 = Nkmin.
2.2.3. Se não alcançou-se suficiente decrescimento em ˆfNk+1 desde a última vez que
Nk+1 foi usada, então Nk+1min= Nk+1.
No Algoritmo 2.2.4 noPasso 2 se diz que “não alcançou-se suficiente decrescimento em ˆfNk+1”
se, dadas as constantes γ3, ν1 ∈ (0, 1)é satisfeita a seguinte desigualdade:
ˆ
fNk+1(xh(k)) − ˆfNk+1(xk+1) < γ3ν1(k + 1 − h(k)) ε Nk+1 δ (xk+1)
onde h(k) é a iteração na qual começou-se a usar o tamanho Nk+1 por última vez.
As seguintes suposições a enunciar são necessárias para garantir que a convergência do Algo- ritmo2.2.2 seja alcançada.
Suposição 2.2.1. Existe uma constante M1 > 0 tal que para todo ξ, x temos que k∇xF (x, ξ)k ≤
M1.
Suposição 2.2.2. Existem constantes MF, MF F tal que para todo ξ, x temos que MF ≤ F (x, ξ) ≤
MF F.
Suposição 2.2.3. A sequência de direções dk geradas no Passo 4 do Algoritmo 2.2.2 é acotada e satisfaz que se limk∈KdTk∇ ˆfNk(xk) = 0 então limk∈K∇ ˆfNk(xk) = 0 para qualquer subconjunto de
iterações K.
As Suposições 2.2.1 e 2.2.2 garantem que o Teorema de Intercambiabilidade entre o gradiente e a integral (i.e. Teorema 2.1.3) é satisfeito, e portanto, ∇E(f(x)) = E(∇f(x)). Assim, juntando esse fato com a Lei de grandes números, obtemos que limN →∞∇ ˆfN(x) = ∇f (x). A Suposição2.2.3
permite definir no algoritmo qualquer direção dk de descida.
O seguinte lema permite garantir que o tamanho amostral Nmax é alcançado, e que a partir de
certa iteração, esse Nk = Nmaxé mantido. Este lema é esencial para a demostração do Teorema2.2.2
que enuncia a convergência do Algoritmo 2.2.2 a algum ponto estacionário da função ˆfNmax. Os
detalhes das demostrações podem ser encontrados em [KK13]. No texto abaixo abordaremos apenas algumas ideias principais.
Lema 2.2.1. [KK13] Suponha que são satisfeitas as Suposições 2.2.1 e 2.2.2. Suponha também que existe uma constante positiva ω e k1 ∈ N tais que εNδk(xk) ≥ ω para todo k ≥ k1. Logo, o
Algoritmo 2.2.2 termina em um número finito de iterações com Nk = Nmax ou existe k2 ∈ N tal
18 CONCEITOS 2.2 Demonstração.
Como a condição de parada do Algoritmo 2.2.2 é k∇ ˆfNmax(xk)k = 0, o foco da demostração é
provar que o algoritmo faz um número finito de iterações. Especificamente, mostraremos que Nk
não fica “encalhado” em tamanhos menores a Nmaxe que a sequência não oscila, isto é, existe ¯k ∈ N
tal que para todo k ≥ ¯k temos que Nk= Nmax.
• Nmax é alcançado:
Suponha que existe n2 > n1 tal que para todo k ≥ n2 temos que Nk = N0 < Nmax. Logo,
pela condição de Armijo temos que: ˆ
fN0(xk+1) ≤ ˆfN0(xk) + ηαk∇ ˆfN0(xk)Tdk.
Assim, para cada s ∈ {0, 1, 2, ...} temos ˆ fN0(xn 2+s) ≤ ˆfN0(xn2+s−1) + ηαn2+s−1∇ ˆfN0(xn2+s−1) Td n2+s−1 ≤ ˆfN0(xn 2) + η s−1 X j=0 αn2+j∇ ˆfN0(xn2+j) Td n2+j.
Logo, pela Suposição 2.2.2 obtemos −η s−1 X j=0 αn2+j∇ ˆfN0(xn2+j) Td n2+j ≤ ˆfN0(xn2) − ˆfN0(xn2+s) ≤ ˆfN0(xn2) − MF
e, tomando o limite, temos que 0 ≤ ∞ X j=0 −αn2+j∇ ˆfN0(xn 2+j) Td n2+j ≤ ˆ fN0(xn 2) − MF η := C. (2.20)
Como a serie em (2.20) é convergente vale que lim j→∞−αn2+j∇ ˆfN 0(xn 2+j) Td n2+j = 0. (2.21)
Agora, observando o Algoritmo 2.2.3 e usando a suposição de que εNk
δ (xk) ≥ ω temos que
unicamente o caso dmk < ν1εNδk (Passo 3) não pode acontecer pois levaria a Nk+1 ≥ Nk+ =
Nmax> N0, porem, para todo k > n2, −αk∇ ˆfN0(xk)Tdk≥ ν1ω. Assim,
lim inf
k→∞ −αk∇ ˆfN
0(xk)Tdk≥ ν1ω > 0
que contradiz (2.21). Portanto, demonstrou-se que a sequência dos tamanhos amostrais Nk
não fica encalhado em tamanhos menores a Nmax.
• A sequência de Nk não oscila:
Suponha o contrário, quer dizer, para todo ¯k existe k ≥ ¯k tal que Nk< Nmaximplicando assim
que Nmin
k < Nmax. Assim, a atualização no Passo 2.2.3 do Algoritmo2.2.4ocorre um número
finito de vezes. Logo, as outras 3 possibilidades (Passos 2.1, 2.2.1, 2.2.2, onde Nmin
k+1= Nkmin)
ocorrem um número infinito de vezes. Portanto, existe r1 tal que para todo k ≥ r1 temos que
acontece alguma das seguintes opções: 1. Nk+1 ≤ Nk.
2. Nk+1 > Nk e não temos usado o tamanho amostral Nk+1 antes.
3. Nk+1 > Nk e se tem suficiente decrescimento em ˆfNk+1 desde a última vez que Nk+1 foi
2.2 SAMPLE AVERAGE APPROXIMATION WITH VARIABLE SAMPLE SIZE 19 Seja ¯N o tamanho máximo que é usado infinitas iterações, e seja ¯K0 o conjunto de iterações
onde Nk cambia a ¯N. Assim, seja r2 a iteração tal que para todo k ∈ ¯K0, k ≥ r2 Nk é
aumentado a ¯N.
Defina r = max{r1, r2} e ¯K = ¯K0 ∩ {r, r + 1, ...}. Como ¯K possui os elementos de ¯K0,
então, a opção de Nk+1 ≤ Nk não acontece. Logo, se tiramos de ¯K a iteração onde Nk+1
foi usado pela primeira vez, exclui-se a segunda opção anterior também. Assim, para todo k ∈ ¯K ∩ {n1, n1+ 1, ...}temos que ˆ fN¯(xh(k)) − ˆfN¯(xk+1) ≥ γ3ν1(k + 1 − h(k))ε ¯ N δ (xk+1) ≥ γ3ν1ε ¯ N δ (xk+1) ≥ γ3ν1ω > 0.
O que afirma que estamos diminuindo ˆfN¯ por uma constante positiva infinitas vezes. Mas,
pela Suposição 2.2.2 (que implica que ˆfN(x) é acotada superior e inferiormente) chegamos a
uma contradição.
Portanto, a sequência de Nk não oscila e Nkmin = Nmax para algum k. Finalmente, juntando
com a primeira parte da demonstração obtemos que existe uma iteração k1 ∈ N tal que para
cada k ≥ k1 temos que Nk = Nmax.
Teorema 2.2.2. [KK13] Suponha que são satisfeitas Suposições 2.2.1-2.2.3. Suponha também que existe uma constante positiva ω e k1 ∈ N tal que εNk
δ (xk) ≥ ω para todo k ≥ k1 e que a sequência
{xk} gerada pelo Algoritmo 2.2.2 é limitada. Então, o Algoritmo 2.2.2 termina depois de um nú- mero finito de iterações num ponto estacionário da função ˆfNmax ou todo ponto de acumulação da
sequência {xk} é um ponto estacionário de ˆfNmax.
Demonstração.
A demostração detalhada pode ser encontrada em [KK13]. A ideia da prova é estudar o caso em que a cada iteração se tem uma direção de descida, gerando assim infinitas iterações. O Lema2.2.1
garante a existência de k1 ∈ N tal que para todo k ≥ k1 temos que Nk = Nmax. Queremos provar
que existe um conjunto K0
⊆ N tal que limk∈K0xk= x∗ e ∇ ˆfN max(x
∗) = lim
k∈K0∇ ˆfN
max(xk) = 0.
Pela equação (2.21), temos que lim
k→∞αk∇ ˆfNmax(xk) Td
k= 0. (2.22)
Logo, seja x∗ um ponto de acumulação da sequência {x
k}k∈N, isto implica que existe K ⊆ N tal
que limk∈Kxk= x∗. Temos assim as seguintes opções:
• A sequência dos passos {αk}k∈K é limitada inferiormente, então, (2.22) implica que
lim
k∈K∇ ˆfNmax(xk) Td
k= 0.
e portanto, pela Suposição2.2.3 obtemos que ∇ ˆfNmax(x
∗) = lim
k∈K∇ ˆfNmax(xk) = 0.
• Existe K1 ⊆ K tal que limk∈K1αk = 0isto garante a existência de um subconjunto K2 ⊆ K1
tal que para todo k ∈ K2 existe α0k tal que αk= βα0k e
ˆ fNmax(xk+ α 0 kdk) > ˆfNmax(xk) + ηα 0 k∇ ˆfNmax(xk) Td k.
Pelo teorema de Valor médio temos que a expressão anterior pode ser reescrita como dTk∇ ˆfNmax(xk+ tkα
0
kdk) > η∇ ˆfNmax(xk) Td
20 CONCEITOS 2.3 para algum tk ∈ [0, 1]. Depois, como as direções dk estão acotadas, existe d∗ e K3 ⊆ K2 tal
que limk∈K3dk= d ∗. Assim, ∇ ˆfNmax(x ∗)Td∗> η∇ ˆf Nmax(x ∗)Td∗.
Logo, como η ∈ (0, 1) e ∇ ˆfNmax(xk) Td
k < 0 para todo k, juntando com a Suposição 2.2.3
obtemos que: lim k∈K3 ∇ ˆfNmax(xk) Td k= ∇ ˆfNmax(x ∗ )Td∗ = 0 e assim, lim k∈K3 ∇ ˆfNmax(xk) = 0.