1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số phương pháp giải bài toán tối ưu

44 3,1K 6

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 44
Dung lượng 1,49 MB

Nội dung

Có thể kể tớirất nhiều ứng dụng hiệu quả trong đời sống thực tế của tối ưu hóa như quy hoạchtài nguyên, quản trị kinh doanh, công nghệ thông tin, điều khiển tự động, phát triểncác hệ thố

Trang 1

I MỞ ĐẦU

1 Lý do chọn đề tài

Tối ưu hóa là một ngành quan trọng trong lĩnh vực toán học, đặc biệt là toánhọc ứng dụng Trong thực tế, ta thường gặp những vấn đề nào đó mà có nhiều cáchgiải quyết, một cách tự nhiên ta chọn cách giải quyết vấn đề một cách tối ưu nhấtchẳng hạn như nhanh nhất, tốn ít thời gian nhất hay là mang lại hiệu quả kinh tế caonhất Tối ưu hóa toán học ra đời nhằm giải quyết vấn đề trên Tối ưu hóa ảnhhưởng đến hầu hết các lĩnh vực khoa học công nghệ, kinh tế, xã hội Có thể kể tớirất nhiều ứng dụng hiệu quả trong đời sống thực tế của tối ưu hóa như quy hoạchtài nguyên, quản trị kinh doanh, công nghệ thông tin, điều khiển tự động, phát triểncác hệ thống lớn, giải quyết các bài toán kinh tế Trên cơ sở dựa vào máy tính, lýthuyết tối ưu xây dựng được những thuật toán hữu hiệu nhất để giải các bài toánmột cách tổng quát Chính vì vậy, cùng với sự phát triển của công nghệ thông tin thì

lý thuyết tối ưu ngày càng phát triển mạnh mẽ Công nghệ thông tin tạo điều kiệnthuận lợi để ứng dụng tối ưu hóa một cách rộng rãi và thiết thực Khoảng từ thậpniên 80 của thế kỉ trước trở đi cùng với sự phát triển mạnh mẽ của công nghệ thôngtin, lý thuyết tối ưu đã có những bước tiến lớn, đặc biệt là đối với các lý thuyết phituyến, toàn phương

Ngày nay, tối ưu hóa trở thành một môn học không thể thiếu trong hầu hếtcác chương trình đào tạo đại học của các ngành như khoa học cơ bản, kỹ thuật-côngnghệ, kinh tế Trong chương trình đại học, tôi đã được học được một phần cơ bảncủa tối ưu hóa như qui hoạch tuyến tính nhưng chưa đi sâu vào các vấn đề liên quancủa lĩnh vực này như qui hoạch động, qui hoạch nguyên, qui hoạch phi tuyến Vìthế, tôi chọn đề tài "Một số phương pháp giải bài toán tối ưu " làm khóa luận tốtnghiệp cuối khóa

Trang 2

2 Mục tiêu của đề tài

- Trình bày và làm sáng tỏ lý thuyết về quy hoạch động và quy hoạch nguyêntrong bài toán quy hoạch tuyến tính

- Trình bày vài lý thuyết cơ sở và phương pháp giải bài toán tối ưu phi tuyến

- Nêu một vài ứng dụng của bài toán quy hoạch tuyến tính và bài toán phituyến trong thực tế

3 Đối tượng và phạm vi nghiên cứu

- Lý thuyết cơ sở và thuật toán để giải các bài toán của quy hoạch động, quyhoạch nguyên, quy hoạch phi tuyến

- Một số ví dụ cụ thể cho từng thuật toán

4 Phương pháp nghiên cứu

- Trên cơ sở thu thập tài liệu sách, giáo trình và các tài liệu liên quan rồi tổnghợp, làm sáng tỏ hơn và sắp xếp lại theo logic nội dung của đề tài

- Thực hiện giải và tính toán số liệu, kiểm chứng kết quả

- Trao đổi và thuyết minh về các nội dung nghiên cứu với người hướng dẫn

để làm sáng tỏ vấn đề

Trang 3

II NỘI DUNG

CHƯƠNG 1: QUI HOẠCH ĐỘNG 1.1 Giới thiệu về quy hoạch động

