• Nenhum resultado encontrado

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.

Documentos relacionados