Tải bản đầy đủ (.pdf) (79 trang)

Một số phương pháp số cơ bản giải bài toán quy hoạch phi tuyến không ràng buộc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.13 MB, 79 trang )

Header Page 1 of 132.

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
======

NGUYỄN TRUNG HÀ

MỘT SỐ PHƯƠNG PHÁP SỐ CƠ BẢN
GIẢI BÀI TOÁN QUY HOẠCH
PHI TUYẾN KHÔNG RÀNG BUỘC
Chuyên ngành: Toán Giải tích
Mã số: 60 46 01 02

LUẬN VĂN THẠC SĨ TOÁN HỌC

Người hướng dẫn khoa học: PGS. TS. NGUYỄN HỮU ĐIỂN

HÀ NỘI, 2016

Footer Page 1 of 132.


Header Page 2 of 132.

LỜI CẢM ƠN
Để hoàn thành bản luận văn này tôi đã nhận được sự giúp đỡ to
lớn của Thầy, Cô giáo, gia đình và bạn bè xung quanh. Tôi xin bày tỏ
lòng kính trọng và biết ơn sâu sắc tới thầy giáo hướng dẫn PGS. TS.
Nguyễn Hữu Điển, Khoa Toán - Cơ - Tin học, Trường Đại học khoa
học tự nhiên, ĐHQG Hà Nội. Trong quá trình hướng dẫn đã ân cần


động viên, giúp đỡ chỉ bảo tận tình cho tôi. Tôi cũng gửi lời cảm ơn
tới các thầy cô trong Khoa Toán, Phòng sau đại học, Trường Đại học
sư phạm Hà Nội 2 đã dạy dỗ và giúp đỡ tôi rất nhiều trong suốt quá
trình học tập và nghiên cứu luận văn.
Cuối cùng tôi cũng xin gửi lời cảm ơn tới gia đình nơi đã sinh
thành, nuôi nấng, giúp đỡ, động viên tôi rất nhiều trong suốt thời
gian qua. Dù đã cố gắng hết sức nhưng luận văn không thể tránh khỏi
những thiếu sót và hạn chế. Mọi ý kiến đóng góp tôi xin được đón
nhận với lòng biết ơn và trân trọng sâu sắc.
Hà Nội, tháng 10 năm 2016
Tác giả

Nguyễn Trung Hà

Footer Page 2 of 132.


Header Page 3 of 132.

LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là kết quả nghiên cứu của riêng
tôi dưới sự hướng dẫn của PGS. TS. Nguyễn Hữu Điển.
Trong quá trình nghiên cứu, tôi đã kế thừa thành quả khoa học của
các nhà khoa học với sự trân trọng và biết ơn. Các kết quả trích dẫn
trong luận văn này đã được chỉ rõ nguồn gốc.
Hà Nội, tháng 10 năm 2016
Tác giả

Nguyễn Trung Hà


Footer Page 3 of 132.


Header Page 4 of 132.

Mục lục

MỞ ĐẦU

5

1

MỘT SỐ KIẾN THỨC CHUẨN BỊ

9

1.1. Một số khái niệm giải tích lồi . . . . . . . . . . . . . . .

9

1.2. Một số khái niệm từ giải tích . . . . . . . . . . . . . . . .

10

1.3. Tổng quan về quy hoạch phi tuyến . . . . . . . . . . . .

12

1.4. Tính khả vi và điều kiện cần cấp một . . . . . . . . . . .


17

1.5. Điều kiện lồi và điều kiện đủ cấp một . . . . . . . . . .

22

1.6. Điều kiện đủ đối với nghiệm tối ưu địa phương và toàn
cục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2

32

CÔNG CỤ SỐ GIẢI CÁC BÀI TOÁN QUY HOẠCH PHI TUYẾN
KHÔNG RÀNG BUỘC

44

2.1. Phương pháp hướng dốc nhất . . . . . . . . . . . . . . .

44

2.1.1. Giới thiệu phương pháp . . . . . . . . . . . . . .

44

2.1.2. Nội dung của phương pháp . . . . . . . . . . . .

47


2.1.3. Lập trình Maple trong Phương pháp hướng dốc
nhất . . . . . . . . . . . . . . . . . . . . . . . . . .

Footer Page 4 of 132.

3

49


Header Page 5 of 132.

2.1.4. Điều kiện đủ để hội tụ . . . . . . . . . . . . . . .

51

2.1.5. Tốc độ hội tụ . . . . . . . . . . . . . . . . . . . .

56

2.2. Phương pháp Newton . . . . . . . . . . . . . . . . . . .

58

2.2.1. Gới thiệu phương pháp . . . . . . . . . . . . . .

58

2.2.2. Nội dung của phương pháp Newton . . . . . . .


60

2.2.3. Lập trình Maple trong Phương pháp Newton . .

62

2.2.4. Điều kiện hội tụ . . . . . . . . . . . . . . . . . . .

64

2.3. Thuật toán Levenberg-Marquardt . . . . . . . . . . . . .

70

2.3.1. Giới thiệu Thuật toán Levenberg-Marquardt . .