Quy hoạch động là một trong những phương pháp tối ưu hiện đại và mạnh

mẽ Đối tượng của quy hoạch động là các quá trình nhiều bước nói chung và quátrình phát triển theo thời gian nói riêng Sự xuất hiện qui hoạch động gắn liền với têntuổi nhà bác học Mỹ R.Bellman mà trong những năm 50 của thế kỷ 20 đã áp dụngcho một loạt các bài toán thực tế một công cụ mà sau này gọi là nguyên tắc tối ưu.Chính nhờ tính đơn giản và tính tường minh của nguyên tắc này mà phương phápnày tỏ ra đặc biệt hấp dẫn và đã được áp dụng để giải hàng loạt bài toán thực tếtrong các quá trình kỹ thuật cộng nghệ, tổ chức sản xuất, kế hoạch hoá kinh tế…

1.2 Các nguyên tắc cơ bản của quy hoạch động

Qui hoạch động là việc qui hoạch từng giai đoạn của quá trình nhiều giaiđoạn mà trong đó sau mỗi giai đoạn ta chỉ tối ưu hóa một bước Tuy nhiên khi quihoạch một quá trình nhiều giai đoạn ở mỗi bước ta phải lựa chọn điều khiển trên cơ

sở không phải xuất phát từ lợi ích nhỏ hẹp của chính bước đó mà từ lợi ích chungtoàn bộ quá trình Các nguyên tắc chính để giải bài toán qui hoạch động gồm:

Nguyên tắc tối ưu của R.Bellman: Dù trạng thái ban đầu và điều khiển ban đầu có

dạng như thế nào thì điều khiển tiếp theo cũng là tối ưu đối với trạng thái thu đượctrong kết quả tác động đến những điều khiển ban đầu

Nguyên tắc lồng: Ta lồng bài toán đang xét vào họ các bài toán Họ các bài toán này

nhờ có các tham số nên ta giải được Giải những bài toán thuộc họ này với nhữngtham số khác nhau cho đến khi gặp được tham số tương ứng với bài toán xuất phátthì xong

Dựa trên hai nguyên tắc trên mà ta có thể viết ra một dãy các phương trình truy toáncho phép chuyển việc giải một bài toán phức tạp n biến số về việc giải bài toán 1biến số

Trang 4

1.3 Phương trình truy toán của quy hoạch động

Xét bài toán phân bổ tài nguyên:

Có một loại tài nguyên trữ lượng b cần phân phối cho n đơn vị sản xuất Biếtrằng nếu phân phối cho đơn vị thứ j một lượng tài nguyên x j thì hiệu quả mang lại

c j(x j), j=1, n Hãy lập kế hoạch phân phối lượng tài nguyên b cho n đơn vị saocho tổng hiệu quả là lớn nhất

Mô hình bài toán có dạng:

1

n

j j j

Ta gọi bài toán (1.1) - (1.3) là P b n( )và hiệu quả tối ưu của nó là f b n( )

Ta lồng bài toán P b n( ) vào một họ các bài toán sau:

Thay vì xét n đơn vị, ta xét k đơn vị đầu tiên (k<n) với lượng tài nguyên là   ,( b)

1

n

j j j

Kí hiệu bài toán (1.4) - (1.6) là P  k( ), hiệu quả tối ưu là f  k( )

Với mỗi cặp giá trị (k, ) ta có một bài toán tương ứng

Khi k tăng từ 1 đến n ,  tăng từ 0 đến b thì ta có một họ các bài toán

Theo nguyên tắc tối ưu của Bellman ta giải bài toán P  k( )

Trang 5

Giả sử x klà lượng tài nguyên phân phối cho đơn vị thứ k, theo giả thiết ta được hiệuquả c x k( )k Lượng tài nguyên còn lại   x k sẽ được phân phối tối ưu cho k-1 đơn vịcòn lại, hiệu quả tối ưu f k1( x k).

Hiệu quả tổng cộng của k đơn vị là:

Từ phương trình quy hoạch động, ta có điều kiện đầu: f  0( ) 0 với  bất kì Từ đó

Ví dụ 1 : Xét bài toán phân bổ tài nguyên như sau:

