Next Article in Journal
Towards Robust Neural Rankers with Large Language Model: A Contrastive Training Approach
Previous Article in Journal
Characterizing Chronologically Aged Basic Oxygen Furnace Slags as Aggregates and Their Use in Asphalt Concrete Mix as Filler
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Proof of Optimum (PoO): Consensus Model Based on Fairness and Efficiency in Blockchain

1
Department of Computer Engineering, Suleyman Demirel University, Isparta 32260, Türkiye
2
Department of Computer Engineering, Duzce University, Duzce 81620, Türkiye
3
College of Engineering and Mines, University of North Dakota, Grand Forks, ND 58202, USA
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(18), 10149; https://doi.org/10.3390/app131810149
Submission received: 26 July 2023 / Revised: 22 August 2023 / Accepted: 5 September 2023 / Published: 8 September 2023

Abstract

:
Blockchain systems are popular technologies that have recently emerged. As a decentralized system, blockchain technology has provided many solutions and many problems associated with these solutions. One of its most important problems is that while performing hash calculations very intensively to create a new consensus block, it reduces its efficiency depending on the duration. In this study, a new model to avoid Proof of Work (PoW), which directs the computations made to create blocks to optimization algorithms, is proposed. The proof mechanism proposed in this study is called Proof of Optimization (PoO). A traveling salesman problem (TSP) is entered into the designed system to solve the optimization algorithms. Nodes are asked to solve the TSP in certain iterations and populations. As a result, nodes are asked to create blocks with the fitness, density and time values obtained. PoO and PoW consensus algorithms were subjected to an experimental comparison in the system. The test results show that the block generation time of the PoO consensus model varies between 2 s according to the dataset solution with the least cities (ulysses22) and 60 s according to the dataset solution with the most cities (gr666). Additionally, as a result of experimental analyses, it was determined that decentralization, which is the percentage of block creation among miners in the blockchain, reached a more stable value and the fairness index rose above 0.90 on average. When the obtained values were compared with PoW, it was observed that the block time was more stable and the decentralization of the blockchain was higher. In this way, high-equipped nodes in the blockchain system are prevented from dominating the network. Thus, it is ensured that low-equipped nodes have the right to create blocks in the blockchain. The difficulty levels of the problems can be adjusted by changing the number of cities in the TSP evaluated in this study. In this way, the problem of creating blocks in the network can be made more difficult or easier at any time.

1. Introduction

Blockchain technology has become a popular technology in recent years. Bitcoin was first detailed in 2008 with the article “A Peer-to-Peer Electronic Cash System” by Satoshi Nakamoto. A blockchain is a distributed system in which each of its users (nodes) has a record book (ledger). In this system, all copies of a transaction are kept in records. When one of the records is requested to be changed, a comparison is made with the books with other copies, and no change is allowed in the system. Thus, the system cannot be manipulated. The system proposes a distributed system, rather than a centralized system, in which users share their security. Each of the users is involved in the system’s security [1].
The concept of blockchain is similar to distributed database technology. In short, it is the addition of works to distributed databases through consensus. Distributed databases are desktop notebooks and mobile devices that can receive an IP address called a node and connect to the blockchain network. A valid and verified block must be created for transactions to take place in the blockchain and to be kept in the database. In the next step, the block is distributed to other node structures. Each node that receives the block verifies it and executes the transactions. The relevant block is added to the last rung of the blockchain in the node structure [2].
Blockchain works with a kind of ecosystem where users on the network are in consensus by themselves. This important function is the consensus mechanism that controls the accuracy of transactions through consensus. Satoshi Nakamoto’s consensus, the main structure of the blockchain, is a decentralized mechanism. This mechanism ensures that all blocks reach this consensus. Thus, currency, transactions, and payments can be made without relying on a centralized system [3].
Blockchain technology is the technology applied in the background of many new structures, especially cryptocurrency and smart contracts. In this study, the blockchain network is presented as a distributed ledger managed by a smart consensus algorithm. The new consensus algorithm presented in this study is called the Proof of Optimization (PoO) structure. The details of it are described in the following sections. In a Proof of Work (PoW)-based blockchain network, nodes solve a cryptographic puzzle and compete to form a block. Bitcoin and Ethereum, which can be counted among the most important blockchain projects, use a structure that distributes and individually solves the PoW-based asymmetric puzzle problem. This structure requires large computational resources. Therefore, blockchain networks using PoW cause high energy consumption and spend most of the energy on solving these puzzles. Moreover, although it provides a highly secure consensus, its efficiency decreases significantly [2].
The Proof of Work (PoW) algorithm has many weaknesses. Chief among these is its high energy consumption. The PoW algorithm is specifically designed to increase the difficulty of the hash function. This increases processing power requirements and therefore leads to higher energy consumption. Therefore, PoW-based blockchain networks are criticized for their high energy bills and environmental impact. Another weakness is their lack of decentralization. Because the PoW algorithm provides incentives to miners to produce blocks based on processing power, large mining pools can form. This reduces the decentralization of the network and may result in some mining pools becoming dominant over the network. This can create a dependency on the few big players who have control over the blockchain and compromise the security of the network. In addition, the PoW algorithm can extend the transaction confirmation time. Generating a new block may take different amounts of time depending on the difficulty of the hash function. Therefore, transaction confirmation time varies and can sometimes take a long time. This can reduce the processing capacity of the blockchain network and create challenges for application developers. As a result, the PoW algorithm is criticized for its weaknesses such as high energy consumption, lack of decentralization, and variability in transaction confirmation time.
The use of PoO in building a blockchain model has several positive effects on its stability. First, PoO reduces the energy consumption and computational resources required to create new blocks compared to PoW. This reduces the incentive for miners to enter a race to solve complex computational problems and allows more participants to contribute to the network. Second, PoO allows for a more equitable distribution of block rewards and reduces the centralization of mining power, which can lead to a more secure and decentralized blockchain network. Third, using TSP in PoO provides a more flexible and adaptive approach to consensus than PoW. Overall, the use of PoO can increase the efficiency, fairness, and security of a blockchain network, leading to a more stable and sustainable system.
Proof of Optimum (PoO) is a blockchain consensus algorithm developed against the existing problems of the traditional Proof of Work (PoW) algorithm. PoW is known to be computationally intensive and energy-consuming, which limits its scalability and accessibility to a wider range of participants. PoO aims to solve these problems by introducing a new approach that utilizes the Traveling Salesman Problem (TSP) and genetic algorithms. The TSP is a well-known optimization problem that has been studied for decades, and genetic algorithms are powerful optimization techniques that have been successfully applied to various problem domains. By using these techniques, PoO can achieve consensus more efficiently and on a larger scale, making it a promising alternative to PoW. Additionally, PoO’s approach also provides a degree of fairness in the distribution of rewards for participants, further increasing its appeal as a consensus algorithm. Overall, PoO’s motivation lies in improving the scalability, accessibility, and fairness of blockchain systems, which are crucial for their widespread adoption and success in the future [4].
The following topics are explained in detail in the remaining sections of this study.
  • A new blockchain consensus model called Proof of Optimum, which aims to direct the extra processing power spent in PoW to find suitable solutions with optimization algorithms has been detailed.
  • In the blockchain network in general, clients, that is, nodes, compete to create blocks. In this study, the traveling salesman (TSP) problem was selected as an example of the type of problem to be solved. The genetic algorithm is considered a solution algorithm within the framework of the PoO model. It was asked to solve the problem with a determined population, iteration and other parameters. As a result, block creation was achieved over the solution fitness value, intensity and duration values. In addition, the algorithm and model structure were tested through decentralization.
  • Any artificial intelligence algorithm used for solving a desired optimization problem can be used in the study. The PoO model was proposed as a new consensus model under the puzzle setup involving the TSP in this study.
  • In the study, the main concepts of blockchain technology and consensus algorithms were first mentioned. Differences between consensus algorithms were indicated.
  • Information collected on applying artificial intelligence in blockchain consensus algorithms and optimization by reviewing the literature.
  • Suitability, density, and time values obtained in TSPs solved by the algorithms used by nodes to determine the competition between the nodes were explained, as well as their purpose.
  • A general equation was given to ascertain how the competition related to PoO was concluded, that is, how to determine the node that would create the block.
  • Experiments were evaluated from two different perspectives: block creation time and decentralization.