70

2.3.2. Thuật toán Levenberg-Marquardt . . . . . . . .

71

2.3.3. Ứng dụng Maple trong Thuật toán LevenbergMarquardt . . . . . . . . . . . . . . . . . . . . . .

74

KẾT LUẬN

76


TÀI LIỆU THAM KHẢO

77

Footer Page 5 of 132.

4


Header Page 6 of 132.

MỞ ĐẦU
1. Lý do chọn đề tài
Như ta đã biết bài toán quy hoạch đã xuất hiện từ khi con người
biết lao động, biết suy nghĩ để tìm ra cách làm nhanh và hiệu quả
nhất. Tuy nhiên các hành động này thay đổi liên tục và buộc con
người ta phải tìm cách thích ứng. Và ngày nay, mô hình tối ưu hóa
được sử dụng trong nhiều lĩnh vực như: Quản lý kinh tế và tài chính,
nghiên cứu khoa học và cả trong các lĩnh vực kỹ thuật... cũng được
thừa hưởng từ các thành quả ở trên với nguồn tài nguyên vô cùng lớn
và các cơ sở kỹ thuật hiện đại. Để giải quyết các vấn đề trên ta nghiên
cứu bài toán quy hoạch phi tuyến không ràng buộc có dạng
min { f ( x ) : x ∈ Rn }
Trong đó Rn là một không gian vector, f : Rn → R là một hàm phi
tuyến cho trước và được gọi là hàm mục tiêu. Tập nguồn Rn ứng với
bài toán quy hoạch phi tuyến không ràng buộc. Mục đích của khóa
luận này là nhằm tìm hiểu các phương pháp số cơ bản để giải các bài
toán quy hoạch phi tuyến không ràng buộc. Tìm kiếm theo tia (line
search) hay còn gọi là tìm kiếm một chiều (one dimensional search)
là mấu chốt của nhiều thuật toán để giải các bài toán quy hoạch phi

tuyến. Tiếp theo là phương pháp nội suy, phương pháp này dùng giá
Footer Page 6 of 132.

5


Header Page 7 of 132.

trị của hàm cần tìm cực tiểu tại những điểm nhất định để xấp xỉ các
hàm đó bởi các đa thức: Tam thức bậc hai (phương pháp Powell) và đa
thức bậc ba (phương pháp Davidon), sau đó điểm cực tiểu của hàm
ban đầu được thay thế bằng điểm cực tiểu của đa thức xấp xỉ mà nó
được tìm đơn giản hơn. Trên đây là một số phương pháp tìm cực tiểu
hàm một biến. Ta cũng có thể dùng bất kỳ phương pháp tìm cực tiểu
một biến này để tìm cực tiểu dọc theo các trục tọa độ đối với hàm hai
biến cũng như hàm nhiều biến. Tuy nhiên các phương pháp được giới
thiệu ở trên chỉ có hiệu quả trong trường hợp cực tiểu của hàm là duy
nhất. Song trên thực tế nó tỏ ra ít hiệu quả. Vì thế, người ta đã đề ra
nhiều phương pháp khác cho phép khai thác nhiều thông tin hơn dựa
trên các giá trị hàm đã nhận được đó là phương pháp gradient (sử
dụng đạo hàm của hàm). Các phương pháp này đòi hỏi sử dụng tới
các đạo hàm riêng bậc nhất hoặc bậc hai của một hàm. Khoảng những
năm 70 của thế kỷ XX, các phương pháp gradient được nghiên cứu
rất mạnh và đã thu được những thành tựu đáng kể. Nhiều công trình
nghiên cứu đã được công bố. Các phương pháp này thường rất thông
dụng để tìm cực tiểu, nó rất đơn giản và có thể áp dụng cho nhiều
lớp hàm, đó chính là phương pháp hướng dốc nhất (Steepest DescentMethod), Phương pháp Newton và thuật toán Levenberg-Marquardt,
do công nghệ và phần mềm máy tính phát triển rất mạnh đặc biệt là
chương trình Maple đã giúp ta rất nhiều trong quá trình tính toán và
đặc biệt là việc giải quyết các bài toán quy hoạch phi tuyến không

ràng buộc. Tóm lại không có phương pháp chung nào có hiệu quả
để giải bài toán quy hoạch nói chung và quy hoạch phi tuyến nói
riêng. Mỗi phương pháp đều có những ưu, nhược điểm riêng. Nên
luận văn sẽ tìm hiểu sâu hơn về thuật toán, sự hội tụ cũng như các ví

Footer Page 7 of 132.

6


Header Page 8 of 132.

dụ có sử dụng Maple để làm rõ ba phương pháp: Phương pháp hướng
dốc nhất, phương pháp Newton, và thuật toán Levenberg-Marquardt
trong việc giải quyết các bài toán quy hoạch phi tuyến không ràng
buộc. Nội dung chính của bản luận văn bao gồm các vấn đề sau đây:
Tổng quan về các phương pháp tìm cực tiểu tự do. Tóm tắt kiến thức
liên quan. Trình bày cụ thể ba phương pháp. Ví dụ minh họa và chạy
kiểm tra kết quả bằng Maple.

