.16 Biểu đồ hoạt động của thuật toán SA cho bài toán TTP

Một phần của tài liệu Giải bài toán lập lịch thi đấu thể thao bằng các kĩ thuật dựa trên ràng buộc (Trang 42)

Trong đó:

• Hàm đánh giá chi phí của giải pháp được mô tảnhư trong công thức sau:

𝐶𝐶(𝑆𝑆) =

� 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐(𝑆𝑆)𝑛𝑛ế𝑢𝑢 𝑆𝑆 𝑐𝑐ℎỏ𝑚𝑚 𝑚𝑚ã𝑛𝑛 𝑟𝑟ã𝑛𝑛𝑛𝑛 𝑟𝑟à𝑛𝑛𝑛𝑛 𝑏𝑏𝑢𝑢ộ𝑐𝑐

�𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐(𝑆𝑆)2+ [𝜔𝜔.𝑖𝑖(𝑛𝑛𝑏𝑏𝑛𝑛(𝑆𝑆))]2𝑛𝑛ế𝑢𝑢 𝑘𝑘ℎô𝑛𝑛𝑛𝑛 𝑐𝑐ℎỏ𝑚𝑚 𝑚𝑚ã𝑛𝑛 𝑟𝑟à𝑛𝑛𝑛𝑛 𝑏𝑏𝑢𝑢ộ𝑐𝑐.[13]

• nbv(S) là hàm tính số lần vi phạm.

• 𝜔𝜔 là trọng số sẽđược thay đổi trong suốt quá trình luyện thép.

• f: N → N là 1 hàm con tuyến tính sao cho f(1) = 1, f(v) = 1+ √𝑛𝑛ln(v/2). Hàm f có mục tiêu giúp chương trình khơng cập nhật quá chậm để tránh những giải pháp không khả thi.

• nbf: Giá trị chi phí khả thi tốt nhất được ghi nhận

33 • T: nhiệt độ T trong thuật tốn SA

• β: Hằng số biến đổi T trong quá trình luyện thép

• θ: Hằng số biến đổi 𝜔𝜔trong trường hợp tìm thấy giải pháp khả thi tốt hơn

• δ: Hằng số biến đổi 𝜔𝜔 trong trường hợp tìm thấy giải pháp khơng khả thi tốt

34

CHƯƠNG 4. KT QU THC NGHIM 4.1 Các tiêu chí thc nghim

4.1.1 Mục tiêu thực nghiệm

Mục tiêu của chúng tôi đặt ra khi thực nghiệm là xác định xem phương pháp quy

hoạch ràng buộc với sự hỗ trợ bởi cơng cụ Or-Tools có thể giải hiệu quảđược bài tốn TTP hay khơng. Tiếp theo đó là nghiên cứu áp dụng giải thuật SA để giải gần đúng và kiểm chứng kết quả của bài báo mục tiêu [13]. Qua đó đánh giá được cách tiếp cận giải bài toán TTP nào hiệu quả để có thể tiếp tục áp dụng và kết hợp với các phương pháp khác giải bài toán này trong tương lai.

4.1.2 Phạm vi thực nghiệm

Do bài tốn TTP là một bài tốn khó và có số lượng ràng buộc lớn. Bài tốn tồn tại khơng gian tìm kiếm rộng lớn dù kích thước bài tốn cịn khá nhỏ, do đó

phạm vi thực nghiệm trong khn khổ luận văn của chúng tơi chỉ giới hạn kích

thước 4 ≤ n ≤ 16 với n chẵn.

4.1.3 Kịch bản thực nghiệm

Với mỗi mẫu kiểm thử theo từng phương pháp, chúng tôi cho chạy giải toán trong 30 lần và ghi nhận kết quả tốt nhất. Thời gian giới hạn cho mỗi lần chạy thử là 48 giờ.

4.1.4 Dữ liệu thực nghiệm

Các mẫu dữ liệu (4.1- 4.10) là các mẫu dữ liệu do chúng tôi tự sinh nhằm làm

giàu hơn tập kiểm thử khi áp dụng Or-Tools cho bài toán TTP. Các mẫu dữ liệu (NL4-NL16) là các mẫu dữ liệu do chúng tôi thu thập từ challenge [3], là các mẫu dữ liệu dùng chung bởi các nhà nghiên cứu cho chủđề này trên thế giới.

