Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas
Ano de defesa: | 2020 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | , , |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de Minas Gerais
|
Programa de Pós-Graduação: |
Programa de Pós-Graduação em Ciência da Computação
|
Departamento: |
ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
|
País: |
Brasil
|
Palavras-chave em Português: | |
Link de acesso: | http://hdl.handle.net/1843/36705 |
Resumo: | O saldo de um vértice é definido como a diferença entre a soma dos pesos dos arcos que entram e os arcos que saem do vértice. Desse modo, o Problema de Nilcatenation (NCP) consiste em encontrar um subconjunto de arcos que pode ser removido de forma segura sem alterar o saldo de nenhum vértice. Neste trabalho, o NCP é analisado teoricamente, sendo apresentada uma nova prova de NP-completude e uma primeira formulação de programação linear inteira. Além disso, são introduzidos um conjunto de grafos de teste e mecanismos para o préprocessamento de instâncias do problema. Ademais, é apresentada uma comparação experimental do método de branch and bound e do algoritmo de local branching, ambos utilizando a formulação proposta. Os resultados experimentais mostram que o algoritmo de local branching tem desempenho melhor ou igual na maioria das instâncias de teste. Seguindo a premissa que o histórico de transações de uma criptomoeda pode ser modelado como um grafo, este trabalho também propõe a aplicação do NCP como um mecanismo para identificar padrões de lavagem de dinheiro em um grafo gerado a partir das transações de uma criptomoeda. Considerando a crescente importância das criptomoedas no mundo financeiro e que uma de suas principais criticas é sua exploração em atividades ilícitas, este trabalho apresenta um estudo experimental dos algoritmos propostos aplicados à transações extraídas do histórico de transações do Bitcoin, demonstrando a viabilidade da aplicação do NCP neste contexto. |
id |
UFMG_5ab4667405df44a18a301313d3e80a8a |
---|---|
oai_identifier_str |
oai:repositorio.ufmg.br:1843/36705 |
network_acronym_str |
UFMG |
network_name_str |
Repositório Institucional da UFMG |
repository_id_str |
|
spelling |
Sebastián Alberto Urrutiahttp://lattes.cnpq.br/6852348890045723Anolan Yamilé Milanés BarrientosThiago Ferreira de NoronhaJeroen Antonius Maria van de GraafJoão Fernando Machry Sarubbihttp://lattes.cnpq.br/1490965457257086Clynton Augusto Tomacheski Amaral2021-07-09T14:31:59Z2021-07-09T14:31:59Z2020-12-18http://hdl.handle.net/1843/36705O saldo de um vértice é definido como a diferença entre a soma dos pesos dos arcos que entram e os arcos que saem do vértice. Desse modo, o Problema de Nilcatenation (NCP) consiste em encontrar um subconjunto de arcos que pode ser removido de forma segura sem alterar o saldo de nenhum vértice. Neste trabalho, o NCP é analisado teoricamente, sendo apresentada uma nova prova de NP-completude e uma primeira formulação de programação linear inteira. Além disso, são introduzidos um conjunto de grafos de teste e mecanismos para o préprocessamento de instâncias do problema. Ademais, é apresentada uma comparação experimental do método de branch and bound e do algoritmo de local branching, ambos utilizando a formulação proposta. Os resultados experimentais mostram que o algoritmo de local branching tem desempenho melhor ou igual na maioria das instâncias de teste. Seguindo a premissa que o histórico de transações de uma criptomoeda pode ser modelado como um grafo, este trabalho também propõe a aplicação do NCP como um mecanismo para identificar padrões de lavagem de dinheiro em um grafo gerado a partir das transações de uma criptomoeda. Considerando a crescente importância das criptomoedas no mundo financeiro e que uma de suas principais criticas é sua exploração em atividades ilícitas, este trabalho apresenta um estudo experimental dos algoritmos propostos aplicados à transações extraídas do histórico de transações do Bitcoin, demonstrando a viabilidade da aplicação do NCP neste contexto.The balance of a vertex is the difference between the sum of weights of arcs entering and arcs leaving the vertex. Thus, the Nilcatenation Problem (NCP) consists of finding a subset of arcs that can be safely removed without modifying the balance of any vertex. This work analyses theoretically the NCP, presenting a new NP-completeness proof, and a first linear integer programming formulation. Moreover, it introduces a set of benchmark instances and mechanisms for NCP instances preprocessing. Furthermore, the study presents an experimental comparison of the branch and bound methoda nd the local branching algorithm, both of them using the proposed formulation. Experimental results show that the local branching algorithm performs equally or better on the majority of the instances. Following the premise that it is possible to model a cryptocurrency transaction history as a graph, this work also expands the NCP usage as a method to detect possible money laundering patterns on graphs generated by cryptocurrency transactions. Considering the cryptocurrencies growing importance in the financial world and one of its main critiques is that cryptocurrencies can be exploited as a tool for criminal activity, this work presents an experimental study of the proposed algorithms applied to transactions extracted from Bitcoin’s blockchain, demonstrating the viability of the NCP employment in such context.CNPq - Conselho Nacional de Desenvolvimento Científico e TecnológicoporUniversidade Federal de Minas GeraisPrograma de Pós-Graduação em Ciência da ComputaçãoUFMGBrasilICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃOComputação – TesesAlgoritmos em Grafos – TesesProgramação Inteira – TeseLavagem de Dinheiro – TesesBitcoin – TesesAlgoritmo em grafosProgramação inteiraLavagem de dinheiroBitcoinAlgoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedasinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMGORIGINALDissertação Mestrado - Clynton Tomacheski.pdfDissertação Mestrado - Clynton Tomacheski.pdfapplication/pdf1826677https://repositorio.ufmg.br/bitstream/1843/36705/3/Dissertac%cc%a7a%cc%83o%20Mestrado%20-%20Clynton%20Tomacheski.pdf294c5430980e39344163fe6296ab8348MD53LICENSElicense.txtlicense.txttext/plain; charset=utf-82118https://repositorio.ufmg.br/bitstream/1843/36705/4/license.txtcda590c95a0b51b4d15f60c9642ca272MD541843/367052021-07-09 11:32:00.182oai:repositorio.ufmg.br:1843/36705TElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEgRE8gUkVQT1NJVMOTUklPIElOU1RJVFVDSU9OQUwgREEgVUZNRwoKQ29tIGEgYXByZXNlbnRhw6fDo28gZGVzdGEgbGljZW7Dp2EsIHZvY8OqIChvIGF1dG9yIChlcykgb3UgbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBkZSBhdXRvcikgY29uY2VkZSBhbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIChSSS1VRk1HKSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZSBpcnJldm9nw6F2ZWwgZGUgcmVwcm9kdXppciBlL291IGRpc3RyaWJ1aXIgYSBzdWEgcHVibGljYcOnw6NvIChpbmNsdWluZG8gbyByZXN1bW8pIHBvciB0b2RvIG8gbXVuZG8gbm8gZm9ybWF0byBpbXByZXNzbyBlIGVsZXRyw7RuaWNvIGUgZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIGZvcm1hdG9zIMOhdWRpbyBvdSB2w61kZW8uCgpWb2PDqiBkZWNsYXJhIHF1ZSBjb25oZWNlIGEgcG9sw610aWNhIGRlIGNvcHlyaWdodCBkYSBlZGl0b3JhIGRvIHNldSBkb2N1bWVudG8gZSBxdWUgY29uaGVjZSBlIGFjZWl0YSBhcyBEaXJldHJpemVzIGRvIFJJLVVGTUcuCgpWb2PDqiBjb25jb3JkYSBxdWUgbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIHBvZGUsIHNlbSBhbHRlcmFyIG8gY29udGXDumRvLCB0cmFuc3BvciBhIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGTUcgcG9kZSBtYW50ZXIgbWFpcyBkZSB1bWEgY8OzcGlhIGRlIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBmaW5zIGRlIHNlZ3VyYW7Dp2EsIGJhY2stdXAgZSBwcmVzZXJ2YcOnw6NvLgoKVm9jw6ogZGVjbGFyYSBxdWUgYSBzdWEgcHVibGljYcOnw6NvIMOpIG9yaWdpbmFsIGUgcXVlIHZvY8OqIHRlbSBvIHBvZGVyIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIG5lc3RhIGxpY2Vuw6dhLiBWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRlIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHB1YmxpY2HDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiBkZWNsYXJhIHF1ZSBvYnRldmUgYSBwZXJtaXNzw6NvIGlycmVzdHJpdGEgZG8gZGV0ZW50b3IgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIHBhcmEgY29uY2VkZXIgYW8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgbmVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3Ugbm8gY29udGXDumRvIGRhIHB1YmxpY2HDp8OjbyBvcmEgZGVwb3NpdGFkYS4KCkNBU08gQSBQVUJMSUNBw4fDg08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9Dw41OSU8gT1UgQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyBUQU1Cw4lNIEFTIERFTUFJUyBPQlJJR0HDh8OVRVMgRVhJR0lEQVMgUE9SIENPTlRSQVRPIE9VIEFDT1JETy4KCk8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBzZSBjb21wcm9tZXRlIGEgaWRlbnRpZmljYXIgY2xhcmFtZW50ZSBvIHNldSBub21lKHMpIG91IG8ocykgbm9tZXMocykgZG8ocykgZGV0ZW50b3IoZXMpIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkYSBwdWJsaWNhw6fDo28sIGUgbsOjbyBmYXLDoSBxdWFscXVlciBhbHRlcmHDp8OjbywgYWzDqW0gZGFxdWVsYXMgY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4KRepositório de PublicaçõesPUBhttps://repositorio.ufmg.br/oaiopendoar:2021-07-09T14:32Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false |
dc.title.pt_BR.fl_str_mv |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
title |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
spellingShingle |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas Clynton Augusto Tomacheski Amaral Algoritmo em grafos Programação inteira Lavagem de dinheiro Bitcoin Computação – Teses Algoritmos em Grafos – Teses Programação Inteira – Tese Lavagem de Dinheiro – Teses Bitcoin – Teses |
title_short |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
title_full |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
title_fullStr |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
title_full_unstemmed |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
title_sort |
Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas |
author |
Clynton Augusto Tomacheski Amaral |
author_facet |
Clynton Augusto Tomacheski Amaral |
author_role |
author |
dc.contributor.advisor1.fl_str_mv |
Sebastián Alberto Urrutia |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/6852348890045723 |
dc.contributor.advisor-co1.fl_str_mv |
Anolan Yamilé Milanés Barrientos |
dc.contributor.referee1.fl_str_mv |
Thiago Ferreira de Noronha |
dc.contributor.referee2.fl_str_mv |
Jeroen Antonius Maria van de Graaf |
dc.contributor.referee3.fl_str_mv |
João Fernando Machry Sarubbi |
dc.contributor.authorLattes.fl_str_mv |
http://lattes.cnpq.br/1490965457257086 |
dc.contributor.author.fl_str_mv |
Clynton Augusto Tomacheski Amaral |
contributor_str_mv |
Sebastián Alberto Urrutia Anolan Yamilé Milanés Barrientos Thiago Ferreira de Noronha Jeroen Antonius Maria van de Graaf João Fernando Machry Sarubbi |
dc.subject.por.fl_str_mv |
Algoritmo em grafos Programação inteira Lavagem de dinheiro Bitcoin |
topic |
Algoritmo em grafos Programação inteira Lavagem de dinheiro Bitcoin Computação – Teses Algoritmos em Grafos – Teses Programação Inteira – Tese Lavagem de Dinheiro – Teses Bitcoin – Teses |
dc.subject.other.pt_BR.fl_str_mv |
Computação – Teses Algoritmos em Grafos – Teses Programação Inteira – Tese Lavagem de Dinheiro – Teses Bitcoin – Teses |
description |
O saldo de um vértice é definido como a diferença entre a soma dos pesos dos arcos que entram e os arcos que saem do vértice. Desse modo, o Problema de Nilcatenation (NCP) consiste em encontrar um subconjunto de arcos que pode ser removido de forma segura sem alterar o saldo de nenhum vértice. Neste trabalho, o NCP é analisado teoricamente, sendo apresentada uma nova prova de NP-completude e uma primeira formulação de programação linear inteira. Além disso, são introduzidos um conjunto de grafos de teste e mecanismos para o préprocessamento de instâncias do problema. Ademais, é apresentada uma comparação experimental do método de branch and bound e do algoritmo de local branching, ambos utilizando a formulação proposta. Os resultados experimentais mostram que o algoritmo de local branching tem desempenho melhor ou igual na maioria das instâncias de teste. Seguindo a premissa que o histórico de transações de uma criptomoeda pode ser modelado como um grafo, este trabalho também propõe a aplicação do NCP como um mecanismo para identificar padrões de lavagem de dinheiro em um grafo gerado a partir das transações de uma criptomoeda. Considerando a crescente importância das criptomoedas no mundo financeiro e que uma de suas principais criticas é sua exploração em atividades ilícitas, este trabalho apresenta um estudo experimental dos algoritmos propostos aplicados à transações extraídas do histórico de transações do Bitcoin, demonstrando a viabilidade da aplicação do NCP neste contexto. |
publishDate |
2020 |
dc.date.issued.fl_str_mv |
2020-12-18 |
dc.date.accessioned.fl_str_mv |
2021-07-09T14:31:59Z |
dc.date.available.fl_str_mv |
2021-07-09T14:31:59Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1843/36705 |
url |
http://hdl.handle.net/1843/36705 |
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.publisher.none.fl_str_mv |
Universidade Federal de Minas Gerais |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação |
dc.publisher.initials.fl_str_mv |
UFMG |
dc.publisher.country.fl_str_mv |
Brasil |
dc.publisher.department.fl_str_mv |
ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO |
publisher.none.fl_str_mv |
Universidade Federal de Minas Gerais |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFMG instname:Universidade Federal de Minas Gerais (UFMG) instacron:UFMG |
instname_str |
Universidade Federal de Minas Gerais (UFMG) |
instacron_str |
UFMG |
institution |
UFMG |
reponame_str |
Repositório Institucional da UFMG |
collection |
Repositório Institucional da UFMG |
bitstream.url.fl_str_mv |
https://repositorio.ufmg.br/bitstream/1843/36705/3/Dissertac%cc%a7a%cc%83o%20Mestrado%20-%20Clynton%20Tomacheski.pdf https://repositorio.ufmg.br/bitstream/1843/36705/4/license.txt |
bitstream.checksum.fl_str_mv |
294c5430980e39344163fe6296ab8348 cda590c95a0b51b4d15f60c9642ca272 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG) |
repository.mail.fl_str_mv |
|
_version_ |
1797972994892496896 |