2. Mục đích nghiên cứu
Luận văn sẽ tìm hiểu sâu hơn về thuật toán, sự hội tụ cũng như
các ví dụ có sử dụng Maple để làm rõ ba phương pháp: Phương pháp
hướng dốc nhất, phương pháp Newton, và thuật toán Levenberg-Marquardt
trong việc giải quyết các bài toán quy hoạch phi tuyến không ràng
buộc.

3. Nhiệm vụ nghiên cứu
Nghiên cứu ba phương pháp Phương pháp hướng dốc nhất,
phương pháp Newton, và thuật toán Levenberg-Marquardt trong việc

giải quyết các bài toán quy hoạch phi tuyến không ràng buộc.
Nghiên cứu Phần mềm Maple 17 trên máy tính và ứng dụng
phần mềm này trong việc giải quyết các bài toán quy hoạch phi tuyến
không ràng buộc.

Footer Page 8 of 132.

7


Header Page 9 of 132.

4. Đối tượng và phạm vi nghiên cứu
Các bài toán quy hoạch phi tuyến không ràng buộc.

5. Phương pháp nghiên cứu
Nghiên cứu lý thuyết của giải tích lồi, giải tích số.
Nghiên cứu ba thuật toán: Phương pháp hướng dốc nhất, phương
pháp Newton, và thuật toán Levenberg-Marquardt. Nghiên cứu chương
trình Maple trên máy tính.

6. Giả thuyết khoa học
Luận văn trình bày chi tiết về một số phương pháp số cơ bản giải
bài toán quy hoạch phi tuyến không ràng buộc.

Footer Page 9 of 132.

8



Header Page 10 of 132.

Chương 1
MỘT SỐ KIẾN THỨC CHUẨN BỊ
1.1.

Một số khái niệm giải tích lồi

Định nghĩa 1.1. (Đoạn thẳng). Tập tất cả các điểm x = (1 − λ) a + λb
với 0 ≤ λ ≤ 1 và a, b ∈ Rn được gọi là đoạn thẳng nối hai điểm a và b.
Ký kiệu [ a, b] .
Định nghĩa 1.2. (Tập lồi). Tập D ⊂ Rn được gọi là tập lồi nếu nó chứa
trọn đoạn thẳng nối hai điểm bất kỳ thuộc nó. Hay nói cách khác D là
tập lồi nếu (1 − λ) a + λb ∈ D với 0 ≤ λ ≤ 1 và a, b ∈ D.
Các tính chất của tập lồi
- Tổng đại số hữu hạn tập lồi là tập lồi.
- Giao của họ các tập lồi là tập lồi.
- Tích đề các của các tập lồi là tập lồi.
Định nghĩa 1.3. (Hàm lồi). Hàm f ( x ) xác định trên tập lồi D được gọi
là hàm lồi nếu ∀ x, y ∈ D, ∀λ ∈ [0; 1] :
f (λx + (1 − λ) y) ≤ λ f ( x ) + (1 − λ) f (y)

Footer Page 10 of 132.

9


Header Page 11 of 132.

1.2.


Một số khái niệm từ giải tích

Định nghĩa 1.4. (Hàm khả vi). Giả sử hàm f xác định tại lân cận o ( x, ε)
của điểm x. Ta nói hàm f là khả vi tại điểm x nếu tìm được vector
f ( x ) ∈ Rn sao cho số gia của hàm số tại x là
∆ f ( x ) = f ( x + ∆x ) − f ( x ) , ∆x ≤ ε,
có thể được viết lại
∆ f ( x ) = f ( x + ∆x ) , f ( x ) + o ( x, ∆x )
trong đó o ( x, ∆x ) là vô cùng bé bậc cao hơn ∆x ≤ ε nghĩa là
o ( x, ∆x )
lim
khi đó được gọi là gradient của hàm f tại x và được
∆x
∆x →0
ký hiệu là ∇ f ( x ).
Định nghĩa 1.5. (Hàm hai lần khả vi). Giả sử hàm f xác định tại lân
cận o ( x, ε) của điểm x. Ta nói hàm f hai lần khả vi tại điểm x nếu cùng
với vector f ( x ), tồn tại ma trận đối xứng f ( x ) ∈ Rn sao cho số gia
của hàm số tại điểm có thể viết dưới dạng
∆ f ( x ) = f ( x + ∆x ) − f ( x ) = f ( x ) , ∆x +

f ( x ) , ∆x
+ o ( x, ∆x )
2

khi đó f ( x ) được gọi là đạo hàm hay Hessian của hàm f tại x.
Định nghĩa 1.6. (Hàm khả vi liên tục). Giả sử hàm f đối xứng trên
tập mở X, ta nói hàm f là khả vi liên tục trên tập X nếu f là khả vi
tại mọi điểm x ∈ X và


f ( x + ∆x ) − f ( x )

→ 0 khi ∆x → 0 với

