MA TRẬN ĐƠN MÔĐULA TUYỆT ĐỐI

Một phần của tài liệu (LUẬN văn THẠC sĩ) ma trận đơn môđula và các đa diện nguyên (Trang 26 - 46)

2 MA TRẬN ĐƠN MÔĐULA VÀ ĐƠN MÔĐULA TUYỆT ĐỐI

2.2 MA TRẬN ĐƠN MÔĐULA TUYỆT ĐỐI

Định nghĩa 2.3. Ma trận A (cấp mừn) được gọi là ma trận đơn môđula tuyệt đối

(totally unimodular matrix) nếu định thức của mọi ma trận con vuông của nó (mọi tử thức) bằng0hayổ1(nói riêng,aij = 0,ổ1,∀i, j).

Định lý sau nêu tắnh chất đặc trưng của ma trận đơn môđula tuyệt đối.

Định lắ 2.5. ([4], tr. 101). Ma trận nguyên A là đơn môđula tuyệt đối khi và chỉ khi

{x:Ax ≤b, x ≥ 0}là đa diện nguyên với mọi véc tơ nguyênb.

Có một số điều kiện đủ (không phải là điều kiện cần) cho tắnh đơn môđula tuyệt đối, mà có thể kiểm tra tương đối dễ dàng.

Định lắ 2.6. ([6], tr. 60) Ma trậnA= [aij]mừn với các phần tửaij ∈ { −1,0,1}sẽ là đơn môđula tuyệt đối khi nó thỏa mãn hai điều kiện sau:

1) mỗi cột của nó chứa không quá hai phần tử khác không;

2) các hàng củaAcó thể chia thành hai tập rời nhauR1R2 sao cho

a) Hai phần tử khác0cùng dấu của cột bất kỳ nằm ở hai tậpRikhác nhau; b) Hai phần tử khác0trái dấu của cột bất kỳ nằm trên cùng một tậpRi.

Chứng minh. Dễ dàng thấy rằng ma trận con bất kỳ của ma trậnAcũng thỏa mãn các điều kiện của định lý. Vì thế chỉ cần chỉ ra rằng ma trận vuông bất kỳ thỏa mãn các điều kiện của định lý sẽ có định thức bằng 0 hay ổ1. Ta chứng minh bằng qui nạp theo cấp của ma trận. Với ma trận cấp1ừ1thì định lý đúng vìaij ∈ {−1,0,1}. Giả sử định lý đúng với các ma trận(k −1)ừ(k−1), k ≥ 2và ta sẽ chứng minh định lý đúng đối với các ma trận Aốcấp k ừk. Nếu trong cột nào đó của Aốmọi phần tử bằng 0 thì detAố = 0. Nếu Aốchứa cột chỉ có duy nhất một phần tử khác 0 thì bằng cách khai triển định thức của ma trậnAốtheo các phần tử của cột đó, ta sẽ nhận được

detAố = Aij với Aij là phần bù đại số của phần tử khác 0đó. Theo giả thiết qui nạp

Aij = ổ1hay 0. Chỉ còn phải xét trường hợp khi mỗi cột củaAốcó hai phần tử khác không. Khi đó từ các điều kiện của định lý suy ra

X

i∈R1

aij = X

i∈R2

aij =ổ1hay0, j = 1,2, ..., k.

Nghĩa là các hàng của ma trậnAốphụ thuộc tuyến tắnh, vì thếdetAố= 0. Lập luận trên vẫn còn đúng khi một trong các tậpRi là rỗng.

Vắ dụ 2.1. Ma trận A của bài toán vận tải là đơn môđula tuyệt đối. Để khẳng định điều này ta chỉ cần phân chia các hàng của ma trận A thành hai tập hợp:R1 gồmm

hàng đầu vàR2gồmnhàng còn lại. A =                     1 1 ở ở ở 1 0 0 ở ở ở 0 ... ... ... ... 0 0 ở ở ở 0 0 0 ở ở ở 0 1 1 ở ở ở 1 ... ... ... ... 0 0 ở ở ở 0 ở ở ở 0 0 ở ở ở ở ở ở 0 0 ở ở ở ở ở ở ... ... ... ở ở ở 1 1 ở ở ở 0 0 ... 1 1 0 ở ở ở 0 0 1 ở ở ở 0 ... ... ... ... 0 0 ở ở ở 1 1 0 ở ở ở 0 0 1 ở ở ở 0 ... ... ... ... 0 0 ở ở ở 1 ở ở ở 1 0 ở ở ở ở ở ở 0 1 ở ở ở ở ở ở ... ... ... ở ở ở 0 0 ở ở ở 0 0 ... 1                    

