Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos

Detalhes bibliográficos
Autor(a) principal: Mattioli, Lucas Vasconcelos
Data de Publicação: 2018
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Biblioteca Digital de Monografias da UnB
Texto Completo: http://bdm.unb.br/handle/10483/21568
Resumo: Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade UnB Gama, 2018.
id UNB-2_da1e4c274de83503907ffc6673374a9f
oai_identifier_str oai:bdm.unb.br:10483/21568
network_acronym_str UNB-2
network_name_str Biblioteca Digital de Monografias da UnB
repository_id_str 11571
spelling Mattioli, Lucas VasconcelosCosta Júnior, Edson Alves daMATTIOLI, Lucas Vasconcelos. Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos. 2018. 59 f., il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)—Universidade de Brasília, Brasília, 2018.http://bdm.unb.br/handle/10483/21568Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade UnB Gama, 2018.O problema do troco é uma especialização do problema da mochila, sendo possível resolvêlo com um algoritmo de programação dinâmica. É possível, também, resolver o problema utilizando um algoritmo guloso quando o sistema de moedas do problema é canônico. Este trabalho analisa e compara os tempos de execução dos algoritmos de programação dinâmica, guloso e de um algoritmo de determinação da canonicidade em cima de sistemas de moedas gerados pseudo-aleatoriamente. Os algoritmos foram implementados e seus tempos mensurados na linguagem de programação C++, seguindo o padrão C++14. Foi verificado que, apenas para sistemas de moedas com tamanhos pequenos (até 76 moedas), o algoritmo de programação dinâmica se mostra mais eficiente que os algoritmos guloso e de determinação de canonicidade, este necessário para garantir a canonicidade do sistema e assegurar a correção do algoritmo guloso.Submitted by Luanna Maia (luanna@bce.unb.br) on 2019-02-28T14:20:55Z No. of bitstreams: 3 license_text: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) 2018_LucasVasconcelosMattioli_tcc.pdf: 868734 bytes, checksum: d8e84a3144ba5ad454aea096121e36b3 (MD5)Approved for entry into archive by Luanna Maia (luanna@bce.unb.br) on 2019-02-28T14:21:09Z (GMT) No. of bitstreams: 3 license_text: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) 2018_LucasVasconcelosMattioli_tcc.pdf: 868734 bytes, checksum: d8e84a3144ba5ad454aea096121e36b3 (MD5)Made available in DSpace on 2019-02-28T14:21:09Z (GMT). No. of bitstreams: 3 license_text: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) 2018_LucasVasconcelosMattioli_tcc.pdf: 868734 bytes, checksum: d8e84a3144ba5ad454aea096121e36b3 (MD5)The coin change problem is a specialization of the knapsack problem, being possible to solve it with a dynamic programming algorithm. It is also possible to solve the problem using a greedy algorithm when the coin system is canonical. This work analyzes and compares the execution times of dynamic programming, greedy and canonicity determination algorithms on top of pseudo-randomly generated coin systems. The algorithms were implemented in the C++ programming language, following the C++ 14 standard. It was verified that, solely for coin systems with small sizes (up to 76 coins), the dynamic programming algorithm is more efficient than the greedy one, along with the canonicity determination algorithm, which is used to guarantee the canonicity of the system and enable the use of the greedy algorithm.Algoritmos de computadorProgramação dinâmicaComparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis2019-02-28T14:21:09Z2019-02-28T14:21:09Z2018-12-11info:eu-repo/semantics/openAccessporreponame:Biblioteca Digital de Monografias da UnBinstname:Universidade de Brasília (UnB)instacron:UNBLICENSElicense.txtlicense.txttext/plain1817http://bdm.unb.br/xmlui/bitstream/10483/21568/5/license.txt21554873e56ad8ddc69c092699b98f95MD55CC-LICENSElicense_urllicense_urltext/plain49http://bdm.unb.br/xmlui/bitstream/10483/21568/2/license_url4afdbb8c545fd630ea7db775da747b2fMD52license_textlicense_textapplication/octet-stream0http://bdm.unb.br/xmlui/bitstream/10483/21568/3/license_textd41d8cd98f00b204e9800998ecf8427eMD53license_rdflicense_rdfapplication/octet-stream0http://bdm.unb.br/xmlui/bitstream/10483/21568/4/license_rdfd41d8cd98f00b204e9800998ecf8427eMD54ORIGINAL2018_LucasVasconcelosMattioli_tcc.pdf2018_LucasVasconcelosMattioli_tcc.pdfapplication/pdf868734http://bdm.unb.br/xmlui/bitstream/10483/21568/1/2018_LucasVasconcelosMattioli_tcc.pdfd8e84a3144ba5ad454aea096121e36b3MD5110483/215682019-02-28 11:21:09.244oai:bdm.unb.br:10483/21568w4kgbmVjZXNzw6FyaW8gY29uY29yZGFyIGNvbSBhIGxpY2Vuw6dhIGRlIGRpc3RyaWJ1acOnw6NvIG7Do28tZXhjbHVzaXZhLAphbnRlcyBxdWUgbyBkb2N1bWVudG8gcG9zc2EgYXBhcmVjZXIgbmEgQmlibGlvdGVjYSBEaWdpdGFsIGRhIFByb2R1w6fDo28gCkRpc2NlbnRlIGRhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEuIFBvciBmYXZvciwgbGVpYSBhCmxpY2Vuw6dhIGF0ZW50YW1lbnRlLiBDYXNvIG5lY2Vzc2l0ZSBkZSBhbGd1bSBlc2NsYXJlY2ltZW50byBlbnRyZSBlbQpjb250YXRvIGF0cmF2w6lzIGRlOiBiZG1AYmNlLnVuYi5iciBvdSAzMTA3LTI2ODcuCgpMSUNFTsOHQSBERSBESVNUUklCVUnDh8ODTyBOw4NPLUVYQ0xVU0lWQQoKQW8gYXNzaW5hciBlIGVudHJlZ2FyIGVzdGEgbGljZW7Dp2EsIG8vYSBTci4vU3JhLiAoYXV0b3Igb3UgZGV0ZW50b3IgZG9zCmRpcmVpdG9zIGRlIGF1dG9yKToKCmEpIENvbmNlZGUgw6AgVW5pdmVyc2lkYWRlIGRlIEJyYXPDrWxpYSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUKcmVwcm9kdXppciwgY29udmVydGVyIChjb21vIGRlZmluaWRvIGFiYWl4byksIGNvbXVuaWNhciBlL291CmRpc3RyaWJ1aXIgbyBkb2N1bWVudG8gZW50cmVndWUgKGluY2x1aW5kbyBvIHJlc3Vtby9hYnN0cmFjdCkgZW0KZm9ybWF0byBkaWdpdGFsIG91IGltcHJlc3NvIGUgZW0gcXVhbHF1ZXIgbWVpby4KCmIpIERlY2xhcmEgcXVlIG8gZG9jdW1lbnRvIGVudHJlZ3VlIMOpIHNldSB0cmFiYWxobyBvcmlnaW5hbCwgZSBxdWUKZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYQp0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2UsIHRhbnRvIHF1YW50byBsaGUgw6kKcG9zc8OtdmVsIHNhYmVyLCBvcyBkaXJlaXRvcyBkZSBxdWFscXVlciBvdXRyYSBwZXNzb2Egb3UgZW50aWRhZGUuCgpjKSBTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSBjb250w6ltIG1hdGVyaWFsIGRvIHF1YWwgbsOjbyBkZXTDqW0gb3MKZGlyZWl0b3MgZGUgYXV0b3IsIGRlY2xhcmEgcXVlIG9idGV2ZSBhdXRvcml6YcOnw6NvIGRvIGRldGVudG9yIGRvcwpkaXJlaXRvcyBkZSBhdXRvciBwYXJhIGNvbmNlZGVyIMOgIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEgb3MgZGlyZWl0b3MKcmVxdWVyaWRvcyBwb3IgZXN0YSBsaWNlbsOnYSwgZSBxdWUgZXNzZSBtYXRlcmlhbCBjdWpvcyBkaXJlaXRvcyBzw6NvIGRlCnRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvIG91CmNvbnRlw7pkbyBkbyBkb2N1bWVudG8gZW50cmVndWUuCgpTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSDDqSBiYXNlYWRvIGVtIHRyYWJhbGhvIGZpbmFuY2lhZG8gb3UgYXBvaWFkbwpwb3Igb3V0cmEgaW5zdGl0dWnDp8OjbyBxdWUgbsOjbyBhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEsIGRlY2xhcmEgcXVlCmN1bXByaXUgcXVhaXNxdWVyIG9icmlnYcOnw7VlcyBleGlnaWRhcyBwZWxvIHJlc3BlY3Rpdm8gY29udHJhdG8gb3UKYWNvcmRvLgoKQSBVbml2ZXJzaWRhZGUgZGUgQnJhc8OtbGlhIGlkZW50aWZpY2Fyw6EgY2xhcmFtZW50ZSBvKHMpIHNldSAocykgbm9tZSAocykKY29tbyBvIChzKSBhdXRvciAoZXMpIG91IGRldGVudG9yIChlcykgZG9zIGRpcmVpdG9zIGRvIGRvY3VtZW50bwplbnRyZWd1ZSwgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBwYXJhIGFsw6ltIGRhcyBwZXJtaXRpZGFzIHBvcgplc3RhIGxpY2Vuw6dhLgo=Biblioteca Digital de Monografiahttps://bdm.unb.br/PUBhttp://bdm.unb.br/oai/requestbdm@bce.unb.br||patricia@bce.unb.bropendoar:115712019-02-28T14:21:09Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)false
dc.title.pt_BR.fl_str_mv Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
title Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
spellingShingle Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
Mattioli, Lucas Vasconcelos
Algoritmos de computador
Programação dinâmica
title_short Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
title_full Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
title_fullStr Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
title_full_unstemmed Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
title_sort Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos
author Mattioli, Lucas Vasconcelos
author_facet Mattioli, Lucas Vasconcelos
author_role author
dc.contributor.author.fl_str_mv Mattioli, Lucas Vasconcelos
dc.contributor.advisor1.fl_str_mv Costa Júnior, Edson Alves da
contributor_str_mv Costa Júnior, Edson Alves da
dc.subject.keyword.pt_BR.fl_str_mv Algoritmos de computador
Programação dinâmica
topic Algoritmos de computador
Programação dinâmica
description Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade UnB Gama, 2018.
publishDate 2018
dc.date.submitted.none.fl_str_mv 2018-12-11
dc.date.accessioned.fl_str_mv 2019-02-28T14:21:09Z
dc.date.available.fl_str_mv 2019-02-28T14:21:09Z
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 MATTIOLI, Lucas Vasconcelos. Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos. 2018. 59 f., il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)—Universidade de Brasília, Brasília, 2018.
dc.identifier.uri.fl_str_mv http://bdm.unb.br/handle/10483/21568
identifier_str_mv MATTIOLI, Lucas Vasconcelos. Comparativo entre a estratégia gulosa e a programação dinâmica para o problema do troco com sistemas de moedas canônicos. 2018. 59 f., il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)—Universidade de Brasília, Brasília, 2018.
url http://bdm.unb.br/handle/10483/21568
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.source.none.fl_str_mv reponame:Biblioteca Digital de Monografias da UnB
instname:Universidade de Brasília (UnB)
instacron:UNB
instname_str Universidade de Brasília (UnB)
instacron_str UNB
institution UNB
reponame_str Biblioteca Digital de Monografias da UnB
collection Biblioteca Digital de Monografias da UnB
bitstream.url.fl_str_mv http://bdm.unb.br/xmlui/bitstream/10483/21568/5/license.txt
http://bdm.unb.br/xmlui/bitstream/10483/21568/2/license_url
http://bdm.unb.br/xmlui/bitstream/10483/21568/3/license_text
http://bdm.unb.br/xmlui/bitstream/10483/21568/4/license_rdf
http://bdm.unb.br/xmlui/bitstream/10483/21568/1/2018_LucasVasconcelosMattioli_tcc.pdf
bitstream.checksum.fl_str_mv 21554873e56ad8ddc69c092699b98f95
4afdbb8c545fd630ea7db775da747b2f
d41d8cd98f00b204e9800998ecf8427e
d41d8cd98f00b204e9800998ecf8427e
d8e84a3144ba5ad454aea096121e36b3
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)
repository.mail.fl_str_mv bdm@bce.unb.br||patricia@bce.unb.br
_version_ 1801493078323757056