Phương pháp gốc – đối ngẫu

Một phần của tài liệu Giải thuật di truyền giải bài toán phủ đỉnh nhỏ nhất (Trang 65 - 72)

3.3.4.1. Bài toán đối ngẫu

Ngoài phương pháp sử dụng làm tròn LP để thu được các thuật toán xấp xỉ liên quan tới việc giải bài toán LP nới lỏng và làm tròn thì người ta còn áp dụng một kỹ thuật thứ hai dựa trên lý thuyết đối ngẫu là phương pháp gốc – đối ngẫu (primal – dual

method). Phương pháp này đầu tiên được sử dụng bởi Goemans và Williamson. Phương pháp gốc – đối ngẫu thực hiện xây dựng một lời giải chấp nhận được cho bài toán LP dựa trên bài toán LP có liên quan. Bài toán LP ban đầu gọi là LP gốc và bài toán LP sau gọi là LP đối ngẫu. Đây là phương pháp rất mạnh, được sử dụng để chứng minh hiệu quả cho các thuật toán tổ hợp.

Xét bài toán LP

Tìm min cTx

với điều kiện Axb

0

x

trong đó x( ,x x1 2,...,xn)Tlà vector gồmn biến, A = (Aij) là một ma trận kích thước m x

n, và c( ,c c1 2,...,cn)Tb ( ,b b1 2,...,bm)T. Khi đó bài toán đối ngẫu của nó có dạng:

Tìm max T

b y

với điều kiện T

A y c

0

y

trong đó y( ,y y1 2,...,yn)Tlà vector biến số. Các biến trong y tương ứng 1 – 1 với các ràng buộc trong bài toán LP gốc và các biến trong x tương tứng 1 – 1 với các ràng buộc trong bài toán đối ngẫu. Người ta chứng minh được bài toán đối ngẫu của bài toán đối ngẫu là bài toán gốc. Ngoài ra người ta còn chứng minh được một số định lý sau :

Định lý đối ngẫu yếu: Nếu xy là các phương án chấp nhận được của bài toán gốc và đối ngẫu thì T T

Định lý này chỉ ra rằng giá trị hàm mục tiêu của mọi phương án chấp nhận được của bài toán đối ngẫu đều là biên dưới giá trị mục tiêu của mọi lời giải chấp nhận được của bài toán gốc.

Định lý đối ngẫu: Giá trị mục tiêu tối ưu của bài toán gốc tồn tại khi và chỉ khi giá trị mục tiêu của bài toán đối ngẫu tồn tại và hai giá trị này bằng nhau.

Từ các định lý trên, người ta đưa ra hệ quả để áp dụng tìm lời giải tối ưu cho các bài toán gốc và đối ngẫu.

Bổ đề 1: Gọi xy là các lời giải chấp nhận được của bài toán gốc và đối ngẫu. Khi đó

x và y là tối ưu khi và chỉ khi hai điều kiện sau được thỏa mãn:

 Các điều kiện về độ lệch bù gốc:

với mọi i1,...,n thì xi 0 hoặc mj1A yji jci

 Các điều kiện về độ lệch bù đối ngẫu:

với mọi j1,...,m thì yj 0 hoặc in1A xji ibj

Từ bổ đề này ta có một cách tiếp cận để tìm các lời giải tối ưu của bài toán gốc và đối ngẫu: “tìm kiếm các lời giải chấp nhận được thảo mãn tất cả các điều kiện độ lệch bù của cả bài toán gốc và đối ngẫu”. Dựa vào ý tưởng này ta đưa ra các thuật toán xấp xỉ bằng cách tìm kiếm các lời giải chấp nhận được thỏa mãn các điều kiện về độ lệch bù nới lỏng. Ta nói rằng xy thỏa mãn các điều kiện độ lệch bù đối ngẫu nới lỏng - xấp xỉ nếu với  j 1,m, yj 0hoặcin1A xji ibj .Tức là, các ràng buộc không đòi hỏi chặt nhưng cũng không khác xa so với điều kiện chặt.

Bổ đề 2. Giả sử xy là các lời giải chấp nhận được của bài toán gốc và đối ngẫu, thỏa mãn các điều kiện về độ lệch bù gốc và các điều kiện độ lệch bù đối ngẫu nới lỏng - xấp xỉ. Khi đó x là một lời giải - xấp xỉ của bài toán LP gốc.

Chứng minh

( ) *

T T T T T

Đẳng thức đầu tiên là dựa trên các điều kiện độ lệch bù gốc và bất đẳng thức thứ hai dựa trên điều kiện độ lệch bù đối ngẫu nới lỏng - xấp xỉ. Từ định lý đối yếu ta thấy giá trị tối ưu opt của bài toán LP gốc luôn  T

