uma nova formulaÇÃo para o problema de … · 2 notação básica e terminologia um grafo é uma...

12
UMA NOVA FORMULAÇÃO PARA O PROBLEMA DE CORRESPONDÊNCIA DE GRAFOS Renato Gonçalves de Lanes Universidade Federal do Espírito Santo (UFES) Centro Tecnológico - Departamento de Informática Av. Fernando Ferrari, 514 - Goiabeiras - Vitória - ES CEP 29075-910 [email protected] Maria Claudia Silva Boeres Universidade Federal do Espírito Santo (UFES) Centro Tecnológico - Departamento de Informática Av. Fernando Ferrari, 514 - Goiabeiras - Vitória - ES CEP 29075-910 [email protected] RESUMO Considera-se neste trabalho a proposta de uma nova formulação ao problema de corresponder de forma ótima dois grafos a partir de suas informações estruturais e de matrizes de similaridade entre seus vértices e arestas. Uma nova modelagem como um problema de otimização combinatória é definida a partir da proposta de novas funções objetivo. Devido à complexidade do problema, utiliza-se para sua resolução a metaheurística GRASP analisando o seu comportamento de acordo com as funções propostas. Resultados experimentais são obtidos a partir de 6 problemas teste. Mostra-se que o modelo proposto é consistente e a definição de uma das funções como melhor em face dos resultados gerados. Palavras-Chave: Correspondência de Grafos, Funções Objetivo, Otimização Combinatória. Área de classificação principal: Otimização Combinatória ABSTRACT We consider in this work the proposal of a new formulation to the problem of establishment of the best correspondence between two graphs, given the estructural information of the graphs the vertex and the edge similarity matrices. A new model as a combinatorial otimization problem is defined using new proposed objetive functions. Due to the complexity of the problem, we use the GRASP metaheuristic to solve it and analyse its behavior for the proposed functions. Experimental results are obtained from 6 test problems. We show that the proposed model is consistent and we also define one of the functions as the best one according to the experimental results. Key-words: Graph Correspondence, Objetive Functions, Combinatorial Optimization Main Area: Combinatorial Optimization XXXIX SBPO [2655]

Upload: doandan

Post on 28-Nov-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

UMA NOVA FORMULAÇÃO PARA O PROBLEMA DE CORRESPONDÊNCIA DEGRAFOS

Renato Gonçalves de LanesUniversidade Federal do Espírito Santo (UFES)

Centro Tecnológico - Departamento de InformáticaAv. Fernando Ferrari, 514 - Goiabeiras - Vitória - ES

CEP [email protected]

Maria Claudia Silva BoeresUniversidade Federal do Espírito Santo (UFES)

Centro Tecnológico - Departamento de InformáticaAv. Fernando Ferrari, 514 - Goiabeiras - Vitória - ES

CEP [email protected]

RESUMO

Considera-se neste trabalho a proposta de uma nova formulação ao problema de corresponder deforma ótima dois grafos a partir de suas informações estruturais e de matrizes de similaridade entre seusvértices e arestas. Uma nova modelagem como um problema de otimização combinatória é definidaa partir da proposta de novas funções objetivo. Devido à complexidade do problema, utiliza-se parasua resolução a metaheurística GRASP analisando o seu comportamento de acordo com as funçõespropostas. Resultados experimentais são obtidos a partir de 6 problemas teste. Mostra-se que o modeloproposto é consistente e a definição de uma das funções como melhor em face dos resultados gerados.

Palavras-Chave: Correspondência de Grafos, Funções Objetivo, Otimização Combinatória.Área de classificação principal: Otimização Combinatória

ABSTRACT

We consider in this work the proposal of a new formulation to the problem of establishment of thebest correspondence between two graphs, given the estructural information of the graphs the vertex andthe edge similarity matrices. A new model as a combinatorial otimization problem is defined using newproposed objetive functions. Due to the complexity of the problem, we use the GRASP metaheuristic tosolve it and analyse its behavior for the proposed functions. Experimental results are obtained from 6test problems. We show that the proposed model is consistent and we also define one of the functions asthe best one according to the experimental results.

Key-words: Graph Correspondence, Objetive Functions, Combinatorial OptimizationMain Area: Combinatorial Optimization

XXXIX SBPO [2655]

1 Introdução