Cần phải chuyên chở hàng từ thành phố A đến thành phố B Mạng các con đường nối 2 thành phố này được vẽ trên hình ở dưới

- Ta đồng nhất A=1, B=10

- Trên hình vẽ, đỉnh của mạng cho ta tương ứng các thành phố

- Chi phí chuyển hàng từ thành phố s (s=1,2, ,9) đến thành phố j (j=2,3 ,10)được viết trên các cung đường của mạng

Hãy tìm hành trình nối các thành phố A và B sao cho tổng chi phí chở hàng lànhỏ nhất

Trang 6

Ta chia tập tất cả các đỉnh ra thành các tập con :

Tập con 1 gồm đỉnh số 1: (1)

Tập con 2 gồm các đỉnh có các cung đi từ đỉnh 1 vào đỉnh (2,3,4)

Tập con 3 gồm các đỉnh có các cung đi từ các đỉnh tập con 2 vào đỉnh (5,6,7)

Tập con 4 gồm các đỉnh có các cung đi từ đỉnh tập con 3 vào đỉnh (8,9)

Tập con 5 gồm các đỉnh có các cung đi từ đỉnh tập con 4 vào đỉnh (10)

Bất kì hành trình nào đi từ thành phố 1 đến thành phố 10 đều chứa 4 cungđường.Mỗi cung đường trong chung nối 2 đỉnh thuộc 2 tập con tương ứng.Vì vậyquá trình giải bài toán tìm hành trình tối ưu được chia ra 4 giai đoạn

Theo nguyên tắc của quy hoạch động ta đánh số các giai đoạn từ dưới lên.Tađưa vào các ký hiệu sau:

- Gọi n là kí hiệu bước (giai đoạn): n=1,2,3,4

Ở đây tất cả các kí hiệu đều mang ý nghĩa:

f- thực hiện hàm số hiệu quả điều khiển

s- trạng thái của hệ thống (chỉ số thành phố đang xét)

n- chỉ số này mang thông tin di động là từ thành phố s đến thành phố cuốicùng còn n bước

43

43

64

n=1n=2

n=3n=4

Trang 7

Ta có ngay f0(10)=0 vì không chuyển hàng từ thành phố 10 đi

* Xét n=1 rõ ràng hàng có thể lấy từ thành phố 8 hoặc 9;

j s

j s

Trang 8

i i

i

g x x