By looking at several pioneering studies [4,5,6,7] to propose a new consensus based on optimization or machine learning model, it is determined that a consensus mechanism using optimization algorithms should meet the following two conditions. (1) A low block creation rate resulting in a high number of transactions per second (TPS) is an important proof of the efficiency of a consensus algorithm. (2) A high fairness index is the most important criterion that determines decentralization in a blockchain system. These two criteria are among the most important evaluation degrees of the blockchain.

2. Related Work

Salah et al. (2019) mentioned that blockchain is one of the most popular topics of recent times and explained that it has started to be adopted as a technology. In this study, the emergence of a new artificial intelligence concept was mentioned, which distributed artificial intelligence and was obtained by combining blockchain and artificial intelligence. An overview of the main features of blockchain and how artificial intelligence can benefit from these features was presented. The integration of blockchain and artificial intelligence was discussed and it was mentioned that it could help in developing a new ecosystem for a distributed and reliable economy. The application areas of artificial intelligence with blockchain were identified and how it could be used was explained [6].
Liu et al. (2019) analyzed the mining pool selection strategy using game theory in their study. Pool mining was first modeled in a PoW consensus-based blockchain. A two-stage game comes into play in the model and the pools decide whether to open or not and to attack or not. Weak points of the system have been identified based on the two-stage game model [8].
In their study, Zhao et al. (2019) proposed a blockchain-based fair data trade protocol in the big data market and explained the difficulties they encountered. The proposed protocol was described as a protocol that prevented bilateral identity authorization called a public signature and ensured the security and fairness of trade data and data providers [9].
In their study, Kim et al. (2018) mentioned that today, many projects have been developed to put blockchains into many applications, but there were many problems in their actual use, such as the number of transactions per second. Various attempts to solve problems such as the current working problem in various categories were analyzed, including the on-chain, off-chain, side chain, child chain, and inter-chain methods. The analysis examined how each method works in each category, explored their advantages and disadvantages and which scalability problem they solved [10].
Liu et al. designed a consensus algorithm called PoLe in their 2021 study. The study made the block creation time more stable than the PoW algorithm using a machine learning algorithm. Additionally, the tests of the algorithm model in terms of security were presented. Some improvements were discovered [7].
Bizarro et al. collaborated with miners by using genetic algorithms to enable miners to share the best solution they could find with each other in their 2020 study. It was explained that Proof of Work (PoW) is expensive in terms of energy consumption. The authors developed an algorithm called Proof of Evolution, which provides a kind of cooperation between miners. A consensus mechanism called PoE was introduced that encourages sharing the best available solutions and enables collaboration [11].
In his 2019 study, Shibata proposed a decentralized consensus protocol with blockchains to look for good approximate solutions to any optimization problem. It works with logic similar to the PoW model. The study allows wasted energy to be used to find approximate solutions to problems presented by any node (called a client). The analysis showed that the probability of a bifurcation in the protocol and the variation in block time was lower than in the proof of work consensus algorithm [5].
In their 2020 study, Lihu et al. mentioned that PoW mining is a wasteful process. In this process, where miners spend a significant amount of energy, they developed a machine learning-based process and proposed a consensus algorithm called Proof of Useful Work. Miners have the chance to create new coins after performing honest machine-learning training. Here, nodes send machine learning tasks. Miners who conduct machine learning training are paid. This is an incentive to join the network. This consensus algorithm is not like the lottery system in Proof of Work or Proof of Stake. Using this algorithm, interested parties can order, complete and verify useful work in a distributed environment [12].
As a result of the above-mentioned and most used consensus algorithms and models based on this structure, the proof of optimization (PoO) model was proposed in this study. Considering the results obtained, it was confirmed that the model proposed in this study provided advantages such as block time creation and decentralization, especially when compared with the PoW model.

3. Preliminaries

3.1. Blockchain

A blockchain is a decentralized distributed system used to record transactions on the computer included within the system. At the same time, the database containing the transactions is a digital system open to other computers. The blockchain has a structure that keeps the previous data hashed within the following data, which does not allow the data to be changed. Thus, it is impossible to change the database records of the participants in the blockchain system. The data security of the participants is ensured. Recently, the most important example of blockchain technology, namely Bitcoin, has facilitated a payment system based on mutual trust without the need for a third party [1].

3.1.1. Miner

Users who verify transactions in the blockchain system and receive cryptocurrency as a fee in return for this verification process are referred to as miners. Miners have to solve complex mathematical problems to verify the transactions. By solving the problem, a new block is added to the blockchain network. In this way, the system provides continuity and reliability.

3.1.2. Block

A block is the encrypted data where the records and approvals of the transactions made on the system are kept. Each block in the blockchain is linked to the other in the form of a chain. Due to the chain link, the blockchain cannot be manipulated. Transactions made through blocks can be viewed by anyone [13]. Figure 1 shows an example of a block structure.

3.1.3. Transaction

The concept of a transaction can be associated with finance or other day-to-day business uses. For instance, sending data from one client address to another or performing non-financial transactions with more complex smart contracts. If the Bitcoin blockchain is referenced, the transactions section is the warehouse areas where orders are kept. The general structure of a transaction is as follows:
Transaction hash: each transaction is signed with a private key and spread over the network. The unique hash value obtained as a result of this process is called the transaction hash.
Size: the size of the transaction in bytes.
Trxinput: this stores sender information and contains the sender’s private key signature.
Trxoutput: this stores recipient information and contains the recipient’s public key signature.
Amount: the number of bitcoins traded [4].

3.1.4. Blockchain Types

The concept of blockchain is divided into three different categories.
Public blockchain: a type of blockchain where the information in the blockchain can be transparently presented to the public. Anyone can participate in this blockchain. Examples include Bitcoin and Ethereum. These types of blockchains are secure because they introduce a consensus mechanism that reaches consensus among all participants.
Consortium blockchain: a type of blockchain used for federated structures. It is a type of blockchain where semi-public information can be presented transparently. The user group is more controlled.
Private blockchain: a type of blockchain which is used by a private group. Only authorized users can use this system. It can be said that it has a more central structure because only those belonging to a certain user group can make transactions [2].

3.2. Consensus Algorithm

Blockchain is a system that provides immutability and transparency. To ensure this, there is no existing central authority. However, it is accepted that every transaction in a blockchain is completely secure and verified. This is possible with a consensus algorithm. The consensus algorithm is a procedure in which all peers of the blockchain network come to a common agreement on the current state of the distributed ledger. In this way, consensus algorithms achieve reliability in the blockchain network and establish trust between unknown peers in a distributed computing environment [14].

3.2.1. Proof of Work (PoW)

PoW is a consensus protocol developed by Satoshi Nakamoto for cryptographic reliability which facilitates the decentralization of the bitcoin network as published by blockchain platforms. It is used by Bitcoin. PoW participants are required to solve a complex and random mathematical hashing problem, examine the blocks, and decode the block code to read transactions on the blockchain. When the transaction is successful, new transactions and data are added to the chain. The algorithm becomes more secure as the processing power and the number of participants increase. Although PoW is a highly accepted consensus algorithm, it consumes enormous amounts of energy [15].