Sau đây là một điều kiện đủ nữa cho ma trận đơn môđula tuyệt đối.

Định lắ 2.7. ([6], tr. 62) Giả sử các hàng của ma trậnA = (aij)mừn với aij ∈ {0,1}

có thể tách ra thành hai lớp rời nhau (một tập có thể rỗng) V1 V2 thỏa mãn tắnh chất: nếu hai hàngpq thuộc cùng một lớp và nếu có cột nào đó chứa phần tử1 cả hai hàng này thì hoặcapj ≥aqj hoặcapj ≤aqj với mọi j = 1,2, .., n. Khi đó, ma trậnA là đơn môđula tuyệt đối.

Rõ ràng, ma trận của bài toán vận tải nêu trên cũng thỏa mãn các giả thiết của định lý này (V1gồmmhàng đầu,V2gồmnhàng cuối).

Sau đây là một vắ dụ khác Vắ dụ 2.2. Ma trận A=         1 1 1 1 0 1 0 0 1 0 0 1 0 0 1 0        

thỏa mãn các giả thiết của định lý trên (vớiV1 = ∅ vàV2 = {1,2,3,4}). Vì thế, ma trậnAlà đơn môđula tuyệt đối.

Kiểm tra trực tiếp ta cũng thấy A là ma trận đơn môđula tuyệt đối (mọi tử thức con của nó bằng0hayổ1, Định nghĩa 2.3).

Định lắ 2.8. (Ghouila - Houri 1962, [4], tr. 104) Ma trận A = (aij ∈ Zmừn đơn môđula tuyệt đối khi và chỉ khi với mọi R ⊆ {1, ..., m}, tồn tại phân hoạch

R =R1∪R2 sao cho X i∈R1 aij− X i∈R2 aij ∈ { −1,0,1}với mọij = 1, .., n.

Chứng minh. Giả sử A là ma trận đơn môđula tuyệt đối và R ⊆ {1, ..., m}. Đặt

dk = 1vớik ∈R vàdk = 0vớik ∈ {1, ..., m} \R. Ma trận cấp(2n+m)ừm)      AT −AT Im     

cũng là đơn môđula tuyệt đối, do đó theo Định lý 2.5, đa diện lồi

{x∈ Rm : ATx≤ d1

2dAe, ATx≥ b1

2dAc, x ≤d, x ≥0}

là tập đa diện nguyên. Hơn nữa, tập này khác rỗng vì nó chứa 1

2d. Vì thế, nó có đỉnh nguyên, chẳng hạn đó là đỉnhZ. ĐặtR1 ={k ∈R : zk = 0},

R2 = {k ∈ R :zk = 1}, ta nhận được đẳng thức đòi hỏi

X i∈R1 aij− X i∈R2 aij ! 1≤j≤n =AT(d−2z) ∈ { −1,0,1}n.

Bây giờ ta chứng minh điều ngược lại. Dùng phép qui nạp theok, ta chứng minh rằng mọi ma trận con vuông cấpk có định thức bằng−1,0,1. Vớik = 1, điều này suy ra từ tiêu chuẩn đối với trường hợp| R |= 1.

Bây giờ giả sử k > 1vàB = (bij)i, j ∈ {1, ..., k}là ma trận con không suy biến cấp kừ k của A. Theo qui tắc Craner, mỗi phần tử của B−1 bằng(detB0)/(detB), trong đóB0 nhận được từB bằng cách thay một cột bởi véctơ đơn vị. Theo giả thiết qui nạp,detB0 ∈ {−1,0,1}. Vì thế,B∗ = (detB)B−1 là ma trận chỉ gồm các phần tử−1,0,1.

Giả sử b∗1 là hàng thứ nhất của B∗. Ta có b1∗B = (detB)e1, trong đó e1 là véctơ đơn vị thứ nhất. ĐặtR = {i : b∗1i 6= 0}. Khi đó với j = 2, ..., k ta có 0 = (b∗1B)j =

P

i∈R

Theo giả thiết, tồn tại phân hoạchR = R1∪R2với

i∈R1

bij−

i∈R2

bij ∈ { −1,0,1}

