Trong quátrình nghiên cứu, các phương pháp giảm kích thước đồ thị bằng thuật toán FastColor và thuật toán giảm kích thước Hamiltonian mục tiêu đã giúp máy tính lượng tử giảiquyết được cá
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KHOA HỌC VÀ KỸ THUẬT THÔNG TIN
NGUYEN MINH TAM - 20520748
NGUYEN TRUONG THỊNH - 20520783
KHOA LUAN TOT NGHIEP
XÂY DUNG GIẢI PHÁP TIẾT KIỆM CHI PHÍ VA
CÓ KHA NANG MO RỘNG CHO BÀI TOÁN LẬP LỊCH SẠC XE ĐIỆN SỬ DỤNG PHƯƠNG PHÁP
CO DIEN KET HỢP LUONG TỬ
A COST-EFFECTIVE SCALABLE HYBRID
QUANTUM-CLASSICAL SOLUTION ON ELECTRIC VEHICLE
CHARGING PROBLEM
CU NHAN NGANH KHOA HOC DU LIEU
GIANG VIEN HUONG DAN
TS DINH QUANG THINH
TP HO CHi MINH, 2024
Trang 2THÔNG TIN HỘI ĐÒNG CHÁM KHÓA LUẬN TÓT NGHIỆP
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số 33/QD-DHCNTT, ngày
10/01/2024 của Hiệu trưởng Trường Dai học Công nghệ Thông tin.
Trang 3LỜI CẢM ƠN
Lời đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến các thầy cô khoaKhoa học và Kỹ thuật Thông tin đã giảng dạy, hướng dẫn và truyền cảm hứng chochúng em trong suốt những năm đại học và tạo điều kiện thuận lợi cho chúng em thựchiện khóa luận tốt nghiệp Đặc biệt, chúng em xin gửi lời cảm ơn sâu sắc đến thầyĐinh Quang Thịnh đã luôn nhiệt tình hướng dẫn về những kiến thức, quy trình cầnthiết cho việc nghiên cứu trong một lĩnh vực mới lạ như điện toán lượng tử và dành
nhiều thời gian theo sat dé đưa ra những lời nhận xét, góp ý cần thiết nhăm giúp chúng
em tránh mắc phải những lỗi sai và đạt được kết quả tốt Những kiến thức, kinhnghiệm và lời khuyên bồ ích từ thầy đã giúp chúng em rất nhiều trong quá trình thựchiện khóa luận cũng như trong cuộc sống và sự nghiệp sau này Cuối cùng, chúng em
xin chân thành cảm ơn gia đình, bạn bè và anh chị đã ở bên cạnh động viên, giúp đỡ
và mang đến những sự hỗ trợ cần thiết nhăm giúp chúng em có thể hoàn thành khóa
Trang 4Tĩm tắt khĩa luận - -:¿-52t22++t22EEY+22E11122211122EE 122211 ttkrrrrriii |
Chương 1 Mở đầu ¿- 2 + S+£SÉEE9EE+EE+EE+EEEEEEEEEEEEEEEE1111121111E1111 1111111 xe 2
1.1 Lý do chọn đề tài ¿-5- 52 s21 EEEE21157171121121121111711 2111111111 1x ctxee 2
1.2 Muc ti€u kh6a Lan — 3
1.3 Phạm vi va đối tung w c.cceccescescssessessessessesscsssscsessessessessessesecseseesessessesseseeseeaees 41.4 Đầu vào và đầu ra của bài tốn oo eeceececssessessesssessessecsecssessessessussuessecscssssesseeses 41.5 Cau trúc khĩa luận : ++22++t222++t22EEYtEEEExtttEtkrtttttrrtrrrrrrtrirrrrrrieg 5
00190150200 NNNnn 7
2.1 Tổng quan về tính tốn lượng tử - 2-22 2+E+EE+£E££EE2EEEEEeEEerEerrxrrkerxee 7
2.2 Các cơng trình nghiên cứu liên Quan - - <5 +< + ‡*++++*eEx+eexeeeereeess 8
Chương 3 Bộ dữ liệu ACN-Dafa - ĩc S 2 k1 SH HH HH HH HH HH ni, 10
3.1 Giới thiệu bộ dữ lIỆU - - ¿6 2c 2221k 9kg HH HH nưkt 10 3.2 Các thuộc tính của bộ dữ liệu - -c 22111122111 11221 1111 115511151 xx2 11
3.3 Phạm Vi SU ỤN c9 HH ng 12
Chương 4 Nghiên cứu lý thUyẾt -¿- 2 2 2E SE£SE£EE£EESEEEEEEEEEEEEEerkerkerkrrkrree 13
4.1 Quy trình thực nghiém 2 2 2c + 3322118311 1351 1 3911 811111 11x krrverre 13 4.2 Giải thuật FCES .- -á 25 21131121121 11 111211211 111111 1T 1H TH TH HH ng TH TH 13
“SN (0000086 15
4.3.1 Tổng quan về bài tốn tối ưu tơ màu đồ thị - -¿ sz55sz-: 154.3.2 Mơ hình hĩa bài tốn sắp xếp cổng sạc xe điện -. : :-: l64.4 Thuật tốn giảm kích thước đồ thị trong bài tốn tơ màầu - 17
4.4.1 Một số khái niệm và cơng thức liên quan - 2 2s szs+zsz s22 18
4.4.2 Thuật tốn FastCỌOT - - 2 <1 E31 2222311111 11233111 1119933111 ng ve 20
4.4.3 Khơi phục kết quả của đồ thị ban đầu - 2-2 + +sz+sz+zzzzxerseee 22
4.5 Xây dựng Hamiltomian mục tIÊU 5 112x119 v9 ng re, 22
4.5.1 Tổng quan một số mơ hình tối ưu trong tính tốn lượng tử 22
4.5.2 Tổng quan về Hamiltonian - 2 2 s+E£+E£+EE+EE+EE£zEzEE+Exerxerseee 244.5.3 Xây dựng Hamiltonian cho bài tốn tơ màu đồ thị - +: 25
Trang 54.6 Giải bài toán tô màu đồ thị bằng Gurobi solver -: +55: 26
4.7 Giải thuật giảm kích thước Hamilfon1an - s5 + *s+x+sereeeeeereeerree 28
4.7.1 Phát hiện và tô mầu clique -:- 2 + +©++++++z++zx+zx+zx+zxxzrxerxerseee 29
4.7.2 Giảm kích thước HamiltOn1an - 5 5 33323 3+ +2£eezeeeeeeeeeese 29
4.8 Giải thuật lượng tử tìm nghiệm COL ƯU Set SE EEEESEEEEEkrkerererkrree 32
4.8.1 Giải thuật QA 55-55 5c 2 21221E21211211211271211211211 21111111 32 4.8.2 Gidi thudt QAOA v6 a 33
4.8.3 Khôi phục nghiỆm - <5 131191119101 19930 19011 ngư 37
4.8.4 Kiểm tra tính hợp lệ của nghiệm - ¿2 2 2+S£+E£+E+£Ee£Eerxerxerxee 37
4.9 Đánh giá giải pháp -¿ :- 2c ©5+22+22++EEEEE2EE2EEEEEEEEEEEEEEEErrkrrrrrrerrres 38
4.9.1 Chất lượng nghiệm - ¿+ 2© 22EE+E2E£EEEEEEEEEEEEEE2E12171 2121k, 38
4.9.2 Chi phí lưỢng tỬ - c1 2113231132313 11311 11 1 19911 9 HH ng ngư 38
4.9.3 Tinh i00 0c a)ỤỦỒ 39
Chương 5 Kết quả thực nghiệm - - 22 25% +E2E£+EE+EEtEEEEEESEEtEEerErEkrrkerkrrex 40
5.1 Thiết kế thực nghiệm ¿- 2+2 2+2 +E9SE£EE#EESEEEEEEEEEEEEEEEEEErrkrrkrrkee 40
5.2 Đánh giá phương pháp giảm kích thước Hamiltonian - -<› 40
5.2.1 Phương pháp dé xuấtt -¿- 2 2 2S SE‡EEEEESEEEEEEEEEE22121 21212 errrek 40
5.2.2 So sánh với các phương pháp khác - sss+++s*++se+seeeseeeeeers 42 5.3 Đánh giá các giải thuật lượng tử - 5 5 S5 + Hit 43
5.3.1 Khả năng thực thi trên máy tính lượng tỬ - «+ +«c<<<<s+ssss 43 5.3.2 Giải thuật QAA ¿ :- + 2x222221221221211221221271211211211 11112121 xtxe 44
5.3.3 Giải thuật QAOA -.- 5c 52222221221 2121121122121211211 1112 cre 41
5.3.4 So sánh giải thuật đề xuất với các giải thuật tô màu đồ thị khác 52
Chương 6 Kết luận và hướng phát triỂn ¿- ¿+ 5¿+++2++£x++zx++zxezxesrxz 55
8‹0n " "." -”.'".-.'^- ÔÒỎ 556.2 Hướng phát triễn ¿- +: ©2+©+++EE+2EEEEEEEEESEE2E1E211221221 21121221 55
Tài liệu tham khảo -¿- 2 5£ + 2S£2SE£EE£EEEEEE2EEEEEEEE2E1221717112212217171111 21c re 56
Trang 6DANH MỤC HÌNH
Hình 1.1 Minh họa hệ thống xếp lịch sạc xe điện - «+5 + S25 << cccseceszeeeces 5Hình 4.1 Sơ đồ quy trình thực nghiệm dự kiến 2- 2 2 s£x+zEz£++zxerxczez 13
Hình 4.2 Ví dụ minh họa cách mô hình hóa bài toán sac pin xe điện 16
Hình 4.3 Ví dụ áp dụng giải thuật đề xuất cho bài toán đồ thị có 20 đỉnh 28Hình 4.4 Minh họa cơ chế của giải thuật lượng tử QA c-cc<<ccssrsee 33Hình 4.5: Sơ đồ mạch của giải thuật QAOA ch HH HH kg Hư 34Hình 5.1 Hiệu quả của giải thuật giảm kích thước lên số qubit sử dụng 41Hình 5.2: Biéu đồ phân bố số qubit sau khi áp dụng giải thuật giảm kích thước 42Hình 5.3: So sánh số qubit sử dụng sau khi giảm kích thước của các giải thuật khác
DMNA "" ố ./.đŒ£ < " 43
Hình 5.4 So sánh giải thuật QA với SA -.- G1 HH Hư, 46
Hình 5.5 Đường cong năng lượng trung bình của hệ theo số bước lặp 47Hình 5.6 Giản đồ phân bó trạng thái và mức năng lượng của hệ trong QAOA 48Hình 5.7 Đánh giá tỉ lệ ra nghiệm tối ưu của giải thuật QA, QAOA trên các thiết bị
Tung tir $1viii1 0121217775 52
Hình 5.8 So sánh hiệu qua của giải thuật đề xuất với một số giải thuật cô điển khác
cho bài toán tô màu G6 thị -¿- 5c E9SESE+EEEEEE+EEEEEEEEEEEEEEESEEEEEEEESEEEErkekrrrrkrree 54
Trang 7DANH MỤC BẢNG
Bảng 3.1 Các thuộc tính trong bộ dữ liệu ACN-Dafa - 72-55 SSc++scsssess 11
Bang 3.2 Thống kê số ngày với số phiên sac theo từng khoảng tai 3 địa điểm trong
s00): 0.10)08.:.011 12
Bảng 4.1 Ví dụ về thông tin lịch sạc xe điện tại một địa điểm sạc + 14
Bang 4.2 Kết quả xếp lịch sạc pin năm chiếc xe điện theo giải thuật FCFS 14
Bảng 4.3 Chuyén ràng buộc thành hang tử điều chỉnh trong QUBO model 24
Bảng 5.1 Trung bình tỉ lệ % số qubit giảm được thống kê theo số phiên sạc sử dụng hai thuộc tính doneCharging Time và disconnectTime «5 «<< s<++sss+ 41 Bảng 5.2 Khả năng thực thi của các thiết bị lượng tỬ -ccccsssereereres 44 Bang 5.3 Kết quả QA trên D’ Wave QPU - 2: S2+SE+EE+EE£EE£Et£E£EEerEerkerxrrkrree 45 Bảng 5.4 Kết quả QAOA trên IonQ sỉmulatOr - 2-22-5525 25£+2x+2£x2z+ezxesrsz 49 Bang 5.5 Kết quả QAOA trên Rigetti simulatOr - - 2-2 2 z+s££Ee£Ee£xe£szzszse2 50 Bảng 5.6 Kết quả QAOA trên QASM simulatOr -.2-52-55¿©5£255z2£x2z+ecxescsz 50 Bảng 5.7 Kết quả chạy giải thuật đề xuất với một số giải thuật cô điển khác 53
Trang 8DANH MỤC TỪ VIET TAT
Bounded independent set
Binary quadratic model
First come first served
JavaScript object notation
Mô hình nhị phân bậc hai.
Giải thuật lập lịch không ưu tiên cho
quá trình, quá trình nào đên trước thì
được thực thi trước.
Một định dang dữ liệu dựa trên văn
Bài toán tối ưu biến nhị phân bậc hai
không có điêu kiện ràng buộc.
Giải thuật ủ lượng tử.
Thuật toán tôi ưu xấp xỉ lượng tử.
Bộ vi xử lý lượng tử, tương đương với CPU đôi với máy tính thông thường.
Giải thuật ủ mô phỏng.
Giải thuật x4p xỉ ngẫu nhiên nhiễu
loạn đông thơi.
Trang 9TÓM TAT KHÓA LUẬN
Ngày nay cùng với xu hướng bảo vệ môi trường, việc sử dụng các loại xe điệnđang dan trở nên phổ biến Trong giai đoạn đang phát triển, các điểm sạc của hạ tangsạc xe điện còn chưa bao phủ rộng rãi và rat dé quá tải nếu không được điều phối hop
lý Điều này dẫn đến nhu cầu giải quyết bài toán xếp lịch sạc pin xe điện, đây là mộtbài toán của lý thuyết tối ưu trên tập rời rạc với độ phức tạp NP-hard Với sự pháttriển của công nghệ lượng tử, máy tính lượng tử có khả năng mạnh mẽ trong việc giải
quyết các bài toán tối ưu, và khả năng truy cập cũng dần mở rộng thông qua các dịch
vụ lượng tử đám mây Đề tài hướng đến việc giải quyết bài toán xếp lịch sạc pin xe
điện ứng dụng máy tính lượng tử, dựa trên thông tin sac xe điện được thu thập từ bộ
dữ liệu ACN-data Bằng phương pháp mô hình hóa, nhóm nghiên cứu đã chuyên bàitoán về một dạng quen thuộc là bài toán tô màu tối ưu trên đồ thị, đồng thời xây dựng
mô hình toán học QUBO và Ising để có thể xử lý bằng máy tính lượng tử Trong quátrình nghiên cứu, các phương pháp giảm kích thước đồ thị bằng thuật toán FastColor
và thuật toán giảm kích thước Hamiltonian mục tiêu đã giúp máy tính lượng tử giảiquyết được các bài toán có số biến lớn hơn phần cứng QPU hiện có, với khả nănggiảm số biến lên đến hơn 95 % qubit, gấp khoảng 15 lần so với FastHare và 30 lần sovới Roof Duality, là hai giải thuật rút gọn Hamiltonian đã được công bồ trước đây
Hamiltonian rút gọn được giải nghiệm bang 2 giải thuật lượng tử là QA và QAOA.Kết quả bước đầu cho thấy QA trả về 100 % nghiệm tối ưu trên các mẫu dữ liệu có
không quá 80 qubit khi so sánh với Gurobi solver Trong khi đó, QAOA chỉ cho kếtquả tốt ở các mẫu dữ liệu từ 1-8 qubit nhưng thời gian thực thi khá chậm và chi phítốn kém Các kết quả nghiên cứu bước đầu cho thấy có thê ứng dụng giải thuật đãxây dựng với máy tính lượng tử sử dung QA dé giải bài toán xếp lịch sac xe điện
Trang 10càng phát triển mạnh mẽ, mang lại nhiều lợi ích thiết thực trong việc bảo vệ và cảithiện môi trường, đặc biệt là ở những thành phố lớn Tuy nhiên, trong giai đoạn biếnchuyển này đang tồn tại một bat cập, đó là sỐ lượng và vi tri điểm sạc của các hạ tầngsạc xe điện hiện chưa được phủ rộng như hệ thống cung cấp xăng dầu Điều này cóthê gây tắc nghẽn và quá tải ở các trạm sạc nếu không được điều phối hợp lý, dẫn đếnlàm giảm đi hiệu quả và sự hài lòng của kháng hàng sử dụng dịch vụ sạc Do đó, cầnthiết phải xây dựng một hệ thống xếp lịch sạc xe điện thông minh, nhằm nâng caohiệu năng của các trạm sạc và giúp hệ thống sạc pIn xe điện phục vụ tốt hơn Songsong đó, việc sắp xếp và tối thiểu hóa số trạm sạc được sử dụng trong bối cảnh bàitoán giúp tăng cường số tram sạc du ra, có thé phục vụ được thêm cho các khách vãnglai đến sạc nếu có.
Bài toán sắp xếp lịch sạc pin cho xe điện mà nhóm nghiên cứu nhận đầu vào làlịch sạc dự kiến theo từng ngày của các khách hàng đăng ký dịch vụ sạc tại một trạm
cụ thé, cùng với các điều kiện về cơ sở hạ tầng của trạm sạc đó Việc cần làm là tối
ưu hóa sao cho số trạm sạc được sử dụng là ít nhất nhưng vẫn phục vụ được tất cả
các khách hàng đã đăng ký sạc Bài toán này có thê được đưa về một bài toán tối ưutrên đồ thị và giải quyết được bằng các giải thuật tối ưu trên tập rời rạc Trong nhữngnăm gan đây, điện toán lượng tử đã nồi lên như một giải pháp mới dành cho việc giải
quyết các bài toán tối ưu, vì khả năng tính toán song song mạnh mẽ Đồng thời, các
dich vụ lượng tử cũng đã mở ra với người dùng và có thé dé dàng truy cập được máy
tính lượng tử thông qua cloud Tuy nhiên, do những hạn chế về mặt phần cứng, máytính lượng tử hiện nay chưa thể giải quyết được những bài toán tối ưu có kích thước
Trang 11lớn với nhiều biến Do đó trong đề tài này, nhóm nghiên cứu đề xuất một phươngpháp phối hợp giữa hướng tiếp cận truyền thống và tính toán lượng tử dành cho bài
toán tối ưu số trạm sạc pin xe điện, trong đó các giải thuật cô điền đóng vai trò trong
việc giảm kích thước bài toán, nhằm mở rộng khả năng của máy tính lượng tử giảiquyết các bài toán có kích thước lớn
1.2 Mục tiêu khóa luận
Trong đề tài này, nhóm nghiên cứu ứng dụng tính toán lượng tử trong việc giải
quyết bài toán lập lịch sạc xe điện Dé làm được điều này, đầu tiên cần ánh xạ bài
toán ban đầu về bài toán tô màu đồ thị (graph coloring), đây là một dạng bài toán tối
ưu thường gặp trên đồ thi, sau đó tiến hành xây dựng Hamiltonian mục tiêu của bài
toán đồ thị dé có thé đưa vào máy tính lượng tử
Hamiltonian là một toán tử (operator) biểu diễn trạng thái năng lượng của hệlượng tử Trong các bài toán tối ưu, Hamiltonian thường biéu diễn dưới dạng ma trận
mã hóa hàm mục tiêu (objective function) của bài toán tối ưu Nghiệm của bài toántối ưu tương ứng với trạng thái có năng lượng cực tiểu (ground state) của hệ lượng
tử Việc giải bài toán tối ưu được thực hiện bằng cách dựa vào Hamiltonian, từ mộttrạng thái ban đầu đơn giản, hệ lượng tử sẽ tiến hóa (quantum evolution) đến trạngthái tối ưu có năng lượng thấp nhất tương ứng với nghiệm của bài toán tối ưu (optimalsolution) Kích thước ma trận Hamiltonian có liên quan trực tiếp đến số bit lượng tử
(qubit) được sử dung trong máy tính lượng tử, do đó trực tiếp ảnh hưởng đến chi phí
tính toán Việc giảm kích thước Hamiltonian giúp tiết kiệm được cả về phần cứng vàthời gian thực thị, đồng thời hỗ trợ máy tính lượng tử giải quyết được các bài toánlớn khi phần cứng QPU không đáp ứng đủ số lượng qubit cần thiết
Từ các lý do nêu trên, mục tiêu chính của đề tài là xây dựng giải pháp cho bàitoán lập lịch sạc xe điện sao cho có thể giảm được kích thước ma tran Hamiltonian
Từ đó, giúp máy tính lượng tử có thê khả thi trong việc giải những bài toán có kíchthước lớn đồng thời giảm chỉ phí khi sử dụng máy tính lượng tử
Trang 121.3 Phạm vi và đối tượng
Nhằm giảm sự phụ thuộc vào nhiên liệu hóa thạch và hạn chế khí thải từ động
cơ đốt trong, xe điện đang được khuyến khích phát triển và ngày càng trở nên phổ
biến Trong bối cảnh bài toán sạc xe điện, có rất nhiều chiếc xe điện được sạc tại
những trạm sạc tập trung Mỗi trạm gồm một hoặc nhiều công sạc, mỗi công Sạc cókhả năng cung cấp một lượng điện năng nhất định cho xe điện trong một khoảng thờigian cé định Khi đến trạm, xe điện sẽ chọn một công sac trống dé bắt đầu quá trìnhsạc Thời gian sạc và lượng điện năng cần thiết dé sạc đầy xe có thé khác nhau tùy
thuộc vào vào loại xe và dung lượng pin của xe Vấn đề đặt ra là làm thé nào dé phân
bồ hiệu quả sỐ công sạc tại một trạm sạc cho xe điện nhằm tối ưu hiệu suất hoạt động
của các cổng sạc, phục vụ được nhiều xe hơn, từ đó góp phần giảm thiểu thời gian
chờ đợi và nâng cao sự hài lòng của khách hàng.
Nhằm giải quyết vấn đề nêu trên, nhóm nghiên cứu tập trung vào việc giải bàitoán tối ưu số công sạc pin xe điện được sử dụng hàng ngày tại một trạm sạc Việctối ưu có thể dựa vào nhiều loại thông tin khác nhau, nhưng trong phạm vi đề tàinhóm nghiên cứu sử dụng thông tin về thời gian bắt đầu và kết thúc sạc dự kiến củatừng xe Mỗi lần một chiếc xe điện được sạc tại một công sẽ được gọi là một phiênsạc và số lượng công sạc sẽ được tôi ưu theo từng ngày dựa vào thời gian bắt đầu vàkết thúc của các phiên sạc trong ngày
Bộ dữ liệu được nhóm nghiên cứu sử dụng trong đề tài này là bộ ACN Data[22], gom dữ liệu thực tế về thông tin các trạm sạc xe điện được thu thập từ ba địađiểm tại Hoa Ky Các thông tin về bộ dữ liệu được sử dụng sẽ được trình bày chi tiết
trong Chương 3.
1.4 Đầu vào và đâu ra của bài toán
Đâu vào (input) va đâu ra (output) của bài toán “Tôi ưu hóa lịch sạc xe điện”
được xác định như sau:
— Đâu vào:
Trang 13+ Thông tin về thời điểm bắt đầu và kết thúc dự kiến của các phiên sạc xe điện
Cách hoạt động của hệ thống được minh họa cụ thé trong Hình 1.1 dưới đây
Hình 1.1 Minh họa hệ thống xếp lich sạc xe điệnĐầu tiên, thông tin về nhu cầu sạc pin của xe điện và thông tin về các trạm sạcđược thu thập hằng ngày bằng các thiết bị biên Các thông tin này sau đó được tônghợp và gửi đến dịch vụ điện toán đám mây Dịch vụ điện toán đám mây sử dụng máytính lượng tử dé xếp lịch sạc nhằm tối ưu hóa số trạm sạc và gửi lại thông tin về máy
chủ biên Lịch sạc pin dự kiến sau đó sẽ được gửi đến người dùng cuối thông qua ứng
dụng trên điện thoại di động.
1.5 Cấu trúc khóa luận
Khóa luận gôm 6 chương với nội dung chính như sau:
— Chương 1: Mở đầu
Trang 14Giới thiệu các thông tin chung về đề tài, như: lý do chọn đề tài, mục tiêu khóa
luận, phạm vi va đối tượng của đề tài và xác định đầu vào và đầu ra của bài toán
— Chương 2: Tổng quan
Trinh bày các nội dung tông quan về tính toán lượng tử và các nghiên cứu liên
quan đến việc giải bài toán xếp lịch sạc pin cho xe điện bằng điện toán lượng tử
— Chương 3: Bộ dữ liệu ACN-Data
Trình bày tổng quan về bộ dit liệu ACN-Data, các thuộc tính của bộ dữ liệu và
phạm vi đữ liệu được sử dụng trong quá trình chạy thực nghiệm.
— Chương 4: Nghiên cứu lý thuyết
Trình bày chỉ tiết các bước trong quy trình giải bài toán xếp lịch sạc pin cho xeđiện bằng máy tính lượng tử và phương pháp đánh giá giải thuật đã được xây dựng
— Chương 5: Kết quả thực nghiệm
Trình bày các kết quả thực nghiệm thu được theo nghiên cứu lý thuyết đã đề
cập trong Chương 4.
— Chương 6: Kết luận và hướng phát triển
Tổng kết những kết quả nghiên cứu đạt được trong khóa luận và đề xuất hướngphát triển dành cho đề tài trong tương lai
Trang 15Chương 2 TONG QUAN
2.1 Tống quan về tính toán lượng tử
Nền tảng của tính toán lượng tử (quantum computing) bắt nguồn từ cơ học lượng
tử (quantum mechanics), một nhánh của vật lý hiện đại nghiên cứu về trạng thái và
tương tác của các hạt nguyên tử và hạ nguyên tử [12] Nền móng của cơ học lượng
tử được đặt bởi các nhà vật lý lý thuyết lớn như Planck, Einstein, Bohr và Schrödingervào đầu thé kỷ 20 Lý thuyết về cơ học lượng tử đã được Richard Feynman và David
Deutsch ứng dụng vào khoa hoc máy tính với việc đưa ra lần đầu tiên khái niệm vềqubit (quantum bit) vào giữa những năm 1980 Đặc điểm nồi bật của qubit so với bitcủa máy tính cổ điển là chúng có thể tồn tại đồng thời nhiều trạng thái liên đới giữa
qubit 0 và 1, điều này có được là do tính chất chồng chập lượng tử (superposition)
trong cơ học lượng tử Nhờ đó, qubit có thê tối ưu được các tính toán song song Năm
1994, Peter Shor phát triển thuật toán Shor (Shor’s algorithm), phát biểu rang máytính lượng tử có thé phân tích nguyên tố đối với các số tự nhiên lớn một cách hiệuquả, điều này mở ra khả năng ứng dụng trong khoa hoc mã hóa (cryptography) [30].Cùng thời điểm nay, Lov Grover phát triên thuật toán Grover (Grover’s algorithm)
có thê thực hiện truy vấn trên cơ sở dữ liệu chưa được sắp xếp một cách nhanh chóng
hơn nhiều so với các thuật toán cô dién [11]
Tuy nhiên, đây chỉ mới là sự phát triển về mặt lý thuyết, chưa có một máy tính
lượng tử nào thực sự ra doi Các nhà khoa hoc bắt đầu xây dựng máy tính lượng tửvới nhiều kiểu kiến trúc vật lý khác nhau như bẫy ion (ion trap), mạch siêu dẫn
(superconducting), hệ quang tử (photonics), Dau mốc của sự phát triển này là vào
năm 1997, IBM cho ra mắt máy tính lượng tử đầu tiên với bộ vi xử lý (QPU) 2 qubit.Trong giai đoạn từ năm 2000 đến nay, các công ty công nghệ lớn đã bắt tay chế tạo
và cho ra đời nhiều máy tính lượng tử với bộ vi xử lý cho phép tính toán trên nhiều
qubit hơn Đồng thời, họ cũng cung cấp dịch vụ lượng tử thông qua điện toán lượng
tử đám mây (quantum cloud), cho phép người dùng nào cũng có thể tiếp cận và sửdụng máy tính lượng tử thay vì trước đây chỉ có các nhà khoa học Ứng dụng của máy
Trang 16tính lượng tử cũng được mở rộng trong nhiều lĩnh vực khác nhau, như: mã hóa, tối
ưu hóa, hệ mô phỏng, phát minh thuốc, khoa học vật liệu, tài chính,
Ưu điểm của máy tính lượng tử là tính toán nhanh và tiêu hao năng lượng thấp.Việc tính toán nhanh giúp giải được các bài toán thách thức hiện tại, đồng thời việctiêu hao ít năng lượng giúp đạt được mục tiêu Net Zero về môi trường Máy tính
lượng tử đặc biệt hiệu quả trong các bài toán mô phỏng (simulation), tối ưu
(optimization), phân tích số (factorization) nhờ vào đặc tính chồng chập (quantumsuperposition) và vướng víu lượng tử (quantum entanglement) Tuy nhiên, cho đếnhiện tại máy tính lượng tử vẫn còn nhiều hạn chế về mặt phần cứng khi số qubit cóthé tính toán còn khá khiêm tốn Ví dụ như máy tính IBM hiện tại có thê giải tôi đamột bài toán với 433 biến Song song đó, chi phí cho việc sử dụng các phần cứng này
là khá cao.
2.2 Các công trình nghiên cứu liên quan
Hiện nay, các vấn đề liên quan đến bài toán xếp lịch sạc pin cho xe điện đang
được nghiên cứu kỹ lưỡng Có nhiều hướng tiếp cận và phát triển bài toán với nhiềumục tiêu khác nhau, như: tối đa hóa lợi nhuận của đơn vị khai thác dịch vụ [17], tối
đa hóa mức sử dụng của người dùng [35], nâng cao năng suất của các trạm sạc [4],hoặc giảm thiêu tông chi phí của người dùng [15] Do các bài toán liên quan đến sacpin xe điện có độ phức tạp thời gian đa thức không xác định (NP-hard), có nhiều cách
tiếp cận khác nhau đã được đề xuất nhằm đạt được kết quả tốt trong thời gian hợp lý
như thư giãn lỗi (convex relaxation) [35], giải thuật tham lam (greedy algorithm) [17],phân phối quy trình tối ưu hóa thông qua phương pháp nhân tử luân phiên ADMM(alternating direction method of multipliers) [1], hoặc đưa về bài toán tô màu tối ưu
trên đồ thị vô hướng (graph coloring problem) [4]
Những năm gần đây, máy tính lượng tử đã nổi lên như một công nghệ đột pháhứa hẹn sẽ cách mạng hóa việc giải quyết các bài toán tối ưu hóa đầy thách thức này.Gần đây, thuật toán QAOA (Quantum Approximate Optimization Algorithm) đã
được áp dụng vào bài toán lập lich sạc [5][19] Ở đây, [5] phát biểu bài toán sạc dưới
dạng bài toán tô màu đồ thị (graph coloring problem), trong khi [19] phát biểu bài
Trang 17toán sạc dưới dạng bài toán xếp ba lô (knapsack problem) Tuy nhiên, những nghiên
cứu này chỉ phù hợp với bài toán có kích thước nhỏ và không thể giải quyết được các
van đề về khả năng mở rộng của điện toán lượng tử trong thực tế, với điều kiện về
phần cứng hạn chế như hiện nay
Có nhiều nghiên cứu được thực hiện nhằm mục tiêu giảm số biến, giúp máy tính
lượng tử giải quyết được các bài toán có kích thước lớn, từ đó mở rộng ra khả năng
thực thi cho máy tính lượng tử Một số phương pháp nỗi bật giúp giảm kích thướcHamiltonian đã được công bồ trong các hội nghị quốc tế về lượng tử như Roof Duality[13], FastHare [31], Đây cũng là một trong những hướng đi tiềm năng dé giảmchiều bài toán tối ưu trước khi thực thi bằng máy tính lượng tử
Trang 18Chương 3 BỘ DỮ LIỆU ACN-DATA
3.1 Giới thiệu bộ dữ liệu
Nhóm nghiên cứu chọn bộ dữ liệu ACN-Data [22] cho bài toán lập lịch sạc xe
điện, vì đây là bộ dữ liệu được thu thập trong điều kiện thực tế và được truy cập hoàntoàn miễn phí Trong khi đó, các bộ dữ liệu khác liên quan hau hết là private dataset,
không được công bồ rộng rãi và khó truy cập được Bộ dữ liệu ACN-Data bao gồmthông tin về các phiên sạc xe điện tại Mỹ được cập nhật hằng ngày Hiện tại, thông
tin về các phiên sạc được thu thập tại 3 địa điểm, gồm trường đại học Caltech, phòngthí nghiệm Sức đây phản lực (Jet Propulsion Laboratory, viết tắt là JPL) và một tòanhà văn phòng ở thung lũng Silicon Trong đó, dữ liệu được thu thập chủ yếu từ 2 địa
điểm là trường đại hoc Caltech và phòng thí nghiệm JPL, với mỗi địa điểm có thông
tin của hơn 30.000 phiên sạc xe điện Các điểm sạc này được vận hành bởi công tykhởi nghiệp Powerflex, và dt liệu được thu thập từ một hệ thống sac pin xe điện
thông minh có tên Adaptive Charging Network (ACN) [21] Bộ dữ liệu được xây
dựng nhằm giúp các nhà nghiên cứu có cơ hội truy cập dữ liệu thực tế liên quan đếnvấn đề sạc pin xe điện
Có nhiều nghiên cứu liên quan đến xe điện đã được thực hiện trên bộ dữ liệunhư nghiên cứu về hành vi của khách hàng sac pin xe điện [22][29], nghiên cứu vềviệc tích hợp hệ thống sac pin xe điện vào lưới điện [32], nghiên cứu về sự thay đôi
của điện áp và cường độ dòng điện trong quá trình sạc [8][16] Những nghiên cứu
này đã khảo sát nhiều khía cạnh trong quá trình sạc pin xe điện, qua đó góp phần giúpviệc sắp xếp và quản lý hệ thống sạc pin xe điện trở nên hợp lý và hiệu quả hơn
Có 3 cách dé truy cập bộ dữ liệu, gồm: tải xuống trực tiếp file JSON từ trangweb, sử dụng REST API và sử dụng Python API Trong đó, phương thức sử dụng
Python API được nhóm nghiên cứu lựa chọn áp dụng do phương thức này thuận tiện
hơn phương thức sử dụng REST API Hơn nữa, việc tải xuống trực tiếp file json cóthé bị khiếm khuyết một số mẫu dữ liệu trong những khoảng thời gian nhất định
10
Trang 193.2 Các thuộc tính của bộ dữ liệu
Thông tin về các trường dữ liệu được thé hiện trong Bảng 3.1
Bảng 3.1 Các thuộc tính trong bộ dữ liệu ACN-Data
Trường dữ liệu Kiểu dữ liệu Mô tả
_1d string Mã định danh duy nhất của bản ghi phiên sạc.
chargingCurrent timeseries Giá trị dạng chuỗi thời gian của cường độ dòng điện
đo được từ trụ sạc trong phiên sạc.
clusterID string Ma dinh danh cho mot tap hop con cua cac tru sac
xe điện tại một dia diém, chang hạn như một gara.
connectionTime datetime Thời gian xe điện bắt đầu sac pin.
disconnectTime datetime Thời gian xe điện được rút sac pin.
doneCharging Time datetime Thời gian xe điện được sac day pin.
kWhDelivered float Lượng điện năng được dùng trong phiên sạc.
sessionID string Mã định danh của phiên sac.
siteID string Mã định danh của dia điểm.
spacelD string Mã định danh của chỗ đỗ xe.
stationID string Ma dinh danh cua tram sac.
timezone string Mui gio.
userID string Mã định danh của người dùng (không khả dụng với
những phiên sạc mà người dùng không dùng ứng dụng di động).
userInputs List Thông tin đầu vào được cung cấp bởi người dùng
(User Input) (qua ứng dụng di động) Do nội dung dau vào có thê
thay đôi theo thời gian, trường thông tin này được thê hiện dưới dạng một danh sách (list).
Trong sô các trường dữ liệu này, hai trường dữ liệu disconnecflime và
doneCharging Time đều có thé được xem là thời gian kết thúc phiên sạc của xe điện
Do đó, trong quá trình thực nghiệm, giá trị connection Time sẽ được xem là thời gian
bắt đâu của phiên sạc xe điện, còn thời gian kêt thúc phiên sạc xe điện sẽ là một trong
2 giá trị doneChargingTime hoặc disconnectTime Phần kết quả thực nghiệm cũng sẽtrình bày các kết quả sử dụng cả 2 trường hợp này
11
Trang 203.3 Phạm vi sử dụng
Đề xác định phạm vi dữ liệu được sử dụng trong đề tài, nhóm nghiên cứu đãtiễn hành thống kê số phiên sac theo từng ngày tại cả 3 địa điểm và kết quả thống kêđược thé hiện trong Bảng 3.2 dưới đây
Bảng 3.2 Thống kê số ngày với số phiên sạc theo từng khoảng tại 3 địa điểm trong
địa điểm này có nhiều ngày có nhiều phiên sạc hơn so với 2 địa điểm còn lại Dữ liệu
được khảo sát trong 2 năm là 2018 và 2019, do dữ liệu được ghi nhận tập trung vào
khoảng thời gian này Thống kê cho thấy có 25909 phiên sạc được thực hiện trong 2năm 2018 và 2019 so với tong cong 31424 phién sac tai Caltech, chiém hon 80 %tong số phiên sạc ghi nhận được Cụ thé hon, dữ liệu được khảo sát từ ngày 25/4/2018
đến ngày 31/12/2019, do không có thông tin ghi nhận về các phiên sạc được thực hiện
tại Caltech trước ngày 25/4/2018 trong bộ dữ liệu.
12
Trang 21Chương 4 NGHIÊN CỨU LÝ THUYÉT
lamiltonial Tính mở dae
đồ thị
Bài toán lập Bài toán Giải thuật lượng Nghiệm Sử, giá
lịch sạc xe điện tô màu đồ thị tử QA/QAOA tối ưu kết qua
Hình 4.1 Sơ đồ quy trình thực nghiệm dự kiến
Hamiltonian
Đầu tiên, bài toán lập lịch sạc xe điện được quy về bài toán tô màu đồ thị Sau
đó, áp dụng một thuật toán giảm kích thước nham đưa đồ thị ban đầu về một đồ thicon tương đương nhỏ hơn trước khi mô hình hóa về dạng có thé giải quyết bằng điệntoán lượng tử Sau đó, ma trận Hamiltonian mục tiêu được xây dựng và tiếp tục đượcgiảm kích thước và giải nghiệm tối ưu bằng các giải thuật lượng tử như QA và QAOA.Quá trình giảm kích thước đồ thị và giảm kích thước Hamiltonian nhằm mục tiêuchung là giảm kích thước bài toán dé có thé áp dụng các giải thuật lượng tử trên phầncứng có số qubit hạn chế, và đây cũng là một trong những đóng góp chính của đề tài
Sau đó, nghiệm tối ưu được khôi phục lại tương ứng với bài toán gốc ban đầu và được
đánh giá theo nhiều tiêu chí khác nhau như chất lượng nghiệm, chí phí tính toán vàtính mở rộng Các kết quả thực nghiệm được trình bày chỉ tiết ở Chương 5
Ngoài ra, trong chương này cũng trình bày về cách xếp lịch sạc xe điện bằnggiải thuật FCES (first-come first-served) và cách giải bài toán tô màu đồ thị bằng
Gurobipy Kết quả từ giải thuật FCFS có thể được sử dụng cho quá trình giảm kích
thước Hamiltonian, còn kết quả của Gurobipy sẽ được sử dụng để so sánh với kết quả
của các giải thuật lượng tử.
4.2 Giải thuật FCFS
Giải thuật FCFS (first-come first-served) là một giải thuật thường dùng cho bài
toán xếp lịch với cơ chê đơn giản là công việc nào tới trước sẽ được ưu tiên xử lý
13
Trang 22trước Trong bối cảnh bài toán xếp lịch sạc pin cho xe điện, giải thuật FCFS đơn giản
hoạt động bằng cách xếp những chiếc xe điện mới tới vào những chỗ sạc còn trống,
và những xe tới trước sẽ được ưu tiên sạc trước Trong tình huống hết chỗ sạc, những
xe tới sau sẽ phải chờ những xe trước sạc xong dé lay chỗ Bảng 4.1 đưa ra một ví dụđơn giản nhằm minh họa giải thuật FCFS, gồm năm chiếc xe điện tới sạc pin tại một
địa điểm sạc có ba trạm sạc
Bảng 4.1 Ví dụ về thông tin lịch sạc xe điện tại một địa điểm sạc
Xe Thời gian bắt đầu phiên sạc Thời gian kết thúc phiên sạc (dự kiến)
Theo ý tưởng của giải thuật FCFS, xe 1 đến đầu tiên nên được xếp vào tram sac
thứ nhất (trạm 1) Xe 2 đến sau xe 1, lúc này tram 1 đang được sử dụng nên xe 2 phải
sac pin ở trạm 2 Khi xe 3 đến thì xe số 1 đã sạc pin xong và rời di nên xe 3 sẽ lạiđược sạc pin ở trạm 1 Khi xe 4 đến thì xe 3 vẫn đang sạc pin ở trạm 1, trong khi xe
2 đã sạc pin xong và rời di nên xe 4 sẽ được xếp vào trạm 2 Cuối cùng, khi xe 5 đến,trạm 1 và trạm 2 vẫn còn đang được sử dụng, nên xe 5 sẽ được xếp vào một trạm sạcmới (trạm 3) Kết quả xếp lịch sạc pin cho năm chiếc xe điện được thé hiện trong
Bảng 4.2.
Bảng 4.2 Kết quả xếp lịch sạc pin năm chiếc xe điện theo giải thuật FCFS
Xe Thời gian bắt đầu phiên sạc Thời gian kết thúc phiên sạc (dự kiến) Trạm
Tuy đơn giản nhưng giải thuật FCFS khá hiệu qua, có thời gian chạy nhanh và
dễ áp dụng, đặc biệt là trong trường hợp chưa biết trước lịch sạc của các xe đến sau
14
Trang 23Tuy nhiên, FCFS là một giải thuật không ưu tiên (non-preemptive), và vì vậy nó có
một số nhược điểm là thời gian chờ đợi trung bình trên tất cả các xe sẽ lâu và không
tận dụng được hiệu quả tối đa của các trạm sạc Trong bối cảnh khi đã biết trước lịch
sạc (được thu thập từ nhu cầu sạc của người dùng đăng ký qua thiết bị biên), chúng
ta có thể tận dụng thông tin này dé sap xép lich sac một cách chặt chẽ hon Do đó,giải thuật mà nhóm nghiên cứu hướng đến sẽ tối ưu hơn giải thuật FCFS trên phương
diện tổng số trạm sạc được sử dụng Vì vậy, số trạm sạc thu được từ giải thuật FCFS
được dùng làm chặn trên (upper bound) nhăm giới hạn số bién sử dụng cho mô hình
QUBO và được áp dung trong việc giảm kích thước Hamiltonian.
4.3 Mô hình hóa bài toán
4.3.1 Tổng quan về bài toán tối ưu tô màu đồ thị
Cho một đồ thị G gồm tập đỉnh V và tập cạnh # Hai đỉnh được gọi là liền kềnhau nếu có cạnh nói giữa hai đỉnh này Bài toán tô màu đồ thị được phát biểu như
sau: Mỗi đỉnh của đồ thị được tô một màu duy nhất sao cho các đỉnh liền kề nhau
không được có màu giống nhau Mục tiêu của bài toán tối ưu là tìm ra cách tô màucác đỉnh của đồ thị G sao cho số màu được sử dụng là ít nhất Nhiều bài toán khácnhau có thé được đưa về bài toán tô màu đỉnh đồ thị như bài toán phân bổ công baycho sân bay [27], bài toán phân bồ tài nguyên [34|, bài toán xếp lich [23][36], đặcbiệt là bài toán xếp lich sạc pin cho xe điện [33]
Bài toán tô màu đồ thị là một bài toán NP-hard, nghĩa là không thể giải đượcbài toán bang một thuật toán có độ phức tạp trong thời gian đa thức [9] Độ phức tap
trong thời gian da thức là độ phức tap O(n‘), với c là một hang sỐ dương [2] Đối với
những bài toán NP-hard, rất khó dé có một thuật toán hiệu quả dé tính toán chính xáckết quả tối ưu của những bài toán này, do đó nhiều nghiên cứu đã tập trung vào các
thuật toán có thé tìm ra kết quả xấp xi với kết quả tối ưu của bài toán [6] Tuy nhiên,
một số nghiên cứu đã đưa ra những phương pháp có thé tìm được chính xác kết quatối ưu của bài toán bằng cách sử dung Integer Linear Programming solver [26] Trong
15
Trang 24khóa luận này, nhóm hướng tới việc tìm ra chính xác kết quả tối ưu cho bài toán tômàu đồ thị bằng cách sử dụng giải thuật cô điển kết hợp lượng tử.
4.3.2 Mô hình hóa bài toán sắp xếp công sạc xe điện
Đối với bài toán sắp xếp công sạc cho xe điện, mỗi chiếc xe điện có một lịchsac dự kiến gồm thời gian bắt đầu và thời gian kết thúc phiên sac Dé đưa về bài toán
tô màu đỉnh đồ thị, mỗi chiếc xe điện sẽ được xem là một đỉnh của đồ thị và tồn tạimột cạnh nối hai đỉnh trong trường hợp hai chiếc xe điện có lịch sạc đụng độ nhau
Mỗi công sạc được gan với một màu, va hai chiếc xe điện có lịch sạc đụng độ nhau
không thé sac tại cùng một công sạc nghĩa là hai đỉnh liền kề nhau không thé được tô
cùng một màu Mục tiêu cua bài toán sạc pin xe điện là tối ưu sao cho số công sạc
được sử dụng là ít nhất, nghĩa là tối ưu số màu được sử dụng dé tô màu khi mô hình
hóa bài toán về dạng đồ thị
Trang 25Cách mô hình hóa bài toán sạc pin xe điện thành bài toán tô màu đồ thị đượcthé hiện cụ thé hon trong ví du minh hoa ở Hình 4.2 Trong vi du này, tai một dia
điểm có ba trạm sạc và năm chiếc xe điện cần được sạc pin Lich sac pin của xe 1
đụng độ với lich sac pin của xe 2 trong khoảng thời gian từ 9:30 đến 10:00, lịch sạcpin của xe 2 đụng độ với lịch sạc pin của xe 3 trong khoảng thời gian từ 10:15 đến10:30, lịch sạc pin của xe 1 và xe 3 không đụng độ nhau Do đó, khi đưa về dạng đồ
thị, ba chiếc xe điện sẽ được chuyển thành ba đỉnh của đồ thị, giữa đỉnh số 1 và số 2
có một cạnh, giữa đỉnh số 2 và số 3 có một cạnh (do những chiếc xe điện này có lịchsạc đụng độ nhau) Tương tự như vậy, ta có thể chuyền năm chiếc xe điện thành nămđỉnh của đồ thị và sử dụng thông tin về lịch sạc dự kiến dé xác định các cạnh giữa cácđỉnh của đồ thị Trong đó, xe số 5 có lịch sạc dự kiến đụng độ với cả bốn xe còn lại,
do đó đỉnh số 5 tương ứng sẽ có bốn cạnh nói với bốn đỉnh còn lại Tại địa điểm này
có ba trạm sạc, nghĩa là ta có thê tô tối đa ba màu khác nhau cho các đỉnh của dé thị
Dé thuận tiện, ta quy ước màu lam đại diện cho trạm sạc thứ nhất, màu vàng đại diện
cho trạm sạc thứ hai và màu đỏ đại điện cho trạm sạc thứ ba Các đỉnh của đồ thị cóthé được tô bang ba màu này sao cho hai đỉnh liền kề không được có màu giống nhau.Một kết quả kha di cho bài toán này là ta sẽ tô màu lam cho đỉnh số 1 và đỉnh số 3,màu vàng cho đỉnh số 2 và đỉnh số 4, còn lại màu đỏ cho đỉnh số 5 Điều này nghĩa
là xe 1 và xe 3 sẽ được xếp lich sạc pin tại trạm sạc đầu tiên, xe 2 và xe 4 sẽ sạc pintai tram sạc thứ hai, còn xe 5 sẽ sạc pin xe điện tai trạm sac thứ ba.
4.4 Thuật toán giảm kích thước đồ thị trong bài toán tô màu
Nếu đồ thị có kích thước lớn thì việc giải trực tiếp bài toán tô màu sẽ cực kỳ tốnkém về mặt chi phí Do đó, nhóm nghiên cứu quyết định thực hiện các phương phápgiảm kích thước đồ thị trước khi giải bài toán Các thuật toán cô điển liên quan đếnbài toán đồ thị có thể được kết hợp hiệu quả với các thuật toán giảm kích thướcHamitonian trong tính toán lượng tử nhằm giảm kích thước một cách hiệu quả nhất
Nhiều thuật toán đã được đề xuất nhằm đưa một đồ thị lớn, phức tạp về một đồ thị
đơn giản hơn, nhưng van đảm bảo cách tô màu cho đồ thị đã rút gọn có thé được truyngược lại cách tô màu tương ứng cho đồ thị ban đầu [24][28][33] Qua quá trình tìm
17
Trang 26hiểu và chọn lọc, nhóm nghiên cứu quyết định áp dụng thuật toán FastColor được đềxuất từ bài báo “A Reduction based Method for Coloring Very Large Graphs” [24]
dé thực hiện việc giảm kích thước đồ thị
4.4.1 Một số khái niệm và công thức liên quan
Một số khái niệm
— G(V,E): đồ thi vô hướng (các đồ thị trong dé tài, nếu không nói rõ thêm, được
quy ước là các đồ thị vô hướng)
— V=fw,,v,, v,„}: tập hợp các đỉnh của đồ thị G
—_E={e,,e; e„} ={v,y,}¡.¡.,.„: tập hợp các cạnh của dé thị G.
— Đỉnh liền kề: Hai đỉnh được gọi là liền kề nhau nếu tồn tại một cạnh nối giữa hai
đỉnh này.
— N@)={u eV luv E}: tập hợp các đỉnh liền kề của đỉnh v
— deg(v): bậc của đỉnh 9, deg(v) =|N(v)}.
— clique C: tập hợp các đỉnh của đồ thị sao cho giữa hai đỉnh bat kỳ của C luôn tồn
tại một cạnh của đồ thị nối hai đỉnh đó
— independent set /: tap độc lập J, là một tap hợp các đỉnh của đồ thị sao cho giữa hai
đỉnh bất kỳ của I không ton tại cạnh nối hai đỉnh đó
— y(G): số lượng màu tối thiểu dé tô màu các đỉnh đồ thị sao cho hai đỉnh liền kề
bất kỳ không có màu trùng nhau
— ø(Œ): kích thước clique lớn nhất trong đồ thị Ta có +(G)> ø(G).
— Tập độc lập giới han bậc k (k-degree bounded independent set): Cho đồ thị
G(V,E), một tập độc lập giới han bậc k là một tập độc lập 7 thỏa mãn điều kiện:Vvel,deg(v)<k.
Các quy tắc và định lý
Từ khái niệm về tập độc lập giới hạn bậc, tác giả đề xuất quy tắc BIS (BoundedIndependent Set) được phát biểu như sau:
18
Trang 27BIS-rule: Cho một đồ thị G(V,E) và một giá trị chặn dưới của z(G), ký hiệu
là £,tìm một tập độc lập bậc @, ký hiệu là J, và loại bỏ tất cả các đỉnh của I va cáccạnh liền kề với các đỉnh đó từ đồ thị G
Quy tắc này phụ thuộc vào tham số ý, là giá trị chặn dưới của z(G) Đây là
quy tắc quan trọng nhằm giảm kích thước của đồ thị Quy tắc này có thé áp dụng nhờvào mệnh dé 1, đã được chứng minh chi tiết trong bài báo
Mệnh đề 1: Cho đồ thị G(V,E) và một tập độc lập bậc £ ký hiệu là J trong
đảm bảo được kết quả tối ưu
Quy tắc BIS cũng phụ thuộc vào một tham số là giá trị chặn dưới Do đó, trướcmỗi vòng lặp giảm kích thước đồ thị thì giá trị chặn đưới cần được tính toán Các tác
giả của thuật toán FastColor đã đề xuất sử dụng số đỉnh trong clique làm giá trị chặn
dưới Tuy đơn giản nhưng việc này đem lại hiệu quả rất cao Trong đề tài, giá trị chặn
dưới £ được chon theo công thức: £ = ø@(GŒ)—1 Giá trị @(G) sẽ được tính trong mỗi
vòng lặp giảm kích thước đồ thị Mỗi đỉnh trong clique đều có bậc lớn hơn hoặc bằng
œ(Œ)—1, do đó các đỉnh nay sẽ không bị loại bỏ khỏi đồ thị theo quy tắc BIS Theo
đó, clique sẽ luôn được bảo toàn qua mỗi vòng lặp giảm kích thước đồ thị và số màutối thiêu cần thiết để tô màu đồ thị G’ đã được giảm kích thước z(G') sẽ luôn lớnhơn hoặc băng @G) Do đó, £ = ø(Œ)— 1< ø(Œ) < ø(Œ ), nên việc giảm kích thướccủa đồ thị theo quy tắc BIS sẽ luôn rơi vào trường hợp 2 của Mệnh đề 1, và số màu
19
Trang 28tối ưu dé tô màu các đỉnh của đồ thị đã được giảm kích thước G’ sẽ luôn bằng số mau
tối ưu dé tô màu các đỉnh của đồ thị gốc G
4.4.2 Thuật toán FastColor
Thuật toán FastColor được sử dụng trong khóa luận có một số điểm khác biệt
so với thuật toán được đề xuất trong bài báo Đầu tiên, việc tô màu đồ thị trong mỗi
vòng lặp sẽ không được thực hiện do mục tiêu của việc áp dụng thuật toán FastColor
là để giảm kích thước đồ thị chứ không phải dé tô màu các đỉnh của đồ thị như trongbài báo gốc Ngoài ra, clique sẽ được tìm băng hàm max_clique của thư việnnetworkx trong Python! chứ không phải bằng thuật toán tìm clique được đề xuất trongbài báo, do thuật toán này không phù hợp với các đồ thị có kích thước nhỏ
Dưới đây là một số ký hiệu quy ước được sử dụng trong thuật toán:
— G: đồ thị ban dau
— Gx: đồ thị đã được giảm kích thước Kích thước của Gx sẽ dần trở nên nhỏ hơn sau
mỗi vòng lặp của thuật toán.
— Gn: tập hợp các đỉnh đã được loại bỏ khỏi đồ thị Các cạnh tương ứng với các đỉnh
bị loại bỏ cũng sẽ được lưu lại (tuy nhiên việc này sẽ không được trong mã giả của
thuật toán).
— lb¿: giá tri chặn dưới (lower bound) của 7(G, ).
— lb*%: giá trị chặn đưới tốt nhất tìm thay (best found lower bound) của 7(G,)
Đầu tiên, đồ thị Gx sẽ được khởi tạo là G, giá trị /b* cũng được khởi tạo Saugiai đoạn khởi tạo, một vòng lặp (từ dòng thứ 4 đến dòng thứ 11) sẽ được thực hiện
cho đến khi một kết quả tối ưu được tìm thấy (dòng thứ 11) hoặc số vòng lặp đã đạt
đến giới hạn Điều kiện để kết thúc vòng lặp có thể là giới hạn số vòng lặp hoặc giớihạn thời gian chạy vòng lặp, tuy nhiên ở đây giới hạn số vòng lặp được lựa chọn(bằng 100) do điều kiện này dễ xác định hơn giới hạn thời gian và có thể phù hợp vớinhiều loại đồ thị có kích thước khác nhau Thuật toán FastColor trả về đồ thị đã được
! https://networkx.org/documentation/stable/reference/algorithms/approximation.html
20
Trang 29giảm kích thước và tập hợp các đỉnh và các cạnh bị loại bỏ theo quy tắc BIS Sau khi
tô màu cho đồ thị đã được giảm kích thước, việc tô màu sẽ được mở rộng sang cácđỉnh này nhằm tô màu hoàn chỉnh đồ thị ban dau
Thuật toán 1: FastColor(G)
7 1 := find a maximal /b, -degree bounded independent set ;
8 G, :=remove / from G, according to BIS-Rule ;
9 ee = (Came if
10 if I z © then patience := patience + 1;
11 if patience :=5 then break;
12 return G,,G,,
Mỗi vòng lặp có thé được chia làm hai giai đoạn chính:
— Tính toán giá trị chặn dưới (dòng 5, 6): Việc tính toán giá tri Jb, sẽ được thực hiện
bang việc tim clique trong đồ thi Gx Trong đề tài, clique sẽ được tìm bằng cách áp
dụng hàm max_clique có sẵn trong thư viện networkx trong ngôn ngữ lập trình
Python Nếu giá trị /b¿ lớn hơn giá trị /b*, giá trị Ib* sẽ được cập nhật bằng /J¿ Sau
đó, giá trị Ib* sẽ được sử dụng như chặn dưới theo quy tắc BIS
— Giảm kích thước đồ thị (dòng 7, 8, 9): Dé giảm kích thước đồ thị, đầu tiên cần phải
tìm một tập độc lập giới hạn bậc /b* có kích thước tối đa Việc nay được thực hiệnbang cách duyệt qua các đỉnh trong đồ thị G; một cách tuần tự và thêm đỉnh vào
trong tập độc lập 7 nếu nó có bậc bé hơn /b* và không liền kề với một đỉnh nào
21
Trang 30khác đã có sẵn trong tập độc lập Sau đó, Gx được giảm kích thước bằng cách loại
bỏ các đỉnh trong tập 7 theo quy tắc BIS Các đỉnh bị loại bỏ (và các cạnh liền kề
với chúng) sẽ được lưu lại vào Gm Lưu ý rằng đôi khi không thể loại bỏ đỉnh nào
và kích thước của đồ thị Œ sẽ được giữ nguyên Nếu những trường hợp không tìm
thấy đỉnh nao dé loại bỏ này xảy ra quá 5 lần (patience = 5) thì nghĩa là thuật toán
đã tìm được kết quả tối ưu và vòng lặp sẽ kết thúc
4.4.3 Khôi phục kết quả của đồ thị ban đầu
Trong mệnh đề 1 ở mục 4.4.1 đã chứng minh rằng số màu cần thiết để tô màu
đồ thị ban đầu bang với số mau cần thiết dé tô mau đồ thị đã được thu gọn bằng thuậttoán FastColor Do đó, chúng ta có thể khôi phục lại kết quả tô màu cho đồ thị banđầu đơn giản bằng cách áp dụng thuật toán tham lam Cụ thể hơn, ta sẽ tô màu cácđỉnh còn lại của đồ thị theo thứ tự chúng bị loại bỏ (các đỉnh có thể bị loại bỏ trong
những vòng lặp khác nhau, và đỉnh nào bị loại bỏ sau sẽ được tô màu trước) Khi tômàu, một đỉnh có thé được tô một màu bat kỳ theo nguyên tắc là đỉnh này không đượctrùng màu với các đỉnh liền kề với nó Trong khóa luận này, khi thực hiện thuật toán
FastColor, mỗi màu sẽ được mã hóa bằng một con số tự nhiên cụ thể và khi khôi phục
kết quả tô màu cho đồ thị ban đầu, màu của một đỉnh sẽ được chọn là con số nhỏ nhất
thỏa mãn điều kiện của bài toán tô màu đồ thị
4.5 Xây dung Hamiltonian mục tiêu
4.5.1 Tổng quan một số mô hình tối ưu trong tính toán lượng tử
Mô hình BQM (Binary Quadratic Model)
Mô hình BQM là một trong những mô hình cơ sở của lý thuyết tối ưu trên tậprời rạc Hàm mục tiêu của BQM nhận các biến đầu vào là biến nhị phân, thông thườngmang hai giá trị là 0 và 1, nhưng trong một số trường hợp có thé quy định là 1 và —1
Hàm mục tiêu BỌM có dạng: f(x) = 3 d,x.x, + 3 bạ, +€
Ụ i
Trong đó, điều kiện quan trọng là bậc của tất cả các hạng tử không được vượt
quá 2 Hang sô c là offset cua ham và không ảnh hưởng đên nghiệm tôi ưu Yêu câu
22
Trang 31của mô hình là tìm nghiệm sao cho cực tiêu hoặc cực đại hàm mục tiêu, có thể córàng buộc đối với các biến (constrained) hoặc không ràng buộc (unconstrained) Nếu
có ràng buộc, thì các điều kiện ràng buộc cũng phải là các phương trình hoặc bất
phương trình có bậc không vượt quá 2.
Đây là một mô hình áp dụng được cho mọi bài toán tối ưu rời rạc, vì hai lý do
chính sau đây:
— Có thể chuyên các biến nguyên trong các bài toán Interger programming về biến
nhị phân bằng kỹ thuật binary encoding.
— Moi mô hình nhị phân bậc cao hon 2 đều có thé đưa về BQM băng phép đổi biến
số với kỹ thuật quadratization [3]
Mô hình QUBO (Quadratic Unconstrained Binary Optimization)
Đề đưa được bài toán vào máy tính lượng tử, cần chuyển mô hình BỌM về dạng
QUBO hoặc Ising model, đây là các dạng mô hình nhị phân không ràng buộc
(unconstrained) QUBO là một dạng model chuẩn hóa trong lý thuyết tối ưu, có théđược dùng như input cho các thuật toán như QAOA (Quantum Approximate
Optimization Algorithm), SA (Simulated Annealing) hoặc QA (Quantum
Annealing) QUBO model tổng quát được định nghĩa như sau:
Đối với các mô hình BQM có ràng buộc, dé đưa được về QUBO thì cần chuyển
các ràng buộc về dạng hạng tử điều chỉnh Một số ràng buộc thường gặp và hạng tử
điều chỉnh tương ứng được liệt kê trong Bảng 4.3 [10]
23
Trang 32Bang 4.3 Chuyển ràng buộc thành hạng tử điều chỉnh trong QUBO model.
x+y+z<l A(xy+xz+ yz)
Ax=b A(Ax—b)' (Ax—b)
M6 hinh Ising
Ising model cũng là một mô hình nhị phân không ràng buộc tương tự như
QUBO, tuy nhiên các biến nhị phân nhận giá trị là +1 thay vì 0/1 như mô hình QUBO
1—s
2
i
Có thé chuyên mô hình QUBO về mô hình Ising bằng phép đổi biến: x, = Hoặc
có thé mô hình hóa trực tiếp một số bài toán phổ biến về dang Ising theo Lucas [25]
Đối với các dòng máy tính lượng tử có kiêu kiến trúc công lượng tử (quantumgate), không thé giải bài toán trực tiếp băng QUBO mà cần chuyển về dang Isingmodel, từ đó có thể xây dung được mạch lượng tử theo các cổng cơ bản Ở đây, mỗibiến s; trong Ising model tương ứng với một cổng Pauli-Z, và nếu mô hình có offset
thì offset sẽ được mã hóa bằng công Identity 7
4.5.2 Tổng quan về Hamiltonian
Hamiltonian là một toán tử (operator) biểu diễn trạng thái năng lượng của hệ
lượng tử Trong các bài toán tối ưu, Hamiltonian thường biéu diễn dưới dang ma trận
mã hóa hàm mục tiêu (objective function) của bài toán tối ưu Nghiệm của bài toántối ưu tương ứng với trạng thái có năng lượng cực tiểu (ground state) của hệ lượng
tử Việc giải bài toán tối ưu được thực hiện bang cách dựa vào Hamiltonian, từ một
trạng thái ban đầu đơn giản, hệ lượng tử sẽ tiến hóa đến trạng thái tối ưu có năng
lượng thấp nhất tương ứng với nghiệm của bài toán tối ưu
24
Trang 334.5.3 Xây dựng Hamiltonian cho bài toán tô màu đồ thị
Mô hình hóa bài toán về BQMTrong bải toán tô màu đồ thị Œ(V, E) với n đỉnh và sử dụng c màu, ta sử dụng
N =nc+c bit nhị phân Đặt V ={1,2, ,n} là tập hợp đỉnh của G va C ={1,2, ,ec}
là tập hop các màu được sử dụng Trong mô hình này, mỗi đỉnh v eV được gắn vớimột vector trạng thái màu x, có c phần tử, bit x„;¡=1<¡<c) khi đỉnh v được tô
mau i và các bit khác x,, =0 (Vj #¡, 1S j<c) Yêu câu của bài toán là mỗi đỉnh
được tô chỉ một màu duy nhất, ta thiết lập điều kiện C1: » x,;, =1, Vv eV Mac khác,
i=1
hai đỉnh liền kề v va w của G (wwe E) không thé được tô cùng một màu, ta thiết lậpđiều kiện C2: xX,,+x,; <I,VieC,VuweE Dé kiểm soát số màu được sử dụng, ta
sử dụng thêm c bit z,,Z,, ,z,, bit z, =1 nếu mau ie C được sử dung va z, = 0 trong
trường hop ngược lai Nếu mau i không được sử dung, thì có nghĩa là tat cả các đỉnhveV không thé được tô màu i, ta thiết lập điều kiện C3: x,,< z,,VyeV,VieC
Mục tiêu của bài toán là tôi thiêu hóa sô màu được sử dụng, ta thiệt lập hàm mục tiêu
25