Áp dụng công thức : f  k( )= max{c x k( )k + f k1( x k), 0x k 

Với f0(0) 0 , biến đổi từ 0,15,30,45,60 và k biến đổi từ 0,1,2,3,4

Trang 9

(60) max (0) (60), (15) (45), (30) (30), (45) (15), (60) (0) max 0 92, 24 76, 40 46,

Trang 10

CHƯƠNG 2: QUI HOẠCH NGUYÊN 2.1 Phát biểu bài toán quy hoạch tuyến tính nguyên và các bài toán tiêu biểu

Với mục đích tìm hiểu bước đầu, xét mô hình toán học sau đây, còn gọi

là mô hình quy hoạch tuyến tính nguyên hay bài toán quy hoạch tuyến tínhnguyên (BTQHTT nguyên), mà trong đó chúng ta muốn tối ưu hoá (cực đại hoáhay cực tiểu hoá) hàm mục tiêu với điều kiện các biến quyết định là các biếnnguyên với các điều kiện ràng buộc:

Khi n1=n ta có bài toán quy hoạch tuyến tính nguyên hoàn toàn

Khi n1<n ta có bài toán quy hoạch tuyến tính nguyên bộ phận

Trong trường hợp tổng quát, bài toán quy hoạch tuyến tính nguyên có thể bao gồm các ràng buộc dạng ≥, ≤ hoặc =; các biến có thể có dấu ≥ 0, ≤ 0 hoặc dấu tùy ý

Các bài toán quy hoạch tuyến tính nguyên rất hay và có nhiều ứng dụngtrong thực tế Trong đó có bài toán quy hoạch nguyên tiêu biểu là bài toán cái túiđược phát biểu như sau:

Bài toán cái túi:

Một người du lịch muốn mang theo một túi với tổng trọng lượng không vượtquá b (kg) Có n loại đồ vật mà anh ta muốn đem theo, biết rằng trọng lượng một đồvật loại j là a jvà có giá trị là c j Hãy xác định số lượng đồ vật mỗi loại mang theo

để tổng trọng lượng không vượt quá b nhưng giá trị của túi là lớn nhất

Mô hình bài toán như sau:

Gọi x j là số đơn vị đồ vật loại j cần đem theo Khi đó

Trang 11

j j j

Nếu J={1,2, ,n} thì L' là bài toán QHTT nguyên hoàn toàn

Liệu có thể dùng những thuật toán đối với bài toán L để giải bài toán L' được không?

Để trả câu hỏi này, ta xét định lý sau đây:

Định lý 2.1

Nếu L là một đa diện lồi, L' là tập các điểm nguyên của L và R là bao lồi của L' thì:

a/ R là một đa diện lồi, nguyên

b/ R' =L' (R' là tập các điểm nguyên của R)

c/ Tập R* các đỉnh của R thõa mãn điều kiện R* R'

Trang 12

Chứng minh:

a/ Vì L là một đa diện lồi nên L giới nội, do đó L' hữu hạn, suy ra R cũng là một đa diện lồi, hơn nữa tập R* các đỉnh của R thõa mãn điều kiện R* R'

Nghĩa là R là một đa diện lồi nguyên

b/ Từ định nghĩa của R suy ra L'R, suy ra L'R'

Chỉ cần chứng minh R'L' Thật vậy, R=L nên R'L'

c/ Từ R*L' và L'=R' nên R*R'

2.2.2 Phương pháp cắt

Giả sử x(L) là nghiệm tối ưu của bài toán L không thỏa điều kiện nguyên, tức

gọi là lát cắt đúng nếu thoả mãn các điều kiện sau:

- Điều kiện cắt: x(L) không thoả mãn bất đẳng thức, tức là <A, x(L)> > β

- Với mọi x L'  <A,x> 

Như vậy việc giải bài toán quy hoạch tuyến tính nguyên là một quá trình gồmnhiều bước:

a) ở bước thứ r giải bài toán phụ thuộc vào Lr với r=0,1, với L0=L và L'0=L'1=L'2=

b) Tập các điểm nguyên của tất cả các đa diện lồi là như nhau Do đó nếuphương án tối ưu x(L r) của bài toán Lr thỏa mãn điều kiện nguyên thì nó cũng làphương án tối ưu x L( ') của bài toán xuất phát L' và quá trình kết thúc.

c) Nếu x(L r) không thỏa mãn điều kiện nguyên thì x(L r) không phải là phương án của bài toán Lr+1 tức là X( )L rL r1 Khi đó chuyển sang bước r+1

Chuyển từ bước thứ r sang bước thứ r+1 tức là chuyển từ bài toán L r sang L r1 khix(L r) không nguyên được thực hiện nhờ một lát cắt đúng  A x r, r.Việc bổ sunglát cắt này vào ràng buộc của bài toán L r sẽ chuyển đa diện lồi L rthành L r1.

Trang 13

2.2.3 Thuật toán Gomory:

Trang 14

Do giả thiết 2) ta có x x i, j nguyên nên suy ra z j nguyên

- Chứng minh z j 0 Giá sử z j<0, từ 1) ta có:

z x L  x   trái với và zi0, tức là điều kiện cắt thỏa mãn

Thuật toán Gomory

Bước 0: Bỏ qua ràng buộc nguyên, giải bài toán quy hoạch tuyến tính thông thường

bằng phương pháp đơn hình được một lời giải tối ưu

Bước 1: Kiểm tra điều kiện nguyên:

+ Nếu nguyên thì đó là nghiệm của bài toán → dừng

+ Nếu không nguyên chuyển sang bước 2

Bước lặp thứ k

Bước 2: Xây dựng lát cắt hợp cách tương ứng, chọn lát cắt sâu theo định nghĩa nêu

trên:

Trang 15

Nk là tập chỉ số của các biến phi cơ sở, x n k 10 và nguyên.

Bước 3: Đưa biến vào phần cuối cùng của bảng đơn hình, áp dụng phương pháp đơn