với mọij. Vì thế, vớij = 2, .., k ta có P

i∈R1 bij− P i∈R2 bij = 0. Nếu cũng có P i∈R1 bi1 − P i∈R2

bi1 = 0thì tổng các hàng thuộcR1bằng tổng các hàng thuộcR2, trái với giả thiết

B không suy biến (doR 6= ∅). Vậy P i∈R1 bi1− P i∈R2 bi1 ∈ { −1,1}và ta cóyTb∈ {e1, e−1}, trong đó y1 =          1khii∈ R1, −1khii ∈R2, 0khii /∈ R.

Do b∗1B = (detB)e−1 và B không suy biến nên b∗1 ∈ {(detB)y,−(detB)y}. Vì cả hai véctơy vàb∗1 chỉ gồm các phần tử−1,0và1, cho nên|detB|= 1.

Áp dụng Định lý 2.8 vào ma trận liên thuộc của đồ thị, ta có

Định lắ 2.9. ([4], tr. 105) Ma trận liên thuộc của một đồ thị vô hướngGlà đơn môđula tuyệt đối khi và chỉ khiGlà đồ thị hai phần.

Chứng minh. Theo Định lý 2.8, ma trận liên thuộc M của đồ thị G là đơn môđula tuyệt đối khi và chỉ khi với mọi tập đỉnhX của G(X ⊆ V(G)), tồn tại phân hoạch

X =A∪B sao choE(G[A]) = E(G[B]) =∅, trong đóE(G[A])là tập cạnh của đồ thị con (củaG) cảm sinh bởi tập đỉnhA ⊆ V(G). Theo định nghĩa, phân hoạch như thế tồn tại khi và chỉ khiGlà một đồ thị hai phần.

Định lắ 2.10. ([4], tr. 105) Ma trận liên thuộc của một đồ thị có hướng G là đơn môđula tuyệt đối.

Chứng minh. Áp dụng Định lý 2.8, ta chỉ cần đặt R1 = R, R2 = ∅ với mọi R ⊆

V(G).

Tóm lại, chương này đã trình bày khái niệm ma trận đơn môđula, phép biến đổi đơn môđula và một số kết quả liên quan đến sự tồn tại nghiệm nguyên của hệ phương

trình tuyến tắnh. Tiếp đó trình bày khái niệm ma trận đơn môđula tuyệt đối: các tắnh chất, vắ dụ và một số tiêu chuẩn nhận biết.

Chương 3

ĐA DIỆN NGUYÊN VÀ GẦN NGUYÊN

Chương này đề cập tới các đa diện nguyên và gần nguyên: mô tả điều kiện để có các đa diện nguyên, xét một số lớp đa diện nguyên và gần nguyên thường gặp. Nội dung của chương chủ yếu dựa trên các tài liệu [2], [4] - [6].

3.1 ĐIỀU KIỆN NGUYÊN

Theo lý thuyết qui hoạch tuyến tắnh, cực trị (cực tiểu hay cực đại) của hàm tuyến tắnh trên một tập lồi đa diện (nếu có) đạt được tại một đỉnh (nghiệm cơ sở) của tập đó (giả thiết tập đa diện có đỉnh). Vì thế, nếu mọi đỉnh của tập lồi đa diện có các tọa độ nguyên thì sau khi giải bài toán qui hoạch tuyến tắnh bằng thuật toán đơn hình, ta sẽ nhận được nghiệm tối ưu. Nghiệm đó cũng là nghiệm tối ưu của bài toán qui hoạch tuyến tắnh nguyên tương ứng. Trong các trường hợp như thế bài toán qui hoạch tuyến tắnh nguyên (ILP) có thể giải như bài toán qui hoạch tuyến tắnh (LP).

Định nghĩa 3.1. Một tập lồi đa diện (hay một đa diện lồi) được gọi là tập đa diện nguyên (integral polyhedron) nếu tập đó rỗng hoặc mọi đỉnh của nó có các tọa độ nguyên.

Vấn đề đặt ra là tìm điều kiện đặt lên ma trận A = [aij]mừn và véctơm−chiềub

để choM(A, b) ≡ {Ax =b, x ≥0}là tập đa diện nguyên.

Với cách đặt này thì cho tới nay bài toán về tắnh nguyên của tập đa diện chưa được giải quyết. Tuy nhiên, bài toán miêu tả một số lớp ma trận nguyênAsao choM(A, b)