y b. Do đó bổ đề được chứng minh. Dựa trên các định lý và bổ đề ở trên, ta thực hiện xây dựng các lời giải chấp nhận được x y sao cho x là nguyên và các điều kiện độ lệch bù gốc và các điều kiện độ lệch bù đối ngẫu nới lỏng - xấp xỉ đều được thỏa mãn. Điều này có thể được thực hiện mà không cần phải giải LP. Bổ đề 2 đảm bảo x là một lời giải - xấp xỉ cho LP nới lỏng và do đó là lời giải- xấp xỉ cho bài toán ban đầu. Đây là ý tưởng chính của phương pháp gốc – đối ngẫu.

3.3.4.2. Áp dụng cho bài toán phủ đỉnh

Công thức quy hoạch tuyến tính

Xét bài toán phủ đỉnh có trọng số. Ở trên ta chỉ ra bài toán quy hoạch tuyến tính nguyên tương ứng với bài toán MVCP là

Tìm min của hàm i Vw xi i

 với các ràng buộc xixj 1;( , )i jE

xi0, 1 ;  i V

Bài toán LP nới lỏnglà

Tìm min i Vw xi i

với điều kiện xixj 1;( , )i jE 0;

i

x   i V

Vì các ràng buộc của bài toán gốc tương ứng với các cạnh của G nên ta có biến trong bài toán đối ngẫu ye tương ứng với một cạnh.

Tìm max e Eye

 với điều kiện

: e i e i eyw  i V  0; e y   e E

Ý tưởng. Ta bắt đầu với một lời giải không chấp nhận được và một lời giải chấp nhận được của bài toán gốc và đối ngẫu, cụ thể là (0,..., 0)T

x và (0,..., 0)T

y . Lời giải x

y thỏa mãn các điều kiện về độ lệch bù gốc và đối ngẫu. Ta lặp lại việc hiệu chỉnh x

y sap cho x tiến dần tới lời giải chấp nhận được còn y tiến tới lời giải tối ưu và vẫn đảm bảo tính chấp nhận được của y, các điều kiện về độ lệch bù gốc và điều kiện về độ lệch bù đối ngẫu - xấp xỉ. Nếu tại một thời điểm nào đó x là chấp nhận được thì theo bổ đề 2, khi đó x là lời giải - xấp xỉ tối ưu. Các bước thực hiện như sau:

1. Bắt đầu với (0,..., 0)T

x và (0,..., 0)T

y với x là lời giải không chấp nhận được của bài toán gốc và y là lời giải chấp nhận được của bài toán đối ngẫu.

2. Lặp cho đến khi x là chấp nhận được.

a. Tăng một số biến yjcủa y để cải thiện giá trị hàm mục tiêu đối ngẫu cho đến khi một số ràng buộc đối ngẫu là chặt (tức là, i ij j

iy ac

 với một số giá trị j), và vẫn đảm bảo tính chấp nhận được đối ngẫu của y).

b. Lựa chọn tập con của các ràng buộc đối ngẫu chặt và tăng các biến xi tương ứng với chúng sap cho vẫn đảm bảo các điều kiện độ lệch bù gốc. Bước này làm cho lời giải gốc x tiến gần tới lời giải chấp nhận được.

c. Tại thời điểm này, mọi sự thay đổi của một biến bất kỳ của y bên trong các ràng buộc vừa trở thành chặt đều vi phạm các ràng buộc, do đó ta tạm thời “đóng băng” tất cả các biến này và lặp lại toàn bộ quá trình, lần lượt tăng y rồi tăng x và chỉ lựa chọn các biến y không bị "đóng băng" để thay đổi.

3. Cuối cùng, khi tất cả các biến của y được "đóng băng" thì lời giải x của bài toán gốc trở thành chấp nhận được và các điều kiện độ lệch bù đỗi ngẫu - xấp xỉ thỏa mãn.

Ta sẽ triển khai phương pháp này để thu được thuật toán 2 – xấp xỉ cho MVCP. Bắt đầu với x(0,..., 0)T, tức là không chứa đỉnh nào và y(0,..., 0)T, tức là mọi cạnh đều được gán nhãn là 0. Ta tìm cách cải thiện tính chấp nhận được của lời giải bài toán

gốc, ta đặt một cạnh e nào đó không được thỏa và tăng nhãn của nó lên ye cho tới khi có một số ràng buộc đối ngẫu tương ứng với đỉnh i nào đó trở thành chặt, hay ta nói tổng các nhãn của các cạnh có liên quan tới i đúng bằng trọng số của i. Các điều kiện độ lệch bù gốc thỏa được nếu ta đặt xi 1tức là i được đưa vào phủ đỉnh. Do đó, ta đặt

1

i

