• Nenhum resultado encontrado

Mínimo em Algumas Classes de Grafos

5.2 Ciclos Induzidos

Se G é completo do tipo Kr,s então emparelhamento máximo irá satu-rar todos os vértices da menor partição. Como G é completo todo emparelha-mento maximal também irá saturar a menor partição, sendo assim empare-lhamento maximal mínimo terá cardinalidade da menor partição.

O emparelhamento maximal mínimo pode ser obtido por um algoritmo guloso que adiciona pares de vértice no emparelhamento sem repeti-los; como um vértice é adjacente a todos os demais, o emparelhamento irá conter todas as arestas possíveis.

5.2 Ciclos Induzidos

Se Cn é um ciclo induzido com n vértices então emparelhamento máximo é n

2

e emparelhamento maximal mínimo n 3

. Um emparelhamento maximal mínimo M pode ser encontrado da seguinte forma:

1. Dado um ciclo induzido Cn escolher v tal que v ∈ V (Cn); M :=∅ e y := ∅ 2. Achar x tal que x ∈ V (Cn); x∈ N(v) e x 6= y

3. Escolher um dos seguintes casos:

(a) Se x e v não estiverem saturados adicionar aresta vx em M (b) Se x e v estiverem saturados terminar e retornar M

(c) Se somente v estiver saturado terminar e retornar M

(d) Se somente x estiver saturado adicionar aresta vy em M, terminar e retornar M

4. Achar y tal que y ∈ V (Cn) e y ∈ N(x) e y 6= v

5. Achar próximo v tal que v ∈ V (Cn), v ∈ N(y) e v 6= x. Repetir passos de 2 a 4.

Suponha P um caminho com n vértices. O maior emparelhamento pos-sível é um caminho alternante onde se alternam arestas no emparelhamento e arestas fora do emparelhamento.

◦ ◦ ◦ ◦ ◦ ... ◦ ◦ ◦ ◦

Figura 5.1:Um caminho alternante P

Se n for par teremos um emparelhamento perfeito logo emparelha-mento máximo é n

2. Se n for ímpar o último vértice será não saturado, porém os demais são saturados e dessa forma temos um emparelhamento que satura os n vértices menos o último, logo emparelhamento máximo do caminho é n

2

. Como para fechar um ciclo induzido é preciso apenas adicionar uma aresta unindo primeiro e último vértice e como sempre iniciamos emparelhamento saturando o primeiro vértice a aresta adicionada não contribui para empa-relhamento máximo do ciclo que será igual ao empaempa-relhamento máximo do caminho (n

2

).

Considere novamente um caminho P de n vértices. Para obtermos um emparelhamento maximal mínimo neste devemos eliminar o maior número de arestas possíveis, desta forma ao inserirmos uma aresta em M ao invés de alternarmos o caminho com apenas uma aresta podemos alterna-lo com no máximo duas.

◦ ◦ ◦ ◦ ◦ ... ◦ ◦ ◦ ◦

Note então que a cada conjunto de três vértices no caminho dois formarão uma aresta que estará no emparelhamento M, então |M| = n

3; porém, excluindo-se os caminhos com número de vértices sendo múltiplos de três tal divisão poderá deixar resto de um ou dois vértices.

Note que nos caminhos P onde n é múltiplo de três exatamente um dos extremos de P é saturado. Considere que a divisão de n

3 tenha resto um. Seja x o vértice restante. Se x for adjacente ao vértice saturado de P então não será necessário adicionar aresta ao emparelhamento de P . Note agora que P possui seus dois extremos livres e neste caso ao fecharmos um ciclo tal aresta deverá entrar no emparelhamento do ciclo, que terá então cardinalidade n

3

. Porém se x for adjacente ao vértice não saturado de P a aresta incidente a x deverá fazer parte do emparelhamento de P que terá seus dois extremos saturados; sendo assim, ao fecharmos o ciclo não será necessário adicionarmos aresta ao emparelhamento do ciclo. Logo podemos concluir que a cardinalidade do emparelhamento maximal mínimo do ciclo caso a divisão tenha resto um é n