3.2.2. Proof of Stake (PoS)

Unlike PoW, PoS participants in the blockchain can add as many blocks to the blockchain as they are able to. PoS consumes less energy than PoW and is more resistant to 51% attacks than PoW. There is forking problem in PoS. In forking, two chains exist at the same time and both chains are mined. If this forking is performed as an attack, the miner can support this attack. It is called a “Nothing at Stake Attack.” PoS alone is not always a sufficient algorithm. For this reason, generally most projects use very advanced algorithms based on PoS [16].

3.2.3. Byzantine Fault Tolerance (BFT)

BFT is a consensus algorithm that invalidates the approvals of malicious participants in the blockchain network. This method is inspired by a model used by the Byzantine generals. In this setup, a simple and effective method is used to verify orders from the emperor. Orders were sent by more than one messenger, and when the orders came, the messenger shared this order. If the orders were confirmed, they were deemed to be correct. Although it is a difficult algorithm to implement in this model, which is presented through the same application, it is successfully applied in critical systems [17].

3.2.4. Proof of Activity (PoAc)

The PoAc protocol is a hybrid of PoW and PoS. This protocol initially runs on empty blockchains using the PoW algorithm and blocks 51% attacks. It initially solves mathematical problems and adds blocks to the blockchain. Then, the PoS algorithm is enabled for blocks with an acceptable status of the blockchain. PoAc has been proven to be effective in terms of security storage and networking. It is useful for artificial intelligence applications since it uses less data and requires more security [18].

3.2.5. Proof of Burn (PoB)

The PoB algorithm is an algorithm that emerged as a solution to the energy consumption of PoW. Participants were allowed to create new blocks by burning the coins they have created. PoB allows users to invest initially and create stakes in the blockchain, allowing them to become authorized validators. This also solves the problem of PoW’s energy consumption. In addition, the coin-burning strategy reduces the number of coins in the blockchain. Therefore, the coin value gradually increases. Coin burning also avoids the imbalance in the number of coins in the blockchain, the spending of coins sold, and the payment of transaction fees in the network [15].

3.2.6. Proof of Elapsed Time (PoET)

The PoET algorithm identifies a leader node that can create new blocks instead of involving participants in the validation process. PoET works by combining a random timer with each node on the network, and the node with the minimum expiration date is selected as the leader. The leader node creates new blocks and transmits its signature to all nodes. The PoET protocol continuously executes a random leader selection algorithm and constantly finds new leaders. It also ensures that malicious users are found because the same nodes are chosen as leaders or because the minimum setting value is often assigned to certain values [15].

3.2.7. Proof of Capacity

The traditional PoW algorithm directs the existing computing power to compute because hash algorithms are used to unlock blocks. The PoC, known as proof of capacity, enables participants in the blockchain to mine using their storage space. Instead of the hash functions in PoW, it stores all possible digits on a hard drive and finds the matching block. The evaluation of the general status of consensus algorithms is given in Table 1 [15].

4. Methodology

In the study, the contribution of the genetic algorithm to the blockchain consensus mechanism was examined. In future studies, different optimization problems and heuristic algorithms can be added. The genetic algorithm used is briefly described. The purpose of the study is not to optimize the TSP. There are already many studies on this issue in the literature. The main purpose of this study is to adapt the genetic algorithm to the consensus mechanism.
A new consensus method has been introduced to solve the problems stated in the literature on the blockchain structure. The goal is to help nodes solve problems in the blockchain using a genetic algorithm. The basic steps of PoO are listed below.
  • A TSP is determined for the nodes to produce a solution.
  • Nodes solve problems. Suitability, density and time values are evaluated and returned.
  • The returned values are reevaluated via an equation. The node that will create the block is determined through this evaluation.
  • The determined node creates a block. The created block is distributed to other nodes.
Proof of Optimum has two general objectives. First, to ensure that block time is kept under control compared to PoW so that higher transaction output can be achieved. Second, to prevent the machine, which has a strong decentralization hardware configuration, from dominating the blockchain. Thus, a system with higher decentralization is proposed.
Proof of Optimum (PoO) is a consensus mechanism that uses an optimization problem as its mathematical model. The PoO model is based on the idea that finding the optimum solution to a complex optimization problem is a computationally difficult task that requires a large amount of computational power and time. This difficulty can be used to ensure the security and validity of the blockchain network.
In the PoO model, the optimization problem serves as a puzzle that must be solved by network nodes to validate transactions and create new blocks. The puzzle is designed to be computationally difficult, and the solution to the puzzle serves as proof of work. However, unlike traditional proof of work mechanisms, the solution is not arbitrary, but rather consists of the solution to the optimization problem itself.

4.1. Genetic Algorithm

A genetic algorithm is a powerful artificial intelligence method developed to solve optimization problems by mimicking the basic principles of biological evolution. By adapting evolutionary mechanisms such as natural selection, crossover, and mutation to computer modeling, this algorithm offers an effective approach to solving complex and often large-scale problems. Genetic algorithms have a wide usage area especially in the mathematical optimization of real-world problems, engineering designs, data mining and artificial life [19].
The basic principle of a GA is to carry individuals from an initial population to new generations in each generation through selection, crossover and mutation steps. Selection is the process of selecting the most suitable individuals based on the performance of individuals. Crossover is the process of creating new individuals by combining the genetic material of selected individuals. Mutation, on the other hand, aims to increase diversity by making random changes in the genetic material of individuals. When these evolutionary processes come together, the population evolves towards ever better solutions.
A genetic algorithm (GA) is an optimization algorithm inspired by evolutionary mechanisms. It is a solution search method based on the survival of the individual that optimizes according to the multidimensional fitness function and produces the best result at every step. The solution set is called the population. The population is also composed of genes [19].

4.1.1. Genetic Algorithm Steps

The basic steps of a simple GA are as follows.
  • Step 1. Their solution constitutes an initial population.
  • Step 2. Calculate the fitness value of each solution in the population
  • Step 3. If the stop criterion is met, stop the search. Otherwise, perform the following steps.
    3.1. Apply the natural selection process (solutions with higher fitness values are more represented in the new population.)
    3.2. Apply the crossover process (New structures are produced from the two existing solutions.)
    3.3. Apply mutation process (Apply random change in solutions)
  • Step 4. Go to step 2

4.1.2. Genetic Operators

In GA, after certain points in the solution stack, operations are performed on the arrays (chromosomes) using several operators to achieve generational diversity. Generational diversity is achieved by applying certain percentages. Thus, it is aimed to prevent the algorithm from coming to certain points and getting stuck [19].

4.1.3. Selection Operator

The selection operator in a genetic algorithm is a crucial component that determines which individuals from the current population will be selected as parents for the next generation. It imitates the process of natural selection by preferring individuals with higher fitness values, that is, better performing in solving the given problem. There are various selection strategies used in genetic algorithms, each of which has its advantages and disadvantages. Some common selection techniques include:
Roulette wheel selection: this method assigns a selection probability to each individual in the population based on their fitness. Individuals with high fitness values have a higher chance of being selected as parents.
Tournament selection: in this approach, a random subset of individuals is selected from the population and the parent with the highest fitness value becomes the parent.
Selection based on rank: individuals are ranked according to their fitness values and then assigned a selection probability based on their rank. This strategy ensures that even individuals with lower fitness values have a chance of being selected.
The choice of the selection operator can significantly affect the performance of the genetic algorithm. The aim is to strike a balance between discovering new solutions (diversity) and taking advantage of the best solutions found so far (convergence). Different problems can benefit from different selection strategies, and experiments are often required to determine the most effective approach for a given optimization problem [20].

