Các giải thuật tối ưu Meta-heuristic

Một phần của tài liệu Nghiên cứu xây dựng giao thức đồng thuận dựa trên đánh giá các tiêu chí trong mạng chuỗi khối (Trang 27 - 32)

2 Tổng quan các nghiên cứu và các kiến thức cơ sở

2.5 Các giải thuật tối ưu Meta-heuristic

Có rất nhiều yếu tố ảnh hưởng tới quá trình hoạt động của mạng lưới chuỗi khối, bao gồm lượng tiền tệ họ nắm giữ, số lần tạo ra khối mới trong mạng, số lần được bầu làm nhà sản xuất khối, ... Do đó, việc lựa chọn các nhà sản xuất khối mới dựa trên nhiều tiêu chí là khó khăn. Vấn đề này có thể được xem xét như một bài toán tối ưu đơn mục tiêu hoặc đa mục tiêu. Các bài toán này có thể được giải quyết một cách hiệu quả nhờ vào các giải thuật tối ưu hoá metaheuristic (MHAs). Gần đây, các giải thuật tối ưu hoá lấy cảm hứng từ tự nhiên đang là chủ đề có sức hút rất lớn đối với các nhà nghiên cứu [7]. Chúng thuộc loại giải thuật meta-heuristics được lấy cảm hứng từ hành vi hoặc giao tiếp xã hội giữa các cá thể trong quần thể của một loại sinh vật nào đó. Những loại thuật toán này được sử dụng rất rộng rãi do một số đặc điểm nổi bật như:

1. Những khái niệm đến từ tự nhiên rất dễ hiểu và thực hiện giải thuật bằng ngôn ngữ lập trình,

2. Khả năng mở rộng tìm kiếm từ cục bộ đến tìm kiếm toàn cục,

3. Có khả năng vượt qua được điểm yếu hội tụ sớm.

Nhìn chung, giải thuật lấy cảm hứng từ tự nhiên giải một bài toán tối ưu hóa bởi mô tả lại những tính chất sinh học hoặc hành vi vật lý của một loài sinh vật. Các phương pháp tối ưu hóa này có thể được phân loại thành bốn nhóm chính:

• Nhóm giải thuật lấy cảm hứng từ tiến trình tiến hóa (Evolutionary-based): Nhóm thuật toán này lấy cảm hứng từ quá trình hóa của các loài sinh vật trong tự nhiên. Một số giải thuật nổi tiếng thuộc nhóm này như Genetic Algorithm

(GA) [26] mô tả lại luật tiến hóa của Darwin. Ngoài ra, một số giải thuật khác như Differential Evolution (DE), Flower Pollination Algorithm (FPA), Coral Reefs Optimization (CRO) [29] cũng đã chứng minh được tính hiệu quả trong các bài toán thực tế.

• Nhóm giải thuật lấy cảm hứng từ bầy đàn (Swarm-based): Đây là nhóm nổi bật nhất và cũng được phát triển mạnh nhất so với các nhóm khác. Chúng thể hiện các hành vi của động vật như virus, chim, cá,... và sự giao tiếp bày đàn của những loài động vật này trong các hoạt động đời thường của chúng như tìm kiếm thức ăn,.... Giải thuật nổi tiếng nhất trong nhóm này là Particle Swarm Optimization (PSO) [2], lấy cảm hứng từ hành vi xã hội của loại chim. Một số giải thuật khác nổi tiếng như Whale Optimization Algorithm (WOA) [20], Bacterial Foraging Optimization (BFO) [6], Sailfish Optimization (SFO) [31].