∀ x, x + ∆x ∈ X.
Định nghĩa 1.7. (Hàm hai lần khả vi liên tục). Giả sử hàm f đối xứng
trên tập mở X, ta nói hàm f là khả vi liên tục trên tập X nếu f là hai lần
khả vi tại mọi điểm x ∈ X và f ( x + ∆x ) − f ( x ) → 0 khi ∆x → 0
với ∀ x, x + ∆x ∈ X.
Footer Page 11 of 132.

10


Header Page 12 of 132.

Định lý 1.1. (Hàm lồi khả vi).
a. Một hàm thực một biến ϕ (t) khả vi trong một khoảng mở là lồi khi và chỉ

khi đạo hàm của nó ϕ (t) là một hàm không giảm.
b. Một hàm thực một biến ϕ (t) hai lần khả vi trong một khoảng mở là lồi khi
và chỉ khi đạo hàm cấp hai của nó ϕ (t) không âm trên toàn bộ khoảng mở
này.
Định lý 1.2. Cho một tập lồi C ⊂ Rn và một hàm f : Rn → R khả vi trên
C.
a) Hàm f lồi trên C khi và chỉ khi
f (y) ≥ f ( x ) + ∇ f ( x ) , y − x , ∀ x, y ∈ C.
b) Nếu f (y) > f ( x ) + ∇ f ( x ) , y − x , ∀ x, y ∈ C và x = y thì lồi chặt
trên C.

Định nghĩa 1.8. (Ma trận xác định dương). Cho ma trận A ∈ Rn×n .
Khi đó
a) A được gọi là nửa xác định dương nếu x T Ax ≥ 0 với mọi
vector x ∈ Rn .
b) A được gọi là xác định dương nếu x T Ax > 0 với mọi vector
x ∈ Rn và x = 0.
c) A được gọi là nửa xác định âm nếu x T Ax ≤ 0 với mọi vector
x ∈ Rn và x = 0.
d) A được gọi là xác định âm nếu x T Ax < 0 với mọi vector
x ∈ Rn .

Ví dụ 1.1. Kiểm tra tính xác định dương của ma trận sau: 

Footer Page 12 of 132.

11

− 12

0

0

− 12





Header Page 13 of 132.


t

Ta lấy x = [ x1 , x2 ] ∈ R2 dùng định nghĩa có


1

0
 x = − 1 x12 + x22 ≤ 0, ∀ x ∈ Rn
xt  2
2
0 − 12

Như vậy ma trận đã cho nửa xác định âm.
Ngoài ra ta còn có tiêu chuẩn Silvestra để kiểm tra tính xác định
dương của ma trận như sau: Ma trận A ∈ Rn×n là xác định dương hay
xác định âm khi và chỉ khi tất cả các định thức con của ma trận đó
tương ứng là dương hay âm.

1.3.

Tổng quan về quy hoạch phi tuyến

1.3.1. Giới thiệu chung về quy hoạch phi tuyến
Một bài toán phi tuyến, hoặc quy hoạch phi tuyến là một trong
số các bài toán mà trong đó hàm mục tiêu là phi tuyến và ràng buộc ở
dạng của bất đẳng thức phi tuyến. Đặc biệt, một quy hoạch phi tuyến
có thể được biểu diễn như sau
min f ( x1 , x2 , ..., xn )

với

(1.1)



g1 ( x1 , x2 , ..., xn ) ≤ 0




 g ( x , x , ..., x ) ≤ 0
2
1 2
n

.................................




 g ( x , x , ..., x ) ≤ 0
m
1 2
n

1.3.2. Miền ràng buộc xác định và giải bài toán quy hoạch phi tuyến
bằng công cụ Mapple
Miền thực hiện được của quy hoạch phi tuyến là phức tạp hơn
để vẽ đồ thị bằng Mapple so với bài toán quy hoạch tuyến tính, do

Footer Page 13 of 132.

12


Header Page 14 of 132.

thực tế Mapple chỉ là một lệnh của bất đẳng thức để thực hiện với các
miền lấy được tương ứng với danh sách bất đẳng thức tuyến tính. Tuy
nhiên, với một chút sáng tạo, ta vẫn có thể thực hiện được. Để minh
họa cho ý tưởng này, ta xét quy hoạch phi tuyến hai biến đơn giản
max f ( x1 , x2 ) = x1 x2

(1.2)

gồm các điều kiện

 x2 + x2 ≤ 1
2
1
 x1 ≥ 0
Sử dụng ký hiệu trong của ràng buộc (1.1), ta chú ý (1.2) là tương
đương với
max f ( x1 , x2 ) = x1 x2

(1.3)

gồm các điều kiện

 x2 + x2 − 1 ≤ 0

2
1
 − x1 ≤ 0
Ràng buộc đầu tiên là phi tuyến, nên lệnh Mapple không thể
được sử dụng để tìm miền thực hiện được. Thật vậy, ta kết hợp như
sau:
> restart : with (plots):
> g1:=(x1,x2) -> x1^2+ x2^2-1;
# Nhập hàm ràng buộc đầu tiên
g1:= (x1,x2) ->
g1 := ( x1 , x2 ) → x12 + x22 − 1
> g2:=(x1,x2)->-x1;
# Nhập hàm ràng buộc thứ hai
Footer Page 14 of 132.

