4.1. Sürdürülebilirlik Kapsamında Değerlendirilmesi
4.1.2. Estetik Ölçütler
Este foi o primeiro autor a tratar o problema segundo a definição dada na seção 2.6. O modelo proposto tem por objetivo minimizar o custo. Além disso, há uma restrição associada a capacidade das arestas cujo limite não deve ser excedido.
Seja:
K : conjunto de árvores multicast;
Tk: árvore multicast para o grupo k ∈ K;
E(Tk) : arestas pertencentes a árvore Tk;
ce : custo da aresta e ∈ E;
be : capacidade da aresta e ∈ E;
sk : nó fonte do grupo multicast k ∈ K;
Dk : nós de destino do grupo multicast k ∈ K;
xk
e : variável de decisão indicando se a aresta e está na árvore Tk.
Com base nos ítens acima tem-se o modelo matemático proposto. Os autores dão ênfase a minimização do custo de configuração de uma solução que permite a criação de árvores multi- castpara um número específico de grupos em uma rede sem violar a capacidade das arestas.
Min |K|
∑
k=1e∈T∑
k ce, e ∈ E(Tk) (3.28) sujeito à: B |K|∑
k=1 xke≤ be onde xke= 1 e ∈ E(Tk) 0 caso contrário (3.29)A restrição 3.29 garante que a capacidade das arestas não será excedida. A restrição de integralidade é garantida pelo fato de que xesó receberá valor 0 ou 1.
Algoritmo
O algoritmo é baseado na heurística de árvore geradora mínima. A ideia é muito semelhante ao KMB, onde um grafo induzido G′= (V′, E′) é processado. Tal grafo possui o conjunto de
vértices V′= s
k∪ Dk, as arestas são os menores caminhos entre os elementos de V′. Em seguida
faz-se a árvore geradora de G′. Por fim, obtém os caminhos reais e remove nós folhas que não
estejam em Dk
O algoritmo utiliza um conceito denominado como Alternative Overhead. Suponha a cons- trução de |K| árvores multicast, em algum momento pode haver concorrência por alguma aresta entre as |K| árvores. Para tal o Alternative Overhead é computado. Portanto, para todas as árvo- res que utilizam a aresta concorrida computa-se o custo das mesmas com o uso da aresta e sem o seu uso (neste caso computa-se uma caminho alternativo para substituir a aresta disputada).
Deste modo, busca-se construir árvores evitando a concorrência por arestas que não tenha capacidade suficiente, ou seja, já estão sendo utilizadas por outras árvores. Portanto, durante a construção de uma árvore Tk se houver a disputa por uma aresta que possa ficar sobrecarre-
gada após a sua utilização, então computa-se o alternative overhead para todas as árvores já construídas. A árvore que apresentar menor alternative overhead deve ceder a aresta para a consutrção da árvore Tk. Isto leva a um controle no aumento do custo de construção de uma
solução, como também corrobora com a contrução coordenada das árvores correspondentes aos grupos multicast.
3.2.2 Modelo Proposto por Low e Wang (1999)
Este trabalho possui um modelo matemático semelhante ao que é definido na seção 3.2.1, a única diferença é o parâmetro B que indica o requerimento tráfego, onde o valor de B é fixo para todas os grupos multicast, ao contrário do modelo proposto por Low e Wang (1999). Neste novo modelo há um Bkcom valor diferente associado a cada grupo k ∈ K. Portanto, a restrição
de capacidade definida na equação 3.29 passa a ser:
|k|
∑
k
Bkxke≤ be onde Xek= 1 se e ∈ Tk (3.30)
O conceito de alternative overhead também é utilizado neste trabalho na resolução do pro- blema como mecanismo para melhorar a qualidade das soluções encontradas.
Algoritmo
Eles propõem uma heurística capaz de encontrar valores objetivo para as soluções abaixo do que foi encontrado em (JIA; WANG, 1997). O algoritmo faz uso da heurística TM proposta por Takahashi e Matsuyama (1980) e um mecanismo para substituir as arestas, cuja capacidade foi excedida durante a constração das árvores.
Para cada d ∈ Dk uma árvore é construída com a heurística TM. Quando uma árvore é
construída verifica-se se há alguma aresta saturada. Se durante a construção de uma árvore Td houver uma aresta saturada, então reconstrói-se a árvore Td
′ sem as arestas saturadas. Em
seguida computa-se o alternative overhead da nova árvore Td
′ . Logo após, faz-se o mesmo para
todas as árvores já construídas que possuam a aresta com capacidade saturada.
Por fim, se o alternative overhead de T′dfor maior que o somatório dos alternative overhe-
adsdas árvores que também utilizam a aresta, então a árvore T′dusará a aresta saturada e todas
as outras árvores usarão caminhos alternativos, caso contrário substitui-se Td
′ por Td.
3.2.3 Modelo proposto por Randaccio e Atzori (2007)
Este trabalho está diretamente relacionado ao MMPP, embora intitulado como GMP (RAN- DACCIO; ATZORI, 2007). Isto se verifica nas comparações realizadas durante os experimen- tos, dado que os autores comparam os resultados com os algoritmos propostos por (CHEN; GUNLUK; YENER, 2000), (WANG; LIANG; JAN, 2002).
Os autores modelaram a rede como um grafo G = (V,E) onde V representa o conjunto de vértices e E representa o conjunto de arestas. Para cada aresta e ∈ E tem-se um valor para capacidade e tráfego associado, são eles cee berespectivamente.
Seja K o conjunto de grupos multicast. Para cada grupo multicast k há um nó fonte sk e um conjunto de nós de destinos Dk. Além disso, cada grupo k possui um requerimento de tráfego
tk.
Uma solução para o problema é representada por um conjunto F = {T1, ..., T|K|}, onde Tk
tem como fonte ske o conjunto de destinos Dk.
Os autores apresentam duas formulações, estas formulações são baseadas em duas funçoes fBe fC. A função fBestá associada a compartilhamento das arestas, onde busca-se a distribuição
de tráfego de modo que os recursos sejam utilizados uniformemente. Nesta avaliação, há uma restrição associada ao delay2, neste caso deve se ter o delay de cada caminho das Tk árvores
com no máximo DMAX - um limite dado.
Já a função fC incorpora tanto o compartilhamento das arestas quanto o delay juntos. O
objetivo é obter um compromisso entre delay de serviço e uso de recursos da rede.
Algoritmo Proposto
Os autores propuseram dois algoritmos genéticos para resolução do problema. O primeiro algoritmo usa a função de custo fB e o segundo algoritmo usa a função de custo fC. Além
disso, foi proposto um método para geração de caminhos alternativos utilizando o algoritmo de caminhos mais curto de Dijkstra.
O algoritmo genético utiliza um critério de seleção elitista passando diretamente para a nova geração os melhores indivíduos. Os piores indivíduos são substituídos por aplicar novamente o crossoverde forma aleatória.
A representação utilizada para o cromossomo consiste em ter um vetor que aponte para um array Ad onde cada linha representa os destinos do grupo multicast. Cada elemento de uma
linha do array Ad tem um caminho associado, ou seja, um caminho da fonte para o destino em questão. Os operadores de crossover e mutação são operadores padrões dos algoritmos genéticos.
O algoritmo foi comparado com (CHEN; GUNLUK; YENER, 2000) e (WANG; LIANG; JAN, 2002). No entanto, foram implementados algoritmos genéticos e utilizadas apenas a fun- ção objetivo de cada trabalho comparado. O objetivo, segundo os autores, foi comparar a dis- tribuição de recursos e delay da rede e não o tempo de execução ou custo.
3.2.4 Modelo Proposto por Yan-lin (2010)
Neste trabalho é apresentado um modelo para o GMP que tem por objetivo minimizar o custo total de construção das árvores multicast. Além disso, duas restrições são adicionadas: capacidade das arestas e delay (YAN-LIN, 2010).
Os autores propuseram também uma nova métrica para construção de menores caminhos da fonte para os destinos devido a competição pelas arestas.
Seja:
G = (V,E) : um grafo onde V é o conjunto de vértices e E é o conjunto de arestas; D: grupo multicast;
di: fonte do grupo multicast i;
Bi: requerimento de tráfego da fonte die grupo i;
∆i: tolerância a delay para fonte die grupo i. C(e) : custo da aresta e ∈ E;
D(e) : delay da aresta e ∈ E; be : capacidade da aresta e ∈ E;
PTi(.) : delay do caminho entre qualquer par de nós na árvore do grupo i .
Uma solução para o problema corresponde a T = T1, ..., Tm. O modelo matemático utilizado
é ilustrado a seguir: Min m
∑
i=1e∈T∑
i C(e) (3.31) Sujeito à: m∑
i=1 Bixie≤ b(e), ∀e ∈ ET (3.32)∑
e∈PTi(di,dj) D(e) ≤ ∆i (3.33)A equação 3.31 garante que o custo da árvore será mínimo. A equação 3.32 garante que não haverá violação da capacidade das arestas. A equação 3.33 garante que não haverá violação do delaydo caminho de um membro do grupo para outro, neste caso levando-se em consideração um limite dado.
Além disso, os autores propuseram uma nova métrica para calcular os novos caminhos da fonte para o grupo D. Tendo em vista que o principal problema é a competição por capacidade das arestas. Esta métrica, segundo os autores, apresenta três pontos importantes:
• construção de caminhos que não violam ∆i;
• qualquer aresta no caminho tem capacidade suficiente; • diminunição da concorrência por capacidade das arestas.
Algoritmo
A inicialização das árvores consiste em aplicar o algoritmo de Dijkstra para cada grupo mul- ticast, criando caminhos da fonte do para cada destino do grupo utilizando a métrica proposta. Pode-se utilizar também o algoritmo proposto por Jia e Wang (1997).
Em seguida, se verifica se o conjunto de árvores, ou seja, a solução não viola as restrições do modelo. Caso haja alguma violação utiliza-se um método interativo para reorganizar as árvores que possuam arestas sobrecarregadas. As arestas são consideradas sobrecarregadas quando o número de grupos (com respectivo requerimento de tráfego) requerendo a aresta é maior que capacidade da mesma. A aresta mais ocupado é aquele que possui maior sobrecarga.
O método verifica se a capacidade das arestas após a construção da solução não foi ex- cedida. Se há alguma aresta com este problema, então selecione o conjunto de árvores que a utilizam e reorganize-as através da substituição da aresta congestionada. Isto é feito para todas os casos de arestas com sobrecarga.