4.1.4. Crossover Operator

Genetic algorithms (GA) use crossover as a genetic operator to combine the genetic information of two parent chromosomes to generate new offspring chromosomes. Crossover is based on the principle of exchange of genetic material between two parent chromosomes [20]. The probability of application varies between 50% and 95%. In the study, the crossover rate was determined as 65%. Values of 50% or less may cause solutions to Values of 50% or lower may cause unexpected solutions. A PMX crossover operator was used in this study.
MX crossover operator; this method is used in traveling salesman problems and vehicle routing problems. It is a special operator for these problems because the genes making up the sequences should not repeat within the same sequence. In this study, it was selected as a crossover operator.
  • Parent 1: 1–3–6–4–2–5
  • Parent 2: 3–2–4–6–5–1
  • Step 1: Randomly select two crossover points. Let us say we select positions 2 and 5.
  • Parent 1: 1–3|6–4–2|5
  • Parent 2: 3–2|4–6–5|1
  • Step 2: Copy the segment between the two crossover points from one parent to the corresponding positions in the offspring.
  • Offspring 1: _-_|6–4–2|_
  • Offspring 2: _-_|4–6–5|_
  • Step 3: Map the values in the copied segment from the other parent to the positions in the offspring that are not yet filled.
  • For Offspring 1:
  • Take the segment between the crossover points from Parent 1: 6–4–2
  • Find the corresponding values in Parent 2: 4–6–5
  • Map the values to the empty positions in Offspring 1: 1–4–2
  • Offspring 1: 1–4|6–4–2|5
  • For Offspring 2:
  • Take the segment between the crossover points from Parent 2: 4–6–5
  • Find the corresponding values in Parent 1: 3–6–4
  • Map the values to the empty positions in Offspring 2: 3–2–4
  • Offspring 2: 3–2|4–6–5|1
  • Step 4: Fill the remaining positions in the offspring with the values from the other parent in the order they appear.
  • For Offspring 1:
  • Fill the empty positions with the values from Parent 2 in order: 3–6
  • Offspring 1: 1–4|6–4–2|3
  • For Offspring 2:
  • Fill the empty positions with the values from Parent 1 in order: 6–5
  • Offspring 2: 3–2|4–6–5|1–3
  • The resulting offspring tours are:
  • Offspring 1: 1–4–6–2–5–3
  • Offspring 2: 3–2–4–6–5–1

4.1.5. Mutation Operator

The mutation operator is the operator that allows changes to be made to the genes or the small units that make up the genes of the chromosomes. The advantage of mutation in GA is to avoid premature convergence, which occurs when the population converges to a suboptimal solution too quickly. By introducing random changes to the genetic material, mutation can help the algorithm to avoid becoming trapped in a suboptimal region of the search space and continue searching for the global optimum. In the study, the mutation rate was determined as 15%. If the mutation rate is more than 15%, the solution may be searched for in the wrong places [20].
  • Chromosome: |0|876|2|41539
  • Chromosome as a result of mutation: |2|876|0|41539
Figure 2 shows the structure showing the gene, chromosome and population.

4.2. Travelling Salesman Problem (TSP)

If the TSP is to be defined, a peddler wants to sell his goods in n cities, and on the other hand, this seller wants to travel to these cities in the shortest possible way and by visiting each city a maximum of once. Its purpose is to offer the shortest route to the seller [21].
The TSP is a deep optimization problem. It was mathematically formulated in the 1930s. It is an important optimization problem that is NP-hard to solve according to the computational complexity. Therefore, it is thought that no algorithm can effectively solve the TSP. In other words, when computers perform analysis, the number of calculations increases exponentially as the number of cities increases. This means that in some cases the solution may take years.
Steps of the TSP
  • There are n cities to choose from to begin.
  • When it comes to the first city, there is a choice between n − 1 different cities.
  • When it comes to the second city, there are n − 2 cities to choose from.
As a result, the seller will choose from n! cities. This makes 9.3 × 10 157 tours for 100 cities. The complexity of the problem is determined as   O ( N 2 + 2 n ) . The best solution so far has been made with dynamic programming [21].
The problem given for the nodes to solve was determined as TSP in the study. The reason for this is that the difficulty level can be increased according to the number of cities. Additionally, an optimization problem is required for optimization algorithms to be used. In short, a new model for the blockchain was introduced by replacing the mathematical hashing calculations in PoW with TSP optimization calculations.

5. Application and Findings

5.1. Proof of Optimization

In the proposed proof of optimization algorithm, there are two node types: data nodes and consensus nodes. The data node is used to provide the consensus nodes with the TSP task. The consensus node, on the other hand, is responsible for solving TSPs with a certain iteration, population, crossing and mutation rate. The winning node receives the reward offered by the data node. In addition to distributing rewards to nodes that produce solutions, the developed model also functions as a decentralized data store for encrypted data and ordinate transfers. The main components of the system are formed as detailed in the following sections.

5.2. Complexity Analysis of PoO

In terms of time complexity, PoO involves solving a Traveling Salesman Problem (TSP) for each block, which is an NP-hard problem. The TSP has a worst-case time complexity of O(n!), which makes it computationally expensive for large instances. However, PoO uses a genetic algorithm to solve the TSP, which has a lower time complexity than brute-force algorithms. The genetic algorithm has a worst-case time complexity of O ( n 2 m ) , where n is the number of nodes and m is the number of generations.

5.3. Data Nodes

The purpose of data nodes is to provide consensus nodes with the task of solving the TSP. The TSP tasks the data node provides include iteration, population, crossover, mutation, optimal solution, and reward. The reward is immediately transferred from the data node’s account to a virtual reservoir account, which will pay the winning consensus node with the best generalization performance. Although nodes in a distributed system do not have perfectly synchronized clocks, time inconsistency is less than the time required to solve an optimization problem. The data of the problem solved is stored in the competitively generated block of the nodes.

5.4. Consensus Nodes

Consensus nodes, also called miners, can be defined as the actual suppliers of computing power to the network. Miners compete to solve TSP tasks issued by data nodes and are rewarded as a result. Nodes use genetic algorithms to solve TSP tasks. The behavior of the consensus nodes is described in Algorithm 1.
Algorithm 1: Proof of Optimum
 Inputs: Iteration: Iteration for genetic algorithm
    Population: Population for genetic algorithm
   Crossover: Crossover ratio
    Mutation: Mutation rate
    TSPTask: TSP for nodes to solve
 Output: block: Newly created block
   While true
    Get TSP task
    Calculate fitness value
    Calculate density value
    Calculate time value
    Calculate the winning coefficient according to Equation (1)
    Determine the best winning coefficient
    Create a block if the coefficient is better than other nodes.
      Block = Createblock (algorithm, suitability, density, time)
      Send block to other nodes
The nodes obtain the TSPs they will solve and start producing solutions at the same time. Merely finding a good solution is not enough to create a block. At the same time, the extent to which genetic algorithm genes are gathered around the solution and how quickly the solution is found are taken into consideration. Miners look for solutions to TSPs using a genetic algorithm. The consensus node that finds the solution calculates the winning coefficient according to Equation (2) and sends it to the other consensus nodes. Nodes sort and choose the node with the highest winning coefficient among themselves. The winning node announces that it has won and broadcasts the block. Then, the node spreads the block it created to other nodes. It declares that it has created the block itself. Figure 3 shows the structure of the sample PoO block data. The data structure of the block consists of a header and body, similar to that of a regular blockchain. The block header contains the winner ID, the TSP, the previous block hash, and the Merkle tree root. The number of seconds in which TSP solution is found in the block body includes the solution density and the solution. There are verified transactions in the transactions section, while the Merkle tree root is used to prevent forgery by obtaining data blocks from a peer-to-peer network in an original way. A Merkle tree is a hash-based formation using cryptography [1]. This is why it is also known as a hash tree.