3.1.1 Cơ sở đơn môđula và ma trận đơn môđula tuyệt đối

Định nghĩa 3.2. Giả sử ma trậnAcó hạngmvàB là ma trận con cấpmừmcủaA. Khi đó, ta gọiB là một cơ sở(basic) củaAnếu B có hạng bằngmvà gọiB làcơ sở đơn môđula(unimodular basic) nếudetB = ổ1.

Định lý sau cho một tiêu chuẩn nhận biết đa diện nguyên.

Định lắ 3.1. ([6], tr. 58).M(A, b) là tập đa diện nguyên với bất kỳ véctơ nguyênbkhi và chỉ khi mọi cơ sở của ma trận nguyênAlà đơn môđula.

Chứng minh. Đủ. Mỗi đỉnh (nghiệm cơ sở)x= (x1, ..., xn)T củaM(A, b) được xác định duy nhất bởi tập chỉ số biến cơ sởj1, ..., jm. Cơ sởB gồm các cột j1, ..., jm là cơ sở chấp nhận được. Khi đó, các thành phầnxB = (xj1, ..., xjm)T của nghiệm cơ sở chấp nhận đượcxliên hệ với cơ sởB bởi hệ thứcBxB = b. Theo giả thiết của định lý thìdetB =ổ1và là véctơ nguyên. Vì thế theo qui tắc Cramer (tìm nghiệm của hệ phương trình tuyến tắnh) ta nhận đượcxB là véctơ nguyên. Do các thành phần còn lại củaxbằng0nên đỉnh (véctơ)xlà nguyên.

Cần. Ta sẽ chứng minh rằng nếuB là cơ sở vàxBlà véctơ nguyên thìdetB =ổ1. Giả sửy là véctơ nguyênm−chiều tùy ý sao cho

y +B−1ei ≥0, ei = (0, ...0,1 | {z } i ,0....,0)T (3.1) Xét hệ phương trình Ax =b, (3.2) trong đóốb= By+e

i. DoBlà cơ sở của ma trậnAnên hệ (3.2) tương thắch. Nghiệm cơ sởzcủa hệ (3.2) với các thành phần khác khôngzB =B−1(By+ei) =y+B−1ei ≥0

theo (3.1) và do đó, là đỉnh của tập lồi đa diện M(A, b). Theo giả thiết tập đa diện

M(A, b)nguyên với bất kỳb nguyên, nói riêng vớib = ốb. Do đó zB là véctơ nguyên. Do vế phải đẳng thứczB−y = B−1ei là véctơ nguyên nên véctơB−1ei- cột thứicủa ma trậnB−1- là véctơ nguyên. Vậy ma trậnB−1 nguyên. VìB vàB−1là các ma trận nguyên nên định thức của chúng là những số nguyên.

Theo giả thiếtB là cơ sở nên các định thức này khác không. Từ hệ thức quen thuộc

detBừdetB−1 = 1suy radetB = detB−1 =ổ1.

Ta cũng có các kết quả tương đối với tập đa diện

M∗(A, b) ={x|Ax≤ b, x ≥0}.

Ta nhắc lại (xem Định nghĩa 2.3), ma trậnAgọi làđơn môđula tuyệt đốinếu định thức của mọi ma trận con vuông của nó bằng0hay ổ1(nói riêngaij = 1,ổ1 ∀i, j).

Định lắ 3.2. ([6], tr. 59). M∗(A, b) là tập đa diện nguyên với bất kỳ véc tơ nguyênb

khi và chỉ khi ma trậnAlà đơn môđula tuyệt đối.

Chứng minh. Thêm vào bên phải của A ma trận đơn vị E cỡ m ừ m và áp dụng định lý 3.1 vào tập đa diệnM(A∗, b), A∗ = [A, E]. Theo định lý 3.1, tắnh nguyên của

M(A∗, b) do đó củaM(A∗, b)vớib nguyên bất kỳ tương đương với mỗi cơ sởB của ma trậnA∗ là đơn môđula, tuy nhiên (sau khi hoán vị các hàng) có thể biểu diễn cơ sở này dưới dạng B =   C O D Ek  

trong đóEk là ma trận đơn vị cấpkừk (0≤ k ≤m). Rõ ràng,detB =detC và do đódetB =ổ1khi và chỉ khidetC =ổ1. Định lý được chứng minh.