hình đối ngẫu giải bài toán trên, thu được kết quả mới Quay lại bước 1 để kiểm trađiều kiện nguyên, nếu chưa nguyên chuyển qua bước lặp k+1

2.2.4 Ví dụ phương pháp Gomory bằng đồ thị

Xét bài toán quy hoạch tuyến tính nguyên

Chúng ta đi tìm phương án tối ưu cho bài toán bằng đồ thị

Bước 1: Vẽ miền các phương án khả thi là tập hợp các phương án khả thi Mỗi

phương án khả thi thể hiện qua bộ số (x x1, 2) thỏa mãn tất cả các ràng buộc

Trước hết chúng ta vẽ đường thẳng có phương trình là 2x14x2 7 Đường thẳngnày chia mặt phẳng thành 2 nửa mặt phẳng, một gồm những điểm (x x1, 2) thỏa

2x 4x 7và còn lại thỏa 2x14x27 Ta tìm được mặt phẳng thỏa mãn

2x 4x 7 Tương tự ta tìm được mặt phẳng thỏa mãn 10x13x2 15

Lúc này giao của 2 nửa mặt phẳng trên cho ta tập hợp các điểm (x x1, 2) thỏamãn các ràng buộc Tuy nhiên để thỏa mãn các điều kiện không âm và điều kiệnnguyên của các biến ta chỉ xét các điểm nằm ở góc phần tư thứ nhất có các tọa độđều nguyên Vậy miền các phương án khả thi là miền gồm các điểm với tọa độnguyên được giới hạn bởi tứ giác OABC

Trang 16

Bước 2: Trong miền tứ giác OABC ta tìm điểm( x x1, 2) với các điều kiện nguyên saocho Z =x14x2 đạt giá trị lớn nhất Dễ thấy đó là điểm F(1,1)

Trong ví dụ trên ta gọi bài toán quy hoạch tuyến tính khi bỏ qua điều kiệnnguyên là bài toán quy hoạch tuyến tính không nguyên tương ứng với bài toán đãcho, tức là ràng buộc bây giờ là :

2 1

x  hoặc x 2 2 Gọi 2 phương án bổ sung này là 2 lát cắt L1 và '

1

L Làm như vậytuy chúng ta thu hẹp miền phương án của bài toán quy hoạch tuyến tính khôngnguyên nhưng vẫn giữ nguyên miền phương án của bài toán quy hoạch tuyến tínhnguyên đã cho Vậy miền ràng buộc trở thành:

Trang 17

2: 1 2

L x  Tương tự có thểthấy lát cắt '

2.2.5 Ví dụ phương pháp Gomory bằng bảng.

Ví dụ 1: Cũng với bài toán trên, ta thêm vào 2 biến phụ để được bài toán có dạng

chính tắc như sau:

Max Z =x14x2

Trang 18

210

43

10

01

Bảng đơn hình bước 24

1/217/2

10

1/4-3/4

01

(Bảng 1)Như vậy phương án tối ưu ở bước thứ 2 chưa thỏa mãn điều kiện nguyên

Xét phương trình

Trang 19

Đặt vế phải là -x5 ( với điều kiện x5nguyên và x5 0) ta có phương trình mới

L ) Lúc này ta có bảng đơn hình mới (Bảng 2) Dễ dàng nhận thấy phương án tối

ưu ở bước 5 chưa thỏa mãn điều kiện nguyên Xét phương trình thứ 3 trong bảngđơn hình thứ 5 làm cơ sở , tương tự ta đưa vào phương trình

Trang 20

mục tiêu c j cơ sở án x1 x2 x3 x4 x5

bảng đơn hình bước 34

1/217/2-1/2

100

1/4-3/4-1/4

010

001

1-1

00

00bảng đơn hình bước 4

001

100

0-51/2

010

117-2

1/2-1/2

00

2-2bảng đơn hình bước 5

001

100

010

0-1/51/10

1-17/5-3/10

00

1/10-1/10

37/10-37/10(Bảng 2)

1

bảng đơn hình bước 64

001

100

010

0-1/51/10

1-17/5-3/10

000

Trang 21

1/10-1/10

37/10-37/10

00bảng đơn hình bước 7

0010

1000

0100

0001

1-2-17

0-21-10

00

00