5.5. Determining the Node to Create the Block

The process of creating blocks is performed to ensure decentralization in the blockchain. Its purpose is to ensure that transactions are verified by a trusted party. The Proof of Work algorithm uses hashing algorithms when determining nodes to validate transactions, that is, to create blocks. Equation (1) is formulated below, detailing a structure that demonstrates which client has the right to create blocks within the Proof of Optimization setup. The coefficients in this equation may vary so users can create different scenarios. In this study, it was aimed that the client, which finds the most appropriate solution for solving the optimization problem, which is one of the most important elements, has the right to create blocks. However, to prevent the dominance over the network, which is one of the basic principles of the PoO setup, it was ensured that they were included in the system with certain degrees of effect (coefficient) from the solution time and density parameters (fitness and density value graphics of the algorithms in the experiments are given in the following pages).
W i n n i n g C o e f f i c i e n t = 0.6 × b e s t s o l u t i o n + 0.20 × s o l u t i o n t i m e   0.20 × i n t e n s i t y

5.6. Values Used in Determining the Winning Coefficient

5.6.1. Fitness Value

The fitness value is a measure of how well an individual performs in a given optimization problem. In the case of TSP, the fitness value is typically calculated as the length of the tour represented by an individual, to minimize this length. The fitness value is used to evaluate the performance of each individual in the population and to select individuals for reproduction and mutation based on their fitness. The better the fitness value of an individual, the higher the probability that they will be selected for the next generation. The fitness values produced by the miners as a result of optimization are given in Figure 4, Figure 5, Figure 6, Figure 7, Figure 8 and Figure 9.

5.6.2. Density Ratio

The density ratio is an indicator of how well the problem is solved. It is the calculation of how densely the population gathers around the solution. It is formulated in Equation (2). It takes a value between 0 and 1. The best possible value is 1.
  • n = number of array elements
  • i = array elements
  • pbest = best solution of the series
i n t e n s i t y = 1 ( p i 1 p b e s t 1 2 + + p i n p b e s t n 2 ) / 100
In Figure 10, Figure 11 and Figure 12, the density graphics of the nodes at the time of solving the TSP are shown as examples.

6. Results

6.1. Simulation Environment

Simulation environments were examined in previous studies. Although there are many simulation environments for the blockchain, it has been necessary to create a special simulation environment to better observe hardware efficiency. The algorithm test was carried out according to two predetermined criteria. These criteria are TPS (transactions per second) and decentralization. The algorithm iteration was determined as separate parameters of 1000, 2000 and 5000, and the population was determined as 30. The crossover value was 0.65 and the mutation value was 0.15. The reason for giving iteration in a certain period is to keep the block creation time under control. The hashing difficulty level of the PoW algorithm was determined as 28 bits. The number of miners is six, one data node and five consensus nodes, because of some hardware restrictions. Miners were generated by VMWare software v16.2.2 on an Intel(R) Core(TM) i7-9700 CPU @ 3.00 GHz 32 GB ram computer using virtual computer systems and their resources were shared. The hardware resources of virtual computers are listed in Table 2.
The TSP data sets used as problems are listed in Table 3.

6.2. Experiment 1

Transactions per second is a common term for blockchain assessment and is used to calculate blockchain performance. Transactions per second is defined as the number of transactions completed in one second. The higher the number of transactions per second, the faster the transactions are executed. This depends on the consensus algorithm. Equation (3) is used to calculate transactions per second.
T P S = n u m b e r   o f   t r a n s a c t i o n b l o c k   c r e a t i o n   t i m e

Block Creation Time

Block creation time is a term that enables the effectiveness of the blockchain to be tested indirectly. In short, it is the time taken to create one block. Block creation time directly affects the TPS criterion. Therefore, it is an important criterion for blockchain performance. PoW and PoO tests related to block creation time are given below. Tests were carried out in a way that the system would comprise 100 blocks.
Figure 13 shows the block creation time of PoW and Figure 14, Figure 15, Figure 16, Figure 17, Figure 18, Figure 19 and Figure 20 shows the distribution of PoO block creation time according to datasets. It is observed that PoO has a much lower distribution than PoW in the block creation time. In 1000, 2000 and 5000 iterations, differences in block generation times can be observed in TSP datasets in 30 populations.
The number of transactions is the number of transactions that any of the nodes keeps in its pool. Transactions are kept in the transaction pool before they are executed. The winning node executes and confirms the transactions [22].

6.3. Experiment 2: Decentralization

An important aspect that determines blockchain performance is its degree of decentralization. The existing consensus algorithm of blockchain works similarly to a virtual democracy. For instance, the system in Bitcoin creates some rules for individuals to verify transactions in the system. Thanks to these rules, a decentralized environment is ensured. While not directly related to a blockchain’s consensus algorithm, it is a crucial factor in defining a cryptocurrency’s level of decentralization. For instance, decentralization in Bitcoin means the process by which block validation rules are agreed upon and determined for individuals to adopt these rules to validate payments and blocks. Similarly, these decisions are made by the bank owners in a traditional bank. The mathematical expression of the criterion of decentralization is given as follows [23]:
F x = ( i = 1 i = N p i ) 2 / N i = 1 i = N p i 2
Here is the fraction of the total blocks mined by node i. N is the number of miners. When a system is completely decentralized, the value that will be achieved when the balance of fairness is fully achieved is 1. When fully centralized, fairness will be 1/N [23]. The decentralization assessment of Bitcoin using the PoW algorithm is given in Table 4. Values obtained in the environment created with the same miners are presented.
According to the values in Table 4, it can be seen that the PoW algorithm causes the system to be more centralized. One of the disadvantages of PoW is that the machine (miner135) with a high hash value created almost half of the created blocks. The node with high hardware power solves hash functions faster. Therefore, the fairness index decreases.
In Table 5, iteration and TSP were given as parameters and it was asked to create 100 blocks for each row. According to the iteration and TSP, TPS, fairness index, block creation, and block creation time percentages were given. TPS can range from 3844 to 30 depending on iteration and dataset. The fairness index is observed between 0.9 and 1. In Table 6, unlike Table 5, it was observed how many blocks can be created with 1000 iterations by giving a certain time and TSP parameters. Results range from TPS 4017 to 82. The fairness index ranges from 0.97 to 0.36.

7. Discussion

7.1. Results