• Nhóm giải thuật lấy cảm hứng từ các hiện tượng vật lý (Physics-based): Đây là nhóm lấy cảm hứng từ những nguyên lý, công thức vật lý từ trái đất đến vũ trụ bao la. Một số giải thuật nổi trội trong nhóm này như Nuclear Reaction Optimization (NRO - [35]) lấy cảm hứng từ việc va chạm và phản ứng của các hạt nhân nguyên tử và Henry gas solubility optimization (HGSO) [9]. Ngoài ra, các giải thuật Black Hole Optimization (BHO - [10]) lấy cảm hứng từ lí thuyết về lỗ đen hay Tug of War Optimization (TWO - [12]) lấy cảm hứng từ trò chơi kéo co và các định lí Newton đằng sau nó cũng đã chứng minh tính hiệu quả của nó trong nhiều nghiên cứu.

• Nhóm giải thuật lấy cảm hứng từ hành vi của con người (Human behavior- based): Đây là nhóm đặc biệt nhất bởi vì chúng được lấy cảm hứng từ các hành động, giao tiếp xã hội hàng ngày của loài động vật bậc cao là con người. Giải thuật phố biến nhất của nhóm này là thuật toán tìm kiếm theo hàng đợi - Queuing Search Algorithm (QS) [23]. Ngoài ra, một số giải thuật nổi tiếng trong nhóm này có thể kể đến như Brain Storm Optimization (BSO - [32])lấy cảm hứng từ việc cách mà con người hình thành (nghĩ ra) ý tưởng hay Teaching Learning-based Optimization (TLO - [28]) lấy cảm hứng từ việc

cách mà các giáo viên dạy học và các học viên tiếp nhận kiến thức.

Mặc dù đã từng mang lại hiệu quả đối với nhiều bài toán tối ưu hoá trong thực tế, việc áp dụng các giải thuật meta-heuristic đối với vấn đề tối ưu hoá trong lĩnh vực chuỗi khối vẫn còn khá mới. Trên thực tế, chưa có bất kỳ nghiên cứu nào áp dụng phương pháp này ở thời điểm hiện tại.

Cụ thể, luận văn thực hiện những công việc sau:

1. Đề xuất ra một giao thức đồng thuận mới (được gọi là MPoC) nhằm cải thiện mức độ phi tập trung trong quá trình lựa chọn các nhà sản xuất khối và xuất bản mã nguồn của nó.

2. Đề xuất sử dụng nhiều tiêu chí đánh giá các nút mạng trong quá trình lựa chọn các nhà sản xuất khối mới.

3. Đề xuất công thức đánh giá mức độ phi tập trung của mạng lưới trong quá trình lựa chọn các nhà sản xuất khối.

4. Đề xuất sử dụng các giải thuật MHAs để giải quyết vấn đề tối ưu hoá trong MPoC.

5. Đề xuất mạng thử nghiệm chuỗi khối nhằm đánh giá tính khả thi của MPoC và so sánh mức độ hiệu quả về tính phi tập trung trong quá trình xác định các nhà sản xuất khối mới giữa MPoC và DPoS.

Chương 3

Thiết kế giao thức MPOC

3.1 Giao thức đồng thuận MPoC

Như đã trình bày trong Chương1, DPoS sử dụng cơ chế bỏ phiếu áp dụng cho các thành phần tham gia vào mạng lưới (nút mạng, ...). Sức mạnh phiếu bầu của các thành phần này tỉ lệ thuận với lượng tiền tệ mà họ nắm giữ. Các thành phần này bầu ra nhóm các đại biểu tin cậy để tham gia vào vòng tạo và xác nhận các khối mới. Trong nghiên cứu này, chúng tôi đề xuất một giao thức đông thuận mới được gọi là MPoC. Chúng tôi tận dụng các ưu điểm mà DPoS có về tốc độ và khả năng xử lý so với PoW và PoS. Dựa trên các đặc điểm này, MPoC hoàn toàn phù hợp để áp dụng đối với các nền tảng chuỗi khối không phân quyền mà ở đó số lượng nút mạng trong hệ thống lớn và các nút mạng không có sự tin tưởng lẫn nhau cao. Ngoài ra, MPoC cũng kế thừa cơ chế bỏ phiếu và tính bảo mật của DPoS. Với MPoC, chúng tôi không chỉ cố gắng tăng cường mức độ phi tập trung trong quá trình lựa chọn các nhà sản xuất khối mới cho mạng lưới mà vẫn cố gắng bảo đảm hiệu quả hoạt động của mạng lưới chuỗi khối ít nhất là như DPoS. Tương tự DPoS, quá trình tạo ra các khối mới của MPoC cũng được chia thành các vòng (round). Trong mỗi vòng, chỉ có k ứng cử viên có thể tạo khối mới. Các nút này được gọi là các nhà sản xuất khối (block producer). Khi tất cả các nhà sản xuất khối của vòng đó đều sử dụng lượt của họ để tạo khối mới, một vòng mới sẽ được bắt đầu.