13


Header Page 15 of 132.

g2 : = ( x 1 , x 2 ) → − x 1

> F:=(g1(x1,x2)<=0 và g2(x1,x2)<=0,1);
# Xác định một hàm hai biến
nếu đầu vào là thực hiện được với bài toán NPL
F := ( x1 , x2 ) → từng khoảng ( g1 ( x1 , x2 ) ≤ 0; g2 ( x1 , x2 ) ≤ 0, 1)
> > FeasibleRegion:= implicitplot(F(x1,x2)=1,x1=0..1,
x2=-1..1,
Color=grey, grid=[200,200]):
# Thiết lập miền lấy được sử dụng lệnh

The horizontal anhd vertical viewing windows are divided
Into 200 grid points.
Kết quả của lệnh biểu thị trong hình 1.1

Hình 1.1: Miền xác định lấy được của quy hoạch phi tuyến (1.2)

Như trường hợp trong bài toán tuyến tính, chu tuyến là hữu ích
để đánh giá nghiệm của quy hoạch phi tuyến. Trong Maple, nó có
thể tổng quát và rồi lấy chồng lên miền lấy được theo sự kết hợp của
Footer Page 15 of 132.

14


Header Page 16 of 132.

đường viền và lệnh hiển thị như đã thực hiện. Tiếc rằng Maple không
được sắc nét. Thực tế, cùng với phi tuyến của các mục tiêu và ràng
buộc, có thể thực hiện đánh giá nghiệm của quy hoạch phi tuyến sử
dụng sơ đồ đường viền của nó nhưng rất khó thực hiện. Một cách đạt
được tốt hơn việc thay đổi hàm mục tiêu trong miền lấy được là thêm
vào đó một lệnh ngầm với tùy chọn “filled=true,coloring=[white, black]”.
Cú pháp thực hiện của Maple được thực hiện như sau:
f : = ( x1 , x2 ) → x1 x2
> display (FeasibleRegion);
> f:=(x1,x2)->x1*x2
F:=(x1,x2)-> x1x2
< objectiveContours:=contourplot(f(x1,x2) x1=0..1, x2=-1..1,
Filled=true, coloring=[white, black]) :
# thiết lập biên.

> display({FeasibleRegion,ObjectiveContours});
> Superimpose contours on previously constructed feasible region.
Kết quả trong trường hợp này được đưa ra trong đồ thị hình 1.2.
Nó cho thấy nghiệm của (1.2) xảy ra tại điểm trên đường tròn đơn vị
1 1
π
tương ứng đến , mà ( x1 , x2 ) = √ , √ .
4
2 2
Lệnh giải bài toán quy hoạch phi tuyến địa phương bằng Map-

ple trong gói tối tưu hóa, các hàm gần như chính xác giống việc giải
bài toán quy hoạch tuyến tính. Để giải bài toán phi tuyến (1.3), ta nhập
như sau:
> restart:with(Optimization):
> f:=(x1,x2)->x1*x2;

Footer Page 16 of 132.

15


Header Page 17 of 132.

Hình 1.2: Miền lấy được và biên trong quy hoạch phi tuyến (1.2).

f : = ( x1 , x2 ) → x1 x2
g1:= (x1,x2)->x1^2 + x2^2-1;
g1 := ( x1 , x2 ) → x12 + x22 − 1
g2:=(x1,x2)->-x1

g2 : = ( x 1 , x 2 ) → − x 1
> NLPSolve(f(x1,x2),[g1(x1,x2)<=0,g2(x1,x2)<=0],’maxximize’);
.500000000001128,[x1=.70710678118734,x1=.707106781188734]
Do vậy bài toán quy hoạch phi tuyến (1.3) có một nghiệm ( x1 , x2 ) ≈

(.7071, .7071) với giá trị mục tiêu tương ứng trong mục 1.6 mà ta sẽ
phát triển kỹ thuật đại số để chứng minh nghiệm này bằng ( x1 , x2 ) =
1 1
√ ,√
2 2

Footer Page 17 of 132.

16


Header Page 18 of 132.

1.4.

Tính khả vi và điều kiện cần cấp một

Ta bắt đầu nghiên cứu bài toán quy hoạch phi tuyến không ràng
buộc. Nếu S ⊂ Rn và hàm mục tiêu f : S → R thì dạng tổng quát của
bài toán được cho bởi
min(max ) f ( x ) , với x ∈ S

(1.4)

Sau này ta sẽ chỉ ra bài toán quy hoạch phi tuyến ràng buộc được