3-3

1-1(Bảng 3)

Ví dụ 2: Giải bài toán quy hoạch tuyến tính bằng phương pháp cắt:

f(x)= x1 + 2x22x1 + 11x2 ≥ 38x1 + x2 ≤ 7x1 , x2 ≥ 0x1 , x2 nguyên

8/313/3

010

100

1/9-1/91/9

-2/911/97/9Nhận thấy x1, x2 chưa nguyên

Chọn x2 để lập lát cắt vì {x2} = 2/3 > {x1} = 1/3 Điều này nghĩa là ta nênchọn phương trình x2 để lập lát cắt: x2 + 1/9x3 – 2/9x4 = 22

3

Trang 22

tức là:

x2 + (0 + 1/9)x3 + (– 1 + 7/9)x4 = 2 2

3

Vậy mặt cắt là:

0100

1000

1/9-1/9[-1/9]

1/9

-2/911/9-7/97/9

001

02

0100

1000

0011

-1270

1-1-91Kết luận: Ở ngay lần lặp đầu tiên ta đã thu được nghiệm nguyên, vậy nghiệmtối ưu của bài toán là (x1, x2) = (5, 2), trị hàm mục tiêu là: f = 5 + 2 × 2 =9

2.3 Phương pháp nhánh cận Land- Doig giải bài toán quy hoạch tuyến tính nguyên

2.3.1 Nội dung cơ bản của phương pháp nhánh và cận

Trong các phương pháp giải bài toán quy hoạch nguyên, phương pháp nhánhcận là một trong các phương pháp có hiệu quả Phương pháp nhánh cận được LandA.H và Doig A.G xây dựng năm 1960 giải bài toán quy hoạch nguyên Đến năm

1963 được Little J.D, Murty K.G, Sweeney D.W và Karen C sử dụng thành cônggiải bài toán người du lịch Năm 1979 giáo sư Hoàng Tụy đã ứng dụng thành côngphương pháp này vào giải bài toán quy hoạch lõm Đây là thuật toán được ứng dụngrộng rãi để giải các bài toán tối ưu khó

Ngày đăng: 19/04/2015, 06:08

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Hải Thanh, Tối ưu hóa, NXB Đại học Bách Khoa Hà Nội, 2006 Sách, tạp chí
Tiêu đề: Tối ưu hóa
Nhà XB: NXB Đại học Bách Khoa Hà Nội
[2] Phan Quốc Khánh,Trần Huệ Nương, Quy hoạch tuyến tính,NXB Giáo Dục, 2003 Sách, tạp chí
Tiêu đề: Quy hoạch tuyến tính
Nhà XB: NXB Giáo Dục
[3] Nguyễn Đức Nghĩa, Tối ưu hóa, NXB Giáo Dục, 2002 Sách, tạp chí
Tiêu đề: Tối ưu hóa
Nhà XB: NXB Giáo Dục
[4] Bùi Thế Tâm, Trần Vũ Thiệu, Các phương pháp tối ưu hóa, NXB Giao thông vận tải ,1998 Sách, tạp chí
Tiêu đề: Các phương pháp tối ưu hóa
Nhà XB: NXB Giao thông vận tải
[5] Hoàng Xuân Huấn, Giáo trình các phương pháp số, NXB Đại học quốc gia Hà Nội,2004 Sách, tạp chí
Tiêu đề: Giáo trình các phương pháp số
Nhà XB: NXB Đại học quốc gia Hà Nội
[6] Bùi Minh Trí, Toán kinh tế- phần 1 Tối ưu hóa, NXB Giao thông vận tải, 1998 Sách, tạp chí
Tiêu đề: Toán kinh tế- phần 1 Tối ưu hóa
Nhà XB: NXB Giao thông vận tải
[7] Gomory R.E. Outline of an algorithm for integer solution to linear progams.Bull.Amer.Math.Soc.1958.64.N5.275-278 Sách, tạp chí
Tiêu đề: Outline of an algorithm for integer solution to linear progams
[8] R. Horst, Hoàng Tụy, Global optimization: Deterministic approaches, Springer, Berlin,1993 Sách, tạp chí
Tiêu đề: Global optimization: Deterministic approaches

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w