A motivação para o presente trabalho é criar uma base para aplicações nas quais imagens devem serprocessadas e regiões, ou sub-regiões, devem ser localizadas e identificadas de forma automatizada. Arazão para tal escolha é o crescente número dessas aplicações e a variedade de áreas de utilização.

De forma concisa, dada uma imagem obtida de forma diversa e variável de acordo com o escopodo problema em questão, deseja-se estabelecer uma correspondência entre essa imagem e um atlas. Oreferido atlas é uma imagem padrão, também variável de acordo com o problema, definida por especia-listas, e cuja característica principal é apresentar todas as regiões ou áreas padrões do tipo de imagem aser analisada. Como exemplo, normalmente cita-se o reconhecimento de estruturas cerebrais, de imagensde satélite, reconhecimento de faces entre outros.

Para podermos resolver esse tipo de problema, necessitamos de uma modelagem e de uma estruturaque seja capaz de representar o conhecimento. Grafos são estruturas adequadas para essa representação,ESHERA e FU(1986). Quando grafos são usados para representar objetos ou imagens, os vértices de-signam regiões do objeto ou imagem analisada, enquanto que as arestas designam as relações existentesentre essas regiões.

Na Seção 2 é apresentada a notação básica e a terminologia para o problema. Na Seção 3 o homo-morfismo de grafos é apresentado como uma variação do isomorfismo de grafos, em seguida, na Seção4, uma formulação em otimização combinatória é apresentada, denotada por Problema de Correspon-dência de Grafos. A Seção 5 é o cerne deste trabalho e trata da proposta de novas funções objetivo. NaSeção 6 a modelagem da Seção 5 é utilizada juntamente com o algoritmo GRASP para gerar resultadoscomputacionais apresentados na Seção 7. Na Seção 8 são feitas as conclusões do trabalho e apresentadaspropostas de trabalhos futuros.

2 Notação Básica e Terminologia

Um grafo é uma estrutura G = (V,E) composta de vértices e arestas. V é o conjunto de vértices eE ⊆ V × V (produto cartesiano do conjunto de vértices V por ele mesmo) um conjunto finito de arestasdo grafo G. Se dois vértices de G, u e v ∈ V são ligados por uma aresta e ∈ E, então essa aresta édenotada por e = (u, v) e os vértives u e v são ditos adjacentes ou vizinhos. As arestas, para a aplicaçãoa que propõe o presente trabalho, não são direcionadas, ou seja, (u, v) = (v, u).

Vértices e arestas podem conter informações, então o grafo é chamado grafo de atributos (attributedgraph), sendo que os atributos (informações) podem estar vinculados a vértices, arestas ou a ambos.

Um grafo G = (V,E) admite estrutura de grafo bipartido, se o o seu conjunto de vértices V puderser particionado em dois subconjuntos V1 e V2, tal que V1 ∪ V2 = V e V1 ∩ V2 = 0, e de forma que∀ (u, v) ∈ E ⇒ u ∈ V1, v ∈ V2.

Um grafo G = (V,E) é dito ser conexo se para quaisquer dois vértices u, v ∈ V existe um caminhoentre eles.

3 Isomorfismo de Grafos

Utilizaremos dois grafos para representar as imagens, sendo GM (grafo modelo) o grafo que repre-senta o atlas do problema e GD (grafo de dados) o grafo que representa a imagem a ser comparada aoatlas 1. O objetivo é encontrar uma correspondência um a um dos vértices de dois grafos dados, obede-cendo as adjacências existentes entre os vértices. Essa correspondência aparece na literatura de Teoriados Grafos com o nome Isomorfismo de Grafos, BERGE(1985).

De forma mais formal, dados dois grafos GM = (VM , EM ) e GD = (VD, ED), com |VM | = |VD|,busca-se um mapeamento biunívoco f : VD → VM tal que (u, v) ∈ ED se e somente se (f (u) , f (v)) ∈EM .

1Apesar de envolver uma série de etapas desde a aquisição das imagens até a geração dos grafos, não nos deteremos nessasetapas. Outrossim, partiremos do ponto em que os grafos GM e GD já encontram-se produzidos e precisamente definidos.

XXXIX SBPO [2656]