giải bằng cách sử dụng phương pháp liên quan đến việc biến đổi khéo
léo để tạo ra bài toán không ràng buộc có dạng (1.4). Với bài toán quy
hoạch phi tuyến không ràng buộc, ta xét một đường thẳng tương tự
như đa đưa ra ở dạng tính toán một biến. Trong mục này ta lấy được
điều kiện cần để một điểm lấy được là một nghiệm tối ưu. Các bước
này là các phần dễ dàng. Nhiệm vụ khó khăn hơn đó là giải quyết các
bài toán trong mục 1.5 và 1.6 để đánh giá điều kiện đủ.
1.4.1. Tính khả vi
Xuất phát từ điều kiện cần thiết trong đó nêu rõ định nghĩa của
khả vi. Trong các bài toán tiếp theo, ta lấy x biểu thị chuẩn Euclid
trong R.
Định lý 1.3. Giả sử S ⊆ Rn và f : S → R. Ta nói hàm f là khả vi tại x0
trong S nếu và chỉ nếu ở đó tồn tại một véc tơ phụ thuộc trên f và x0 , được
gọi là gradient của f tại x0 viết là ∇ f ( x0 ) và một hàm vô hướng R ( x0 ; x )
phụ thuộc trên x0 và được định nghĩa với mọi x trong S sao cho
t

f ( x ) = f ( x0 ) + ∇ f ( x0 ) ( x − x0 ) + x − x0 R ( x0 ; x )
với mọi x ⊂ S và lim R ( x0 ; x ) = 0.
x → x0

Footer Page 18 of 132.

17

(1.5)


Header Page 19 of 132.


Sau đây là một số tính chất quan trọng cần ghi nhớ từ định nghĩa

này
1. Khi ∇ f ( x0 ) là một véc tơ cột, chuyển vị của nó là một véc tơ
t

dòng trong Rn . Do đó, ∇ f ( x0 ) ( x − x0 ) là một vô hướng, như là ba số
hạng trong (1.5).
2. Phương trình (1.5) với sự có mặt của giới hạn, giả sử f được
định nghĩa tại đầu vào đủ gần tới x0 . Kết quả là ở đó tồn tại một lân
cận nhỏ, hoặc đĩa mở về x0 chứa trong S. Một tập S ⊆ Rn trong đó
mỗi điểm có một đĩa mở của nó chứa trong S, được gọi là mở.
3. Nếu bỏ số hạng cuối của (1.5) ta nhận được hàm
t

T ( x ) = f ( x ) + ∇ f ( x0 ) ( x − x0 )

(1.6)

tuyến tính hoặc xấp xỉ tuyến tính của f tại x0 , tương tự như công thức
các đường tiếp tuyến từ việc tính toán. Do đó, x − x0 R ( x0 ; x ) là một
số hạng sai số trong xấp xỉ này, và điều kiện lim R ( x0 ; x ) = 0 chỉ ra
x → x0

nhanh chóng số hạng sai số này hội tụ tới 0 khi x → x0 .
Một thực tế mà ta bỏ qua chứng minh đó là các thành phần của
gradient bao gồm đạo hàm từng phần cấp một của f . Đó là


∂f

∂x1
∂f
∂x1




∇ f (x) =  .
 ..


∂f
∂xn





ở đây x = 



Footer Page 19 of 132.

x1









(1.7)




x2 

. Kết quả này dễ dàng chứng minh bằng cách sử
.. 

. 
xn
18


Header Page 20 of 132.

∂f
, với 1 ≤ i ≤ n là liên tục
∂xi
trên S thì ta nói ∇ f ( x ) là khả vi liên tục trên S.

dụng (1.5). Nếu mỗi đạo hàm từng phần

Trong Maple, lệnh Gradient nằm trong gói tính toán véc tơ cung
cấp một phương tiện tính toán gradient. Dạng tổng quát của nó được
đưa ra theo Gradient (biểu diễn danh sách biến). Ở đây, danh sách

biến chỉ ra biến số đối với biểu thức của gradient được tính toán. Lệnh
ra là một biểu thức được đưa ra trong số hạng của các véc tơ đơn vị
tương ứng với mỗi biến. Mỗi véc tơ đơn vị có dạng ex với x là biến.
Một ví dụ đơn giản về lệnh này như sau:
> with(VectorCalculus):
> Gradient(x1^2+x1*x2^3,[x1, x2]);
2x1 + x23 e x1 + 3x1 x22 e x2
Nếu f là một hàm số, lệnh này có thể sử dụng để định nghĩa
gradient hàm tương ứng. Ví dụ, nếu f ( x1 , x2 ) = x12 + x22 , gradient
hàm này được lập nên bằng cách sử dụng cú pháp sau. Ở đây ta viết
tên hàm này là Del f
> with(VectorCalculus):
> f:= (x1,x2)->x1^2 + x2^2-1;
f := ( x1 , x2 ) → x12 + x22
> Delf:=unapply(Gradient(f(x1,x2),[x1,x2]),[x1,x2]):
> Delf(x1,x2);$
2x1 ex1 + 2x2 ex2
Sử dụng định nghĩa 1.8 để đánh giá một hàm là khả vi tại một
Footer Page 20 of 132.

19


Header Page 21 of 132.

đầu vào có thể hơi đơn giản bởi thực tế ta phải biểu diễn lim R ( x0 ; x ) =
x → x0

0.
1.4.2. Điều kiện cần đối với cực đại địa phương hoặc cực tiểu địa

