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.