Entretanto existe um variação do problema de isomorfismo de grafos, conhecida na literatura comohomomorfismo de grafos, em que dados dois grafos GD e GM é impossível estabelecer um mapeamentoisomórfico entre eles, uma vez que o número de vértices e arestas dos grafos a serem mapeados não sãoiguais, e mais que isso, vamos considerar que |VD| > |VM |. Nesses problemas, dado que |VD| > |VM |,o objetivo é encontrar um mapeamento unívoco e não-bijetivo f : VD → VM tal que (u, v) ∈ ED se(f (u) , f (v)) ∈ EM .

A complexidade do problema de isomorfismo de grafos encontra-se ainda em aberto, FORTIN(1996),entretanto, acredita-se que seja NP-Completo. Dessa forma, por tratar-se de uma extensão do problemade isomorfismo de grafos, o homomorfismo deve apresentar complexidade semelhante.

Como pode ser inferido, no homomorfismo de grafos não só é possível estabelecer um mapeamentoentre os grafos GD e GM , como é também possível estabelecer diversos mapeamentos parciais entreeles. Assim, faz-se necessária uma modelagem capaz de gerar e qualificar os diversos mapeamentos.

Definido em BOERES(2002), o Problema de Correspondência de Grafos é uma formulação emotimização combinatória2 para o problema de homomorfismo de grafos.

4 Correspondência de Grafos

Para iniciarmos a resolução do problema de correspondência de grafos precisamos formalizar o sig-nificado de uma solução. Uma solução do problema de estabelecer a correspondência entre dois grafosGD = (VD, ED) e GM = (VM , EM ), é representada por um grafo bipartido G′ = (VM ∪ VD, E′) queé representado computacionalmente por um vetor de tamanho |VD|, onde cada posição do vetor conteráum valor entre 1 e |VM |.

A Figura 1(a) apresenta o grafo bipartido G′ para um exemplo de problema de correspondência degrafos. Cabe ressaltar que as arestas pertencentes ao conjunto E′ estão destacadas em vermelho, ou seja,nenhuma aresta dos grafos GM e GD faz parte desse conjunto. A coloração é também uma forma derepresentação do casamento estabelecido, sendo que cada vértice de GM e todos os vértices de GD como qual foram casados possuem a mesma coloração. A Figura 1(b) apresenta a representação vetorial dografo bipartido que representa uma solução para o problema de correspondência de grafos.

(a) (b)

Figura 1: (a) Grafo bipartido G′ = (VM ∪ VD, E′) e (b) sua representação vetorial

A relação existente entre o índice j de uma posição do vetor que representa uma solução e o valor iarmazenado nessa posição, é dada por h : VD → VM , h(j) = i. No contexto do problema, um índicej representa um vértice do grafo de dados GD, enquanto o valor armazenado i representa um vértice dografo modelo GM .

O domínio do problema de correspondência de grafos formado por todas as possíveis soluções obti-das a partir da permutação dos valores i de cada posição j do vetor que representa uma solução é discretoe finito, porém muito grande mesmo para instâncias pequenas do problema.

2Otimização combinatória é um campo da matemática aplicada que se baseia no uso conjunto de técnicas de combinatória,programação matemática e teoria de desenvolvimento de algoritmos para resolver problemas de otimização formulados sobreestruturas discretas.

XXXIX SBPO [2657]

Conforme proposto em BOERES(2002), a modelagem para resolução do problema consiste de duasfases: a primeira consiste em transformar o problema em um modelo em otimização combinatória e,posteriormente, implementar um algoritmo para resolver o modelo. O presente trabalho está focado naprimeira fase, e o intuito é ampliar e melhorar a modelagem.

4.1 Similaridade de Vértices e Arestas

Além da informação estrutural, são considerados entradas para o problema de correspondência degrafos os atributos de vértices (e/ou arestas). Esses atributos mudam de acordo com o problema emparticular a ser considerado, além disso um vértice (e/ou uma aresta) pode conter um único atributo ouvários, o que também é uma característica do problema. Neste trabalho, não há uso direto dos atributosdos grafos, e sim das matrizes de similaridade construídas a partir desses atributos.

Uma matriz de similaridade de vértices Sv, de dimensões |VM | × |VD|, é composta de elementossv (i, j), tal que i ∈ VM e j ∈ VD. Esses elementos representam o grau de similaridade existente entreum vértice de GM e um vértice de GD e sv (i, j) ∈ [0, 1]. Quanto mais próximo de 1 é o valor sv (i, j),mais similares podem ser considerados os vértices i e j. O valor de similaridade é obtido através dacombinação dos atributos dos vértices, sendo que a forma como essa combinação é feita varia de acordocom o problema ou o método aplicado.