phương
Trong thiết lập tuyến tính, ta thấy với bất kỳ bài toán quy hoạch
tuyến tính, một trong bốn vấn đề được quan tâm: quy hoạch tuyến
tính có một nghiệm duy nhất, có vô số nghiệm, không giải được hoặc
không bị chặn. Đối với dạng tổng quát bài toán quy hoạch tuyến tính
không ràng buộc (1.4), các trường hợp khác là giải được, ví dụ, có
đúng 2 nghiệm. Vì lý do này, ta phải tính toán cẩn thận khi xác định
khái niệm của cực đại và cực tiểu giá trị mục tiêu phi tuyến.
Định nghĩa 1.9. Giả sử S ⊆ Rn và f : S → R. ta nói x0 là một cực tiểu
đại phương của f nếu cho một số ε > 0 đủ nhỏ sao cho
f ( x0 ) ≤ f ( x ) với mọi x ⊂ S thỏa mãn x − x0 < ε.
Nếu trong thực tế f ( x0 ) ≤ f ( x ) với mọi x ⊂ S, ta nói x = x0 là
cực tiểu của f trên S.
Một cách tự nhiên, nếu bất đẳng thức được đảo ngược lại, cực
tiểu được thế bởi cực đại. Số hạng cũng được bổ sung để mô tả trường
hợp này khi bất đẳng thức này đúng.
Ví dụ 1.2: Nếu x = x0 là nghiệm cực tiểu thực sự, có nghĩa là f ( x0 ) <
f ( x ) với mọi x ⊂ S với x = x0 . Nghiệm địa phương tối ưu đề cập đến
một trong hai cực tiểu địa phương hoặc cực đại địa phương khi các số
hạng được đề cập đến một cách rõ ràng. Nghiệm tối ưu toàn cục được
định nghĩa tương tự.
Một hàm có thể có nhiều cực tiểu hoặc cực đại địa phương, và
nhiều đầu vào có thể chia sẻ để phân biệt được các cực đại (hoặc cực
Footer Page 21 of 132.

20


Header Page 22 of 132.


tiểu) toàn cục.
Khi n = 1, gradient không khác đạo hàm của hàm một biến.
Nhắc lại trong việc thiết lập một biến, bước đầu tiên về phía cực đại
hoặc cực tiểu của một hàm khả vi là liên quan tới việc xác định hàm
gốc của đạo hàm, mà ta biểu thị như các điểm tới hạn. Cùng với quy
tắc này, định lý 1.3 áp dụng dạng tổng quát của bài toán quy hoạch
phi tuyến không ràng buộc.
Định lý 1.4. Giả sử S ⊆ Rn là một tập mở và f : S → R là khả vi tại x0 .

Nếu f có một cực đại (cực tiểu) đại phương tại x0 thì ∇ f ( x0 ) = 0.
Chứng minh. Việc chứng minh này ít hơn việc áp dụng kết quả một
biến tới mỗi thành phần của x0 . Không mất tính tổng quát, giả sử f có
một cực tiểu địa
tại x0 . Chọn một cách tùy ý j, ở đây 1 ≤ j ≤ n
 phương

x0,1




và viết x0 = 



x0,2
..
.





. Định nghĩa f j là “hàng ngang” thu được bằng



x0,n
việc đặt vào tất cả các thành phần thứ j của f . Nói cách khác


x
 0,1 
 ..

.



x

 0,j−1 
f j (x) = f 

 x0,j+1 


 ..

.




x0,n
Để ý:
f j x0,j = [∇ f ( x0 )] j ,
với thành phần thứ j của ∇ f ( x0 ).
Footer Page 22 of 132.

21

(1.8)


Header Page 23 of 132.

Khi f có một cực tiểu địa phương tại x0 , hàm f j có một cực tiểu

địa phương tại x = x0 và do đó f j x0,j = 0 theo kết quả hàm một
biến. Bởi vì j là lấy tùy ý, [∇ f ( x0 )] j = 0 với mọi 1 ≤ j ≤ n, nghĩa là

∇ f ( x0 ) = 0.
Trong thảo luận tiếp theo, nếu S ⊆ Rn là một tập mở và f : S →
R, ta sẽ nói x0 trong Rn là điểm tới hạn của f nếu ∇ f ( x0 ) chưa xác
định. Nếu f là khả vi trên S và x0 là điểm tới hạn của f thì ∇ f ( x0 ) = 0.
Trong thiết lập một biến, một điểm tới hạn không phải là cực
tiểu địa phương hoặc cực đại địa phương. Giống như vậy có thể nói
bài toán quy hoạch phi tuyến không ràng buộc như trong định lý 1.14
chỉ đơn thuần đưa ra một điều kiện cần cấp một, ở trong các số hạng
của gradient. Nếu ∇ f ( x0 ) = 0, thì x0 có thể không là một cực tiểu địa
phương cũng không phải là một cực đại địa phương. Trong phần tiếp

