Employing Machine Learning for Blockchain Selection

State: completed by Ratanak Hy

Over the past years, several Blockchain (BC) implementation were created focusing on solving particular problems (e.g., low transactions per second, lack of security, or non-sustainable consensus mechanism) from early BC implementations. This increase in the number of BC implementations is evident when one verifies the CoinMarketCap website [2], where more than 5000 cryptocurrencies and BC implementations are listed. With such a myriad of implementations, selecting the most appropriate BC based on specific requirements is not a trivial task. Thus, there exists a need for specialized BC selection algorithms to be created with the aid of novel techniques, such as Machine Learning (ML). A couple of works [4, 1, 3, 5] propose approaches to decide the best suitable BC platform and type; however, they mostly follow a manual approach with diagrams and flowcharts, in this sense the inclusion of a new BC platform requires the revision of the flowchart. In contrast, with the employment of ML, the selection is automatic, and the algorithm readjustment straightforward.

The goal of this thesis is to research current ML algorithms that can be employed in the BC selection, implement selected ones, and evaluate them based on different dimensions. Thus, the thesis contains (i) a research aspect, with the survey of the state-of-the-art in ML and current BC implementations, and (ii) a practical aspect, with the listing of underlying parameters that are crucial for the selection, the implementation of algorithms, and evaluation.


[1] M. Belotti, N. Bozic, G. Pujolle, and S. Secci. A Vademecum on Blockchain Technologies: When, Which and How. In IEEE Communications Surveys Tutorials, pages 1–47, 2019.

[2] CoinMarketCap. Coinmarketcap market capitalizations, 2019 https://coinmarketcap.com/. Last visit February 17, 2020.

[3] S. Farshidi, S. Jansen, S. Espana, and J. Verkleij. Decision support for blockchain platform selection: Three industry case studies. IEEE Transactions on Engineering Management, pages 1–20, January 2020.

[4] P. Frauenthaler, M. Borkowski, and S. Schulte. A Framework for Blockchain Interoperability and Runtime Selection, 2019. http://arxiv.org/abs/1905.07014 , Last visit August 13, 2019.

[5] K. Wust and A. Gervais. Do you Need a Blockchain? In Crypto Valley Conference on Blockchain Technology (CVCBT 2018), pages 45–54., Zug, Switzerland, June 2018.

20% Design, 60% Implementation, 20% Documentation
Programming Skills in Python, Basic Blockchain Knowledge

Supervisors: Dr. Eder John Scheid

back to the main page