De forma idêntica, temos a matriz de similaridade de arestas Sa, de dimensões |EM | × |ED|, com-posta de elementos sa ((i, i′) , (j, j′)), tal que (i, i′) ∈ EM e (j, j′) ∈ ED. Esses elementos são valoresdifusos, ou seja, sa ((i, i′) , (j, j′)) ∈ [0, 1] e representam o grau de similaridade existente entre umaaresta de GM e uma aresta de GD. Quanto mais próximo de 1 é o valor sa ((i, i′) , (j, j′)), mais similarespodem ser considerados as arestas (i, i′) e (j, j′).

4.2 Restrições

A definição das restrições aplicadas ao problema tem extrema relevância, uma vez que objetivamgarantir a aplicabilidade de uma solução obtida para o problema de correspondência de grafos ao pro-blema real a que esse está sendo aplicado, além disso ajuda no quesito desempenho, uma vez que oespaço de soluções viáveis é reduzido, tornando menor o domínio do problema.

As restrições aqui apresentadas são as mesmas propostas em BOERES(2002) e LANES(2007).

Restrição 1 Existe exatamente um nó i ∈ VM tal que (i,j) ∈ E′, ∀j ∈ VD.

Restrição 2 |Ai| ≥ 1,∀i ∈ VM .

Ai = {j ∈ VD : (i, j) ∈ E′}, chamado Lista de Adjacências, é um subconjunto de vértices j ∈ VD

associados a um vértice i ∈ VM . Lembrando que E′ é o conjunto das arestas do grafo bipartido querepresenta a solução do problema de correspondência inexata de grafos.

Restrição 3 O subgrafo induzido em GD = (VD, ED) por Ai é conexo, ∀i ∈ VM .

Restrição 4 ∀j ∈ VD : j ∈ Ai, i ∈ VM ,⇒ sv (i, j) > 0.

Restrição 5 ∀ (j, j′) ∈ ED: j ∈ Ai ⇒ (j′ ∈ Ai) ∨ (j′ ∈ Ai′ : (i, i′) ∈ EM )

5 Funções Objetivo

Uma função objetivo deve completar a modelagem do problema, fornecendo um recurso para qua-lificar as soluções e assim podermos estabelecer a melhor solução. Para tanto, a função objetivo deverepresentar características que devem ser valorizadas ou penalizadas em uma solução. O grande desafio,proposta e contribuição deste trabalho é definir novas funções objetivo e investigar experimentalmente aqualidade das respostas obtidas.

XXXIX SBPO [2658]

Uma função objetivo ideal, conforme sintetizado por BENGOETXEA(2002), deve ser monotônica,deve evitar ambigüidades, deve levar em consideração apenas os atributos adequados de vértices earestas, e adicionalmente, deve ser fácil de computar, de forma a não comprometer o desempenho doalgoritmo utilizado.

5.1 Função f1

Proposta em BOERES(2002), onde foi escolhida como a função que gerou os melhores resultadosde um estudo com três modelos diferentes, a função f1 será usada neste trabalho em caráter comparativo.

A função f1 é composta de dois termos que representam respectivamente as contribuições das associ-ações entre vértices e entre arestas de GM e GD para medir a qualidade da correspondência representadapor uma solução.

Associações entre vértices e entre arestas com valores altos de similaridade são privilegiadas por f1,enquanto aquelas com valores baixos de similaridade são penalizadas.

O comportamento da função f1 é sensível a valores discriminantes de similaridade entre vértices eentre arestas. Caso isso não ocorra, correspondências não consideradas como as mais adequadas podemser erroneamente encontradas como se fossem soluções de alta qualidade.

A função f1 a ser maximizada é definida como:

f1(G′) =α1

|VM | ∗ |VD|∗ δ1 +

(1− α1)|EM | ∗ |ED|

∗ δ2

onde

δ1 =∑

i∈VM

∑j∈VD

(1− |xij − sv(i, j)|)

δ2 =∑

(i,i′)∈EM

∑(j,j′)∈ED

(1− |max{xijxi′j′ , xijxj′i′} − sa((i, i′), (j, j′))|)