x  và do việc tăng nhãn của cạnh liên quan tới i sẽ vi phạm các ràng buộc đối ngẫu tương ứng với i nên ta "đóng băng" các biến đối ngẫu kết hợp với các cạnh này. Nếu các ràng buộc tương ứng với cả hai đỉnh của e đều chặt tại cùng một thời điểm thì ta đặt cả hai vào phủ đỉnh và "đóng băng" tất cả các cạnh kề với chúng. Sau đó lặp lại quá trình bằng cách chọn một cạnh chưa "đóng băng" để tăng giá trị nhãn của nó cho tới khi ràng buộc đối ngẫu trở nên chặt, đặt đỉnh tương ứng vào phủ đỉnh và đóng băng các cạnh kề với nó. Ta tiếp tục cho đến khi tất cả các cạnh đều "đóng băng" và sau đó đưa ra tập các đỉnh i thỏa mãn xi 1.

Bổ đề 3. Kết thúc, y là chấp nhận được đối ngẫu.

Khi các ràng buộc đối ngẫu trở nên chặt thì ta đóng băng tất cả các biến đối ngẫu xuất hiện trong đó, vì vậy ràng buộc này không thể bị vi phạm.

Bổ đề 4. Kết thúc, các điều kiện độ lệch bù gốc là thỏa mãn Ta chỉ thiết lập xi 1khi ràng buộc tương ứng với nó là chặt.

Bổ đề 5. Khi kết thúc, x là lời giải chấp nhận được gốc.

Thật vậy, giả sử phản chứng có một số cạnh e không được phủ bởi phủ đỉnh tương ứng. Vì tất cả các cạnh đóng băng đều kết với các đỉnh được đưa vào phủ do đó cạnh e này không đóng băng. Nhưng thuật toán chưa kết thúc nếu còn cạnh chưa đóng băng. Do đó giả thiết là sai.

Bổ đề 6. Khi kết thúc, các điều kiện độ lệch bù đối ngẫu 2 – xấp xỉ thỏa mãn Ta thấy mỗi cạnh (i, j) ta có xi 1 và xj 1do đó xixj 2.

Định lý

Thuật toán gốc – đối ngẫu mô tả ở trên là thuật toán 2 – xấp xỉ cho VC. Áp dụng bổ đề 2 để chứng minh định lý.

Ví dụ: Xét bài toán phủ đỉnh nhỏ nhất cho đồ thị sau

Hình 3.9. Đồ thị minh họa thuật toán đơn hình

Thuật toán bắt đầu bằng việc chọn tăng các cạnh giữa đỉnh có trọng số 4 và 5. Khi nhãn của cạnh bằng 4 thì ràng buộc tương ứng với đỉnh có trọng số 4 trở thành chặt, vì tổng các nhãn của các cạnh kề với nó là 4 +0 + 0 = 4. Đỉnh này được đưa vào phủ, và ba cạnh kề với nó (4, 5), (4, 2), (4, 1) được đóng băng.

Thuật toán tiếp tục lấy cạnh giữa đỉnh có trọng số 5 và 6 để raise – xây dựng. Khi cạnh này có nhãn là 1 thì ràng buộc tương ứng với đỉnh có trọng số 5 trở thành chặt, vì tổng các nhãn của các cạnh kề với nó là 4 + 0 + 1 = 5. Đỉnh này được đưa vào phủ và hai cạnh kề với nó chưa được đóng băng sẽ đóng băng là cạnh (5, 2) và (5, 6).

Bây giờ ta còn lại ba cạnh chưa đóng băng; thuật toán có thể chọn cạnh giữa 2 và 7 để xét. Khi nhãn của cạnh này tăng lên 2 thì ràng buộc tương ứng với đỉnh có

5 6 7 2 4 1 3

trọng số 2 trở thành chặt do đó đỉnh này được đưa vào phủ và cả ba cạnh còn lại đều được đóng băng.

Bây giờ tất cả các cạnh đều đã được đóng băng, do đó mỗi cạnh đều kề với một đỉnh trong phủ. Thuật toán đưa ra các đỉnh có trọng số 2, 4 và 5 là một phủ đỉnh có trọng số 11. Đầu ta này không phải là tối ưu; đỉnh có trọng số 4 có thể thay thế bởi đỉnh có trọng số 1 để sinh ra một phủ có tổng trọng số là 8.

Xét đồ thị không có trọng số, thuật toán lựa chọn một cạnh và tăng các biến tương ứng lên 1, tại thời điểm này các ràng buộc tương ứng với cả hai đầu mút của cạnh đều chặt, do đó cả hai đỉnh đều được đưa vào phủ. Tất cả các cạnh kề với hai đỉnh này đều được đóng băng và do đó mọi cạnh được tăng tiếp theo không thể chứa đầu mút nào của các cạnh xét trong bước lặp này. Nói cách khác, thuật toán tìm cặp ghép cực đại trong G và đưa ra tất cả các đầu mút của các cạnh trong cặp ghép. Như vậy thuật toán này là thuật toán 2 – xấp xỉ cho phiên bản không có trọng số của VC.

Chương 4

THUẬT TOÁN DI TRUYỀN GIẢI BÀI TOÁN PHỦ ĐỈNH

Một phần của tài liệu Giải thuật di truyền giải bài toán phủ đỉnh nhỏ nhất (Trang 65 - 72)

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

(107 trang)