Figure 13 shows the block creation time of PoW, and Figure 14, Figure 15, Figure 16, Figure 17, Figure 18, Figure 19 and Figure 20 shows the distribution of the block creation time of PoO and PoW according to datasets. Differences in block formation times can be observed in TSP datasets in 1000, 2000 and 5000 iterations in 30 populations. This is because as the number of iterations and the number of cities increases in the TSP, miners’ time to find a solution increases. This directly affects the block building time. The reason for the high dispersion in PoW is due to the collision-free feature of hash functions. In other words, two separate inputs cannot be mapped to the same output. Another feature is that it is difficult to select an input that provides a predefined output. Thus, the input is selected from as wide a distribution as possible. Therefore, due to all these factors, the block creation time in PoW is prolonged [5].
Iteration and population values were determined as constant in the experiments. The aim of this is to enable miners to find solutions to blockchain problems. Of course, more optimal solutions can be found for the TSP. The aim of the study is not to solve the TSP, but to provide TSP solutions to find solutions to blockchain problems. Moreover, it is to show how miners perform under the same conditions.
Table 4 shows the value of the fairness index according to the number of blocks. Computers using the PoW algorithm can push the blockchain system to act more centrally to the extent of their hardware. Since the PoO algorithm is determined by the mathematical winning coefficient, it partially avoids evaluations that can only be based on hardware such as PoW. Due to the optimization algorithms solution method, the proof model presented in this study can help blockchain solutions. According to this PoO model, the evaluation criterion turns out to have performed the block generation process with intelligent methods, instead of blocking, which could be based on hardware only.
In Table 5, iteration and TSP were determined as inputs. The reason for determining inputs in this way is to observe what effect iteration and TSP dataset can have on outputs. In 1000 iterations, a relatively lower block fairness index is found compared to more iterations. Because the increase in iteration allows relatively better solutions to be found. This has led to more effective solutions and better density ratios. Nevertheless, it should be said that the genetic algorithm has a role in randomness in this method for block creation percentages. The increase in transactions per second is higher at high iterations. Fewer iterations decrease block time and allow for a higher number of transactions per second. If we explain all the transactions in general, it should be evaluated as the development of smart methods in creating blocks in the blockchain. In other words, it can be considered as an algorithm assembly that can be made with low-level equipment that does not need the power of miner devices.
In Table 6, the experiment was conducted by giving a time. It was requested to create 100 blocks in each row over 1000 iterations. The connection of the number of blocks created to the fairness index was examined. It can be observed that the number of blocks and the fairness index are directly proportional in a very predictable way. Moreover, it is seen that the fairness index, that is, the percentage of block distribution, decreases to 36% in places.
The use of optimization algorithms has revealed a new research area in terms of computational power. The PoW algorithm can perform the function of creating blocks, albeit at the expense of wasting energy resources, but a new consensus algorithm is proposed that directs the wasted resources in the blockchain to the practical benefits of the genetic algorithm by taking advantage of an optimization algorithm that finds the solution. Additionally, a level of decentralization of the proposed system is designed more equitably. Experimental results confirm that the PoO algorithm can create blocks in a decentralized manner.
The PoO algorithm was proposed as a consensus protocol for the blockchain, where wasted energy could be used to solve optimization problems presented by any user. It was designed as an alternative to PoW-based blockchains. The research aims to make block creation more independent of high-cost hardware by directing large amounts of computing power to the practical benefits of optimization algorithms. Additionally, the computational style in the protocol makes mining with ordinary CPUs more profitable. Since computational resources are no longer wasted, public institutions and more general users can be expected to participate. This will make a blockchain with our protocol more decentralized than existing ones. Figure 21 briefly shows the general operation of PoO.
The process paves the way for creating blocks with optimization algorithms or smart methods with artificial intelligence. Moreover, participants announce transparently the best solution they can find while looking for solutions to problems in the system. Thus, we can talk about a distributed optimization system where solutions are shared. However, the aim of the study is not to find a solution to the TSP, but to ensure that TSP optimization helps blockchain systems.

7.2. Drawbacks

Although many experiments were conducted in the study and the results were shared, many obstacles were encountered during this process. As an example, the number of miners was determined as five due to hardware restrictions. Moreover, a simulation environment was prepared by allocating computer resources to the virtual machine (VM). In addition to this situation, the number of miners in the literature has been determined as three to five miners in general [7].
The experiments do not facilitate TSP optimization. The aim is to find solutions to blockchain problems in the literature by using optimization. There are already many studies on this issue in the literature. The main purpose of this study is to adapt the genetic algorithm to the consensus mechanism.
The genetic algorithm values in the study are fixed for each miner. In particular, the reason why the population is determined as 1000, 2000 and 5000 in 30 iterations is to keep the block creation time at a constant level. Thus, block time fluctuations such as in PoW are avoided. In a study conducted with machine learning in the related literature, such a situation has been determined [21].
The security of the PoO depends on the security of the optimized problem. For example, the TSP is a safe choice because of its unpredictability and computational difficulty, but other optimization problems may not have these properties and may be easily solvable by attackers. The TSP is in a class that is considered NP-hard. The features of NP-hard problems are that even the best algorithms are not sufficient to produce practical solutions for large-size problems. TSP is considered a problem that is almost impossible to solve, especially for problems involving many cities. Therefore, the TSP is unpredictable and problems of any size are very difficult to solve. This shows that solving the TSP instead of a puzzle can bring an alternative solution. In the future, the issue of TSP and security can be studied in more detail.

8. Conclusions and Future Work

As a result, it can be said that while PoW-based blockchain systems follow a consensus mechanism based on hardware power, they are useful in terms of security. However, they are very disadvantageous in terms of efficiency and decentralization. Moreover, they are not very healthy in terms of energy consumption. Mining operations with expensive ASIC mining devices are making the work of other low-level hardware participants in the blockchain system increasingly difficult. This negatively affects decentralization. PoO has been proposed as a solution to the efficiency and decentralization problems described here [4,22,24].
PoO offers several unique advantages over traditional PoW algorithms. The use of genetic algorithms and optimization techniques to provide efficiency and energy savings shows that PoO makes data processing processes faster and more effective. In this way, blockchain networks can transact faster and use resources more efficiently.
PoW-based blockchain systems execute their transactions in the system at the expense of wasting large quantities of computer resources. As the calculation techniques of optimization algorithms have a more stable structure than PoW, a model that can produce more efficient results in terms of block creation time and decentralization is proposed. Experiments confirm that the PoO algorithm can create blocks in a decentralized way. It can be observed that artificial intelligence-supported blockchain networks will meet demands as they continue to progress in the future. In future studies, it is planned that different optimization approaches can help blockchain studies by diversifying the proposed PoO via optimization algorithms. As optimization and blockchain networks powered by artificial intelligence will continue to grow in the foreseeable future, the proposed PoO consensus mechanism could help reduce the need for more powerful hardware for mining [11,24].
The future potential of PoO is quite broad. This model can be used to solve more complex problems by integrating with different optimization algorithms. For example, more creative and effective solutions can be obtained by combining artificial intelligence techniques or complex mathematical models with PoO other than genetic algorithms. This indicates that PoO has great potential, especially in areas such as large-scale data analysis or predictive models.
Additionally, applications of PoO in different industries should be evaluated. PoO’s optimization capabilities can be used to achieve better results in areas such as finance, healthcare and supply chain management. In this way, it can be shown that PoO can be used not only to speed up data processing but also to improve workflows in different industries.
The Proof of Optimization (PoO) algorithm has given promising results in experiments on numerical data. In the experiments, it has been observed that the PoO algorithm provides faster block generation than the Proof of Work (PoW) and Proof of Stake (PoS) algorithms. In addition, it has been determined that the PoO algorithm is more resistant to the factors that cause imbalance in the number of block proposals and provides a fair block distribution. The test results show that the block generation time of the PoO consensus model varies between 2 s according to the dataset solution with the least cities (ulysses22) and 60 s according to the dataset solution with the most cities (gr666). Additionally, as a result of experimental analyses, it was determined that decentralization, which is the percentage of block creation among miners in the blockchain, reached a more stable value and the fairness index rose above 0.90 on average
In future studies, by using other optimization algorithms and optimization problems, various evaluations can be made to experimentally study their effects on consensus models. The study can be considered as a method of distributed optimization. Solutions can be diversified by changing the optimization problem or algorithm.
With the development of blockchain technology and consensus algorithms, it is possible to see many different variations formed by combining many different algorithms. For example, PoO’s use of genetic algorithms offers a new approach to blockchain consensus. This approach can be used to solve different optimization problems. Moreover, other algorithms can be used for blockchain consensus. These algorithms can be used to solve different problems instead of TSP analysis. Therefore, the PoO construct offers a new and different approach to blockchain technology and can be further developed by combining it with other algorithms. For example, the coronavirus mask protection algorithm, the gray wolf optimizer algorithm and the alpine skiing optimization algorithm are algorithms that can be used in this mechanism [25,26].
Additionally, comparisons between Proof of Stake (PoS) and Proof of Optimum (PoO) can be explored in the future. Unlike PoS, which requires a certain amount of cryptocurrency ownership to mine, PoO focuses on the miner’s ability to solve the optimization problem. This means that the more skilled a miner is, the more likely they are to be selected to mine the next block. In future studies, a comparison of PoS and PoO can be made in detail.