onde α1 é um parâmetro usado para ponderar cada termo de f1. A variável xij assume o valor 1 se aaresta (i, j) ∈ E′, 0 caso contrário.

5.2 Função f2

A idéia inicial na definição da função f2 foi aperfeiçoar a função f1 acrescentando um novo termotal que, uma vez escolhidos pares de arestas tal que (i, i′) ∈ GM e (j, j′) ∈ Mii′ , o novo termo da funçãof2 satisfizesse os seguintes quesitos:

• privilegiar a solução com valores de similaridade altos entre os pares;

• graduar as soluções de acordo com o maior valor de similaridade entre os pares.

Definiremos Mii′ como o conjunto das arestas pertencentes a GD, tal que um dos extremos faça partedo suporte de i e o outro do suporte de i′, independente da ordem. A formulação matemática é dada por:

Mii′ = {(j, j′) ∈ ED : ((j ∈ Ai, j′ ∈ Ai′) ∨ (j ∈ Ai′ , j

′ ∈ Ai)) ∧ (i < i′)}Agora, seja Yii′ o conjunto contendo os valores de similaridade entre uma dada aresta (i, i′) do grafo

GM e as arestas pertencentes ao respectivo conjunto Mii′ . A formulação matemática é dada por:Yii′ = {sa ((i, i′) , (j, j′)) : (j, j′) ∈ Mii′}Para o acréscimo do novo termo à função é necessária a inclusão de um novo parâmetro (α2). A

função f2 é apresentada a seguir:

XXXIX SBPO [2659]

f2(G′) =α1

|VM | ∗ |VD|∗ δ1 +

α2

|EM | ∗ |ED|∗ δ2 +

(1− α1 − α2)Y

∗ δ3

onde

δ1 =∑

i∈VM

∑j∈VD

(1− |xij − sv(i, j)|)

δ2 =∑

(i,i′)∈EM

∑(j,j′)∈ED

(1− |max{xijxi′j′ , xijxj′i′} − sa((i, i′), (j, j′))|)

δ3 =∑

(i,i′)∈EM

max {Yii′} ∗1

|Yii′ |∗

∑x∈Yii′

x

Y =∑

(i,i′)∈EM

|Yii′ |

5.3 Função f3

A função f3 é uma segunda proposta de função objetivo deste trabalho e baseia-se no processointuitivo humano para solução de um problema de correspondência inexata de grafos.

Intuitivamente, o procedimento utilizado é buscar o casamento em que a maior combinação de va-lores de similaridade de vértices determinem a melhor solução. Um raciocínio análogo é válido paraas arestas, entretanto agora devemos considerar uma solução que equilibre o maior valor possível para ocasamento dos vértices simultâneamente ao maior valor possível para o casamento das arestas. A soluçãoencontrada com base nesse raciocínio deve satisfazer as restrições definidas para o problema.

Assim. propomos neste trabalho a seguinte função objetivo f3:

f3(G′) =α1

|VD|∗ δ1 +

(1− α1)Y

∗ δ2

onde

δ1 =∑

i∈VM

∑j∈VD

sv(i, j)

δ2 =∑

(i,i′)∈EM

max {Yii′} ∗∑

x∈Yii′

x

O primeiro termo δ1 representa a soma dos valores dos casamentos estabelecidas entre vértices i ∈

VM e sua lista de adjacências Ai. Quanto maior for o resultado desse somatório melhor o casamentoestabelecido entre os vértices. De forma idêntica, o segundo termo δ2 representa a soma dos valores doscasamentos estabelecidas entre arestas (i, i′) ∈ EM e as arestas pertencentes a ED casadas a elas.

XXXIX SBPO [2660]

6 Algoritmo escolhido para validação experimental das unções

Para produzirmos resultados práticos, e gerarmos soluções reais para o problema, necessitamos dasegunda fase de resolução do problema que consiste na aplicação de um algoritmo para resolver o mo-delo. Para tal utilizaremos o algoritmo GRASP(Greedy Randomized Adaptive Search Procedure3) que éuma metaheurística híbrida de construção seguida de melhoramento para problemas de otimização com-binatória, FEO e RESENDE(1989), FEO e RESENDE(1995),FESTA e RESENDE(2001). A idéia deiteração do GRASP, na sua forma básica, difere bastante das outras metaheurísticas, pois a solução daiteração corrente não é resultado das anteriores, sendo fruto unicamente da semente aleatória da iteração.