3

.

Agora considere que o resto da divisão de n

3 seja dois. Neste caso não importa como os dois vértices sejam adicionados ao caminho; um deles será adjacente a um vértice livre e sendo assim a aresta incidente a este deverá fazer parte do emparelhamento, que deixará um dos extremos de P saturado. Logo, ao fecharmos o ciclo não será necessário adicionarmos a aresta ao emparelhamento. Concluimos então que a cardinalidade do emparelhamento maximal mínimo de Cncaso resto seja dois também é n

3

.

Já que a cada conjunto de três vértices dois fazem parte do empare-lhamento o algoritmo acha primeiramente os dois vértices que irão participar de M ( {v, x}), em seguida acha y que será o vértice livre. O algoritmo segue adicionando vx a M e pulando y. Desta forma temos um algoritmo que forma um conjunto de 3 vértices {x, y, v}, sempre adicionando uma aresta deste no emparelhamento, com exceção do último conjunto que pode conter menos de 3 vértices, mesmo assim é adicionada uma aresta ao emparelhamento.

5.3 Árvores

Um algoritmo de tempo linear que acha um emparelhamento maximal mínimo em árvore foi desenvolvido por Mitchell e Hedetniemi em [4]. Este al-goritmo acha um conjunto de arestas dominantes mínimo e o transforma em conjunto de arestas dominantes independentes mínimo utilizando o

procedi-mento do apêndice B; tal conjunto equivale a um emparelhamento maximal mínimo como foi discutido no capítulo3.

Um segundo algoritmo foi desenvolvido por Yannakakis e Gavril em [3]. Este algoritmo também possui tempo linear porém este acha diretamente um conjunto de arestas dominantes independentes mínimo bem como um conjunto independente máximo em T (G) (grafo total de G) onde toda aresta e vértice de G será representado por um vértice em T (G) e dois vértices em T (G) serão adjacentes se os elementos correspondentes em G forem adjacentes.

A seguir apresentamos o algoritmo de Yannakakis e Gavril [3] de forma simplificada. Neste demonstramos apenas como obter um emparelha-mento maximal mínimo.

1. Escolha um vértice qualquer para ser raiz, v1. 2. Percorra os demais vértices nomeando-os vj, j > 1.

3. Organize os vértices e arestas de G em níveis da seguinte forma: • nível 0 contém a raiz;

• nível 2i contém os vértices a uma distância i da raiz;

• nível 2i + 1 contém as arestas incidentes aos vértices dos níveis 2i e 2i + 2.

4. M = ∅

5. Começando do nível mais alto até o nível 0 percorra os elementos de cada nível da esquerda para a direita atribuindo valores aos elementos de G segundo à seguinte regra:

(a) Nos níveis 2i para cada vértice vj que não possue valor atribua um valor −vj para todos os elementos adjacentes a vj que estão nos níveis 2i, 2i − 1 e 2i − 2.

(b) Nos níveis 2i − 1 para cada aresta e sem valor, adicione e ao em-parelhamento M e a todos os elementos dos níveis 2i − 1, 2i − 2 e 2i− 3 que são adjacentes a e atribua valor (+) (caso aresta possua um valor −vj atribua o valor +vj).

• Se existir uma aresta e

no nível 2i − 1 que seja adjacente a e e que não possua valor +vj. Adicione a M a aresta xy onde x é o vértice incidente a e

no nível 2i e y é o filho de x que atribuiu valor a x.

(c) No nível 0 se a raiz v1 possuir valor −vj devido a algum filho vj

adicionar a aresta v1vj a M.

Até o momento, devido a estrutura das árvores não foi possível preci-sar a cardinalidade de um emparelhamento maximal mínimo.

Documentos relacionados