4.1.5 Môi trường thực nghiệm

Cả 2 phương pháp được áp dụng giải bài tốn TTP đều được lập trình trên ngơn ngữ Python. Máy thực hiện có thơng số Chip I7-6700HQ, Ram 16GB.

35

4.2 kết qu khi áp dng Or-Tools gii bài toán TTP

Thực hiện giải TTP tối giản ràng buộc, tức là bỏ qua các ràng buộc chặt: “2 đội không được thi đấu với nhau trong 2 tuần liên tiếp và không được thi đấu trên sân nhà (sân khách) quá 3 tuần liên tiếp”. Với các bộ dữ liệu tự tạo với sốlượng

các đội từ4 đến 10 đội. Time limited = 48 giờ.

Bảng 4.1 Kết quả và thời gian thực nghiệm khi sử dụng Or-Tools

Data Cost of

Unconstrained Feasible Solution

Time run of OR- tools(s) 4.1 67 8.40 4.2 81 9.52 4.3 109 11.1 4.4 97 9.8 4.5 59 7.17 4.6 62 6.05 4.7 91 7.74 4.8 116 7.74 4.9 60 27.87 4.10 95 7.66 NL4 8276 12.34 NL6 -- Time limited NL8 -- Time limited Giải thích số liệu trong bảng 4.1:

• Data: các mẫu dữ liệu thử nghiệm khi sử dụng Or-Tools

• Cost of Unconstrained Feasible Solution: kết quả tốt ưu khi áp dụng Or-Tools giải bài tốn TTP khơng có ràng buộc chặt

• Time run of OR-tools(s): Thời gian chạy chương trình

Nhn xét:

Với các bộ dữ liệu có kích thước nhỏ, Or-Tools cho thấy hiệu quả khi với thời gian ngắn, kết quả là tối ưu. Tuy nhiên khi kích thước bài tốn lớn hơn, khơng

gian tìm kiếm bùng nổ thì chương trình chạy quá thời gian giới hạn không thể

cho ra kết quả. Do đó với các mẫu thử lớn hơn chúng tôi không áp dụng Or- Tools để thực nghiệm nữa.

Qua đó có thể thấy cơng cụ Or-Tools vẫn còn hạn chế khi áp dụng vào bài tốn tối ưu tổ hợp có sự phức tạp lớn và nhiều ràng buộc như bài tốn TTP. Việc tìm ra kết quả tối ưu trong hiện tại là bất khả khi. Dẫn đến hướng tiếp cận tiếp theo trong khuôn khổ bài luận này của chúng tôi sử dụng các kĩ thuật metaheuristic để

tìm kết quả tốt nhất có thể trong thời gian cho phép áp dụng với kích thước bài toán lớn hơn (n>4).

36

4.3 Kết qu khi áp dng gii thut SA gii bài toán TTP

Sử dụng SA giải bài tốn TTP đối với kích thước bài tốn n=4 là rất nhanh chóng và dễdàng đểtìm ra phương án tối ưu. Với kích thước bài tốn như vậy, độ phức tạp là không cao nên với các mẫu thử n=4 không thể hiện được sự khác biệt giữa

hai phương pháp tiếp cận. Do đó, đối với thực nghiệm SA, chúng tôi sử dụng các mẫu dữ liệu có kích thước lớn hơn (NL4-NL16).

Việc sử dụng SA giải bài tốn TTP ln cho kết quả khả khi với kích thước bài tốn n <12.

Bảng 4.2 Kết quả thực nghiệm khi sử dụng SA cho bài toán TTP

Data Best Feasible Solution Best Feasible Solution in target Thesis Cost of Unconstrained Feasible Solution by Or-Tools Best Unconstrained Feasible Solution Cost of Feasible Solution by SA Cost of Unconstrained Feasible Solution by SA Thời gian chạy(s) NL4 8276 8276 8276 8276 8276 8276 600 NL6 23916 23916 --- 19900 24285 24073 18000 NL8 39721 39721 --- 30700 50429 42470 45000 NL10 59436 59583 --- 44762 85932 76320 70000 NL12 110729 112800 --- 79312 147452 123204 129000 NL14 188728 190368 --- 125416 --- 296765 194000 NL16 261687 267194 --- 154566 --- 441352 224000 Giải thích số liệu trong bảng 4.2: • Data: các mẫu dữ liệu áp dụng thực nghiệm

• Best Feasible Solution: Kết quả tốt nhất của bài tốn có ràng buộc chặt được tìm thấy trên thế giới

• Best Feasible Solution in target Thesis: Kết quả tốt nhất của bài tốn có ràng buộc chặt được đưa ra từ bài báo mục tiêu

• Cost of Unconstrained Feasible Solution by Or-Tools: kết quả của bài toán bỏ

qua ràng buộc chặt khi sử dụng Or-Tools trong thực nghiệm của luận văn

• Best Unconstrained Feasible Solution: kết quả tốt nhất của bài toán bỏ qua ràng buộc chặt được tìm thấy trên thế giới

• Cost of Feasible Solution by SA: kết quả của bài tốn có ràng buộc chặt khi sử dụng SA trong thực nghiệm của luận văn

• Cost of Unconstrained Feasible Soltion by SA: kết quả của bài toán bỏ qua ràng buộc chặt khi sử dụng Sa trong thực nghiệm của luận văn

• Thời gian chạy(s): thời gian chạy của mỗi mẫu thực nghiệm

Với kích thước bài tốn n > 12 (NL14, NL16), q trình thực nghiệm chưa tìm được lời giải thỏa mãn trong 48 giờđối với bài tốn TTP có ràng buộc chặt.

37

Hình 4.2 Biểu đồ thống kê tốc độ hội tụ hàm mục tiêu với dữ liệu NL12

Biểu đồ thống kê trên 30 lần chạy thử với dữ liệu NL12, kết quả cho thấy tốc độ

hội tụ hàm mục tiêu trong thời gian từ0 đến 10000 giây là khá nhanh. Tuy nhiên từsau đó thì khảnăng tìm kiếm thêm giải pháp tốt hơn chậm dần.

Hình 4.3 So sánh tốc độ hội tụ của bài tốn TTP có ràng buộc chặt và khơng có

Phép so sánh được lấy mẫu từ 10 lần chạy thử của dữ liệu NL12. Đường đỏ là thống kê của giải pháp có ràng buộc chặt, màu xanh là của giải pháp khơng có ràng buộc chặt.

Từ biểu đồ Hình 4.3 ta có thể quan sát, với bài tốn khơng có ràng buộc chặt, kết quả tìm kiếm ban đầu của thuật tốn SA là nhanh hơn, chi phí thấp hơn. Tuy

nhiên về sau, tốc độ tìm kiếm của 2 trường hợp lại khá tương đồng. Với bài tốn khơng có ràng buộc chặt sẽ cho kết quả tốt hơn 1 chút về chi phí.

Bảng 4.3 Các tham số được chọn khi sử dụng SA cho bài toán TTP

Data T0 β Wo δ θ maxC maxP maxR γ

NL6 400 0.9999 4000 1.04 1.04 5000 7100 3 2 NL8 400 0.9999 4000 1.04 1.04 5000 7100 3 2

38 NL10 400 0.9999 6000 1.04 1.04 5000 7100 3 2 NL12 700 0.9999 60000 1.05 1.05 5000 7100 3 2 NL14 600 0.9999 20000 1.05 1.05 4000 7100 3 2 NL16 700 0.9999 60000 1.05 1.05 10000 7100 3 2 Các tham sốđược tham khảo [13].

So sánh kết quả thực nghiệm với kết quả của bài báo mục tiêu khi thực hiện giải bài toán TTP sử dụng thuật toán SA:

Bảng 4.4 So sánh kết quả thực nghiệm với kết quả của bài báo đề xuất

Data Tốt nhất của bài báo Kết quả thực nghiệm

NL8 39721 50429 NL10 59583 85932 NL12 112800 147452 NL14 190368 --- NL16 267194 --- Nhn xét:

Trong quá trình cài đặt giải thuật SA áp dụng cho bài toán TTP, với sự khác biệt trong cách tổ chức cấu trúc dữ liệu, ngơn ngữ lập trình, số lần training kiểm thử, các kết quả ghi nhận trong luận văn chưa đạt được giá trị tốt nhất như bài báo

nguồn mơ tả. Tuy nhiên, tính chất của thuật tốn vẫn được thể hiện đúng và tỏ ra hiệu quả trong việc cải thiện kết quả tìm kiếm trong thời gian cho phép đối với bài tốn TTP.

Ngồi ra, để phân tích tác dụng của các thành phần có trong thuật tốn, chúng tơi còn thực nghiệm bỏ bớt các thành phần, thực hiện đo lường mức độ quan trọng của chúng đối với hiệu suất chất lượng của thuật toán. Cách thực nghiệm này

được tham khảo từ bài báo mục tiêu [13].

Bảng 4.5 Tác động của các thành phần TTSA đến chất lượng giải pháp (12 đội)

Các phiên bản Tốt nhất Tệ nhất Trung bình Độ lệch chuẩn SA 147452 153989 149960 1812 SA(PS) 150145 157383 154694 1926 SA(NR) 156522 165094 159680 2207 SA(150) 157446 164334 160321 2612 SA(300) 155662 162297 159024 967 SA(450) 161987 168403 164987 1876 SA(600) 165974 171763 169698 1973

39

Trong đó, SA là phiên bản đầy đủ các thành phần, SA(PS) chỉ xem xét các biến

đổi một phần, SA(NR) không bao gồm thành phần hâm nóng, SA(Các phiên bản T) giữ nguyên nhiệt độ trong suốt quá trình tìm kiếm. Tất cả các phiên bản này

đều được thực hiện trong 30 lần và giới hạn thời gian là 100000 giây và thực nghiệm với mẫu NL12.

Qua bảng số liệu trên có thể đánh giá rằng SA phiên bản đầy đủ các thành phần vẫn có kết quả tốt nhất. Các bước di chuyển cảđầy đủ cả một phần tỏ ra mang lại lợi ích hơn là chỉ xem xét các bước di chuyển một phần bởi nó mang lại sự đa

dạng hóa về các chuyển động hơn. Việc sử dụng q trình hâm nóng cũng mang

lại lợi ích khi nó giảm giá trị trung bình từ 160000 đến 150000. Các phiên bản giữ nguyên nhiệt độcũng cho thấy sự hiệu quả của thuật toán SA, cập nhật giảm nhiệt độ liên tục mang lại kết quả hội tụ tốt hơn.

Các tham sốđầu vào của phép thực nghiệm này được thể hiện trong bảng sau:

Bảng 4.6 Các tham số đầu vào phép thử tác động thành phần.

Phiên bản T0 β Wo δ θ maxC maxP maxR γ

SA 1100 999 18000 01.03 01.03 3000 710 1000 1.4 SA(PS) 1100 999 18000 01.03 01.03 3000 710 1000 1.4 SA(NR) 1100 9.999 18000 01.03 01.03 3000000 ∞ 0 1 SA(150) 150 1 18000 01.03 01.03 ∞ 0 0 1 SA(300) 300 1 18000 01.03 01.03 ∞ 0 0 1 SA(450) 450 1 18000 01.03 01.03 ∞ 0 0 1 SA(600) 600 1 18000 01.03 01.03 ∞ 0 0 1

40

CHƯƠNG 5. KT LUN 5.1 Kết lun

Trong luận văn này, chúng tơi tìm hiểu bài toán Lập lịch thi đấu thể thao. Từ

cách tiếp cận ban đầu là sử dụng những công cụ hỗ trợ giải các bài toán tối ưu tổ

hợp mạnh mẽ như Or-Tools. Quá trình thực nghiệm cho thấy mặc dù đã giản

lược bớt độ phức tạp của các ràng buộc trong bài toán bằng cách bỏđi các ràng

buộc chặt, nhưng áp dụng phương pháp này vẫn chỉ giải tối ưu được bài toán với

kích thước giới hạn n = 4. Khi tăng kích thước lên n > 4, ngay lập tức chúng tôi nhận thấy sự bất khả thi khi thời gian thực hiện giải toán với mỗi mẫu là vượt quá thời gian cho phép (48 giờ). Qua các nghiên cứu và tổng hợp kết quả của các nhà khoa học trên thế giới trong việc giải bài toán TTP, việc giải ra kết quả tối ưu cho