Author Contributions

F.G. write manuscript, S.B. and U.K. checked manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The datasets generated and analyzed during this study are publicly available in the repository at the following link: https://github.com/coin-or/jorlib/tree/master/jorlib-core/src/test/resources/tspLib/tsp (accessed on 4 September 2023).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System Bitcoin: A Peer-to-Peer Electronic Cash System. 2009. Available online: https://bitcoin.org/en/bitcoin-paper (accessed on 4 September 2023).
  2. Atabaş, H. Technology of Blockchain, 2nd ed.; Ceres Publications: Austin, TX, USA, 2018; Volume 4. [Google Scholar]
  3. Güven, V.; Şahinöz, E. Blockchain Cryptocurrency Bitcoin, 3rd ed.; Kronik Publications: Beyoğlu/İstanbul, Turkey, 2018; Volume 2. [Google Scholar]
  4. Bravo-Marquez, F.; Reeves, S.; Ugarte, M. Proof-of-Learning: A Blockchain Consensus Mechanism Based on Machine Learning Competitions. In Proceedings of the 2019 IEEE International Conference on Decentralized Applications and Infrastructures (DAPPCON), Newark, CA, USA, 4–9 April 2019; pp. 119–124. [Google Scholar] [CrossRef]
  5. Shibata, N. Proof-of-Search: Combining Blockchain Consensus Formation With Solving Optimization Problems. IEEE Access 2019, 7, 172994–173006. [Google Scholar] [CrossRef]
  6. Salah, K.; Rehman, M.H.U.; Nizamuddin, N.; Al-Fuqaha, A. Blockchain for AI: Review and Open Research Challenges. IEEE Access 2019, 7, 10127–10149. [Google Scholar] [CrossRef]
  7. Liu, Y.; Lan, Y.; Li, B.; Miao, C.; Tian, Z. Proof of Learning (PoLe): Empowering neural network training with consensus building on blockchains. Comput. Netw. 2021, 201, 108594. [Google Scholar] [CrossRef]
  8. Liu, Z.; Luong, N.C.; Wang, W.; Niyato, D.; Wang, P.; Liang, Y.-C.; Kim, D.I. A Survey on Blockchain: A Game Theoretical Perspective. IEEE Access 2019, 7, 47615–47643. [Google Scholar] [CrossRef]
  9. Zhao, G.; Liu, S.; Lopez, C.; Lu, H.; Elgueta, S.; Chen, H.; Boshkoska, B.M. Blockchain technology in agri-food value chain management: A synthesis of applications, challenges and future research directions. Comput. Ind. 2019, 109, 83–99. [Google Scholar] [CrossRef]
  10. Kim, S.; Kwon, Y.; Cho, S. A Survey of Scalability Solutions on Blockchain. In Proceedings of the 2018 International Conference on Information and Communication Technology Convergence (ICTC), Jeju, Republic of Korea, 17–19 October 2018; pp. 1204–1207. [Google Scholar] [CrossRef]
  11. Bizzaro, F.; Conti, M.; Pini, M.S. Proof of Evolution: Leveraging blockchain mining for a cooperative execution of Genetic Algorithms. In Proceedings of the 2020 IEEE International Conference on Blockchain (Blockchain), Rhodes, Greece, 2–6 November 2020; pp. 450–455. [Google Scholar] [CrossRef]
  12. Lihu, A.; Du, J.; Barjaktarevic, I.; Gerzanics, P.; Harvilla, M. A Proof of Useful Work for Artificial Intelligence on the Blockchain. arXiv 2020. [Google Scholar] [CrossRef]
  13. Antonopolus, M. Mastering Bitcoin. pp. 28–29. Available online: https://unglueit-files.s3.amazonaws.com/ebf/05db7df4f31840f0a873d6ea14dcc28d.pdf (accessed on 21 August 2023).
  14. Bamakan, S.M.H.; Motavali, A.; Bondarti, A.B. A survey of blockchain consensus algorithms performance evaluation criteria. Expert Syst. Appl. 2020, 154, 113385. [Google Scholar] [CrossRef]
  15. Mathy, G. Eliminating Environmental Costs to Proof-of-Work-Based Cryptocurrencies: A Proposal. East. Econ. J. 2023, 49, 206–220. [Google Scholar] [CrossRef]
  16. King, S.; Nadal, S. PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake. 2012. Available online: https://peercoin.net/assets/paper/peercoin-paper.pdf (accessed on 10 January 2019).
  17. Zhang, B.; Kong, L.; Li, Q.; Min, X.; Liu, Y.; Che, Z. EB-BFT: An elastic batched BFT consensus protocol in blockchain. Future Gener. Comput. Syst. 2023, 139, 267–279. [Google Scholar] [CrossRef]
  18. Mourtzis, D.; Angelopoulos, J.; Panopoulos, N. Blockchain Integration in the Era of Industrial Metaverse. Appl. Sci. 2023, 13, 1353. [Google Scholar] [CrossRef]
  19. Hussain, A.; Muhammad, Y.S.; Sajid, M.N.; Hussain, I.; Shoukry, A.M.; Gani, S. Genetic Algorithm for Traveling Salesman Problem with Modified Cycle Crossover Operator. Comput. Intell. Neurosci. 2017, 2017, 7430125. [Google Scholar] [CrossRef] [PubMed]
  20. Papazoglou, G.; Biskas, P. Review and Comparison of Genetic Algorithm and Particle Swarm Optimization in the Optimal Power Flow Problem. Energies 2023, 16, 1152. [Google Scholar] [CrossRef]
  21. Strutz, T. Redesigning the Wheel for Systematic Travelling Salesmen. Algorithms 2023, 16, 91. [Google Scholar] [CrossRef]
  22. Fan, C.; Ghaemi, S.; Khazaei, H.; Musilek, P. Performance Evaluation of Blockchain Systems: A Systematic Survey. IEEE Access 2020, 8, 126927–126950. [Google Scholar] [CrossRef]
  23. Gochhayat, S.P.; Shetty, S.; Mukkamala, R.; Foytik, P.; Kamhoua, G.A.; Njilla, L. Measuring Decentrality in Blockchain Based Systems. IEEE Access 2020, 8, 178372–178390. [Google Scholar] [CrossRef]
  24. Todorović, M.; Matijević, L.; Ramljak, D.; Davidović, T.; Urošević, D.; Krüger, T.J.; Jovanović, D. Proof-of-Useful-Work: BlockChain Mining by Solving Real-Life Optimization Problems. Symmetry 2022, 14, 1831. [Google Scholar] [CrossRef]
  25. Yuan, Y.; Shen, Q.; Wang, S.; Ren, J.; Yang, D.; Yang, Q.; Fan, J.; Mu, X. Coronavirus Mask Protection Algorithm: A New Bio-inspired Optimization Algorithm and Its Applications. J. Bionic Eng. 2023, 20, 1747–1765. [Google Scholar] [CrossRef] [PubMed]
  26. Yuan, Y.; Mu, X.; Shao, X.; Ren, J.; Zhao, Y.; Wang, Z. Optimization of an auto drum fashioned brake using the elite opposition-based learning and chaotic k-best gravitational search strategy based grey wolf optimizer algorithm. Appl. Soft Comput. 2022, 123, 108947. [Google Scholar] [CrossRef]