A escolha da metaheurística GRASP, além de suas vantagens intrínsecas, é que sua aplicação jáfoi estudada em trabalhos anteriores relacionados ao mesmo problema, como BOERES(2002) e BEN-GOETXEA(2002), gerando bons resultados tanto em relação a qualidade de solução, quanto em relaçãoao desempenho.

6.1 Problemas Teste

Como forma de comparar a utilização das funções f1, f2 e f3 como guias da metaheurística GRASPé necessário a utilização de problemas teste como forma de obter resultados experimentais na busca desoluções.

Os problemas teste devem representar características desejáveis em uma instância do problema decorrespondência de grafos, mas ao mesmo tempo devem estar próximos de situações práticas encontradasem estudos da área.

Devido a inexistência de uma biblioteca de problemas testes obtidos a partir de situações reais, emgeral os experimentos são realizados com problemas teste produzidos artificialmente de diversos tama-nhos e com diversos arranjos.

Inicialmente utilizaremos cinco instâncias básicas cedidas por BOERES(2002) e produzidas artifi-cialmente, cujas matrizes de similaridade de vértices (e/ou arestas) foram geradas aleatoriamente comvalores no intervalo [0, 1], a saber I0, I1, I2, I3, I4, como primeira base de análise. Essas instânciaspossuem correspondências ideais definidas artificialmente e que se espera sejam obtidas pelo algoritmo,apresentadas respectivamente pelas Figuras 2 a 6.

GM GD

Figura 2: I0 - Solução Ideal

GM GD

Figura 3: I1 - Solução Ideal

XXXIX SBPO [2661]

GM GD

Figura 4: I2 - Solução Ideal

GM GD

Figura 5: I3 - Solução Ideal

GM GD

Figura 6: I4 - Solução Ideal

Em um segundo nível de análise, temos o problema teste I5, como um problema mais real construídoa partir da descrição de imagens da área médica, mais precisamente a partir de imagens 2D de umcorte muscular. Os dados desse problema teste, além de uma solução considerada ótima ou ideal, foramcedidos por PERCHANT(2000). A origem do problema é mostrada na Figura 7, enquanto o grafo GM émostrado na Figura 8 e o grafo GD na Figura 9.

(a) (b) (c)

Figura 7: Corte de um músculo: (a) imagem original, (b) atlas, e (c) imagem supersegmentada.

3Em português, Procedimento de Busca Adaptativo, Aleatório e Guloso

XXXIX SBPO [2662]

Figura 8: I5 - GM

Figura 9: I5 - GD - Solução Ideal

7 Resultados Computacionais

O objetivo dessa seção é apresentar os resultados obtidos para cada um dos problemas teste tendosido aplicada a metaheurística GRASP usando as funções objetivo propostas como guias, comparar omaior valor obtido por cada uma das funções (indica a solução classificada como a melhor pela funçãoobjetivo) com o valor obtido pela aplicação da respectiva função à solução ideal do problema teste ecomparar a quantidade de acertos de casamento de vértices gerado pelas funções para os valores de α1 eα2 com o qual o melhor resultado por função foi obtido.

Os resultados obtidos foram gerados utilizando os seguintes valores para os parâmetros: Númeromáximo de iterações = 200; Número máximo de soluções viáveis geradas = 25; Número máximo detentativas para construção de uma solução viável = 100. Além disso, foi utilizado microcomputador comprocessador Intel Pentium IV de 2,67Ghz e 256MB de memória RAM, rodando o sistema operacionalLinux, distribuição UBUNTU 6.06 LTS. A linguagem de programação empregada foi o ANSI C.

Nas Tabelas 1 a 6 são apresentados os resultados obtidos pela aplicação das funções objetivo f1, f2

e f3, sendo que a coluna f∗ representa o valor obtido pelas funções objetivo para as soluções ideais, ea coluna TM refere-se ao tempo médio obtido por iteração do algoritmo e a coluna iteração indica aiteração da metaheurística GRASP em que foi encontrada a melhor solução.

XXXIX SBPO [2663]

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.396539 0 0.396539 0.000180

f1 0.5 - 0.614238 0 0.614238 0.0002000.8 - 0.831937 0 0.831937 0.0002000.1 0.1 0.441101 0 0.441101 0.0002000.1 0.8 0.338614 0 0.338614 0.000200

