Algoritmos para o problema de nilcatenation com aplicação na detecção de lavagem de dinheiro em criptomoedas

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Clynton Augusto Tomacheski Amaral lattes
Orientador(a): Sebastián Alberto Urrutia lattes
Banca de defesa: Thiago Ferreira de Noronha, Jeroen Antonius Maria van de Graaf, João Fernando Machry Sarubbi
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