ỚBằng cách áp dụng Định lý 3.1, có thể chứng minh tắnh đơn môđula tuyệt đối của ma trậnA là điều kiện càn và đủ cho tắnh nguyên của tập đa diện

M0(A, b, b0, d, d0) ={x|b0 ≤ Ax ≤b,d0 ≤x ≤d}

với mọi véctơ nguyênb, b0, d, d0có số chiều thắch hợp(b, b0 ∈ Rm, d, d0 ∈Rn)

Thật vậy, nếu đặty =x−d0 thìd0 ≤x≤ d⇔ 0≤ y ≤d−d0. Vì thế,

{x|b0 ≤Ax ≤b,d0 ≤ x≤d}={Ax ≤b,−Ay ≤ −b0, y ≤d−d0, y ≥ 0},

VớiA∗ = (A,−A, E)T (E là ma trận đơn vị cấpn) vàb∗ = (b,−b0, d−d0)T thì

và có thể thấy mỗi cơ sở của A∗ là đơn môđula khi và chỉ khi A đơn môđula tuyệt đối.

Định lý sau cũng thể hiện rõ sự tương đương giữa tắnh nguyên của tập đa diện với tắnh đơn môđula tuyệt đối của ma trận.

Định lắ 3.3. (Hoffman và Kruskal, 1956 [2], tr. 335). Giả sử A = (A1, A2, A3)T ma trận gồm các phần tử0,ổ1 b = (b1, b2, b3)T là véc tơ với số chiều thắch hợp. Khi đó,Alà đơn môđula tuyệt đối khi và chỉ khi

P(A, b) ={x :A1x≤ b1;A2x≥ b2;A3x≥ b3;x≥ 0}

là tập đa diện nguyên với mọi véctơ nguyênb1, b2, b3.

Định lắ 3.4. (Edmonds và Giles, 1977, [2], tr. 336). Nếu P(A) = {x : Ax ≤ b} nguyên đối ngẫu tuyệt đối vàbnguyên thìP(A)là tập đa diện nguyên.

Thực ra, Hoffman và Kruskal (1956) đã chỉ ra rằng tập đa diệnP(A, b)xác định như trong Định lý 3.3 là nguyên đối ngẫu tuyệt đối (TDI). Cho nên Định lý 3.4 được suy ra từ Định lý 3.3 và từ sự kiện: A đơn môđula tuyệt dối khi và chỉ khi AT đơn môđula tuyệt đối.

3.1.2 Vắ dụ về tập đa diện nguyên

Vắ dụ 3.1. Ở Chương 2 ta đã thấy rằng ma trận Acủa bài toán vận tải là đơn môđula tuyệt đối. Do đó theo Định lý 3.3,

M(A, b) = {(x11, x12, ...., xmn)| n X j=1 xij =ai, m X i=1 xij =bj, xij ≥ 0, i= 1,2, ..., m;j = 1,2, ..., n}

là tập đa diện nguyên.

Vắ dụ 3.2. Cho tập đa diện

VớiAlà ma trận các phần tử0,1cấpmừn, em- véc tơm−chiều với mọi phần tử 1. Ta sẽ chỉ ra rằng nếu tìm được hai véctơ nguyên xvày ∈ M(A, e)sao cho

xj +yj = 1với mọij = 1,2, ..., n (3.3) thìM(A, e)là tập đa diện nguyên.

Thật vậy, rõ ràng z = (x+y)/2∈ M(A, e). Do 1 = n X j=1 aijzj = 1 2 n X j=1 aij(xj+yj) =1 2 n X j=1 aij nên n X j=1 aij = 2, i= 1, ..., m,

nghĩa là mỗi hàng củaAcó hai phần tử1. Ta đưa vàoR1 các cộtj của ma trậnA có

xj = 1 và đưa vàoR2các cột j cóxj = 0. Vì thế ma trậnAthỏa mãn (sai khác một phép chuyển vị) các điều kiện của Định lý 2.6, nghĩa làAlà ma trận đơn môđula tuyệt đối. Vậy, nếu đa diện M(A, e) chứa hai véctơ nguyên x, y thỏa mãn điều kiện (3.3) thì đa diện đó là nguyên.

3.1.3 Ma trận cân đối, ma trận hoàn hảo và ma trận lý tưởng

Một phần của tài liệu (LUẬN văn THẠC sĩ) ma trận đơn môđula và các đa diện nguyên (Trang 26 - 46)

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

(46 trang)