I0 f2 0.8 0.1 0.846578 0 0.846578 0.0002200.3 0.3 0.527670 0 0.527670 0.0002000.3 0.4 0.513029 0 0.513029 0.0002200.4 0.3 0.585595 0 0.585595 0.0002200.2 - 0.984985 0 0.984985 0.000200

f3 0.5 - 0.969480 0 0.969480 0.0002000.8 - 0.953975 0 0.953975 0.000200

Tabela 1: Resultados para I0

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.333047 0 0.333047 0.000320

f1 0.5 - 0.520238 0 0.520238 0.0003200.8 - 0.707429 19 0.707429 0.0003000.1 0.1 0.442775 0 0.583403 0.0003600.1 0.8 0.292166 1 0.295979 0.000360

I1 f2 0.8 0.1 0.728944 0 0.736482 0.0003400.3 0.3 0.481506 0 0.539800 0.0003200.3 0.4 0.459991 0 0.496130 0.0003400.4 0.3 0.522388 0 0.561668 0.0003400.2 - 0.865454 1 0.914679 0.000360

f3 0.5 - 0.893409 1 0.913757 0.0003600.8 - 0.921364 1 0.921364 0.000340

Tabela 2: Resultados para I1

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.333971 38 0.335652 0.000480

f1 0.5 - 0.509794 3 0.509794 0.0005200.8 - 0.685618 17 0.686900 0.0004600.1 0.1 0.449541 158 0.616143 0.0005600.1 0.8 0.297135 29 0.299489 0.000560

I2 f2 0.8 0.1 0.707390 12 0.716307 0.0005800.3 0.3 0.479668 158 0.543129 0.0005600.3 0.4 0.457895 25 0.497925 0.0005600.4 0.3 0.516503 25 0.557530 0.0006000.2 - 0.936067 29 0.978694 0.000540

f3 0.5 - 0.940042 29 0.951059 0.0005400.8 - 0.944017 194 0.948634 0.000540

Tabela 3: Resultados para I2

XXXIX SBPO [2664]

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.579582 3 0.579582 0.000580

f1 0.5 - 0.637507 79 0.637507 0.0006000.8 - 0.695433 59 0.695433 0.0006000.1 0.1 0.577452 80 0.606121 0.0006200.1 0.8 0.562421 139 0.562421 0.000640

I3 f2 0.8 0.1 0.697580 139 0.697580 0.0006400.3 0.3 0.607480 14 0.611553 0.0006200.3 0.4 0.605333 14 0.606230 0.0006400.4 0.3 0.624641 14 0.626405 0.0006200.2 - 0.990521 139 0.990521 0.000620

f3 0.5 - 0.976487 139 0.976487 0.0006200.8 - 0.962452 139 0.962452 0.000640

Tabela 4: Resultados para I3

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.600643 82 0.601188 0.001300

f1 0.5 - 0.675357 136 0.675357 0.0013400.8 - 0.750071 23 0.750399 0.0013400.1 0.1 0.550620 102 0.784059 0.0014200.1 0.8 0.572599 4 0.578897 0.001420

I4 f2 0.8 0.1 0.746931 4 0.751209 0.0014200.3 0.3 0.612989 102 0.704333 0.0014200.3 0.4 0.616128 102 0.672520 0.0014800.4 0.3 0.641033 102 0.696282 0.0014200.2 - 0.979203 4 0.985502 0.001400

f3 0.5 - 0.973355 4 0.974977 0.0014000.8 - 0.967507 120 0.967507 0.001360

Tabela 5: Resultados para I4

Problema Teste Função α1 α2 f∗ Iteração f TM0.2 - 0.202456 42 0.202731 0.003420

f1 0.5 - 0.387643 106 0.386610 0.0034600.8 - 0.572829 106 0.574542 0.0034200.1 0.1 0.531910 82 0.873895 0.0035600.1 0.8 0.189625 21 0.214588 0.003540

I5 f2 0.8 0.1 0.621727 42 0.656563 0.0035400.3 0.3 0.459776 42 0.621828 0.0035600.3 0.4 0.410878 42 0.527938 0.0035400.4 0.3 0.472607 42 0.591219 0.0035600.2 - 0.957784 178 0.972926 0.003540

f3 0.5 - 0.939889 178 0.943540 0.0035400.8 - 0.921994 178 0.914155 0.003540

