k-in-a-TREE: an integer programming approach

Detalhes bibliográficos
Ano de defesa: 2024
Autor(a) principal: Ferreira, Lucas Saldanha
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Centro Federal de Educação Tecnológica de Minas Gerais
Programa de Pós-Graduação em Modelagem Matemática e Computacional
Brasil
CEFET-MG
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.cefetmg.br//handle/123456789/878
Resumo: Chudnovsky e Seymour (2010) propuseram o algoritmo THREE-IN-A-TREE, que resolve o seguinte problema em tempo polinomial: dado um grafo simples e finito e três vértices fixos, verificar se existe uma árvore induzida contendo esses vértices. Neste trabalho, lidamos com uma generalização natural desse problema, denominada k-IN-A-TREE. Este problema pergunta se um grafo contém uma árvore induzida que abrange k vértices predeterminados. Quando k faz parte da entrada, o problema é conhecido por ser NP-completo, se k ≥ 4 é um número fixo, sua complexidade está aberta. Entretanto existem algoritmos eficientes para casos restritos, como grafos livres de garras, grafos com circunferência pelo menos k e grafos cordais. Neste trabalho apresentamos formulações de programação inteira mista para o problema em questão e mostramos que instâncias com até 25.000 vértices podem ser resolvidas em tempo computacional razoável. Também agregamos mais de três anos de tempo computacional em experimentos projetados para explorar quais variáveis impactam o tempo de execução das várias instâncias geradas; essas análises fornecem um perfil para o problema k-IN-A-TREE em sua forma mais genérica. As contribuições deste trabalho incluem demonstrar que o k-IN-A-TREE pode ser eficientemente resolvido usando Programação Linear Inteira (ILP), permitindo a solução de instâncias de tamanhos relativamente grandes. Além disso, apresentamos análise detalhada que foi conduzida para identificar e caracterizar as principais variáveis que influenciam a dificuldade computacional do problema, fornecendo dados valiosos sobre como a estrutura do grafo, tamanho, conectividade dos vértices e a distribuição dos elementos obrigatórios, afetam a dificuldade. Outra contribuição significativa é a demonstração de que o problema pode ser resolvido de forma eficaz em intervalos de tempo que seriam insuficientes para resolver outros problemas combinatórios complexos, como o Problema do Caixeiro Viajante (TSP). Isso destaca a tratabilidade computacional do problema em ambientes com restrições de tempo, onde outros problemas de complexidade semelhante permanecem mais desafiadores. Essas contribuições avançam o entendimento do problema, estabelecendo um novo marco para a habilidade de resolver o problema e abrindo caminho para futuras explorações teóricas e práticas.
id CEFETMG_39abe05573be5911a646caefcfec862a
oai_identifier_str oai:repositorio.cefetmg.br:123456789/878
network_acronym_str CEFETMG
network_name_str Repositório Institucional do CEFET-MG
repository_id_str
spelling k-in-a-TREE: an integer programming approachTeoria dos grafosComputação gráficaProgramação linearAlgoritmosChudnovsky e Seymour (2010) propuseram o algoritmo THREE-IN-A-TREE, que resolve o seguinte problema em tempo polinomial: dado um grafo simples e finito e três vértices fixos, verificar se existe uma árvore induzida contendo esses vértices. Neste trabalho, lidamos com uma generalização natural desse problema, denominada k-IN-A-TREE. Este problema pergunta se um grafo contém uma árvore induzida que abrange k vértices predeterminados. Quando k faz parte da entrada, o problema é conhecido por ser NP-completo, se k ≥ 4 é um número fixo, sua complexidade está aberta. Entretanto existem algoritmos eficientes para casos restritos, como grafos livres de garras, grafos com circunferência pelo menos k e grafos cordais. Neste trabalho apresentamos formulações de programação inteira mista para o problema em questão e mostramos que instâncias com até 25.000 vértices podem ser resolvidas em tempo computacional razoável. Também agregamos mais de três anos de tempo computacional em experimentos projetados para explorar quais variáveis impactam o tempo de execução das várias instâncias geradas; essas análises fornecem um perfil para o problema k-IN-A-TREE em sua forma mais genérica. As contribuições deste trabalho incluem demonstrar que o k-IN-A-TREE pode ser eficientemente resolvido usando Programação Linear Inteira (ILP), permitindo a solução de instâncias de tamanhos relativamente grandes. Além disso, apresentamos análise detalhada que foi conduzida para identificar e caracterizar as principais variáveis que influenciam a dificuldade computacional do problema, fornecendo dados valiosos sobre como a estrutura do grafo, tamanho, conectividade dos vértices e a distribuição dos elementos obrigatórios, afetam a dificuldade. Outra contribuição significativa é a demonstração de que o problema pode ser resolvido de forma eficaz em intervalos de tempo que seriam insuficientes para resolver outros problemas combinatórios complexos, como o Problema do Caixeiro Viajante (TSP). Isso destaca a tratabilidade computacional do problema em ambientes com restrições de tempo, onde outros problemas de complexidade semelhante permanecem mais desafiadores. Essas contribuições avançam o entendimento do problema, estabelecendo um novo marco para a habilidade de resolver o problema e abrindo caminho para futuras explorações teóricas e práticas.CNPq, CAPES e FAPEMIGChudnovsky and Seymour (2010) proposed the THREE-IN-A-TREE algorithm, which solves the following problem in polynomial time: given three fixed vertices in a simple finite graph, check whether an induced tree containing these vertices exists. In this paper, we deal with a generalization of this problem, referred henceforth as k-IN-A-TREE. The k-IN-A-TREE asks whether a graph contains an induced tree spanning k given vertices. When k is part of the input, the problem is known to be NP-complete. If k ≥ 4 is a fixed given number, its complexity is an open question, although there are efficient algorithms for restricted cases such as claw-free graphs, graphs with girth at least k, and chordal graphs. We present mixed-integer programming formulations for this problem and show that instances with up to 25,000 vertices can be solved in reasonable computational time. We also aggregate over three years of computational time in experiments designed to explore which variables impact the execution time of the several generated instances; these analyses provide a profile for the k-IN-A-TREE problem in its most generic form. The contributions of this work include demonstrating that the k-IN-A-TREE problem can be efficiently solved using Integer Linear Programming (ILP), allowing for the solution of instances of relatively large sizes. In addition, a detailed analysis was conducted to identify and characterize the key variables influencing the computational hardness of the problem, providing valuable insights into how the graph’s structure, including factors such as size, vertex connectivity, and the distribution of mandatory elements, affects its solvability. Another significant contribution is the demonstration that the problem can be effectively solved within time intervals that would be insufficient for solving other complex combinatorial problems, such as the Traveling Salesman Problem (TSP). This highlights the computational tractability of k-IN-A-TREE in time-constrained environments, where other similarly complex problems remain more challenging. These contributions advance the understanding of the problem setting a new benchmark for its solvability and paving the way for future theoretical and practical explorations.Centro Federal de Educação Tecnológica de Minas GeraisPrograma de Pós-Graduação em Modelagem Matemática e ComputacionalBrasilCEFET-MGSantos, Vinícius Fernandes doshttp://lattes.cnpq.br/6270626469557436Santos, Vinícius Fernandes dosMelo, Rafael Augusto deValle, Cristiano ArbexSá, Elisângela Martins deMartins, Flávio Vinícius CruzeiroFerreira, Lucas Saldanha2025-03-21T20:14:06Z2024-10-162025-03-21T20:14:06Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttps://repositorio.cefetmg.br//handle/123456789/878porreponame:Repositório Institucional do CEFET-MGinstname:Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG)instacron:CEFETinfo:eu-repo/semantics/openAccess2025-04-15T15:12:41Zoai:repositorio.cefetmg.br:123456789/878Repositório InstitucionalPUBhttps://repositorio.cefetmg.br/server/oai/requestrepositorio@cefetmg.bropendoar:2025-04-15T15:12:41Repositório Institucional do CEFET-MG - Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG)false
dc.title.none.fl_str_mv k-in-a-TREE: an integer programming approach
title k-in-a-TREE: an integer programming approach
spellingShingle k-in-a-TREE: an integer programming approach
Ferreira, Lucas Saldanha
Teoria dos grafos
Computação gráfica
Programação linear
Algoritmos
title_short k-in-a-TREE: an integer programming approach
title_full k-in-a-TREE: an integer programming approach
title_fullStr k-in-a-TREE: an integer programming approach
title_full_unstemmed k-in-a-TREE: an integer programming approach
title_sort k-in-a-TREE: an integer programming approach
author Ferreira, Lucas Saldanha
author_facet Ferreira, Lucas Saldanha
author_role author
dc.contributor.none.fl_str_mv Santos, Vinícius Fernandes dos
http://lattes.cnpq.br/6270626469557436
Santos, Vinícius Fernandes dos
Melo, Rafael Augusto de
Valle, Cristiano Arbex
Sá, Elisângela Martins de
Martins, Flávio Vinícius Cruzeiro
dc.contributor.author.fl_str_mv Ferreira, Lucas Saldanha
dc.subject.por.fl_str_mv Teoria dos grafos
Computação gráfica
Programação linear
Algoritmos
topic Teoria dos grafos
Computação gráfica
Programação linear
Algoritmos
description Chudnovsky e Seymour (2010) propuseram o algoritmo THREE-IN-A-TREE, que resolve o seguinte problema em tempo polinomial: dado um grafo simples e finito e três vértices fixos, verificar se existe uma árvore induzida contendo esses vértices. Neste trabalho, lidamos com uma generalização natural desse problema, denominada k-IN-A-TREE. Este problema pergunta se um grafo contém uma árvore induzida que abrange k vértices predeterminados. Quando k faz parte da entrada, o problema é conhecido por ser NP-completo, se k ≥ 4 é um número fixo, sua complexidade está aberta. Entretanto existem algoritmos eficientes para casos restritos, como grafos livres de garras, grafos com circunferência pelo menos k e grafos cordais. Neste trabalho apresentamos formulações de programação inteira mista para o problema em questão e mostramos que instâncias com até 25.000 vértices podem ser resolvidas em tempo computacional razoável. Também agregamos mais de três anos de tempo computacional em experimentos projetados para explorar quais variáveis impactam o tempo de execução das várias instâncias geradas; essas análises fornecem um perfil para o problema k-IN-A-TREE em sua forma mais genérica. As contribuições deste trabalho incluem demonstrar que o k-IN-A-TREE pode ser eficientemente resolvido usando Programação Linear Inteira (ILP), permitindo a solução de instâncias de tamanhos relativamente grandes. Além disso, apresentamos análise detalhada que foi conduzida para identificar e caracterizar as principais variáveis que influenciam a dificuldade computacional do problema, fornecendo dados valiosos sobre como a estrutura do grafo, tamanho, conectividade dos vértices e a distribuição dos elementos obrigatórios, afetam a dificuldade. Outra contribuição significativa é a demonstração de que o problema pode ser resolvido de forma eficaz em intervalos de tempo que seriam insuficientes para resolver outros problemas combinatórios complexos, como o Problema do Caixeiro Viajante (TSP). Isso destaca a tratabilidade computacional do problema em ambientes com restrições de tempo, onde outros problemas de complexidade semelhante permanecem mais desafiadores. Essas contribuições avançam o entendimento do problema, estabelecendo um novo marco para a habilidade de resolver o problema e abrindo caminho para futuras explorações teóricas e práticas.
publishDate 2024
dc.date.none.fl_str_mv 2024-10-16
2025-03-21T20:14:06Z
2025-03-21T20:14:06Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.cefetmg.br//handle/123456789/878
url https://repositorio.cefetmg.br//handle/123456789/878
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Centro Federal de Educação Tecnológica de Minas Gerais
Programa de Pós-Graduação em Modelagem Matemática e Computacional
Brasil
CEFET-MG
publisher.none.fl_str_mv Centro Federal de Educação Tecnológica de Minas Gerais
Programa de Pós-Graduação em Modelagem Matemática e Computacional
Brasil
CEFET-MG
dc.source.none.fl_str_mv reponame:Repositório Institucional do CEFET-MG
instname:Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG)
instacron:CEFET
instname_str Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG)
instacron_str CEFET
institution CEFET
reponame_str Repositório Institucional do CEFET-MG
collection Repositório Institucional do CEFET-MG
repository.name.fl_str_mv Repositório Institucional do CEFET-MG - Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG)
repository.mail.fl_str_mv repositorio@cefetmg.br
_version_ 1844153912014143488