theo ta thiết lập điều kiện đủ mà tương tự đạo hàm cấp 1 hoặc cấp 2
từ việc thiết lập bài toán một biến và nó đủ để đảm bảo x0 là một cực
tiểu hoặc cực đại địa phương.

1.5.

Điều kiện lồi và điều kiện đủ cấp một
Trong hàm một biến, phần lõm của hàm gần một điểm tới hạn

là thông tin hữu ích đối với việc phân loại điểm tới hạn như một cực
tiểu hoặc một cực đại địa phương.
Xét một ví dụ đơn giản sau
3

f (x) = |x| 2

Đồ thị hàm số này biểu thị trong hình 1.3

Footer Page 23 of 132.

22


Header Page 24 of 132.

3

Hình 1.3: Đồ thị hàm số f ( x ) = | x | 2

Hàm này là khả vi tại gốc tọa độ, ở đó f (0) = 0. Tuy nhiên

f (0) không tồn tại nên đạo hàm cấp 2 không thể sử dụng x = 0 như
một cực tiểu. Rõ ràng, phần lõm của đồ thị chỉ ra điểm tới hạn là một
cực tiểu.
1.5.1. Điều kiện lồi
Ví dụ minh họa, trong hàm một biến, điều kiện lồi vẫn đóng vai
trò trong việc phân loại một điểm tới hạn, dù hàm này không khả vi
cấp 2. Như ta xét, quy tắc này cũng được áp dụng trong dạng tổng
quát của bài toán quy hoạch phi tuyến không ràng buộc. Tuy nhiên,
thay vì sử dụng các cụm từ như “mặt lõm trên” và “mặt lõm dưới” để
mô tả dáng điệu của một hàm số, ta sẽ thay thế sử dụng các số hạng
lồi và lõm. Trước đó định nghĩa các số hạng này trong định nghĩa của
hàm số, đầu tiên ta định nghĩa lồi đối với tập hợp.
Định nghĩa 1.10. Giả sử S ⊆ Rn . ta nói S là lồi nếu và chỉ nếu với bất
kỳ x1 và x2 trong S và với bất kỳ t ∈ [0, 1] vô hướng, tổ hợp tuyến tính
tx1 + (1 − t) x2 cũng nằm trong S.
Như một tổ hợp tuyến tính, tx1 + (1 − t) x2 trong đó trọng lượng
là không âm và tổng tiến ra vô cùng là được biết đến như một tổ hợp
lồi của x1 và x2 . Do đó, S là lồi nếu hai điểm tới hạn đưa ra là x1 và

Footer Page 24 of 132.

23


Header Page 25 of 132.

x2 nằm trong S, bất kỳ tổ hợp lồi nào của hai điểm này cũng đều nằm

trong S. Nếu S có ràng buộc trong R2 hoặc R3 , điều này có nghĩa là
nếu x1 và x2 nằm trong S thì có một đoạn thẳng nối giữa chúng với

nhau.
Ta sử dụng tập lồi để định nghĩa hàm lồi.
Định nghĩa 1.11. Giả sử S ⊆ Rn là lồi và f : S → R. Ta nói hàm f là
lồi trên tập S nếu và chỉ nếu mọi x1 và x2 trong S và mọi t ∈ [0, 1],
f (tx1 + (1 − t) x2 ) ≤ t f ( x1 ) + (1 − t) f ( x2 )

(1.9)

Nói cách khác: “Hàm số được đánh giá tại một tổ hợp lồi của
đầu vào là bị chặn theo tổ hợp lồi tương đương của hàm số ở đầu ra”.
Nếu trong bất đẳng thức, chiều của bất đẳng thức đảo ngược lại ta nói
f là lõm.
Để ý yêu cầu S là lồi là cần để đảm bảo tx1 + (1 − t) x2 nằm trong
S, do đó làm cho f (tx1 + (1 − t) x2 ) được định nghĩa. Rõ ràng f là lõm
nếu và chỉ nếu − f là lồi. Khi bất đẳng thức ràng buộc luôn đúng với
mọi x1 = x2 trong f và mọi t trong khoảng mở (0, 1), ta sử dụng các
số hạng lồi ràng buộc hoặc lõm ràng buộc trên S. Nếu cố định x1 trong
S, bất đẳng thức luôn đúng với mọi x2 trong S và mọi t ∈ [0, 1], ta nói
f là lồi tại x1 . Chú ý f là lồi trên S, thì nó là lồi tại mỗi x1 trong S.
Trong bài toán một biến, ta gọi lại việc sử dụng các số hạng “mặt
lõm trên” và “mặt lõm dưới”. Trong định nghĩa 1.11 tương ứng là “lồi”
và “lõm”.
Tính lồi có một cách hiểu hình học rất đơn giản trong số hạng
của đồ thị của f . Một hàm là lồi trên S nếu và chỉ nếu đưa ra bất kỳ hai
đầu vào riêng biệt là x1 và x2 trong S, đầu ra của f tại bất kỳ tổ hợp lồi
của x1 và x2 , biểu thị x = tx1 + (1 − t) x2 , ở đây 0 ≤ t ≤ 1, phải ở trên
Footer Page 25 of 132.

24



×