Khoảng thời gian giữa hai lần tạo ra khối mới trên mạng là 4t giây. Quá trình lựa chọnk nhà sản xuất khối mới cho mạng lưới phải đảm bảo là các nút được lựa chọn là đáng tin cậy đối với các nút khác trong mạng. Nói cách khác, độ tin cậy của các nút được chọn để thấy rằng những nhà sản xuất này không phải là kẻ phá hoại và họ luôn hoạt động trung thực để mạng blockchain đạt được các chức năng của nó. Trong MPoC, tiêu chí về độ tin cậy được thỏa mãn bằng cách sử dụng cơ chế biểu quyết như DPoS khi tất cả các nút đề cập đến sự tin tưởng của họ vào nhau thông qua quá trình bầu cử. Trong thiết kế của chúng tôi, mạng blockchain sử dụng MPoC chạy đồng thời hai tiến trình sau tại bất kỳ thời điểm nào: (1) Tất cả các thành phần trên toàn mạng lưới thực hiện tiến trình bỏ phiếu và (2) Quá trình chọn nhà sản xuất khối trong mỗi vòng. Tiến trình đầu tiên được thực hiện để xác định các chiều dữ liệu liên quan đến tiêu chí bỏ phiếu, bao gồm tổng số phiếu bầu được, số lượng nút bầu cho một nút, tổng số phiếu bầu mà một nút bầu cho các nút khác và số lượng nút được bầu bởi nút đó. Tất cả các thông tin về quá trình bầu cử đều được ghi lại dưới dạng giao dịch và được lưu trữ bên trong sổ cái. Tiến trình thứ hai hoạt động như tên gọi của nó để chọnk nhà sản xuất khối dựa trên bộ trọng số cho các tiêu chí được tạo ra bởi thuật toán MHA(được mô tả trong phần tiếp theo của chương) và giá trị các tiêu chí hoạt động của các nút mạng đó. Sau khi lựa chọn được các nhà sản xuất khối mới, họ lần lượt thay phiên nhau để tạo ra các khối mới cho mạng lưới. Với DPoS, các thành phần trong mạng lưới thường có xu hướng bầu cử cho các nút mạng có khả năng cao trở thành các nhà sản xuất mới, để tối ưu khả năng nhận lợi nhuận từ quá trình tạo khối mới. Điều này dẫn tới vấn đề tập trung hoá trong quá trình lựa chọn các nhà sản xuất khối mới. Để giải quyết vấn đề này, trong MPoC, nhiều tiêu chí được sử dụng để chọn nhà sản xuất khối. Các tiêu chí của các nút mạng được áp dụng trong quá trình đánh giá và lựa chọn các nhà sản xuất khối mới được hiển thị trong bảng 3.1. Các tiêu chí này được lựa chọn dựa trên các nguyên tắc sau: đánh giá mức độ đóng góp, độ tin cậy và tính đúng đắn của một nút trong mạng lưới chuỗi khối.

Một phần của tài liệu Nghiên cứu xây dựng giao thức đồng thuận dựa trên đánh giá các tiêu chí trong mạng chuỗi khối (Trang 27 - 32)