Figure 1. The block diagram in the blockchain.
Figure 1. The block diagram in the blockchain.
Applsci 13 10149 g001
Figure 2. Genetic algorithm population, chromosome and gene schema.
Figure 2. Genetic algorithm population, chromosome and gene schema.
Applsci 13 10149 g002
Figure 3. PoO block structure with normal block.
Figure 3. PoO block structure with normal block.
Applsci 13 10149 g003
Figure 4. KroA100 miner 129 solution graphic.
Figure 4. KroA100 miner 129 solution graphic.
Applsci 13 10149 g004
Figure 5. Kroa100 miner 135 fitness value graphic.
Figure 5. Kroa100 miner 135 fitness value graphic.
Applsci 13 10149 g005
Figure 6. Lin105 miner 130 solution value graphic.
Figure 6. Lin105 miner 130 solution value graphic.
Applsci 13 10149 g006
Figure 7. Lin105 miner 130 fitness value graphic.
Figure 7. Lin105 miner 130 fitness value graphic.
Applsci 13 10149 g007
Figure 8. KroA100 miner 131 solution graphic.
Figure 8. KroA100 miner 131 solution graphic.
Applsci 13 10149 g008
Figure 9. KroA100 miner 131 fitness value graphic.
Figure 9. KroA100 miner 131 fitness value graphic.
Applsci 13 10149 g009
Figure 10. Eil51 miner 130 density value graphic.
Figure 10. Eil51 miner 130 density value graphic.
Applsci 13 10149 g010
Figure 11. KroA miner 132 density value graphic.
Figure 11. KroA miner 132 density value graphic.
Applsci 13 10149 g011
Figure 12. Kro100A miner 129 density value graphic.
Figure 12. Kro100A miner 129 density value graphic.
Applsci 13 10149 g012
Figure 13. PoW block creation time graphic.
Figure 13. PoW block creation time graphic.
Applsci 13 10149 g013
Figure 14. PoO (ulysses 22) block creation time graphic.
Figure 14. PoO (ulysses 22) block creation time graphic.
Applsci 13 10149 g014
Figure 15. PoO (eil51) block creation time graphic.
Figure 15. PoO (eil51) block creation time graphic.
Applsci 13 10149 g015
Figure 16. PoO (lin105) block creation time graphic.
Figure 16. PoO (lin105) block creation time graphic.
Applsci 13 10149 g016
Figure 17. PoO (rd100) block creation time graphic.
Figure 17. PoO (rd100) block creation time graphic.
Applsci 13 10149 g017
Figure 18. PoO (kro100a) block creation time graphic.
Figure 18. PoO (kro100a) block creation time graphic.
Applsci 13 10149 g018
Figure 19. PoO (tsp225) block creation time graphic.
Figure 19. PoO (tsp225) block creation time graphic.
Applsci 13 10149 g019
Figure 20. PoO (Gr666) block creation time graphic.
Figure 20. PoO (Gr666) block creation time graphic.
Applsci 13 10149 g020
Figure 21. Proof of Optimum consensus algorithm.
Figure 21. Proof of Optimum consensus algorithm.
Applsci 13 10149 g021
Table 1. Consensus algorithms table.
Table 1. Consensus algorithms table.
FeaturePoWPoSPBFTDPOSPoAcPoBPoETPoC
AuthorizationNoNoAuthorizedNoNoNoAuthorizedNo
Energy efficiencyNoPartiallyYesPartiallyPartiallyYesPartiallyYes
EfficiencyLowLowHighHighLowLowLowHigh
UsageBitcoinPeercoinHyperledgerBitsharesDashSlimeIntelOANDA
Table 2. The hardware configuration of nodes.
Table 2. The hardware configuration of nodes.
Hardware Configurations
192.128.135.128 IP computer2 Gb RAM 2 Ghz processor
192.128.135.130 IP computer2 Gb RAM 2 Ghz processor
192.128.135.135 IP computer16 Gb RAM 8 Ghz processor
192.128.135.129 IP computer2 Gb RAM 2 Ghz processor
192.128.135.132 IP computer2 Gb RAM 2 Ghz processor
Table 3. Travelling salesman problems.
Table 3. Travelling salesman problems.
TSPsNumber of Cities
ulysses22.tsp22
eil51.tsp51
kroA100.tsp100
lin105.tsp105
rd100.tsp100
Tsp225.tsp225
Gr666.tsp666
Table 4. PoW fairness index and block.
Table 4. PoW fairness index and block.
POWTPSBlock Time (mean)FairnessMiner135Miner130Miner132Miner129Miner131
22.6014575.923930,4465108107
Table 5. PoO fairness index and block creation percentages table.
Table 5. PoO fairness index and block creation percentages table.
IterationTSPTPSSimulation TimeFairnessMiner 130Miner 135Miner 132Miner 129Miner 131Block Time
1000ulysses223844.7972.50.975615222418210.52
eil511836112.340.983224211620191.0864
lin1051193.93167.870.98818211723211.67
rd100857.59223.5870.9519172227152.33
kroa100772.08259.040.96525151823192.5
tsp225425.22470.580.96321232413194.7
gr666124.431628.60.9557291917171816.07
2000ulysses222032.1898.540.963317161921270.98
eil511052.47190.330.97115222217241.9
lin105502.3133980.92723122723153.98
rd100425.124520.9819232319164.7
kroa100362.345320.9718251618235.51
tsp225−202.34989.030.9424242211199.9
gr66670.1732620.130.95261422172128.5
5000ulysses22804.232248.090.95413172325222.48
eil51354.612503.2330.9920212317195.63
lin105258.98752.3540.9720162518217.72
rd100152.831248.390.95151727192213.15
kroa100144.941379.30.98151727192213.79
tsp22593.642102.780.94131525232421.35
gr66630.466124.740.99231921201765.65
Table 6. PoO fairness index and block creation percentages table by the time given.
Table 6. PoO fairness index and block creation percentages table by the time given.
TimeTSPTPSTotal IterationFairnessMiner129Miner130Miner135Miner131Miner132Blocks
500ulysses224017.13118,0000.973213322021118
eil512036.1732,0000.9757568632
lin105518.0729,0000.8995447929
rd100543.2529,0000.79052116529
kroa100776.4822,0000.986557522
tsp225548.317,0000.8492256417
gr66630.5130000.36010203
1000ulysses224266.93158,0000.913224403032158
eil512395.38161,0000.962741382926161
lin105957.5411,0000.832224111
rd100827.5715,0000.672151615
kroa100888.3610,0000.713031310
tsp225482.9824,0000.8223373824
gr66683.450000.71101125
1500ulysses223925.45451,0000.90586313610688451
eil512199.32172,0000.974025304037172
lin105973.4478,0000.97121815201378
rd100804.7629,0000.919465529
kroa100738.522,0000.835175422
tsp225539.03838,0000.9681067738
gr66682.02890000.77113139
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Gündüz, F.; Birogul, S.; Kose, U. Proof of Optimum (PoO): Consensus Model Based on Fairness and Efficiency in Blockchain. Appl. Sci. 2023, 13, 10149. https://doi.org/10.3390/app131810149

AMA Style

Gündüz F, Birogul S, Kose U. Proof of Optimum (PoO): Consensus Model Based on Fairness and Efficiency in Blockchain. Applied Sciences. 2023; 13(18):10149. https://doi.org/10.3390/app131810149

Chicago/Turabian Style

Gündüz, Fatih, Serdar Birogul, and Utku Kose. 2023. "Proof of Optimum (PoO): Consensus Model Based on Fairness and Efficiency in Blockchain" Applied Sciences 13, no. 18: 10149. https://doi.org/10.3390/app131810149

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop