Mô hình này có ở phần “Model” trong [38]. Ta diễn tả lại để mô hình của bài toán dễ nhìn hơn.
Mô tả bài toán bằng cách dùng lập trình tuyến tính với biến chỉ nhận giá trị 0- 1.
# AMPL model of `Maximum socializing on the 41 course' # June 8, 1998, J.P. Walser, Programming Systems Lab
Biến:
o set Players ordered := { 1..32 } ;
o set Foursomes ordered := { 1..card(Players)/4 }; o set Weeks ordered := { 1..8 } ;
o P[i,f,t]=1 nếu và chỉ nếu tay gôn i trong nhóm f ở tuần thứ t. o M[i,j,t]=1 nếu và chỉ nếu tay gôn i gặp tay gôn j ở tuần thứ t, i<j
(M[i,j,t] được coi như biến bổ trợ) Ràng buộc:
o Mỗi tay gôn phải tham gia một nhóm trong mỗi tuần, có nghĩa là: Σf in Foursomes P[i,f,t] = 1;
o Mỗi nhóm có chính xác 4 tay gôn, có nghĩa là: Σf in Players P[i,f,t] = 4;
o Kết nối hai biến M và P, biểu diễn nó như sau: P[i,f,t]+P[j,f,t] - M[i,j,t] ≤ 1;
i in Players, j in Players, f in Foursomes, t in Weeks: i<j o Để đảm bảo 2 tay gôn bất kỳ gặp nhau nhiều nhất 1 lần, điều này
61
i in Players, j in Players: i<j o Cố định tuần thứ nhất
fix { p in Players } P[p,int((p-1)/4)+1,1] := 1; o Thêm ràng buộc loại bỏ đối xứng
fix { p in Players, t in Weeks: t >= 2 and p <= 4 } P[p,p,t] := 1; Chúng ta có thể tính được 5152 biến nhị phân và 22652 ràng buộc.
Với mô hình này dùng Local Search cho ta kết quả như sau: Tìm ra lời giải cho 8-4-7 trong vòng 30 giây
Tìm ra lời giải cho 8-4-8 trong thời gian vài giờ. Nghiệm được thể hiện trong [39]
62
CHƯƠNG 4. LOẠI BỎĐỐI XỨNG BẰNG PHƯƠNG PHÁP THÊM RÀNG BUỘC TRONG THỜI GIAN TÌM KIẾM CHO SGP
Như phần trước đã giới thiệu (Chương 1 và 2), phương pháp động là phương pháp loại bỏ đối xứng trong quá trình tìm kiếm nghiệm. Trong phương pháp này có hai cách tiếp cận chính là: loại bỏ đối xứng trong thời gian tìm kiếm (Symmetry Breaking During Search - SBDS)[19] và loại bỏ đối xứng nhờ việc nhận ra sự ưu thế (Symmetry Breaking via Dominance Detection - SBDD) [14,16]. Hai phương pháp này đều có một nguyên lý chung: đừng tìm kiếm nghiệm ở những phần không gian tìm kiếm mà nó có tính chất đối xứng
với những phần đã được xét. Vì vậy sẽ giới thiệu việc áp dụng hai phương
pháp này cho bài toán SGP. Xin phép được nhắc lại là các phương pháp loại bỏ đối xứng được áp dụng chung cho CSPs, nên nó cũng được áp dụng cho SGP, vì SGP thuộc lớp CSPs.