• Sonuç bulunamadı

3. BİREYLER VE YÖNTEM

3.2.9. Kujala Patellofemoral Skorlama Sistem

O trabalho de Fischetti e Lodi [11] prop˜oe diversas extens˜oes ao m´etodo de local branching cl´assico descrito na se¸c˜ao 4.1.1:

• Limite de tempo e intensifica¸c˜ao: um novo parˆametro tmax limita o tempo de explo-

ra¸c˜ao das vizinhan¸cas. Caso o limite de tempo tmax seja atingido sem encontrar a

solu¸c˜ao ´otima da vizinhan¸ca N( ¯xn, k) podem acontecer dois casos:

Caso a explora¸c˜ao tenha identificado uma solu¸c˜ao vi´avel ¯xn+1 melhor que a solu¸c˜ao

atual ¯xn, ´e criada uma nova vizinhan¸ca centrada em ¯xn+1. ´E adicionada a restri¸c˜ao

de local branching 4.8 centrada em ¯xn+1 e removida a restri¸c˜ao centrada em ¯xn sem

adicionar seu complemento. A adi¸c˜ao do complemento da restri¸c˜ao centrada ¯xn iria

remover a vizinhan¸ca N( ¯xn, k) do espa¸co de busca, o que seria matematicamente

incorreto pois a vizinhan¸ca ainda pode conter o ´otimo global.

Caso a explora¸c˜ao n˜ao tenha identificado uma solu¸c˜ao vi´avel ¯xn+1 melhor que a

solu¸c˜ao atual ¯xn o parˆametro k ´e reduzido, facilitando a determina¸c˜ao do ´otimo

local dentro do limite de tempo por realizar a explora¸c˜ao de uma vizinhan¸ca menor. • Diversifica¸c˜ao: pode ser utilizado quando a explora¸c˜ao de uma vizinhan¸ca N( ¯xn, k)

n˜ao encontrou uma solu¸c˜ao vi´avel ¯xn+1 melhor que a solu¸c˜ao atual ¯xn. Ao inv´es

de chamar o solver para explorar o restante do espa¸co de busca o parˆametro k ´e aumentado, possibilitando a identifica¸c˜ao de uma solu¸c˜ao vi´avel melhor que a atual por realizar a explora¸c˜ao de uma vizinhan¸ca maior. Este tipo de diversifica¸c˜ao ´e denominado soft diversification.

Ap´os o aumento do parˆametro k ´e poss´ıvel que ainda assim n˜ao seja encontrada uma solu¸c˜ao vi´avel melhor que a atual. Nesse caso o local branching ´e reiniciado utilizando uma vizinhan¸ca centrada em uma solu¸c˜ao pior do que a solu¸c˜ao atual, permitindo a explora¸c˜ao de uma regi˜ao diferente do espa¸co de buscas. Este tipo de diversifica¸c˜ao ´e denominado strong diversification.

• Utiliza¸c˜ao de solu¸c˜oes n˜ao-vi´aveis: para problemas onde determinar uma solu¸c˜ao vi´avel inicial ´e dif´ıcil, ´e sugerida a cria¸c˜ao de vari´aveis de folga para parte do conjunto de restri¸c˜oes, penalizando a inviabilidade na fun¸c˜ao objetivo.

• local branching em vari´aveis inteiras n˜ao-bin´arias: para que seja poss´ıvel realizar o branching em vari´aveis inteiras n˜ao-bin´arias ´e necess´ario criar vari´aveis de folga para representar a varia¸c˜ao de cada vari´avel inteira dentro de limites superior e inferior. A restri¸c˜ao de local branching precisa ser adaptada para contemplar esta altera¸c˜ao como detalhado em [11].

• utiliza¸c˜ao de solu¸c˜ao inicial invi´avel : em sua descri¸c˜ao original, ´e necess´ario uma solu¸c˜ao vi´avel para iniciar a computa¸c˜ao utilizando o local branching. O m´etodo pode ser adaptado para tratar solu¸c˜oes iniciais invi´aveis.

Uma outra extens˜ao proposta para o local branching ´e o Relaxation induced neigh- bourhood search (RINS), apresentado por Danna et al. [6]. O RINS realiza a fixa¸c˜ao de vari´aveis comparando os valores atribu´ıdos `as vari´aveis bin´arias em determinada solu¸c˜ao vi´avel e os valores que estas vari´aveis assumem na relaxa¸c˜ao linear do subproblema atual. RINS explora a id´eia de que fixar o valor de vari´aveis que possuem o mesmo valor na solu¸c˜ao vi´avel e na relaxa¸c˜ao do subproblema atual provavelmente leva a boas solu¸c˜oes, concentrando o esfor¸co computacional do solver em vari´aveis que diferem na solu¸c˜ao vi´avel e na relaxa¸c˜ao linear, sendo as vari´aveis que permaneceram livres as que intuitivamente podem causar uma melhoria mais significativa na fun¸c˜ao objetivo.

Local branching e Variable neighborhood search

Segundo Lazic et al. [25], o local branching pode ser visto tamb´em como uma especializa¸c˜ao do variable neighbourhood search branching (VNSB), m´etodo apresentado por Hansen et al. [16] para resolver MIPs baseando-se em local branching e variable neigh- borhood search (VNS) [28].

O VNS realiza a troca de vizinhan¸cas de uma forma sistem´atica em um algoritmo de busca local, explorando vizinhan¸cas cada vez mais distantes da melhor solu¸c˜ao inteira conhecida e ao mesmo tempo evitando que o algoritmo fique estagnado na vizinhan¸ca de ´otimos locais. O VNSB utiliza id´eias do VNS para direcionar a explora¸c˜ao de vizin- han¸cas, por´em as vizinhan¸cas s˜ao definidas adicionando restri¸c˜oes ao problema de forma semelhante ao local branching.

As diferen¸cas entre VNSB e local branching podem ser enumeradas em:

1. No passo de busca local do local branching ´e explorada uma vizinhan¸ca de tamanho K> 1, onde K ´e um parˆametro do local branching. No VNSB ´e utilizado implicita- mente K = 1.

2. A intensifica¸c˜ao da busca no local branching ´e realizada reduzindo a vizinhan¸ca a ser explorada pela metade, ou seja, a sequˆencia de valores de K ser´a dada por K, K/2, ..., K/2n. O equivalente no VNSB ´e a utiliza¸c˜ao de backward VNS, onde o K inicial possui valor m´aximo e ´e reduzido uma unidade por itera¸c˜ao at´e atingir o valor unit´ario, resultando na sequˆencia de valores de K dada por Kmax, Kmax−1, ..., Kn= 1.

3. A diversifica¸c˜ao no local branching escolhe aleatoriamente uma nova solu¸c˜ao vi´avel a partir de uma vizinhan¸ca dada por um disco no espa¸co de busca com centro na solu¸c˜ao atual e raio Rlb= {r ∈ ℜ : 1 ≤ r ≤ K + dv(K/2)}, onde dv ´e o n´umero

de diversifica¸c˜oes realizadas. A diversifica¸c˜ao no VNSB escolhe aleatoriamente uma nova solu¸c˜ao vi´avel a partir de uma vizinhan¸ca dada por um disco no espa¸co de busca com centro na solu¸c˜ao atual e raio Rvnsb= {r ∈ R+: Katual≤ r ≤ Katual+ Kpasso}, onde

Katual define a vizinhan¸ca atual e Kpasso ´e um parˆametro do VNSB.

Benzer Belgeler