Tabela 6: Resultados para I5

7.1 Análise dos Resultados

Com base nos resultados obtidos e apresentados nas Tabelas 1 a 6, verificamos que as funções f1

e f3 foram nitidamente superiores à função f2 em todos os quesitos, mas principalmente em termos deXXXIX SBPO [2665]

qualidade de resposta. Nem mesmo a calibração dos parâmetros α1 e α2 puderam tornar os resultadosda função f2 equiparáveis aos das outras duas. Para o problema teste I5, por exemplo, o número máximode acertos de casamento de vértices foi de 5, obtido para α1 = 0.8 e α2 = 0.1, conforme Tabela 6.

A f1 e f3 geraram resultados extremamente equivalentes para os problemas teste menores . Entre-tanto, para o problema teste I5 os resultados obtidos pela f1 foram bastante superiores, obtendo comonúmero máximo de acertos de correspondência de 21 vértices (para α = 0.5), enquanto a f3 obteve 8acertos (para α = 0.8), segundo dados da Tabela 6.

Com relação ao tempo médio por iteração os resultados obtidos para as três funções objetivo foramequivalentes. No que tange ao número de iterações necessárias para chegar a melhor resposta, não foipossível estabelecer uma linha geral de correlação entre as três funções. A função f2 evidentementeutilizou mais iterações para obter a melhor resposta que as funções f1 e f3, novamente com resultadosequivalentes.

8 Conclusões e Trabalhos Futuros

Os resultados se mostraram bastante satisfatórios, uma vez que a modelagem do problema mostrou-se consistente, e os resultados permitiram indicar a função f1 como mais adequada para aplicação aoproblema.

Entretanto, neste ponto cabe uma ressalva de que os resultados foram obtidos para exemplos quaseque na totalidade gerados artificialmente, o que implica que a qualidade de sua representação não égarantida. Uma dúvida ainda restante após o término deste trabalho é se eventualmente a função f1 teriaaproveitado uma característica presente nestes exemplos e somente por isso gerado melhores resultados.Assim, fica aqui a indicação para trabalhos futuros de maior investigação no processo precedente aoestudado neste trabalho, quanto à geração das matrizes de similaridade. Além disso, a geração de umbanco de exemplos preferencialmente obtidos em situações práticas é uma necessidade evidente. A partirdesses novos exemplos cabe uma nova investigação das funções aqui propostas para ratificar ou retificaras conclusões aqui feitas.

9 Referências Bibliográficas

BENGOETXEA, E. Inexact Graph Matching Using Estimation of Distribution Algorithms. Tese deDoutorado, École Nationale Supérieure des Télécommunications, Paris, 2002.BERGE, C. Graphs. North-Holland, Amsterdam, 1985.BOERES, M.C.S. Heurísticas para reconhecimento de cenas por correspondência de grafos. Tese(Doutorado em Engenharia de Produção) - Universidade Federal do Rio de Janeiro, COPPE, Rio deJaneiro, 2002.ESHERA, M. A.; FU, K.-S. An image understanding system using attributed symbolic representa-tion and inexact graph matching. IEEE Transactions on Pattern Analysis and Machine Intelligence,8(5):604−618, 1986.FEO, T.A.; RESENDE, M.G.C. A probabilistic heuristic for a computationally difficult set coveringproblem. Operations Research Letters, 8:67−71, 1989.FEO, T.A.; RESENDE, M.G.C. Greedy randomized adaptive search procedures. Journal of GlobalOptimization, 6: 109-133, 1995.FESTA, P.; RESENDE, M.G.C. GRASP: An annotated bibliography. Essays and surveys in metaheuris-tic, editado por RIBEIRO, C.C. e HANSEN, P., págs 325-367. Kluwer Academic Publishers, 2001.FORTIN, S. The graph isomorphism problem, 1996.LANES, R.G. de Uma Nova Formulação para o Problema de Correspondência de Grafos. Projetode Graduação (Engenharia de Computação) - Universidade Federal do Espírito Santo, Vitória, 2007.PERCHANT, A. Morphisme de graphes d’attributs flous pour la reconnaissance structurelle descènes: Application à la reconnaissance de structures anatomiques saines et pathologiques sur des IRM.Tese de Doutorado, École Nationale Supérieure des Télécommunications, Paris, 2000.

XXXIX SBPO [2666]