Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores

Detalhes bibliográficos
Autor(a) principal: Duarte, Bruno
Data de Publicação: 2022
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
Texto Completo: http://repositorio.utfpr.edu.br/jspui/handle/1/29132
Resumo: O Problema da Coloração de Grafos é um dos principais desafios da computação, tendo origem no século XIX, e sendo um dos grandes alicerces da teoria dos grafos. Este consiste em colorir regiões de um grafo, de modo que áreas vizinhas não recebam a mesma cor. Diversos outros problemas podem ser encarados através de uma abordagem via Coloração de Grafos, como a Alocação de Registradores no processo de compilação de programas. Neste, variáveis cujas faixas vivas – tempo entre declaração e último uso – interferem entre si, não podem ser alocadas ao mesmo registrador, e ao menos uma delas deve ser armazenada na memória. Ambos os problemas mencionados pertencem a classe dos NP-Completos, e lidam com gestão de poucos recursos, cores e registradores, sendo necessário trabalhar com inteligência em sua utilização. A resolução exata deste tipo de problema demanda tempo de computação exponencial, sendo as meta-heurísticas alternativas extremamente viáveis para encontrar soluções de qualidade em tempo polinomial. Este trabalho propôs a implementação das meta-heurísticas Busca Tabu e Simulated Annealing, para o Problema da Coloração de Grafos, e para o problema derivado deste, a Alocação de Registradores, com o objetivo de investigar o comportamento destes métodos e compará-los entre si. Após uma série de experimentos com casos de teste do DIMACS, foi possível verificar que a Busca Tabu implementada é capaz de produzir soluções de melhor qualidade para a Coloração de Grafos, enquanto o Simulated Annealing teve menores tempos de execução. Para a Alocação de Registradores, a Busca Tabu demonstrou-se capaz de alcançar melhores soluções, com menor tempo de execução.
id UTFPR-12_1c4932d079c1f17219467278d4db27fa
oai_identifier_str oai:repositorio.utfpr.edu.br:1/29132
network_acronym_str UTFPR-12
network_name_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository_id_str
spelling 2022-07-28T13:14:49Z2022-07-28T13:14:49Z2022-04-07DUARTE, Bruno. Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores. 2022. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2022.http://repositorio.utfpr.edu.br/jspui/handle/1/29132O Problema da Coloração de Grafos é um dos principais desafios da computação, tendo origem no século XIX, e sendo um dos grandes alicerces da teoria dos grafos. Este consiste em colorir regiões de um grafo, de modo que áreas vizinhas não recebam a mesma cor. Diversos outros problemas podem ser encarados através de uma abordagem via Coloração de Grafos, como a Alocação de Registradores no processo de compilação de programas. Neste, variáveis cujas faixas vivas – tempo entre declaração e último uso – interferem entre si, não podem ser alocadas ao mesmo registrador, e ao menos uma delas deve ser armazenada na memória. Ambos os problemas mencionados pertencem a classe dos NP-Completos, e lidam com gestão de poucos recursos, cores e registradores, sendo necessário trabalhar com inteligência em sua utilização. A resolução exata deste tipo de problema demanda tempo de computação exponencial, sendo as meta-heurísticas alternativas extremamente viáveis para encontrar soluções de qualidade em tempo polinomial. Este trabalho propôs a implementação das meta-heurísticas Busca Tabu e Simulated Annealing, para o Problema da Coloração de Grafos, e para o problema derivado deste, a Alocação de Registradores, com o objetivo de investigar o comportamento destes métodos e compará-los entre si. Após uma série de experimentos com casos de teste do DIMACS, foi possível verificar que a Busca Tabu implementada é capaz de produzir soluções de melhor qualidade para a Coloração de Grafos, enquanto o Simulated Annealing teve menores tempos de execução. Para a Alocação de Registradores, a Busca Tabu demonstrou-se capaz de alcançar melhores soluções, com menor tempo de execução.The Graph Coloring Problem is one of the major challenges in computing, having its origins in the 19th century, and being one of the great foundations of graph theory. It consists in coloring regions of a graph, such as vertices or edges, so that neighboring areas do not receive the same color. Several other problems can be faced through an approach via Graph Coloring, such as Register Allocation in the compilation process. Here, variables that intersect their life span – time between declaration and last use – cannot be allocated to the same register, and at least one of them must be stored in memory. Here, variables that intersect their live-ranges – time between declaration and last use – cannot be allocated to the same register, and at least one of them must be stored in memory. Both problems mentioned belong to the NP-Complete class, and deal with the management of few resources, colors and registers, being necessary to work intelligently in their utilization. Finding the exact solution of this type of problem demands exponential computation time, being the meta-heuristics extremely suitable alternatives to find solutions of quality in polynomial time. This work proposed the implementation of Tabu Search and Simulated Annealing meta-heuristics for the Graph Coloring Problem, and for the problem derived from it, Register Allocation, with the objective of investigating the behavior of these methods and comparing them with each other. After a series of experiments with DIMACS test cases, it was possible to verify that the implemented Tabu Search is capable of producing better quality solutions for Graph Coloring, while Simulated Annealing had lower execution times. For Register Allocation, Tabu Search proved to be able to achieve better solutions, with less execution time.porUniversidade Tecnológica Federal do ParanáPato BrancoEngenharia de ComputaçãoUTFPRBrasilDepartamento Acadêmico de Informáticahttps://creativecommons.org/licenses/by-sa/4.0/info:eu-repo/semantics/openAccessCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOGrafos de ligaçãoProgramação heurísticaHeurísticaBond graphsHeuristic programmingHeuristicImplementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradoresImplementation of meta-heuristic for the graph coloring problem and of register allocationinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisPato BrancoBarbosa, Marco Antonio de CastroBarbosa, Marco Antonio de CastroBoss, Silvio Luiz BragattoDenardin, Gustavo WeberDuarte, Brunoreponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))instname:Universidade Tecnológica Federal do Paraná (UTFPR)instacron:UTFPRORIGINALmetaheuristicascoloracaografosregistradores.pdfmetaheuristicascoloracaografosregistradores.pdfapplication/pdf3765407http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/1/metaheuristicascoloracaografosregistradores.pdf23dc911d093d4bd3c94b16362eb3bf5eMD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81290http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/2/license.txtb9d82215ab23456fa2d8b49c5df1b95bMD52TEXTmetaheuristicascoloracaografosregistradores.pdf.txtmetaheuristicascoloracaografosregistradores.pdf.txtExtracted texttext/plain131033http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/3/metaheuristicascoloracaografosregistradores.pdf.txt88eca0387e96b082a194076bac2e3ea6MD53THUMBNAILmetaheuristicascoloracaografosregistradores.pdf.jpgmetaheuristicascoloracaografosregistradores.pdf.jpgGenerated Thumbnailimage/jpeg1222http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/4/metaheuristicascoloracaografosregistradores.pdf.jpg035b7009b211868b58e99d97d1f30a8fMD541/291322022-07-29 03:06:31.104oai:repositorio.utfpr.edu.br:1/29132TmEgcXVhbGlkYWRlIGRlIHRpdHVsYXIgZG9zIGRpcmVpdG9zIGRlIGF1dG9yIGRhIHB1YmxpY2HDp8OjbywgYXV0b3Jpem8gYSBVVEZQUiBhIHZlaWN1bGFyLCAKYXRyYXbDqXMgZG8gUG9ydGFsIGRlIEluZm9ybWHDp8OjbyBlbSBBY2Vzc28gQWJlcnRvIChQSUFBKSBlIGRvcyBDYXTDoWxvZ29zIGRhcyBCaWJsaW90ZWNhcyAKZGVzdGEgSW5zdGl0dWnDp8Ojbywgc2VtIHJlc3NhcmNpbWVudG8gZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCBkZSBhY29yZG8gY29tIGEgTGVpIG5vIDkuNjEwLzk4LCAKbyB0ZXh0byBkZXN0YSBvYnJhLCBvYnNlcnZhbmRvIGFzIGNvbmRpw6fDtWVzIGRlIGRpc3BvbmliaWxpemHDp8OjbyByZWdpc3RyYWRhcyBubyBpdGVtIDQgZG8gCuKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgVHJhYmFsaG9zIGRlIENvbmNsdXPDo28gZGUgQ3Vyc28gZGUgR3JhZHVhw6fDo28gZSAKRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgZGUgSW5mb3JtYcOnw6NvIGUgbm9zIENhdMOhbG9nb3MgRWxldHLDtG5pY29zIGRvIApTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdLCBwYXJhIGZpbnMgZGUgbGVpdHVyYSwgaW1wcmVzc8OjbyBlL291IGRvd25sb2FkLCB2aXNhbmRvIGEgCmRpdnVsZ2HDp8OjbyBkYSBwcm9kdcOnw6NvIGNpZW50w61maWNhIGJyYXNpbGVpcmEuCgogIEFzIHZpYXMgb3JpZ2luYWlzIGUgYXNzaW5hZGFzIHBlbG8ocykgYXV0b3IoZXMpIGRvIOKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgClRyYWJhbGhvcyBkZSBDb25jbHVzw6NvIGRlIEN1cnNvIGRlIEdyYWR1YcOnw6NvIGUgRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgCmRlIEluZm9ybWHDp8OjbyBlIG5vcyBDYXTDoWxvZ29zIEVsZXRyw7RuaWNvcyBkbyBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdIGUgZGEg4oCcRGVjbGFyYcOnw6NvIApkZSBBdXRvcmlh4oCdIGVuY29udHJhbS1zZSBhcnF1aXZhZGFzIG5hIEJpYmxpb3RlY2EgZG8gQ8OibXB1cyBubyBxdWFsIG8gdHJhYmFsaG8gZm9pIGRlZmVuZGlkby4gCk5vIGNhc28gZGUgcHVibGljYcOnw7VlcyBkZSBhdXRvcmlhIGNvbGV0aXZhIGUgbXVsdGljw6JtcHVzLCBvcyBkb2N1bWVudG9zIGZpY2Fyw6NvIHNvYiBndWFyZGEgZGEgCkJpYmxpb3RlY2EgY29tIGEgcXVhbCBvIOKAnHByaW1laXJvIGF1dG9y4oCdIHBvc3N1YSB2w61uY3Vsby4KRepositório de PublicaçõesPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestopendoar:2022-07-29T06:06:31Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)false
dc.title.pt_BR.fl_str_mv Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
dc.title.alternative.pt_BR.fl_str_mv Implementation of meta-heuristic for the graph coloring problem and of register allocation
title Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
spellingShingle Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
Duarte, Bruno
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Grafos de ligação
Programação heurística
Heurística
Bond graphs
Heuristic programming
Heuristic
title_short Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
title_full Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
title_fullStr Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
title_full_unstemmed Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
title_sort Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores
author Duarte, Bruno
author_facet Duarte, Bruno
author_role author
dc.contributor.advisor1.fl_str_mv Barbosa, Marco Antonio de Castro
dc.contributor.referee1.fl_str_mv Barbosa, Marco Antonio de Castro
dc.contributor.referee2.fl_str_mv Boss, Silvio Luiz Bragatto
dc.contributor.referee3.fl_str_mv Denardin, Gustavo Weber
dc.contributor.author.fl_str_mv Duarte, Bruno
contributor_str_mv Barbosa, Marco Antonio de Castro
Barbosa, Marco Antonio de Castro
Boss, Silvio Luiz Bragatto
Denardin, Gustavo Weber
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Grafos de ligação
Programação heurística
Heurística
Bond graphs
Heuristic programming
Heuristic
dc.subject.por.fl_str_mv Grafos de ligação
Programação heurística
Heurística
Bond graphs
Heuristic programming
Heuristic
description O Problema da Coloração de Grafos é um dos principais desafios da computação, tendo origem no século XIX, e sendo um dos grandes alicerces da teoria dos grafos. Este consiste em colorir regiões de um grafo, de modo que áreas vizinhas não recebam a mesma cor. Diversos outros problemas podem ser encarados através de uma abordagem via Coloração de Grafos, como a Alocação de Registradores no processo de compilação de programas. Neste, variáveis cujas faixas vivas – tempo entre declaração e último uso – interferem entre si, não podem ser alocadas ao mesmo registrador, e ao menos uma delas deve ser armazenada na memória. Ambos os problemas mencionados pertencem a classe dos NP-Completos, e lidam com gestão de poucos recursos, cores e registradores, sendo necessário trabalhar com inteligência em sua utilização. A resolução exata deste tipo de problema demanda tempo de computação exponencial, sendo as meta-heurísticas alternativas extremamente viáveis para encontrar soluções de qualidade em tempo polinomial. Este trabalho propôs a implementação das meta-heurísticas Busca Tabu e Simulated Annealing, para o Problema da Coloração de Grafos, e para o problema derivado deste, a Alocação de Registradores, com o objetivo de investigar o comportamento destes métodos e compará-los entre si. Após uma série de experimentos com casos de teste do DIMACS, foi possível verificar que a Busca Tabu implementada é capaz de produzir soluções de melhor qualidade para a Coloração de Grafos, enquanto o Simulated Annealing teve menores tempos de execução. Para a Alocação de Registradores, a Busca Tabu demonstrou-se capaz de alcançar melhores soluções, com menor tempo de execução.
publishDate 2022
dc.date.accessioned.fl_str_mv 2022-07-28T13:14:49Z
dc.date.available.fl_str_mv 2022-07-28T13:14:49Z
dc.date.issued.fl_str_mv 2022-04-07
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv DUARTE, Bruno. Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores. 2022. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2022.
dc.identifier.uri.fl_str_mv http://repositorio.utfpr.edu.br/jspui/handle/1/29132
identifier_str_mv DUARTE, Bruno. Implementação de meta-heurísticas para o problema da coloração de vértices e da alocação de registradores. 2022. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2022.
url http://repositorio.utfpr.edu.br/jspui/handle/1/29132
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv https://creativecommons.org/licenses/by-sa/4.0/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-sa/4.0/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Pato Branco
dc.publisher.program.fl_str_mv Engenharia de Computação
dc.publisher.initials.fl_str_mv UTFPR
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Departamento Acadêmico de Informática
publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Pato Branco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
instname:Universidade Tecnológica Federal do Paraná (UTFPR)
instacron:UTFPR
instname_str Universidade Tecnológica Federal do Paraná (UTFPR)
instacron_str UTFPR
institution UTFPR
reponame_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
collection Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
bitstream.url.fl_str_mv http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/1/metaheuristicascoloracaografosregistradores.pdf
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/2/license.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/3/metaheuristicascoloracaografosregistradores.pdf.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/29132/4/metaheuristicascoloracaografosregistradores.pdf.jpg
bitstream.checksum.fl_str_mv 23dc911d093d4bd3c94b16362eb3bf5e
b9d82215ab23456fa2d8b49c5df1b95b
88eca0387e96b082a194076bac2e3ea6
035b7009b211868b58e99d97d1f30a8f
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)
repository.mail.fl_str_mv
_version_ 1805923045020270592