bài toán là một thách thức rất lớn khi kích thước bài tốn tăng lên. Chúng tơi lựa chọn việc giải gần đúng, tìm kiếm một kết quả chấp nhận được và cố gắng cải thiện giá trị hàm mục tiêu. Do đó, bước tiếp theo để giải quyết bài tốn mà chúng tơi lựa chọn là tìm hiểu và cài đặt thuật tốn tơi thép được đề xuất bởi các tác giả A. Anagnostopoulos, L. Michel, P. Van Hentenryck và Y. Vergados năm 2003

và tiến hành thực nghiệm đánh giá kết quả. Kết quả thực nghiệm trong khn khổ luận văn mặc dù chưa tìm được các kết quả tốt như bài báo mô tả, tuy nhiên

các đặc trưng của thuật tốn cũng như tính khả thi khi tìm ra và cải thiện giá trị

hàm mục tiêu đều thể hiện được cho thấy thuật tốn SA có hiệu quả trong việc liên tục cải thiện các giải pháp lập lịch thi đấu, đưa ra được các phương án khả thi đối với kích thước bài tốn n = 16 trở xuống. SA cho khảnăng vượt trội hơn

Or-Tools trong việc giải bài toán TTP.

5.2 Hướng phát trin của đồán trong tương lai

Ngoài ra, bài tốn TTP cịn được nhiều nhà khoa học trên thế giới tiếp cận theo nhiều cách khác nhau cũng như nhiều biến thể của bài toán được nghiên cứu. Ví dụ như cải tiến thuật tốn SA[14] để tăng tốc tốc độ tìm kiếm hay có cách áp dụng SA kết hợp tìm kiếm Tabu [15] “Solving the Traveling Tournament Problem Based on the Simulated Annealing and Tabu Search Algorithm” là một nghiên cứu thú vị để tìm hiểu và phát triển lời giải cho bài tốn TTP này. Chúng tơi sẽ tiếp tục nghiên cứu để cải thiện kết quả thực nghiệm cho bài toán trong

41

TÀI LIU THAM KHO

[1] “The Traveling Tournament Problem Description and Benchmarks” by Kelly Easton, George Nemhauser, Michael A. Trick, 01/01/2001.

[2] F.Rossi, P.VanBeek and T.Walsh, “Handbook of Constraint Programming”, 2006.

[3] https://mat.tepper.cmu.edu/TOURN/.

[4] Joseph Y-T. Leung, Handbook of Scheduling. Chapman & Hall/crc computer, 2000.

[5] Michael Marte. Models and Algorithms for School Timetabling – A ConstraintProgramming Approach. PhD thesis, 2002.

[6] Bruce Golden, S. Raghavan, Edward Wsasil. The vehicle routing problem: latest advances new challenges, 2008.

[7] Mohammed Hadwan, Masri Ayob, Naser R.Sabar, Roug Quc. A harmony search algorithm for nurse rostering problems. Information Sciences, 2013, Pages 126-140

[8] F.Rossi, P.VanBeek and T.Walsh “Handbook of Constraint Programming”, Elsevier, 2006

[9] https://developers.google.com/optimization

[10] TừMinh Phương, Bài giảng Nhập mơn trí tuệ nhân tạo, 2010

[11] M. Laguna, J.P. Kelly, Gonzalez-Velarde, and F. Glover. Tabu search for the multilevel generalized assignment problems. European Journal of Operational Research, 42:677– 687, 1995.

[12] E. Pesch and F. Glover. TSP Ejection Chains. Discrete Applied Mathematics, 76:165–181, 1997

[13] "A Simulated Annealing Approach to the Traveling Tournament Problem*", A. Anagnostopoulos, L. Michel, P. Van Hentenryck và Y. Vergados, 2003 [14] 10.4236/ajor.2012.23047

Một phần của tài liệu Giải bài toán lập lịch thi đấu thể thao bằng các kĩ thuật dựa trên ràng buộc (Trang 42)

Tải bản đầy đủ (PDF)

(51 trang)