NGUYỄN CHÍ TRUNG

NGUYỄN TÂN ÂN
NGUYỄN THỊ THU THỦY

PHƯƠNG PHÁP TÍNH
VÀ BÀI TOÁN TỐI ƯU

HÀ NỘI - 2010

NCT-FIT-HNUE

Computional methods and Optimization Problems

MỤC LỤC
MỞ ĐẦU......................................................................................................................................... 5
Chương 1 TÍNH GẦN ĐÚNG VÀ SAI SỐ................................................................................... 8
1. Số gần đúng và sai số của nó .................................................................................................. 8
1.1. Số gần đúng và sai số ....................................................................................................... 8
1.2. Chữ số có nghĩa và chữ số đáng tin.................................................................................. 9
1.3. Cách viết số gần đúng .................................................................................................... 10
1.4. Sai số làm tròn................................................................................................................ 10
2. Sự lan truyền sai số ............................................................................................................... 11
2.1. Mở đầu ........................................................................................................................... 11
2.2. Sai số của tổng................................................................................................................ 11
2.3. Sai số của tích................................................................................................................. 12
2.4. Sai số của thương ........................................................................................................... 13
2.5. Sai số của hàm bất kỳ..................................................................................................... 14
3. Các loại sai số ....................................................................................................................... 14
3.1. Các loại sai số mắc phải khi giải một bài toán thực tế ................................................... 14
3.2. Các loại đánh giá sai số phương pháp........................................................................... 15
BÀI TẬP ................................................................................................................................... 15
Chương 2. TÍNH GIÁ TRỊ VÀ XẤP XỈ HÀM SỐ ...................................................................... 16
1. Tính giá trị hàm số ................................................................................................................ 16
1.1. Thuật toán Hoocner tính giá trị đa thức ......................................................................... 16
1.2. Tính hàm nhờ chuỗi lũy thừa ......................................................................................... 17
2. Bài toán nội suy hàm số ........................................................................................................ 18
2.1. Đa thức nội suy Lagrange trên mốc không đều ............................................................. 18
2.2. Đa thức nội suy Lagrange với mốc cách đều ................................................................. 22
2.3. Đa thức nội suy Newton trên mốc không cách đều........................................................ 23
2.4. Đa thức nội suy Newton trên mốc cách đều................................................................... 27
2.5. Nội suy tổng quát (nội suy Hermit)................................................................................ 29
3. Xấp xỉ bình phương cực tiểu................................................................................................. 30
3.1. Phương pháp chung........................................................................................................ 30
3.2. Một số dạng hàm cụ thể. ................................................................................................ 30
BÀI TẬP ................................................................................................................................... 33
CHƯƠNG 3 GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH PHI TUYẾN............................................ 34
1. Nghiệm và khoảng phân ly nghiệm ...................................................................................... 34
2. Phương pháp chia đôi ........................................................................................................... 35
2.1. Mô tả phương pháp ........................................................................................................ 35
2.2. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp chia đôi............................................ 36
3. Phương pháp lặp đơn ............................................................................................................ 37
3.1. Mô tả phương pháp ........................................................................................................ 37
3.2. Cách chọn ϕ(x) thỏa điều kiện hội tụ của phương pháp lặp đơn ................................... 39
2

NCT-FIT-HNUE

Computional methods and Optimization Problems

3.3. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp lặp đơn............................................. 40
4. Phương pháp tiếp tuyến (Newton) ........................................................................................ 40
4.1. Mô tả phương pháp ........................................................................................................ 40
4.2. Sự hội tụ của phương pháp............................................................................................. 41
4.3. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp Newton ............................................ 42
5. Phương pháp cát tuyến.......................................................................................................... 43
5.1. Mô tả phương pháp ........................................................................................................ 43
5.2. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp Cát tuyến ......................................... 43
6. Phương pháp dây cung.......................................................................................................... 44
6.1. Mô tả phương pháp ........................................................................................................ 44
6.2. Sự hội tụ của phương pháp............................................................................................. 44
BÀI TẬP ................................................................................................................................... 44
Chương 4 PHƯƠNG PHÁP SỐ TRONG ĐẠI SỐ TUYẾN TÍNH............................................. 46
1. Đại số ma trận ....................................................................................................................... 46
1.1. Vectơ cột và vectơ hàng ................................................................................................. 46
1.2. Ma trận ........................................................................................................................... 47
2. Hệ phương trình đại số tuyến tính ........................................................................................ 50
2.1. Giới thiệu........................................................................................................................ 50
2.2. Giới thiệu phương pháp Cramer..................................................................................... 51
2.3. Phương pháp khử Gauss................................................................................................. 52
2.4. Phương pháp Gauss-Seidel ............................................................................................ 55
2.5. Phương pháp giảm dư .................................................................................................... 59
2.6. Vấn đề ổn định của nghiệm của hệ phương trình........................................................... 62
3. Tính gần đúng giá trị riêng và véc tơ riêng của ma trận ....................................................... 63
3.1. Giới thiệu........................................................................................................................ 63
3.2. Ma trận đồng dạng.......................................................................................................... 64
3.3. Tìm giá trị riêng bằng phương pháp Đa-nhi-lép-ski ...................................................... 64
3.4. Tìm vectơ riêng bằng phương pháp Đan-nhi-lep-ski ..................................................... 67
BÀI TẬP ................................................................................................................................... 69
Chương 5 TÍNH GẦN ĐÚNG ĐẠO HÀM VÀ TÍCH PHÂN .................................................... 71
1. Tính gần đúng đạo hàm......................................................................................................... 71
1.1. Đạo hàm cấp 1................................................................................................................ 71
1.2. Đạo hàm cấp hai............................................................................................................. 71
2. Tính gần đúng tích phân ....................................................................................................... 72
2.1. Giới thiệu bài toán.......................................................................................................... 72
2.2. Công thức hình chữ nhật trung tâm................................................................................ 72
2.3. Công thức hình thang ..................................................................................................... 74
2.4. Công thức Simpson (hay công thức Parabol)................................................................. 76
2.5. Các thuật toán “hcn, ht, sim” tính gần đúng tích phân xác định .................................... 78
Chương 6 BÀI TOÁN QUI HOẠCH TUYẾN TÍNH ................................................................. 79
1. Giới thiệu bài toán tối ưu tổng quát ...................................................................................... 79
1.1. Ví dụ mở đầu.................................................................................................................. 79
1.2. Mô hình bài toán tối ưu tổng quát .................................................................................. 79
3

.......... 96 BÀI TẬP ....................... Phương pháp phạt hay phương pháp bài toán M.... 100 4 ... Đường lối chung của thuật toán . 81 2......................................... 83 3............................4.............................................................................................2..............................3.......... 80 2..................................................... 84 3...................... Nhận xét .................. 95 4..................................2......................................................................................... Đặc điểm của tập các phương án của bài toán QHTT ................... 85 3................................................ Các định lý cơ bản của thuật toán đơn hình .................. 84 3......................................................................... 94 4............ 89 4.. Thuật toán đơn hình ...............................1............ Thuật toán đơn hình giải bài toán QHTT........ Đặc điểm của tập các phương án của bài toán QHTT.................. 81 2......3........................................... Định nghĩa ràng buộc chuẩn...........1...................................2.................................................................................. Tập lồi và đa diện lồi................................... Tìm phương án cực biên ban đầu.............................NCT-FIT-HNUE Computional methods and Optimization Problems 1.............................................................. 94 4...............................................................1.......................................................... Dạng chuẩn tắc và dạng chính tắc................

Giả sử cần tính tích phân 1 I n = ∫ x n e x−1dx (n ≥ 1) .0916 0. Numerical mathematics) (theo Bách khoa toàn thư về khoa học và kỹ thuật.2642 0. 0 Ngoài ra ta có 1 I1 = ∫ xe x−1dx = e x−1 ( x − 1) 1 0 0 = 1 ≈ 0. để tính I n ta thu được công thức truy hồi tính được In về mặt lý thuyết: I n = 1 − nI n −1 .1455 0. tính chất nghiệm của các bài toán. Giới thiệu môn học Phương pháp tính Có các tên gọi sau: Phương pháp tính (Computional methods). Ví dụ 1 (tính ổn định). Một thuật toán là khả thi nếu nó thực hiện được trên máy tính.0839 5 . 2. các bài toán xấp xỉ hàm số và các bài toán tối ưu hóa. duy nhất. Một thuật toán gọi là ổn định nếu sai số tính toán (do máy tính làm tròn số) không bị khuếch đại trong quá trình tính. Graw Hill 1992). Giải tích số (Numerical analysis).1268 0. thuật toán để để tìm nghiệm bài toán trên máy tính.1709 0. Về mặt thực tế tính trên máy tính không cho kết quả mong muốn khi n lớn. Là một khoa học nghiên cứu cách giải gần đúng. đặt dv=ex-1dx thì v = ex-1 ta được 1 I n = x n e x −1 10 − n ∫ x n−1e x −1dx = 1 − nI n−1 .3679. I 1 = 0. Toán tính quan tâm đến xây dựng phương pháp.1009 0.3679 0. 0 Tích phân từng phần: đặt u=xn thì du = nxn-1dx. Phân biệt toán tính và toán lí thuyết Toán lí thuyết quan tâm đến các vấn đề định tính của bài toán: tồn tại. rộng hơn nữa là Toán học tính toán (Computional mathematics.1124 0.2073 0. Thuật toán được xây dựng phải thỏa mãn yêu cầu về tính khả thi và tính ổn định.NCT-FIT-HNUE Computional methods and Optimization Problems MỞ ĐẦU 1. Cụ thể là tính trên máy tính với n=25 ta được bảng kết quả sau (liệt kê theo từng hàng) 0. e Như vậy. NXB Mc. Một cách ngắn gọn là giải các bài toán bằng số trên máy tính.3679. n ≥ 2. mà chủ yếu giải bằng số (gọi là giải số) các phương trình. phương pháp số (Numerical methods).

3679 (khi n=1) đến 0. Nếu tốc độ của máy tính là 100 triệu phép tính/giây thì thời gian để thực hiện khối lượng tính toán trên là 2. trong đó δ là sai số.3133 192785008.0782 *10 5 năm.0403 -13969.NCT-FIT-HNUE Computional methods and Optimization Problems 0. Giả sử các tính toán e tiếp theo không mắc phải sai số. (1) trong đó A là ma trận vuông cấp n với định thức khác 0.5596 -30.0627 0. 6 .0669 0. Giả sử n = 20.0555 0. Do đó. Với n = 2 ta được Nguyên nhân: thay vì I1 = ~ ~ I 2 = 1 − 2 I 1 = 1 − 2( I 1 + δ ) = (1 − 2 I 1 ) − 2δ = I 2 − 2δ .8325 Kết quả giảm dần từ 0. Cho hệ phương trình đại số tuyến tính Ax = b . Mỗi định thức là tổng của n! số hạng. Nhưng việc tính toán ra nghiệm bằng số cụ thể lại là một việc không đơn giản.0572 -0. sai số vẫn đủ lớn và ta không thể nhận được giá trị chấp nhận được là gần đúng cho I n .6965 *10 9 giờ = 3.1924 635. thuật toán nêu trên là hoàn toàn không khả thi dù máy tính có tăng tốc độ lên gấp hàng nghìn. Một thời gian lớn vô cùng! Và như vậy. còn ∆ i nhận được từ ∆ do việc thay cột thứ i bởi cột tự do b.. Theo công thức (2) cần phải tính n +1 định thức cấp n.0718 0. hàng vạn lần. Khi đó Q ≈ 9. tất cả số phép tính nhân cần thực hiện trong (2) là Q = n!(n+1)(n-1). Điều này hoàn toàn không phù hợp với lý thuyết vì theo lý thuyết thì I n → 0 khi n → ∞ do đó 1 0 ≤ I n ≤ ∫ x n dx = 0 1 . n).8864 321308.0590 0. n +1 Hiện tượng kết quả tính toán I n nêu trên là sự không ổn định của thuật toán: sai số ban đầu khi tính I 1 = 1 ≈ 0. mỗi số hạng là tích của n thừa số. Ví dụ 2 (tính khả thi). Tương tự. Do vậy.7073 *10 20 . e 1 ~ ta thu được I 1 = I 1 + δ . ở bước thứ n thay cho giá trị đúng I n ta thu ~ ~ được giá trị gần đúng I n với sai số | I n − I n |= n!δ .0295 1. Về lý thuyết có thể giải hệ trên bằng công thức Cramer xi = ∆i .. để tính mỗi số hạng cần thực hiện n – 1 phép nhân. ~ ~ Thu được I 2 với sai số | I 2 − I 2 |= 2δ . ∆ (i =1.0555 (khi n=16) Kết quả sau đó kết quả thay đổi thất thường và giá trị tuyệt đối tăng rất nhanh.3881 -7711400. (2) trong đó ∆ = det A ... dù δ có bé thì khi n đủ lớn. Như vậy.3679 đã bị khuyếch đại trong quá trình tính.0774 0.

sai số tuyệt đối và sai số tương đối. chữ số có nghĩa và chữ số đáng tin. hậu nghiệm đối với sai số. Chương 1 gồm các nội dung sau: Các khái niệm cơ bản: số xấp xỉ (hay số gần đúng). cách viết số gần đúng. thương. sai số quy tròn và quy tắc làm tròn để số còn lại gồm các số đáng tin. tích. cần phải nghiên cứu đề xuất các phương pháp hiệu quả để có thể giải được các hệ thống phương trình cỡ lớn. Các loại sai số: giới thiệu các nguyên nhân dẫn đến sai số: sai số khi xây dựng mô hình hóa các đối tượng. Sự lan truyền sai số đầu vào dẫn đến sai số đầu ra x Æ f(x). hàng triệu hoặc hơn thế nữa. 7 . từ đó tính được sai số của tổng. hiệu. sai số do tính toán.NCT-FIT-HNUE Computional methods and Optimization Problems Ở trên ta mới chỉ xét việc giải một hệ cỡ 20. sai số về phương pháp thực hiện. Và. cách đánh giá tiên nghiệm. mà thực tế khoa học và công nghệ đòi hỏi phải giải các hệ phương trình đại số tuyến tính cỡ hàng vạn. Đó là một trong các nhiệm vụ của ngành Phương pháp tính. Vì thế.

còn nếu a > A thì a được gọi là xấp xỉ thừa của A . Nếu coi a = 3. 002 . còn a2 = 1..NCT-FIT-HNUE Computional methods and Optimization Problems Chương 1 TÍNH GẦN ĐÚNG VÀ SAI SỐ 1. 41 là xấp xỉ thiếu.1) Từ bất đẳng thức trên suy ra a − ∆a ≤ A ≤ a + ∆a . Định nghĩa 1-1.1.1) với giả thiết là A ≠ 0 . mà chỉ có thể đánh giá nó. còn 3. gọi là sai số tương đối giới hạn của a 8 .14 là xấp xỉ của π thì sai số tuyệt đối là ∆ a ≤ 0.1. Định nghĩa 2-1. Thông thường số đúng A không biết nên ta cũng không biết chính xác sai số tuyệt đối của số gần đúng a . ký hiệu bởi δ .1 Số a được gọi là số gần đúng hay số xấp xỉ của số đúng A (tức giá trị đúng của đại lượng cần quan tâm) và ký hiệu là a ≈ A .1 Số ∆ =| A − a | được gọi là sai số tuyệt đối của số gần đúng a . Chẳng hạn. do số A và ∆ không biết nên trong thực hành ta sẽ chấp nhận sai số tương đối của số gần đúng a là số δ a dưới đây. Sai số tuyệt đối không phản ánh đầy đủ mức độ chính xác của phép đo hoặc tính toán. Để thể hiện điều đó ta đưa vào khái niệm sau. Vì thế ta có thể xem đánh giá tốt nhất của ∆ là sai số tuyệt đối giới hạn của a .15 là xấp xỉ thừa.. Ví dụ 1-1. 4142135623. 42 là xấp xỉ thừa vì 2 = 1.6cm ± 0. là δ= A−a ∆ = A A (3-1. đối với số π = 3. đó là số ∆ a bé nhất có thể biết được.1cm l2 = 7. (2-1.1 cm) nhưng rõ ràng là phép đo thứ nhất chính xác hơn. Số gần đúng và sai số của nó 1...14 là xấp xỉ thiếu. Thí dụ: Đối với số A = 2 thì a1 = 1. nếu a sai khác A không đáng kể. Số gần đúng và sai số Định nghĩa 1. thì 3. đo chiều dài của hai thanh sắt bằng cùng một thước đo ta nhận được các kết quả sau: l1 = 115. thỏa mãn điều kiện A −α ≤ ∆a (1-1. Sai số tương đối của số gần đúng a . Tuy nhiên.5cm ± 0.1cm Tuy sai số tuyệt đối của hai phép đo trên là như nhau (= 0.1) Để đơn giản người ta thường viết A = a ± ∆ a để ám chỉ rằng ∆ a là sai số tuyệt đối giới hạn của a.1415926535.1. . Nếu a < A thì a được gọi là xấp xỉ thiếu.

. Vì thế δa = ∆a × 100% . và nếu αs là đáng ngờ thì mọi chữ số bên phải nó đều là đáng ngờ..57.304500 .10 s ). Chẳng hạn số 20.. |a| Trở lại phép đo chiều dài của các thanh sắt ta thấy rằng sai số tương đối của l1 là δ1 = 0. và gọi là chữ số nghi ngờ nếu sai số tuyệt đối của số a 2 1 không vượt quá một nửa đơn của hàng thứ s (tức là ∆ a > . Ví dụ 1-1. Những chữ số có nghĩa của một số là những chữ số của số đó kể từ chữ số khác không đầu tiên tính từ trái sang phải..33% .2) s trong đó α s là những số nguyên từ 0 đến 9..1 0. trong đó ∆ a là sai số tuyệt đối 2 của số a.1 × 100% = 0. Trong các số sau.10 m−1 + .. 6 7. Từ định nghĩa trên suy ra rằng nếu αs là chữ số đáng tin thì mọi chữ số có nghĩa bên trái nó đều là đáng tin.2.10 s (1-1.1) Người ta thường tính sai số tương đối bằng phần trăm. 0. Định nghĩa 2-1. Chữ số có nghĩa và chữ số đáng tin Một số viết ở dạng thập phân có thể gồm nhiều chữ số. chữ số hàng thứ s của số a được gọi là chữ số đáng tin (hay chữ số đúng) nếu sai số tuyệt đối của số a không vượt quá một nửa đơn vị 1 của hàng thứ s (tức là ∆ a ≤ .α − n tức là a = ± (α m .03047 .10 − n + . + α −n . gọi là chữ số hàng thứ s của số a.5 so với δ 2 và phép đo thứ nhất chính xác hơn nhiều so với phép đo thứ hai. những chữ số được gạch dưới là những chữ số có nghĩa: 12.10 m + α m−1 .10 0 + α −1 . Giả sử a là số gần đúng của A và a có biểu diễn ± α mα m − ` .) = ± ∑ α s .. 0. số 3.10 −1 + .15 có 4 chữ số. của l2 là δ 2 = × 100% = 1.1412 có 5 chữ số.2.α 1α 0 .2.10 s ). 9 . 09% . 1..NCT-FIT-HNUE δa = Computional methods and Optimization Problems ∆a a (4-1. Rõ ràng là δ1 nhỏ hơn rất nhiều 115.2. Việc đánh giá các chữ số đáng tin và đáng ngờ của một số gấn đúng a không phụ thuộc vào bản thân các chữ số đó mà phụ thuộc vào sai số tuyệt đối của a và vị trí của chúng.. Định nghĩa 1-1.10 + α 0 . Gọi ∆ a là sai số tuyệt đối của số a . 20.. + α1 . α −1α − 2 .15 .

NCT-FIT-HNUE Computional methods and Optimization Problems Ví dụ 2-1. còn nếu chữ số bỏ đi đầu tiên < 5 thì để nguyên chữ số giữ lại cuối cùng. có nghĩa là sai số tuyệt đối ∆a không lớn hơn một nửa đơn vị ở hàng cuối cùng. Số 12. còn các chữ số 8 và 4 là đáng ngờ. 150 cm ± 0. 3. 5.142. Cách viết số gần đúng Có hai cách viết số gần đúng.a’| ≤ ∆ a + θ a ' Như vậy việc quy tròn thường làm tăng sai số tuyệt đối. Giả sử ta làm tròn a thành a' với sai số làm tròn là θ a ' . Ví dụ 1-1. × 10-3 và × 10-2. 1.0047 có 3 chữ số đáng tin là 3.1415. 65 kg ± 0. Kho đó sai số tuyệt đối của số a’ là ∆ a ' =| A-a’| = | A-a +a-a’| ≤ | A -a| + | a . • Nếu chỉ bỏ đi một chữ số 5 thì chữ số được giữ lại cuối cùng nếu là chữ số lẻ thì tăng thêm 1. Dưới đây là quy tắc làm tròn số nhằm bảo đảm cho sai số làm tròn không vượt quá nửa đơn vị của chữ số cuối cùng được giữ lại: • Nếu bỏ đi nhiều chữ số khác 0 và chữ số bỏ đi đầu tiên ≥ 5 thì thêm vào chữ số giữ lại cuối cùng một đơn vị. còn nếu là chẵn thì giữ nguyên. 3 hoặc 2 chữ số sau dấu chấm thập phân.4.14 nếu cần giữ lại 6. Ví dụ 1-1.14152. × 10-4.1 cm.05 = 1 × 10-1.14151926535.2 với sai số là 0. 4. thực nghiệm. Đối với số a =3. Số gần đúng a = 3. 3. 3. thì để cho thuận tiện người ta thu gọn số này bằng cách bỏ bớt một số chữ số cuối để được một số a ' ngắn gọn hơn và gần đúng nhất với a . Theo cách này ta viết a = 23. 2 Bây giờ giả sử a là xấp xỉ của A với sai số tuyệt đối là ∆ a .005 . Điều này dẫn đến kết cục là sau khi làm tròn một số chữ số đáng tin trở nên đáng ngờ.3. × 10-5. 1 Ví dụ 2-1. 2 2 2 2 2 Ví dụ 2-1.7284 với ∆ a = 0. 7 và 2. Số θ a ' =| a − a ' | được gọi là sai số làm tròn.3.14151926535 ta làm tròn thành 3.4. 2 1. 3. 10 . Sai số làm tròn tương ứng 1 1 1 1 1 không vượt quá × 10-6. chẳng hạn a =3. Cách 1: Viết kèm theo sai số a ± ∆ a Cách này thường dùng để viết các kết quả đo đạc.a| ≤ θ a ' .2. trong đó ∆ a là sai số của thiết bị đo. tức là | a' .141519.1 kg Cách 2: Viết theo quy ước: mọi chữ số có nghĩa đều đáng tin. Việc làm này được gọi là quy tròn hoặc làm tròn số. Sai số làm tròn Khi thực hiện các tính toán nếu số a có quá nhiều chữ số trong biểu diễn thập phân.3.4.25 ta làm tròn thành 12.54 nếu ∆ a ≤ × 10−2 = 0.

Sự lan truyền sai số 2.053 > 1 × 10-1. Thí dụ thể tích của hình cầu được tính bằng V = (1/6)πd3.1) được sử dụng trong việc chứng minh các công thức tính sai số của tổng.X là số gia của x.NCT-FIT-HNUE Computional methods and Optimization Problems Ví dụ 3-1.35 với ∆ a =0. Trong trường hợp này không nên quy tròn số a .Y).1) Chú ý: Công thức (1-2. tích thương biểu diễn hàm hai biến.003 + 0. hiệu. Vấn đề đặt ra là biết sai số của π và d.05 = 0. Vì thế chữ số 4 trong a’ là 2 đáng ngờ. Sai số của tổng Cho u = x ± y. Theo công thức vi phân của hàm nhiều biến ta có: du = ∂u ∂u dy dx + ∂x ∂y Từ đây ta có ∆u ≈ ∂u ∂u ∆y ∆x + ∂x ∂y ∆ u =| ∂u ∂u | ∆x + | | ∆y ∂x ∂y Suy ra (1-2.4 ta có ∆ a ' = ∆ a + θ a ' = 0.y) Giả sử x là xấp xỉ của giá trị đúng X. Công thức (1-2. Một cách tổng quát. trong đó ta chỉ biết xấp xỉ của số π và đường kính d. y là xấp xỉ của giá trị đúng Y và ta coi u là xấp xỉ của giá trị đúng u = f(X. vấn đề đặt ra là sai số của các dữ liệu đầu vào lan truyền và dẫn đến sai số của kết quả tính toán như thế nào? Để giải quyết vấn đề này xét hàm số u của 2 biến số x và y: u = f(x. Theo định nghĩa về sai số tuyệt đối. Cho a = 0. Ký hiệu ∆x = x . ta có | ∆x | ≤ ∆ x . liệu ta có thể tính được sai số của V không. 2. 2. Ta có 11 . Trong thực tế tính toán các đại lượng gần đúng thường xuất hiện trong một biểu thức phức tạp.1) là công thức quan trọng để tính sai số của hàm hai biến u = f(x. Do đó các chữ số 3 và 5 là đáng tin. hãy tính sai số của u. Biết sai số về x và y. còn dx là vi phân của biến x.1.2. Sau khi làm tròn thành a’ = 0.y) bất kỳ dựa vào đạo hàm riêng của từng biến. Mở đầu Trên đây ta đã định nghĩa các loại sai số của một số gần đúng.4.003.

NCT-FIT-HNUE

Computional methods and Optimization Problems

∂u
∂u
= ±1 .
= 1,
∂y
∂x

Do đó, từ (1.6) suy ra
∆u = ∆ x + ∆ y

(1-2.2)

Như vậy, sai số tuyệt đối của một tổng đại số bằng tổng các sai số tuyệt đối của các số hạng.
Ví dụ 1-2.2. Giả sử x = 3.6 và y = 6.4 là hai số đã được làm tròn. Tính tổng của chúng và xác
định sai số của tổng thu được.

Giải. Vì x và y đã được làm tròn đến một chữ số sau dấu chấm thập phân nên sai số tuyệt đối của
chúng là ∆ x = ∆ y = 0.05. Do đó u = x + y =3.6 + 6.4 =10.0 với sai số tuyệt đối là ∆ u = ∆ x +
∆ y = 0.05 + 0.05 = 0.1, tức là u = 10 ± 0.1.
Chú ý: Xét trường hợp u = x - y và x, y cùng dấu. Lúc đó ta có

δu =

∆ u (∆x + ∆y )
=
u
x− y

Ta thấy rằng nếu | x -y | rất bé thì sai số tương đối rất lớn.
Ví dụ 2-2.2. Giả sử x = 15.29 và y = 15.14 là hai số đã được làm tròn. Xác định sai số tương đối
của x, y và của hiệu hai số trên.

Giải. Ta có hiệu u = x - y = 15.29 -15.14 = 0.15. Do x và y đã được làm tròn đến 2 chữ số sau
dấu chấm thập phân nên sai số tuyệt đối của chúng là ∆ x = ∆ y = 0.005. Vì thế sai số tuyệt đối
của hiệu là ∆ u = ∆ x + ∆ y = 0.01. Do đó sai số tương đối của hiệu là δu = ∆ u/ |u| = 0.01/ 0.15 =

0.005
0.066 trong khi sai số tương đối của x và y tương ứng là δ x = x =
= 0.000327 ,
x 15.29

δy =

∆y
y

=

0.005
= 0.000330 . Rõ ràng là sai số tương đối của hiệu lớn gấp 200 lần sai số tương
15.14

đối của từng số x và y.
Trong tính toán người ta cố gắng tránh việc trừ hai số gần nhau bằng cách biến đổi biểu thức của
hiệu (trong những trường hợp có thể được).
Thí dụ: Để tính hiệu u =
u=

210 − 200 ta có thể biến đổi

( 201 − 200 )( 201 + 200)
( 201 + 200 )

=

1
( 201 + 200 )

2.3. Sai số của tích
Giả sử u = xy. Ta có
∂u
= x.
∂y
Từ (1-1.2) suy ra

12

NCT-FIT-HNUE

Computional methods and Optimization Problems

∆u = y ∆ x + x ∆ y

Do đó

δu =

∆ u ∆x ∆y
=
+
= δx +δy
u
x
y

Vậy

δu = δ x + δ y

(1-2.3)

Ta có quy tắc sau:
Sai số tương đối của một tích bằng tổng các sai số tương đối của các thừa số của tích.
Ví dụ 1-2.3. Giả sử X và Y là hai cạnh của một hình chữ nhật mà độ dài của chúng (tính bằng
cm) được làm tròn đến một chữ số sau dấu chấm thập phân là 15.6 và 8.2. Hỏi giá trị thực sự của
diện tích của hình chữ nhật nằm trong khoảng nào?

Giải: Ký hiệu x = 15.6, y = 8.2. Như vậy x là giá trị gần đúng của X và y là giá trị gần đúng của
Y với sai số tuyệt đối là 0.05. Do đó sai số tương đối của chúng là

0.05
0.05
= 0.0032, δ y =
= 0.0061 . Theo (3-1.2) sai số tương đối của tích là
15.6
8.2
δ u = 0.0032 + 0.0061 = 0.0093 . Vì u = x * y =15.6 * 8.2 =127.92 nên sai số tuyệt đối của u là

δx =

∆ u =| u |δ u = 127.92 * 0.0093 = 1.19 . Do đó, X * Y = 127.92 ± 1.19 , tức là giá trị thực sự của
diện tích của hình chữ nhật nằm trong khoảng từ 126.73 đến 129.11.

2.4. Sai số của thương
Cho u = x / y . Ta có:
∂u 1 ∂u
x
= − 2
= ,
∂x y ∂y
y

Từ (1.6) suy ra
∆u =

Do đó

1
x
∆x + 2 ∆y
y
y

⎞y 1
∆u
1
y ⎛1
x
= ∆ u = ⎜⎜ ∆ x + 2 ∆ y ⎟⎟ = ∆ x + ∆ y .
|u|
x ⎝ y
x
y
y
⎠x

Suy ra:

δx/ y = δx + δ y

(1-2.4)

Ta có quy tắc sau:
Sai số tương đối của một thương bằng tổng các sai số tương đối của số chia và số bị chia.

13

NCT-FIT-HNUE

Computional methods and Optimization Problems

2.5. Sai số của hàm bất kỳ
Cho hàm u = f ( x1 , x 2 ,..., x n ) . Theo công thức vi phân của hàm nhiều biến ta có:
du =

∂u
∂u
∂u
dxn
dx1 +
dx2 + ... +
∂x1
∂x 2
∂x n

Từ đây ta có
∆u ≈

∂u
∂u
∂u
∆xn
∆x1 +
∆x2 + ... +
∂x1
∂x 2
∂x n

Suy ra
∆u =

∂u
∂u
∂u
∆x
∆ x2 + ... +
∆ x1 +
∂x n n
∂x 2
∂x1

(1-2.5)

Ví dụ 1-2.5. Tính sai số tuyệt đối và sai số tương đối của thể tích hình cầu:

V = (1/6)πd3
nếu cho đường kính d = 3.7 ± 0.05 cm và π = 3.14 ± 0.0016.
Giải. Xem π và d là đối số của hàm V, áp dụng (1-2.4) và (1-2.5) ta có
δV = δπ + 3δd

(Hệ số 1/6 không ảnh hương đến sai số tương đối)

δπ = 0.0016/3.14 = 0.0005
δd = 0.05/3.7 = 0.0135
Suy ra δV = 0.0005 + 3 * 0.0135 = 0.04
Giá trị gần đúng của thể tích là V = (1/6)πd3 = 26.5 cm3 . Do đó, ta tính được sai số tương đối
của nó là ∆ V = |V|*δV = 26.5*0.04 = 1.06 ≈ 1.1 cm3. Vì thế
V = 26.5 ± 1.1 cm3.

3. Các loại sai số
3.1. Các loại sai số mắc phải khi giải một bài toán thực tế
Như đã biết, để nghiên cứu một đối tượng thực tế, chẳng hạn một đối tượng vật lý như dòng chảy
trong sông, hiện tượng dẫn nhiệt trong một thanh vật chất, hay một đối tượng kinh tế-xã hội,...
người ta thường xây dựng mô hình toán học của đối tượng và nghiên cứu đối tượng thông qua
mô hình. Do tính chất phức tạp của đối tượng nên người ta không thể đưa hết tất cả các yếu tố
liên quan vào mô hình, mà buộc phải loại bỏ những yếu tố không quan trọng và ảnh hưởng ít đến
đối tượng. Kết quả là người ta chỉ nhận được mô hình toán học phản ánh gần đúng đối tượng cần
nghiên cứu. Sai số mắc phải trong quá trình này gọi là sai số mô hình.
Khi đã có mô hình toán học, thường là các phương trình vi phân, tích phân hoặc phương trình đại
số,... người ta phải giải nó. Nói chung người ta không nhận được lời giải đúng của một bài toán
mà chỉ có thể nhận được lời giải gần đúng bằng một phương pháp nào đấy, thí dụ phương pháp
lặp giải phương trình phi tuyến, phương pháp hình thang tính tích phân,... . Sai số mắc phải khi
14

5.. Hãy xác định các giới hạn của R biết sai số tương đối giới hạn của R là 1%.847g ± 0. Hãy quy tròn các số dưới đây (xem là đúng) với ba chữ số có nghĩa đáng tin và xác định sai số tuyệt đối ∆ và sai số tương đối δ của chúng: a) 2. x0 là xấp xỉ ban đầu. để giải một phương trình phi tuyến bằng một phương pháp lặp đơn (xem Chương 3) ta có thể đánh giá được sai số của nghiệm gần đúng nhận được sau n lần lặp theo công thức xn − x * ≤ qn x1 − x0 . Đánh giá sai số tiên nghiệm là đánh giá sai số nhận được trước khi thực hiện tính toán.2.. Sau khi đã có phương pháp hoặc thuật toán giải một bài toán cần phải thực hiện nó trên máy tính để có được lời giải số. Một loại sai số nữa có thể mắc phải khi giải một bài toán thực tế là sai số dữ liệu khi các dữ liệu đầu vào của bài toán nhận được bằng các phép đo đạc hoặc quan sát thực nghiệm hoặc là lời giải gần đúng của một bài toán khác. 1− q trong đó 0< q< 1. Lấy a=2. Khi xác định hằng số khí của không khí. Trong quá trình tính toán bằng số này không thể tránh khỏi việc làm tròn số.718281828459045. nhận được R =29. Hãy xác định sai số tương đối.1514 b) 0. Đánh giá sai số hậu nghiệm là đánh giá sai số nhận được sau khi tính toán được nghiệm. 2. 3. 3. Đây là loại sai số mà chúng ta cần quan tâm khi nghiên cứu các phương pháp gần đúng (giải tích hoặc số trị) vì sai số này phản ánh chất lượng của phương pháp và thông qua nó có thể đánh giá được khối lượng tính toán cần thiết để có được lời giải với một độ chính xác cho trước.00152281 15 .001g Hãy xác định sai số tương đối của phép đo trên. Đo trọng lượng của 1 dm3 nước ở 00 C nhận được: p = 999.718 thay cho số e. Thí dụ.25.0. 4. sau khi tính được xn theo phương pháp lặp đơn (xem Chương 3) ta có đánh giá hậu nghiệm xn − x * ≤ q x n − x n −1 1− q BÀI TẬP 1. Sai số xảy ra trong công đoạn này được gọi là sai số tính toán. Cho số e = 2. Các loại đánh giá sai số phương pháp Sai số của một phương pháp số có thể được đánh giá tiên nghiệm hoặc hậu nghiệm. x* là nghiệm đúng. Thí dụ. 12 và 11 và xác định sai số quy tròn tuyệt đối. Hãy quy tròn số e đến chữ số có nghĩa thứ 13.01204 d) .NCT-FIT-HNUE Computional methods and Optimization Problems phải giải một bài toán bằng phương pháp gần đúng được gọi là sai số phương pháp.16152 c) 0.

1) Ta có ngay p(x0) = bn. bk .… . TÍNH GIÁ TRỊ VÀ XẤP XỈ HÀM SỐ 1.bk-1x0 = ak.1) dưới bảng sau 16 .bn-1xn-1x0 + bn-2x2 – bn-2 xx0 + bn-1x – bn-1 x0x0 + bn = b0xn + (b1xn-1 – b0xn-1x0) + (b2xn-1 – b1xn-1x0) + … + (bn-2x2 – bn-1xn-1x0) + (bn-1x .1) như sau : ⎧b0 ⎪ ⎨ck ⎪b ⎩ k = a0 = bk −1 x0 ∀k = 1. Khai triển (1-1. hay bk = ak + ck với ck = bk-1x0 Thuật toán Hoocner tính giá trị các hệ số của đa thức trong (1-2. n = ak + ck (2-1. + an−1 x + an = b0 x n + ∑ (bk − bk −1 x0 ) x n−k k =1 Đồng nhất hai vế ta có b0 = a0. ∀ k = 1. ta biểu diễn (2-1. Hơn nữa các số hạng của đa thức thường lớn nên bất lợi trong tính toán.bn-2 xx0 ) + (bn – bn-1x0) n = b0 x n + ∑ (bk − bk −1 x0 ) x n−k k =1 Vậy ta có đồng nhất thức : n a0 x n + ..1. Tính giá trị hàm số 1. Thuật toán Hoocner tính giá trị đa thức a) Giới thiệu thuật toán Cho đa thức p(x) bậc n có dạng tổng quát: p(x) = a0xn + a1xn-1 + a2xn-2 + … + an-1x + an (a0 ≠ 0) Để tính giá trị p(x0) cần 2n-1 phép nhân và n phép cộng.1) cho thấy chỉ cần tính n phép nhân và n phép cộng và các số hạng tham gia tính toán bé hơn phương pháp tính trực tiếp.1) ta được: p(x) = b0xn – b0xn-1x0 + b1xn-1 – b1xn-1x0 + b2xn-1 .x0) + bn (1-1.NCT-FIT-HNUE Computional methods and Optimization Problems Chương 2.1) Hệ (2-1. b) Sơ đồ tính bằng tay Để tính bằng tay.. n hay bk = ak + bk-1x0. Nếu ta phân tích đa thức thành p(x) = (b0xn-1 + b1xn-2 + … + bn-2x + bn-1) ( x .

2) và ước lượng sai số là : f ( n+1) (c) Rn ( x) = x − x0 (n + 1)! n +1 hoặc trực tiếp ước lượng từ phần dư của chuỗi.2 với n = 1 và x0 = π/6 ta có: f ( 0 ) ( x0 ) f (1) ( x0 ) 0 và f ( x) = ( x − x0 ) + ( x − x 0 )1 = f ( x 0 ) + ( x − x 0 ) f ' ( x 0 ) 0! 1! Thay vào ta có sin 360 = sin (π/ 6 + π/30) = sin (π/6) + (π/30) cos (π/6) + R1 17 . trong đó c là điểm nào đó giữa x và x0 Ví dụ 1-1. Tính hàm nhờ chuỗi lũy thừa Nếu hàm số y = f(x) dễ tính đạo hàm mọi cấp tại x = x0 và biểu diễn hàm dưới dạng chuỗi Taylor dưới đây hội tụ : ∞ f ( x) = ∑ k =0 f ( k ) ( x0 ) ( x − x0 ) k k! (1-1. Tính sin 360 Đặt x = 360 = π/ 6 + π/30. Đặt x0 = π/6.NCT-FIT-HNUE Computional methods and Optimization Problems a0 b0 a1 … an c1 … cn b1 … bn x0 p(x0)=bn Ví dụ 1-1.2.2) thì ta có thể tính gấn đúng n f ( x) ≈ ∑ k =0 f ( k ) ( x0 ) ( x − x0 ) k k! (2-1.2.4x2 + 7x + 8 tại x = 2 như sau 2 2 -3 1 -4 7 8 4 2 6 4 22 1 3 2 11 30 2 p(2)=30 Chú ý: Khi phương trình p(x) = 0 có nghiệm x = x0 thì lược đồ Hoocner cho phép tìm ước của p(x) dưới dạng q(x) = b0xn-1 + b1xn-2 + … + bn-2x + bn-1 1.3x4 + x3 .1 Tính f(x) = 2x5 . suy ra x – x0 = π/30 Áp dụng công thức 2-1.

x1 . + R1 trong đó R1 = ⎜ ⎟ ≤ 10 2 ⎝ 30 ⎠ 2 30 2 2. n) của hàm f (x) . Bài toán này thường gặp trong các trường hợp sau : i) Cần phục hồi hàm số f (x) đối với mọi điểm x thuộc khoảng [a. x n ∈ [a.. Một số dạng hàm g (x) thường được dùng để nội suy hàm số là: .một công cụ nội suy kinh điển và một phần về nội suy bởi hàm ghép trơn .1.. nội suy hàm số còn được sử dụng để xây dựng các công thức tính đạo hàm. Nếu không nói rõ hơn ta sẽ ngầm định hiểu đa thức là đa thức đại số. iii) Ngoài ra.NCT-FIT-HNUE Computional methods and Optimization Problems 2 = sin c ⎛ π ⎞ 1 π 3 −2 + .1.1.<x n ≤ b và tại các điểm này cho các giá trị y i = f ( xi ). Các dạng nội suy khác sẽ chỉ được giới thiệu qua. Đa thức nội suy Lagrange trên mốc không đều 2. b] nếu chỉ biết giá trị của nó tại một số điểm x0 . Những giá trị này thường là các giá trị quan sát. b] ( i = 0. Cần xây dựng hàm g (x) dễ tính toán và trùng với hàm f (x) tại các điểm nút trên tức là g ( xi ) = y i .Đa thức lượng giác . (i = 0. n) . 2. Bài toán nội suy hàm một biến số được phát biểu như sau: Trên đoạn [a.Hàm hữu tỉ. ii) Khi hàm f (x) cho bởi công thức quá phức tạp chẳng hạn x2 3 (x + t) 2 f ( x) = ∫ t dt cos( x ) e + sin( xt ) và cần tính f (x) ∀x ∈ [a. (i = 0. b] cho tập các điểm nút a ≤ xo < x 1 <. Trong chương này chúng ta chỉ tập trung vào nội suy bởi đa thức đại số . Khi đó người ta tính gần đúng f (x) tại một số điểm rồi xây dựng một hàm gần đúng với f(x) để tính các giá trị khác. b] .công cụ nội suy hiện đại... Các điểm nút xi ( i = 0. n ) gọi là các mốc nội suy.. b] . tức là hàm đa thức từng mẩu. n) cho bởi công thức sau: 18 . tức là phân thức đại số .. hoặc đo đạc được.Đa thức đại số . Bài toán nội suy hàm số Một trong các bài toán cơ bản của giải tích số là nội suy hàm số. Thiết lập đa thức nội suy Lagrange Đa thức nội suy Lagrange của hàm y = f(x) tại các điểm mốc xi ∈ [a. tính tích phân số hoặc tìm gần đúng nghiệm của phương trình. Hàm g(x) được gọi là hàm nội suy.Hàm ghép trơn (spline).

. ta có hai mút nội suy x 0 và x 1 . x1 = 1 1 và x 2 = . mẫu số khuyết nhân tử (xi . (i = 0.xj) = 0 (lưu ý rằng tử số chỉ khuyết số hạng xj-xi).( xi − xi −1 )( xi − xi +1 ). 1.1) j =0 (Tử số khuyết nhân tử (x .1) vào (1-2.1) ta thu được (42.xi). n) (3-2.1) Xét hai trường hợp đơn giản của đa thức nội suy Lagrange.1) ta được 19 ..1) b) Nội suy Lagrange bậc hai Khi n = 2 ta có ba nút nội suy x0 . x1 vµ x 2 và L2 ( x) = f ( x0 ) ( x − x0 )( x − x2 ) ( x − x0 )( x − x1 ) ( x − x1 )( x − x2 ) + f ( x2 ) + f ( x1 ) (6-2. 6 2 Giải. và L1 ( x) = f ( x0 ) x − x0 x − x1 + f ( x1 ) x0 − x1 x1 − x0 (5-2. a) Nội suy Lagrange bậc nhất Nội suy bậc nhất còn gọi là nội suy tuyến tính. Khi n = 1.. dễ thấy rằng ⎧1. thay x ở tử số bởi xi thì tử số giống mẫu số..NCT-FIT-HNUE Computional methods and Optimization Problems (1-2. i =0..( x − xi −1 )( x − xi +1 ).xi)) Ta thấy Ln(x) thỏa mãn điều kiện nội suy Ln ( xi ) = f ( xi ).1) Thật vậy.1) n Ln ( x) = ∑ f ( xi )l i ( x) i =1 Trong đó đa thức li(x) cho bởi công thức li ( x) = n x − xj ( x − x 0 ). i = j li ( x j ) =δ ij= ⎨ ⎩0. Khi i ≠ j thì trên tử số có số hạng dạng (xj .( xi − x n ) j ≠i xi − x j (2-2.. 2. Thay (4-2.. Ta có bảng giá trị của hàm x 0 1/6 1/2 y 0 1/2 1 Áp dụng công thức (6-2.1) Vì khi i = j.1) ( x0 − x1 )( x0 − x2 ) ( x1 − x0 )( x1 − x2 ) ( x2 − x0 )( x2 − x1 ) trong đó y i = f ( xi )..1.( x − x n ) =∏ ( xi − x 0 ). i ≠ j (4-2. Ví dụ 1-2. Xây dựng đa thức nội suy cho hàm y = sin πx tại các nút x0 = 0.

6 = 7 x − 3x 2 . Đối với sai số của đa thức nội suy Lagrange cho hàm f(x) tại các mút x.(−1 − 1) 1. x0 . (n + 1)! (8-2.NCT-FIT-HNUE Computional methods and Optimization Problems 1 1 1 1 ( x − )( x − ) ( x − 0)( x − ) ( x − 0)( x − ) 1 6 2 + .(−1) (1 + 1)(1 − 0) 3 x( x + 1) 1 x( x − 1) = − ( x + 1)( x − 1) + = (2 x 2 + 4 x + 3) 6 2 3 Để tính 3 = 31 / 2 ta xấp xỉ 3 1 2 1 11 ≈ L2 ( ) = . x1 = 0. tức độ lệch f (x) .1 Giả sử hàm số f (x) ∈ C ( n+1) [a. + 3. Định lí sau đây cho ta đánh giá đó. (n + 1)! (7-2.K. 1] dựa vào giá trị của hàm tại các điểm x0 = −1. b] chứa tất cả các nút nội suy xi (i = 0.1) ta có đa thức nội suy 1 x( x − 1) ( x + 1)( x − 1) ( x + 1)( x − 0) L2 ( x ) = . b] . tức là có đạo hàm liên tục đến cấp n+1 trên [a. 1 1 1 1 1 1 1 2 1 2 (0 − )(0 − ) ( − 0)( − ) ( − 0)( − ) 6 2 6 6 2 2 2 6 Ví dụ 2-2. Ta có bảng các giá trị của hàm y = 3 x tại các điểm đã cho: x -1 0 1 y 1/3 1 3 Theo công thức (6-2.Ln (x) . 2 6 c) Đánh giá sai số Vấn đề quan trọng đặt ra khi xấp xỉ hàm f (x) tại điểm x bất kì bởi đa thức nội suy là phải đánh giá được sai số. Khi đó sai số nội suy Rn ( x) = f ( x) − Ln ( x) có dạng Rn ( x ) = f ( n +1) (ξ ) ω n +1 ( x). Cho giá trị của hàm y=sin x tại 3 điểm bởi bảng sau: 20 . b] và ω n +1 ( x) = ∏ ( x − xi ) i =0 Hệ quả. Sử dụng đa thức này tính gần đúng 3. n) . và ω n +1 ( x) = ∏ ( x − xi ) i =0 a ≤ x ≤b Ví dụ 3-2. b] có đánh giá f ( x ) − Ln ( x ) ≤ M n +1 ω n +1 ( x) .1.2. Tìm đa thức nội suy hàm y = 3 x trên đoạn [-1.1) n trong đó ξ là một diểm phụ thuộc x và thuộc [a . x n ∈ [a.1. Giải. + 1. x 2 = 1. Định lý 4. L 2 ( x ) = 0.1) n trong đó M n +1 = max f ( n +1) ( x). 2 + 1. 3 − 1.

x1 = 0.1. . Nếu điều kiện trên không thoả mãn. 3 3 3! 3 Dễ tính được M 3 = max y ' ' ' ( x) = max cos x = 1. b]. Để đánh giá sai số f ( x) − L2 ( x) ta không thể áp dụng công thức (8-2. ω3 ( ) = 3 Do đó sin Như vậy.707 2 1 nhờ đa thức nội suy và đánh giá sai số. − = .707. tức là khi hàm f (x) không có đủ độ trơn cần thiết thì ta không thể nói gì về sai số nội suy cả. π π π π π π ( − ) ( − ) 4 4 2 2 2 4 Ta có sin π 2 ) π ≈ L2 ( ) ≈ 0. Ví dụ 4-2.1) sin π M π π − L2 ( ) ≤ 3 ω 3 ( ) .1) vì hàm f (x) không có đạo hàm tại x = 0. Khi đó đa thức nội suy hàm f (x) tại các điểm x0 = −1.851 ± 0. 1] như sau max f ( x) − L2 ( x) = max x − x 2 = max x − x 2 = x ≤1 x ≤1 x ≤1 21 1 4 . Công thức đánh giá sai số (4. Trong trường hợp này cần phải xem xét bài toán cụ thể. Đa thức nội suy hàm y=sin x xây dựng theo các điểm đã cho là x( x − π x( x − π ) 4 L2 ( x) = 0. Nhưng ta có thể đánh giá được sai số nội suy trên đoạn [-1.8) được thiết lập với giả thiết f ( x) ∈ C ( n+1) [a.851. 0≤ x ≤ π 0≤ x ≤ 2 π 2 π π π π π π π3 − . Cho hàm f (x) bởi công thức f (x) = x .NCT-FIT-HNUE Computional methods and Optimization Problems x 0 y 0 Tính gần đúng sin π 3 π π 4 0.024 Chú ý. Giải. 3 3 Theo công thức (8-2.024 6 216 3 3 sin π 3 =0. + 1. 3 3 4 3 2 216 π π 1 π3 − L2 ( ) ≤ × = 0. x 2 = 1 là đa thức L2 ( x ) = x 2 .

(t − n) i (i − 1).. Đa thức nội suy Lagrange với mốc cách đều Giả sử hàm f(x) nhận các giá trị yi tại các điểm tương ứng xi ( i = o.. xi..1. xi − xi −1 = h x − xi +1 = h(t − (i + 1)) xi − xi +1 = − h . for i = 0 Æ n 2.(n − i ) (1-2. xi − x n = − h ( n − i ) Do đó đa thức li (x) trong công thức (2-2. Đặt t = x − x0 . return y 2. x − xi −1 = h(t − (i − 1)) ..i x − x1 = h(t − 1) xi − x1 = h(i − 1) .1... n) . x − xn = h(t − n) ..(t − n) (t − i )i!(n − i )!(−1) n−1 (2-2. .xj) 2.2) hay 22 . Tính giá trị của đa thức nội suy Lagrange Ln (x) tại điểm x cho trước theo công thức n n i =0 j ≠i j =0 y = Ln ( x ) = ∑ y i ∏ x − xj xi − x j input: x.(−1) n−i . for j = 0 Æ n if (j ≠ i) P = P * (x . Thuật toán nội suy Lagrange Bài toán: Cho bảng các giá trị ( xi ... P = 1.2.xj) / (xi .2.. y i ) . (i = 0. khi đó : h x − x0 = h..2) li ( x0 + ht ) = t (t − 1)..(t − (i − 1))(t − (i + 1)).1) có dạng li ( x0 + ht ) = t (t − 1). Khởi tạo y = 0 2..1.. n) output: y là giá trị của hàm tại x Algorithm: 1..3.t xi − x0 = h.2.NCT-FIT-HNUE Computional methods and Optimization Problems 2.1... y = y + yi*P 3. n ) cách đều một khoảng h. /* P chính là đa thức li */ 2. ..2. yi (i = 0.

Tỷ sai phân bậc 1 của hàm f (x) tại xi và x j là f ( xi . Đa thức nội suy Newton trên mốc không cách đều Đa thức nội suy Lagrange (1-2....2) Ví dụ 1-2. x1 .2) ta có t (t − 1)(t − 2) ⎛ 5C 20 − 2C 21 1.(t − n) n (−1) n−1 f ( xi )C ni ∑ n! (t − i ) i =0 (4-2. Nhưng nếu như ta bổ sung thêm nút nội suy thì quá trình tính lại phải thực hiện lại từ đầu.2) hay Ln ( x0 + ht ) = t (t − 1).3. Khái niệm tỷ sai phân Giả sử f (x) là một hàm số xác định và liên tục trong đoạn [a..Tỷ sai phân bậc 2 của hàm f (x) tại xi . Để xây dựng công thức này.2. Tiếp theo giả sử a= x0 < x1 < . Đây là nhược điểm rất lớn của đa thức nội suy Lagrange. Tìm hàm nội suy cho hàm f(x) thỏa mãn : xi 0 2 4 f(xi) 5 -2 1 Giải: Áp dụng công thức (4-2. x k là f ( xi .C 22 ⎞ ⎟⎟ ⎜⎜ L2 (2t ) = − + 2! ⎝ t − 0 t −1 t − 2 ⎠ 4 1 ⎞ t (t − 1)(t − 2) ⎛ 5 + ⎜ + ⎟ 2 ⎝ t t −1 t − 2 ⎠ 1 = (10t 2 − 24t + 10) = 5t 2 − 12t + 5 2 = 2. < x n =b là tập các điểm nút. như ta đã thấy rất đơn giản và dễ tính nếu các nút nội suy đã được cố định.Tỷ sai phân bậc 0 của hàm f (x) tại xi là f ( xi ) . Để khắc phục nhược điểm này người ta tính đa thức nội suy theo một cách khác hiệu quả hơn...1). x j ) − f ( x j .Một cách tổng quát. x k ) = f ( xi .1. x j ) = f ( xi ) − f ( x j ) . Ta định nghĩa: . .1) trong trường hợp mốc cách đều một khoảng h có dạng : (−1) n−1 f ( xi ) Ln ( x0 + ht ) = t (t − 1).. x j . tỷ sai phân bậc k của f tại x0 . x k +1 là 23 xi − x j . Đó là công thức nội suy Newton.NCT-FIT-HNUE Computional methods and Optimization Problems Vậy công thức nội suy Lagrange (1-2.. ta cần đến khái niệm tỷ sai phân đối với các mốc không đều và khái niệm sai phân đối với mốc cách đều.. x k ) xi − x k . b] . 2.(t − n)∑ i = 0 (t − i )i!( n − i )! n (3-2..2. x j . tại đó cho trước giá trị của hàm.3.

. x0 . x 2 ).... x0 . x1 .Pn ( x. x n ) = Pn ( x0... x1 .. tỷ sai phân bậc n của Pn(x) là đa thức bậc 0... xk ) = f ( x0 . x1 .. x1 ... x 2 ). + ( x − x0 )( x − x1 ).. x1 ) là một đa thức bậc n-2. x0 ...2. x2 ) − ( x − x2 ).. x1 .. x0 ......3) ... x1 ) vì P ( x........ chẳng hạn f ( xi . xi ) ..( x − x n −1 ) f ( x 0 . x1 ..1) có thể viết thành Pn ( x) = f ( x0 ) + ( x − x0 ) f ( x0 . x0 ) − P( x0 . xn ) − ( x − xn−1 ).. x 0 . x1 . nếu Pn (x) là đa thức nội suy (1-2. xn−1 ) − ( x − xn−1 )... x n ) Bây giờ... f ( xi ..P( x. và tỷ sai phân bậc n + 1 của Pn(x) là đa thức Pn ( x... x0 ) = p ( x ) − p ( x0 ) x − x0 Pn ( x.. n) thì công thức (4. x j ... x1 ... x0 .. x1 ) = Pn ( x0 . x1 .... + ( x − x0 )( x − x1 ). f ( x0 .... ii) Nếu Pn (x) là đa thức bậc n thì tỷ sai phân bậc nhất Pn ( x.. x n ) + ( x − x n ). x1 . xn ) Từ các hệ thức trên và để ý rằng Pn ( x. . xn−1 ) = Pn ( x0.( x − x n −1 ) Pn ( x0 . x1 .3. x0 ) là một đa thức bậc n-1. (i = 0.. x n ) = 0 ta được Pn ( x) = Pn ( x 0 ) + ( x − x0 ) Pn ( x 0 .. x n tức là Pn ( xi ) = f ( xi ).. x n −1 ) = Pn ( x0 .. x0 ).. vì Px ( x.. 2. x1 ) + ( x − x 0 )( x − x1 ) f ( x 0 .. x1 ) = P ( x...3) của hàm f (x) tại các nút x0 . Kết luận này dễ chứng minh dựa vào định lý Bezout. x 0 ... x 0 ....3... Pn ( x.. x n ) = 0. xk −1 ) − f ( x1 . x j . . xk ) x0 − x k Dễ thấy rằng tỷ sai phân có các tính chất sau: i) Thứ tự các nút trong tỷ sai phân có thể đảo ngược. x2 ....NCT-FIT-HNUE Computional methods and Optimization Problems f ( x0 ...... x0 .. x2 ) .Pn ( x.0 = Pn ( x0.. Đa thức nội suy Newton trên mốc không cách đều Từ định nghĩa các tỷ sai phân suy ra Pn ( x) = Pn ( x 0 ) + ( x − x0 ). x0 ).Pn ( x. x k ) = f ( x k . x k −1 . x j ) = f ( x j . x0 . x1 . x0 ) = Pn ( x 0 ... x1 ) + ( x − x0 )( x − x1 ) Pn ( x0 . x n ) hay 24 (2-2. x1 ... xi ) . x1 ) + ( x − x1 ). x 0 ... x k ) = f ( x k .. xn−1 ) Pn ( x.....Pn ( x. tỷ sai phân bậc hai Pn ( x. x1 ... x1 . x1 ) x − x1 Pn ( x..

p bậc 4 x0 f(x0) f(xo.x4) x4 f(x4) 25 . x1 .4. x n ) + ( x − x 0 ).p bậc 3 T.NCT-FIT-HNUE Computional methods and Optimization Problems (3-2.. Nhận xét 2.3.x3...x4) x1 f(x1) f(x1. Sơ đồ tính tỷ sai phân và đa thức newton mốc không đều Để tính các tỷ sai phân (t... có thể thu được f ( x) = f ( x0 ) + ( x − x 0 ) f ( x 0 . x1 . + ( x − x0 ).... x n ) . x1 ..s..x1) f(x0.x1... x1 . Việc tính toán đa thức nội suy theo các công thức trên khắc phục được nhược điểm của cách tính theo công thức Lagrange (1-2. tương tự như trong tiểu mục trước.. x1 ) + ( x − x 0 )( x − x1 ) f ( x 0 . x n ) .p) trong công thức của đa thức nội suy Newton (4.3) trong đó n ω n +1 ( x) = ∏ ( x − xi ) (5-2... Đánh giá sai số của nội suy Newton mốc không đều Từ định nghĩa của các tỷ sai phân viết cho hàm f (x) . xi ) i =1 Đa thức Pn (x) dạng (2-2.3) được gọi là đa thức nội suy Newton (tiến) xuất phát từ nút x0 .2) người ta lập bảng sau (thí dụ cho n=4) x f(x) T.pbậc 1 T.. x n ) Để ý đến (2-2.x1...x3) f(x0.3) n Pn ( x) = f ( x0 ) + ∑ ( x − x0 )( x − x1 ).x1.s..( x − xi −1 ) f ( x0 .. x3 ) + .s.( x − x n ) f ( x.3) hay (3-2. x 0 ..x2...s.x3.3.]]] 2.x2.x4) x3 f x3) f(x3. (4-2.x2) f(x1. x1 ...3) ta viết được f ( x) = Pn ( x) + ω n +1 ( x) f ( x.x3) f(x1.p bậc 2 T.x2. Nó trùng với đa thức nội suy Lagrange (vì đa thức nội suy là duy nhất) nhưng được viết trong dạng khác..... x 2 ). Sau khi đã tính được các tỷ sai phân. x1 . x0 . x1 .3..x3) f(x2.s.3. Nhận xét 1.. x0 . Từ đây suy ra biểu diễn sai số của đa thức nội suy Newton f ( x) − Pn ( x) = ω n +1 ( x) f ( x. để tính đa thức nội suy Newton một cách hữu hiệu người ta thường dùng lược đồ Horner.3) i =0 2.x2) f(x0.1) vì khi bổ sung các nút nội suy mới chỉ cần tính thêm một số số hạng mới cộng vào tổng cũ.x4) x2 f(x2) f(x2. P ( x) = f ( x0 ) + ( x − x 0 )[ f ( x0 . x 2 ) + ( x − x 2 )[ f ( x0 ..x2.. x1 ) + ( x − x1 )[ f ( x 0 .( x − x n −1 ) f ( x0 .x3..

Khởi tạo y = f0. 120 60 120 60 2) Khi đó f (1. x1 . x3 .2.3.3) dễ thấy rằng việc tính giá trị của đa thức Newton tại điểm x có thể mô tả bởi đoạn mã sau: input: x.3. 1) Lập bảng tỷ sai phân x f(x) T.5.s. for j = 0 Æ n .9312. x4 ) 2 3 11 P4 ( x) = 1 + x ⋅ 1 + x( x − 2) ⋅ (− ) + x( x − 2)( x − 3) ⋅ + x( x − 2)( x − 3)( x − 5) ⋅ (− ) 3 10 120 11 4 73 3 601 2 413 =− x + x − x + x + 1.p bậc 3 T.p bậc 2 T.p bậc 4 0 1 1 -2/3 3/10 -11/120 2 3 -1 5/6 -1/4 3 2 3/2 -1/6 5 5 1 6 6 Theo công thức (3-2. for i = 1 Æ n 2.25) = 3. x1 .s.xi-1). x2 .3) ta có P4 ( x) = f ( x0 ) + ( x − x0 ) f ( x0 .pbậc 1 T.25) Giải.s. 2. x3 ) + ( x − x0 )( x − x1 )( x − x2 )( x − x3 ) f ( x0 . n) output: y là giá trị của hàm f(x) tại một điểm trong khoảng chứa các mốc nội suy Algorithm 1.25) ≈ P4 (1.xj) 2.1.fj) / (xj+i . Cho bảng giá trị của hàm số y = f (x) x 0 2 3 5 6 f(x) 1 3 2 5 6 1) Xây dựng đa thức nội suy Newton tiến xuất phát từ nút x0 = 0 của hàm số y = f (x) . x1 . xi. 2) Sử dụng đa thức nội suy nhận được tính gần đúng f (1. tich = tich * (x . 2.NCT-FIT-HNUE Computional methods and Optimization Problems Ví dụ 1-2.s. fi (i = 0. x2 . x2 ) + ( x − x0 )( x − x1 )( x − x2 ) f ( x0 . Thuật toán nội suy newton trên mốc không đều Nhìn vào bảng tỷ sai phân và công thức nội suy Newton (3-2.i fj = (fj+1 . tich = 1. 26 . x1 ) + ( x − x0 )( x − x1 ) f ( x0 .

... n) .4.4.4) .. y = y + tich * f0.4. Sai phân cấp cao hơn được định nghĩa qua sai phân cấp thấp hơn như sau • ∆k f i = ∆ (∆k −1 f i ) . Ví dụ 1-2. 2.Ta định nghĩa sai phân cấp một của hàm f (x) nh sau: • Sai phân cấp một tại nút xi là ∆f i = f i +1 − f i ..(t − n)h n +1 (n + 1)! 27 (3-2.2. Từ các định nghĩa sai phân và tỷ sai phân ta có f ( x 0 . i!h i (1-2. + n! 2! n t (t − 1). 2.. Đa thức nội suy Newton trên mốc cách đều Giả sử các nút nội suy xi cách đều nhau một khoảng là h.) 2.NCT-FIT-HNUE Computional methods and Optimization Problems 2.3.(t − n + 1) n ∆ f0 ∆ f 0 + .. ∆2 f i = ∆(∆f i ) = ∆f i +1 − ∆f i = ( f i + 2 − f i +1 ) − ( f i +1 − f i ) = f i + 2 − 2 f i +1 − f i . dễ chứng minh được f ( x 0 .. Trong trường hợp này việc tính đa thức nội suy trở nên dễ dàng hơn nhờ các sai phân. xi ) = ∆i f 0 (i = 1.(t − i + 1) i = f0 + ∑ ∆ f0 i! i =1 Pn ( x0 + th) = f 0 + t∆f 0 + (2-2.. • Sai phân trung tâm cấp một δf i +1 / 2 = f i +1 − f i = f i1+1 / 2 ..3) ở mục trước biểu diễn tỷ sai phân qua sai phân theo công thức (1-2.4.3) hoặc (3-2.1. x1 ) = f 0 − f1 f − f 0 ∆f 0 = .. (i = 1.4) Đây chính là công thức của đa thức nội suy Newton trên mốc cách đều (thường được dùng để nội suy hàm số đối với những giá trị của x ở vùng đầu bảng tức là gần x0. Đánh giá sai số của nội suy Newton mốc cách đều Sai số (hay phần dư) của đa thức nội suy này đã chứng minh được có dạng f ( n +1) (ξ ) f ( x0 + th) − Pn ( x 0 + th) = t (t − 1).4) và đặt x = x0 + t. = 1 x0 − x1 x1 − x 0 h Một cách tổng quát.4) 2. tức là xi = x0 + ih .h ta thu được t (t − 1) 2 t (t − 1).4. x1 . n) .. 2. Đa thức nội suy Newton trên mốc cách đều Trong công thức của đa thức nội suy Newton (2-2.3. return y. Khái niệm sai phân Giả sử cho các giá trị f i = f ( xi ) của hàm f (x) .

NCT-FIT-HNUE

Computional methods and Optimization Problems

2.4.4. Sơ đồ tính sai phân với mốc cách đều

Để tính các sai phân tiến làm hệ số trong đa thức Newton ta lập bảng các sai phân (thí dụ cho n =
4)
x

f

∆f

∆2f

∆3f

∆4f

x0

f0

∆f0

∆2f0

∆3f0

∆4f0

x1

f1

∆f1

∆2f1

∆3f1

x2

f2

∆f2

∆2f2

x3

f3

∆f3

x4

f4

Ví dụ 2-2.4.

Cho bảng các giá trị của hàm y=f(x):
x

0

1

2

3

y

1

0

1

10

Xây dựng đa thức nội suy Newton xuất phát từ x0 = 0, rồi dùng đa thức này tính gần đúng f(0,5).
Giải. Lập bảng các sai phân
x

f

∆f

∆2f

∆3f

0

1

-1

2

6

1

0

1

8

2

1

9

3

10

Do x0 = 0 và h = 1 nên x = t. Theo công thức (2-2.4) ta có
t (t − 1)
t (t − 1)(t − 2)
⋅2+
⋅6
2
6
= 1 − t + t (t − 1) + t (t − 1)(t − 2).

P3 (t ) = 1 + t ⋅ (−1) +

Vì thế f (1 / 2) ≈ P3 (1 / 2) = 0,625 .
2.4.5. Thuật toán nội suy newton trên mốc cách đều

Dưới đây là tính giá trị của hàm cần nội suy tại điểm x thuộc các mốc nội suy. Khác với tính đa
thức Newton trên lưới không đều, ở đây ta chỉ cần một mảng fi (i = 0, n) . Từ bảng sai phân và
công thức nội suy Newton (2-2.4) ta đi đến đoạn mã giả sau
input: x0, x, h, fi (i = 0, n)
output: y là giá trị của hàm tại điểm x
Algorithm:

28

NCT-FIT-HNUE

Computional methods and Optimization Problems

1. Khởi tạo :

t = (x - x0)/h;
y = f0; tich = 1;

2. for i =1 Æ n
2.1. for j = 1 Æ n - i
fj = fj+1 - fj
2.2. tich = tich * (t - i + 1)/i;
2.3. y = y + tich * f0;
3. return y;

2.5. Nội suy tổng quát (nội suy Hermit)
Mục này giới thiệu sơ lược bài toán nội suy đa thức cho hàm số một cách tổng quát.
Giả sử trên đoạn [a, b] thuộc miền xác định của hàm số f ( x) cho m + 1 nút phân biệt
x0 , x1 ,..., xm và giả sử tại các nút đó ta biết các giá trị của hàm số và giá trị của đạo hàm của nó
đến một cấp nào đó (cấp cao nhất của đạo hàm tại mỗi nút có thể khác nhau). Chẳng hạn,

tại x0 biết f ( x0 ), f '( x0 ),..., f ( k0 ) ( x0 ),

tại x1 biết f ( x1 ), f '( x1 ),..., f ( k1 ) ( x1 ),

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

tại xm biết f ( xm ), f '( xm ),..., f ( km ) ( xm ) .

Số ki được gọi là bội của nút xi (i = 0,1,..., m).
Giả sử rằng tổng bội của tất cả các nút là k0 + k1 + ... + km = n + 1. Cần xây dựng đa thức H n ( x)
bậc n sao cho
H n( j ) ( xi ) = f n( j ) ( xi )

(i = 0, m, j = 0, k i )

(1-2.5)

Ta sẽ gọi đa thức H n ( x) là đa thức nội suy trên nút bội (hay đa thức Hermit) của hàm f ( x) .
Một cách hình thức, việc tìm đa thức này chính là xác định n + 1 hệ số a0 , a1 ,..., an của biểu diễn
n

H n ( x) = ∑ a k x k = a 0 + a1 x + ... + a n x n

(2-2.5)

k =0

từ hệ n + 1 phương trình n + 1 ẩn số:
H n ( x0 ) = f ( x0 ), H n '( x0 ) = f '( x0 ), ..., H n
H n ( x1 ) = f ( x1 ), H n '( x1 ) = f '( x1 ), ..., H n
.........

( k0 )

( k1 )

.........

( x0 ) = f ( k0 ) ( x0 ),

( x1 ) = f ( k1 ) ( x1 ),
.........

H n ( xm ) = f ( xm ), H n '( xm ) = f '( xm ), ..., H n

( km )

(3-2.5)

( xm ) = f ( km ) ( xm )

Người ta đã chứng minh được rằng hệ phương trình trên có duy nhất một nghiệm tức là đa thức
nội suy Hermit tồn tại và duy nhất. Ngoài ra, sai số của đa thức này cho bởi công thức sau
29

NCT-FIT-HNUE
f ( x) − H n ( x) =

Computional methods and Optimization Problems

f ( n +1) (ξ )
( x − x0 ) k0 ( x − x1 ) k1 ...( x − x m ) k m
(n + 1)!

(ξ ∈ [a, b])

(6-2.5)

3. Xấp xỉ bình phương cực tiểu
3.1. Phương pháp chung

Giả sử người ta thu thập được số liệu thực nghiệm về sự phụ thuộc của hai đại lượng (vật lý, hoá
học, kinh tế,...) x và y trong bảng sau
x

x1

x2

...

xn

y

y1

y2

...

yn

Bài toán đặt ra là xác định sự phụ thuộc hàm số giữa x và y, tức là tìm hàm y = f(x). Nói chung,
người ta không thể tìm được hàm đúng với tất cả các điểm (xi, yi), mà chỉ mong muốn tìm một
hàm trơn tru và lệch ít nhất so với số liệu thực nghiệm. Thông thường người ta có thể dự đoán
dạng của hàm f(x), chẳng hạn
y = a + bx,
y = a + bx + cx2
y = a + b cos (x) + c sin (x)
y = aebx
y = axb
nhưng chưa biết giá trị cụ thể của các tham số. Để tìm các tham số người ta sử dụng phương
pháp dưới đây có tên gọi là phương pháp bình phương cực tiểu.
Giả sử dạng phụ thuộc hàm số giữa x và y là
y = Q(x, a0, a1,..., am),

(1-3.1)

trong đó a0, a1,..., am là các tham số cần tìm. Các tham số này được chọn sao cho tổng bình
phương các độ lệch của hàm Q tại các điểm xi so với các giá trị thực nghiệm yi là bé nhất. Nói
cách các tham số cần được chọn sao cho tổng bình phương các sai số bé nhất, tức là hàm
2

n

S (a0 , a1 ,..., am ) = ∑ [Q( x, a0 , a1 ,..., am ) − yi ]

(2-3.1)

i =1

đạt min. Điều kiện cực trị của hàm S là

∂S
= 0, i = 0,..., m .
∂ai

(3-3.1)

Các điều kiện trên lập thành hệ phương trình để tìm các tham số a0, a1,..., am.
3.2. Một số dạng hàm cụ thể.
i) Dạng hàm tuyến tính y = a + bx.

Khi đó (2-3.1) có dạng
30

c) = ∑ yi − a − bxi − cxi i =1 ) 2 2 (4-3. b.NCT-FIT-HNUE Computional methods and Optimization Problems 2 n S (a. ii) Dạng hàm bậc hai y = a + bx + cx2.2) bé nhất a.2) hay từ hệ phương trình ⎧n ⎪∑ 2( yi − a − bxi )(−1) = 0 ⎪ i =1 ⎨n ⎪ 2( y − a − bx )(− x ) = 0 i i i ⎪⎩∑ i =1 Rút gọn ta được n n ⎧ na ( x ) b + = ∑ i ∑ yi ⎪ ⎪ i =1 i =1 ⎨ n n n ⎪( x )a + ( x 2 )b = x y ∑ i ∑ i i i ⎪⎩ ∑ i =1 i =1 i =1 (3-3. b và c phải thoả mãn hệ phương trình ( ) ( ) ( ) n ⎧ ∂S 2 2 y i − a − bxi − cxi (−1) = 0 = ∑ ⎪ ∂a i =1 ⎪ n ⎪ ∂S 2 2 y i − a − bxi − cxi (− xi ) = 0 = ⎨ ∑ ⎪ ∂b i =1 n ⎪ ∂S 2 2 2 y i − a − bxi − cxi (− xi ) =0 = ⎪ ∑ ⎩ ∂c i =1 Rút gọn ta được 31 .2) i =1 Các hệ số a và b tìm từ điều kiện ⎧ ∂S ⎪⎪ ∂a = 0 ⎨ ⎪ ∂S = 0 ⎪⎩ ∂b (2-3.2) Đây là một hệ hai phương trình với hai ẩn số a và b. Giải hệ này ta nhận được a và b phải tìm. Trong trường hợp này để n ( S (a. b) = ∑ ( yi − a − bxi ) (1-3.

29 1.2) Đây là một hệ ba phương trình với ba ẩn số a.35 3. Ta có y = aebx Lấy logarit cơ số e hai vế : ln y = ln a + bx Đặt Y = Ln y . Đặt Y = lny.15 y 0. Lấy logarit hai vế ta được lny = lna + blnx.92 0.6) ta có hệ 32 i .58 Tìm hàm nội suy hàm ẩn trên.15 Yi =ln yi -0. Khi đó ta có Y=A+bx.95 1.85 0. Lấy hàm nội suy có dạng y = aebx Giải.95 1. Như vậy bằng cách lấy logarit hai vế ta đã đưa quan hệ phi tuyến đối với a và b về dạng tuyến tính đối với A và b. b và c.46 và n = 5 5 5 5 5 ∑ Xi ∑ X i2 ∑ X iYi ∑Y 4.75 0.04 0. A = ln a . Như vậy bằng cách lấy logarit hai vế ta đã đưa quan hệ phi tuyến đối với a và b về dạng tuyến tính đối với A và b.NCT-FIT-HNUE Computional methods and Optimization Problems n n n ⎧ 2 + + = na ( x ) b ( x ) c ∑ i ∑ i ∑ yi ⎪ i =1 i =1 i =1 ⎪ n n n n ⎪ 2 3 ⎨(∑ xi )a + (∑ xi )b + (∑ xi )c = ∑ xi yi i =1 i =1 i =1 ⎪ i =1 n n n ⎪ n 2 3 4 2 + + = ( x ) a ( x ) b ( x ) c ⎪∑ i ∑ i ∑ i ∑ xi y i i =1 i =1 i =1 ⎩ i =1 (5-3. Khi đó ta có Y=A+bX.2. iii) Dạng hàm mũ y = aebx. X = X Ta đưa về dạng Y = A + BX Xi = xi 0.75 0. Ví dụ 1-3.85 0.18 0. Đặt Y = lny. Cho biết các cặp giá trị của x và y theo bảng sau x 0.93 0.06 1. Giải hệ này ta nhận được a. a>0.17 1.06 0.25 0. X = lnx.96 1. b và c phải tìm. Tìm A và b như trong trường hợp hàm tuyến tính ta sẽ tìm được a=eA. iv) Dạng hàm y = axb. Tìm A và b như trong trường hợp hàm tuyến tính ta sẽ tìm được a = eA.65 0. A = lna.89 i =1 i =1 i =1 i =1 Áp dụng công thức (6-4. A = lna. Lấy logarit hai vế ta được lny = lna + bx.65 0.

0800 2. π/2].5 (cho e≈2.7183) 3.92 Giải hệ trên ta được A = -0. Dân số của một quốc gia qua điều tra được cho trong bảng sau Năm 1960 1970 1980 1990 2000 Dân số (triệu người) 45 50. Dùng các giá trị dưới đây của x x x 1 2 4 1 1. ξ = π / 6 c) f(x)=2x trên đoạn [-1.NCT-FIT-HNUE Computional methods and Optimization Problems 5 ⎧ + nA ( X i )B = ∑ ⎪⎪ i =1 ⎨ 5 5 ⎪(∑ X i )A + (∑ X i2 ) B = ⎪⎩ i =1 i =1 5 ∑Y 5 i =1 i ∑XY i =1 i i + 4.5 d) f(x)=ex trên đoạn [-1. Tìm đa thức bậc ba nội suy tốt nhất cho hàm : (i) f ( x) = 2 x trên đoạn [-1.5 64 Hãy ước lượng dân số của quốc gia này năm 1975.69. 3 8. ξ = π / 12 b) f(x)=xcos(x) trên đoạn [0.93B = 0. b = B = 1 Vậy đa thức nội suy là g(x) = 1 x e 2 BÀI TẬP 1. Do đó a = eA = 1/2. 1].1544 2. B= 1. 33 .89 ⎧5 A ⎨ ⎩4. 5. ξ = 0. π/2].414 2 3 và đánh giá sai số. Cho 3 x bởi bảng sau x 3 x 8 9 10 11 12 2 2.5 54 60. 1].35 A + 3. π /2]. ξ = 0.2894 Dùng đa thức nội suy Newton trên lưới đều tính 4.35B = 0. 1]. Hãy tính gần đúng giá trị của hàm tại điểm ξ và đánh giá sai số a) f(x)= cos(x) trên đoạn [0. tính gần đúng 2. (ii) f ( x) = sin( x) trên đoạn [0. Hàm f(x) được xấp xỉ bởi đa thức nội suy Lagrange tại ba điểm cách đều nhau trên đoạn cho trước.2240 2.5 và đánh giá sai số.

NCT-FIT-HNUE Computional methods and Optimization Problems CHƯƠNG 3 GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH PHI TUYẾN 1. Định lý 2-1. Ví dụ 2-2. Định lý 1-1 Về sự tồn tại nghiệm Giả sử f(x) là hàm số liên tục trên đoạn kín [a. Lập bảng biến thiên của hàm f(x) -∞ x f'(x) − 2 + 0 - 0 + +∞ M > 0 f(x) +∞ 2 -∞ m < 0 Ta thấy f(-∞) < 0. Về sự tồn tại duy nhất nghiệm Nếu hàm f(x) liên tục và đơn điệu (tăng/giảm) trong khoảng [a. M = f (− 2 ) > 0. Phân ly nghiệm của phương trình có thể thực hiện bằng hai phương pháp: phương pháp giải tích và phương pháp đồ thị. Xét phương trình f ( x) = x 3 − 6 x + 2 = 0 (1) Ta có f'(x) = 3x2 . tức là f(a)f(b) < 0 . Định nghĩa 1-1 Nếu khoảng (a. (0. f(∞) > 0 và f(x) tăng trong các khoảng (-∞. -2). − 2 ). +∞) và giảm trong khoảng ( − 2 . Khi đó trong khoảng (a. Nghiệm và khoảng phân ly nghiệm Cho f(x) là một hàm số xác định và liên tục trong miền D của trục số thực. b) tồn tại ít nhất một điểm x* sao cho f(x*)=0. Ví dụ 1-1. f'(x) = 0 Ù x = ± 2 .f(b) < 0 thì (a. Trước khi đi tìm xấp xỉ các nghiệm này ta cần phải phân ly chúng. do đó các khoảng trên là khoảng phân ly của 3 nghiệm của phương trình (1). ( 2 . b) là khoảng phân ly của một nghiệm của phương trình f(x) = 0. nghĩa là tìm các khoảng sao cho mỗi khoảng chỉ chứa một nghiệm.6. b) là khoảng phân ly của nghiệm x*. ta có thể thu hẹp khoảng phân ly của các nghiệm thành (-3. 3).1. b) chỉ chứa một nghiệm x* của phương trình (1-1) thì ta gọi khoảng (a. Xét phương trình f(x) = 2x . Phương pháp giải tích dựa trên việc khảo sát sự biến thiên của hàm số và định lý 2-1. b] và nhận giá trị trái dấu tại các điểm mút a và b. m = f ( 2) < 0 . Xét phương trình: f(x) = 0 (1-1) Ta gọi x* ∈ D là nghiệm của phương trình (1-1) nếu f(x*) = 0. b] và f(a). 1) và (2. Tiếp theo.cos x = 0 (2) 34 . Một phương trình có thể có nhiều nghiệm số (thực). 2 ).

1. (iii) Nếu f(x0). b1 = x0. Nhìn vào hình vẽ ta thấy khoảng phân ly của nghiệm duy nhất của phương trình (2) là (0. 0. Ta sẽ thu hẹp khoảng phân ly của x* bằng cách liên tiếp chia đôi khoảng phân ly mới tìm được cho đến khi độ rộng của khoảng phân ly nhỏ hơn sai số ε cho trước. Do đó (0.f(b0) < 0 thì nghiệm nằm trong khoảng (x0.3. b1] với độ rộng d1 = b1 − a1 = . π/2). b) là khoảng phân ly của nghiệm x* của phương trình f(x).1. b0). Như vậy sau lần chia đôi thứ nhất hoặc ta thu được nghiệm đúng x0 hoặc ta thu hẹp được b−a khoảng phân ly thành [a1. f(1) = 2 . b0 = b. Bước 2. (ii) Nếu f(x0). 2 2. b1 = b0. h(x) nếu phương trình g(x) = h(x) tương đương với phương trình đã cho. b0] bởi điểm giữa x0 = a 0 + b0 2 2. Đặt g(x) = x và h(x) = (1/2)cos x. Lại xét phương trình (2). để tiếp tục quá trình chia đôi.2 0 0 Một cách thông dụng để thu hẹp khoảng phân ly của nghiệm là phương pháp chia đôi được trình bầy dưới đây. sau n lần chia đôi hoặc ta thu được xn-1 là nghiệm đúng hoặc ta thu được khoảng phân ly (an. x0).1.4 1. bn) với độ rộng 35 . Chia đôi khoảng [a0. Phương pháp đồ thị tìm khoảng phân ly của các nghiệm của phương trình f(x) = 0 dựa trên việc xác định các khoảng chứa các điểm cắt của đồ thị của hàm số y = f(x) với trục hoành hoặc hoành độ của các điểm cắt nhau của hai đồ thị g(x). Lặp các công việc sau đây: 2. Đặt a0 = a. Bước 1. Xử lí một trong 3 khả năng sau sẽ xảy ra (i) Nếu f(x0) = 0 thì x0 là nghiệm x* cần tìm.4 0.2 y=x 1 0. Mô tả phương pháp Giả sử (a. do đó ta đặt a1 = x0.6 1. 1) là khoảng phân ly của nghiệm duy nhất của phương trình đã cho. Quay trở lại bước 2. Phương pháp chia đôi 2.5 pi/2 Hình 1-2. do đó ta đặt a1 = a0.5 1 1.1.f(a0) < 0 thì nghiệm nằm trong khoảng (a0. b) của một nghiệm x* của phuơng trình là khá nhỏ thì ta có thể coi điểm bất kỳ trong khoảng này là xấp xỉ của x*.1 2. Ví dụ 3-1.6 y=1/2*cos(x) 0. 0.cos 1 > 0. 1.NCT-FIT-HNUE Computional methods and Optimization Problems Ta có f’(x) = 2 + sin x > 0 và f(0) = .8 Nếu khoảng phân ly (a.2.

75. Sau 8 bước ta đạt được x6 = 0.2.8887 f(a) 3 1. b2 = b1 = 1.023 -0. Nhận xét.NCT-FIT-HNUE Computional methods and Optimization Problems b−a b−a < 2ε là sai số cho trước ta dừng quá trình chia đôi và . Đặt x1 = (a1 + b1)/2 = 0.311 -0.718 -0.1.75.0039 b-a<eps FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE 2. b1] = [0. b0] = [0. Phương pháp chia đôi sử dụng rất ít thông tin về hàm f(x) (chỉ cần dấu của hàm) nên dễ lập trình nhưng hội tụ rất chậm.0699 0. Ví dụ 1-2.758 0. Tiếp tục quá trình chia đôi.011 b-a 1 0. Giải.118 -0.0699 0. Khi đó xn − x * ≤ lấy xn = n 2 2n d n = bn − an = Rõ ràng là dãy số xn tiến dần đến x* khi n Æ ∞ tức là phương pháp chia đôi hội tụ.25 0.8513 0.8828 với sai số d6 = 0.758 0. Khi đó f (a1 ) = 1.311 -0. Quá trình lặp được thể hiện qua bảng sau đây: 1 2 3 4 5 6 7 8 9 a 0 0.ex .25.9375 0.75 0.8513 nên ta đặt a1 = x0 = 1.0078 < ε = 0. Vì f(a0) = 3. là nghiệm gần đúng.8867 b 1 1 1 1 0.9063 0. Nếu f(c) = 0 thì gán x0 := c và kết thúc lặp.0699 0.8906 x0 0.5 0.5 0.0156 0.023 -0.01. Nếu n 2n 2 b −a b − an <ε .2.718 -0.2x2 = 0 với độ chính xác ε = 10-2.023 f(x0) 1.718 -0.0078 0.0236 0. khoảng phân ly nghiệm [a.0699 -0.125 0.8513 0. f ( x1 ) = 0. f(x0) = 1. Bằng phương pháp chia đôi tìm nghiệm dương của phương trình 4 .0236 0.8828 0. Ta có [a0. Nếu f(a)f(c) < 0 thì gán b := c 36 .2 2.758 ⇒ a 2 = x1 = 0.118 -0.875 0.875 0.8828 0. d1 = b1 − a1 = 0.8906 0.0003 f(b) -0.0699 0.718 -0.0625 0. b].023 0.0003 -0. Ta có [a1. sai số được phép ε Ouput: nghiệm gần đúng x0 của phương trình f(x) = 0 Algorithm: Bước 1: Gán c = (a + b)/2. Dễ thấy rằng (0.1.5 0. ngược lại làm bước 2.75 0. b1 = b0 = 1. 1].875 0. d 2 = 0.875 0.5.8867 0.0313 0.875 0.8513. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp chia đôi Input: hàm phi tuyến f(x). 1) là khoảng phân ly của nghiệm dương x*.5.5.8906 0.8906 0. 1] là khoảng phân ly.8513. Bước 2: Lặp quá trình sau đây khi (b-a) > ε 2. x0 = (a0 + b0)/2 = 0.9375 0.9063 0.

Như vậy từ các đánh giá (5-3. Ta nói một phương pháp lặp giải phương trình có cấp hội tụ α nếu . b] (4-3.b] và thoả mãn các điều kiện sau: i) max ϕ ' ( x) ≤ q < 1 ∀x ∈ [a. b) là khoảng phân ly của nghiệm x*. xn − x * ≤ C xn −1 − x * α . (7-3. b) và tính các xấp xỉ x1.1) hội tụ và có ước lượng xn − x * ≤ q xn − xn −1 1−1 (5-3. nghĩa là. b] (3-3. (2-3. theo công thức xn = ϕ(xn-1).1) Định lý 1-3.1) x∈[ a . Mô tả phương pháp Giả sử phương trình f(x) = 0 có thể viết dưới dạng: x = ϕ(x) (1-3. b ] Khi đó i) Phương trình (1-3.1. α nghĩa là xn − x * ≤ C xn − xn −1 . 3.1) qn xn − x * ≤ x1 − x0 1−1 (6-3.1. b) ii) Quá trình lặp (2-3.NCT-FIT-HNUE Computional methods and Optimization Problems Nếu không thì gán a := c Bước 3: In ra nghiệm x0 = c.hoặc sai số hậu nghiệm của xn là đại lượng cấp α của độ lệch giữa hai xấp xỉ liên tiếp xn và x n1.1) ii) ϕ ( x) ∈ [a. x2. ta còn rút ra được: xn − x * ≤ q xn − x * (7-3.1) ta thấy rằng phương pháp lặp đơn có tốc độ hội tụ cấp 1 hay tốc độ hội tụ tuyến tính.1. Lấy một điểm x0 ∈ (a.1) và (a.1) Trong quá trình chứng minh định lý. Phương pháp lặp đơn 3. C>0 là hằng số. .1) Để đặc trưng cho tốc độ hội tụ của các phương pháp lặp dưới đây chúng ta đưa ra khái niệm về cấp hội tụ của phương pháp. n = 1. …. ….1) có nghiệm duy nhất x* ∈ (a.1). b] ∀x ∈ [a. 37 .sai số tiên nghiệm của xấp xỉ thứ n là đại lượng cấp α của sai số xấp xỉ thứ n . Định nghĩa 1-3. Về sự hội tụ của phương pháp lặp Giả sử ϕ(x) là hàm khả vi trên đoạn [a. 2.1. trong đó x* là nghiệm đúng.

2. 2 2 Rõ ràng là các điều kiện (3-3.1) ta đã xác định được khoảng phân ly nghiệm của phương trình trên là (0. x4 = 0. ] ∀x ∈ [0. 1). 2 2 do đó π π ϕ ( x) ∈ [0. ta phải chọn cách sao cho thỏa mãn các điều kiện của định lý 1-3. Trong số các cách đưa về dạng này. Ta sẽ chọn x = ϕ(x) với ϕ(x) = (5x3 + 3)/20.1. nên nếu lấy x4 xấp xỉ x* ta sẽ có |x4 . Ta sẽ kiểm tra các điều kiện của Định lý 1-3.4502 là nghiệm gần đúng của phương trình đã cho với độ chính xác 10-3. Ví dụ 2-3.10x + 3 = 0 bằng phương pháp lặp đơn với độ chính xác 10-4 biết khoảng phân ly nghiệm là (0.4502 2 . 1 x4 = cos x3 = 0..5 và xây dựng dãy lặp xn = ϕ(xn-1).4502 . Với x0 = 0.1) vì 38 .1). n = 1. do đó phương pháp lặp hội tụ ∀x ∈ (0. π/2).1. 1 2 ϕ ' ( x) = − sin x ≤ q = 0 ≤ ϕ ( x) ≤ 1 2 1 π < . π/2) và ta có đánh giá: xn − x * ≤ 1/ 2 xn − x n−1 = x n − xn−1 1 − 1/ 2 . π/2). ta đưa phương trình đã cho về dạng tương đương x = ϕ(x).cos x = 0 với độ chính xác 10-3.x*| < 10-3. Tìm nghiệm gần đúng của phương trình f(x) = 5x3 .1. x0 = 0. (4-3.0006 < 10-3.1) được thoả mãn.5 ta có 1 x1 = cos x0 = 0. Vì |x4 -x3| = |0.4426 2 1 x3 = cos x 2 = 0. Trong Ví dụ (2-2. và phương trình trên đưa được về dạng x = ϕ(x) với ϕ(x) = (1/2)cos x Lấy một điểm x0 bất kỳ trong khoảng (0. chẳng hạn.4307 2 x2 = 1 cos x1 = 0. Giải.NCT-FIT-HNUE Computional methods and Optimization Problems Ví dụ 1-3.4496| = 0.4496 2 . ].0. Tìm gần đúng nghiệm của phương trình 2x . Khi đó ϕ(x) thỏa mãn điều kiện (3-3. Như vậy. Trước hết. Giải. .1..

hơn nữa làm cho phương pháp lặp hội tụ nhanh nhất 3.1812 0.5 ta tính được các xấp xỉ xn như sau n xn xn .1] 20 hội tụ và có đánh giá xn − x * ≤ 3 xn − xn −1 .2).1509 0. Ta có ϕ ' ( x) = 1 − f ' ( x) . Chọn x0 = 0. ∀x ∈ [0.0000 Cách chọn hàm ϕ(x) thỏa mãn các điều kiện của định lý 1-3.b) là khoảng phân ly nghiệm và f’(x) > 0 trên [a. b ] Trước hết nhận xét rằng λ ≠ 0 thì phương trình f(x) = 0 tương đương với phương trình x = ϕ(x) với ϕ(x) = x + λf(x) (1-3.xn-1 3(xn . Như vậy. M f ' ( x) m ≤1− = q < 1 trên toàn đoạn [a. ∀x ∈ [0. phương pháp lặp đơn cho dãy nghiệm: max ϕ ' ( x) = max xn = 5 xn3−1 + 3 . do đó ϕ(x) ∈ [0.0019 4 0. Xét hàm ϕ(x) dạng (1-3.1) x∈[ a . m = min f ' ( x) a ≤ x ≤b a ≤ x ≤b Đặt λ=− 1 m .0000 0.xn-1) 1 0. hàm M M ϕ(x) được xây dựng như trên thoả mãn điều kiện thứ nhất của Định lý 1-3. Ký hiệu M = max f ' ( x).0298 0.0893 3 0.2) Giả sử (a.1509 0. Do đó.1.1) vì 3/20 < ϕ(x) ≤ 2/5. Cách chọn ϕ(x) thỏa điều kiện hội tụ của phương pháp lặp đơn max ϕ ' ( x) ≤ q < 1 ∀x ∈ [a. 1]. b]. Vì 0 < m ≤ f’(x) ≤ M nên ϕ ' ( x) = 1 − Có thể chứng minh được rằng với cách chọn 39 .1515 0.1.9562 2 0. q = 1− M M .2.NCT-FIT-HNUE Computional methods and Optimization Problems 3x 2 3 = <1 0 ≤ x ≤1 0 ≤ x ≤1 4 4 và cũng thỏa mãn điều kiện (4-3. b] Là điều kiện (3-3.0006 0. b]. 1].3187 0.

Tiếp tuyến này có phương trình là y = f’(xn-1)(x .1. Mô tả phương pháp: Giả sử xn-1 là một xấp xỉ đã tính được của nghiệm đúng x*.1) f(xn) Giả sử f’(xn-1) ≠ 0.3. sai số được phép ε. Vì thế phương pháp này còn có tên gọi là phương pháp tuyến tính hoá. b]. Gán x0 := x. 2. khoảng phân ly [a. Thế thì xn = xn −1 − f ( xn −1 ) f ' ( xn −1 ) f(xn-1) (2-4. b] Ouput: nghiệm gần đúng x của phương trình f(x) = 0 Algorithm: Bước 1: Khởi gán sai số e := 1. Mô tả phương pháp Ý tưởng của phương pháp Newton giải phương trình f(x) = 0 là thay phương trình này bởi một phương trình tuyến tính gần đúng trong lân cận của nghiệm.NCT-FIT-HNUE λ=− Computional methods and Optimization Problems 2 M +m thì hàm xác định bởi (1-3.2) sinh ra phương pháp lặp hội tụ nhanh nhất với số q= M −m M +m. Bước 3: In ra nghiệm x.1) 40 x* xn+1 xn xn-1 .3. điểm ban đầu x0 ∈ [a. 2.2. thay đường cong y = f(x) bởi tiếp tuyến với nó tại điểm A(xn-1. trong đó M = max | f '( x) |.1. m = min | f '( x) | . Thuật toán tìm nghiệm xấp xỉ bằng phương pháp lặp đơn Input: phương trình f(x) = 0 đã được chuyển về dạng x = g(x) biểu thị xn = ϕ(xn-1). a ≤ x ≤b a ≤ x ≤b 3. Trong lân cận của x*. 4. Bước 2: Lặp quá trình sau đây khi e > ε 2. Phương pháp tiếp tuyến (Newton) 4.xn-1) + f(xn-1) (1-4. f(xn-1)). Tính e := abs(x-x0). Tính x := g(x0). Ký hiệu hoành độ của điểm cắt của tiếp tuyến với trục hoành là xn.

• x0 ∈ [a. vì xấp xỉ tiếp theo x1 có thể vuợt ra khỏi khoảng phân ly. Để tránh được điều này. b].4. m1 (1-4.2 Đối với phương pháp Newton ta có đánh giá tiên nghiệm sau z n +1 ≤ q z n 2 (3-4.1 2) Nếu xấp xỉ ban đầu x0 chọn không thích hợp thì phương pháp Newton có thể không sử dụng được. b] Bỏ qua phần chứng minh. Sự hội tụ của phương pháp Định lý 1-4.2) 41 . 1) Công thức lặp (2-4. Khi đó phương pháp Newton (2-4.1) hội tụ và đối với nghiệm gần đúng xn có các đánh giá sau xn − x * ≤ xn − x * ≤ f ( xn ) . Giả sử x0 là một điểm thuộc khoảng phân li nghiệm của phương trình f(x)=0.1) còn có tên gọi là phương pháp tiếp tuyến .2) M2 2 xn − xn −1 .2) trong đó m1 và M2 là các hằng số thoả mãn 0 < m1 ≤ |f’(x)|. Do đó có thể khảo sát sự hội tụ của phương pháp nhờ vào Định lý 1-3. Nhận xét. x0 là điểm Fourier nếu thỏa mãn: f ( x0 ) f ' ' ( x0 ) > 0 (4-4.NCT-FIT-HNUE Computional methods and Optimization Problems Ta coi xn là xấp xỉ tiếp theo của x*.1.2 Về sự hội tụ của phương pháp lặp Newton Giả sử • f là hàm khả vi liên tục hai lần trên đoạn [a.2. 2m1 (2.1) Điều đó có nghĩa phương pháp Newton là một trường hợp đặc biệt của phương pháp lặp đơn. b] là điểm Fourier.1) có thể viết trong dạng xn = ϕ(xn-1) với ϕ ( x) = x − f ( x) f ' ( x) (3-4. b] là khoảng phân ly nghiệm x* của phương trình f(x) = 0. b] và [a. ∀x ∈ [a. |f ”(x)| ≤ M2. Khi áp dụng.1) 4. thậm chí vượt ra khỏi khoảng xác định của hàm số. cần chọn xấp xỉ ban đầu là một điểm Fourier được định nghĩa dưới đây: Định nghĩa 1-4. thường chọn m1 = min{f'(x)}. • f’(x) và f”(x) không đổi dấu trên [a. Vì thế phương pháp tìm nghiệm gần đúng theo công thức (2-4. M2 = max{f'(x)} Định lý 2-4. Nếu giá trị của f(x) và đạo hàm bậc hai f”(x) cùng dấu tại x0 thì x0 được gọi là điểm Fourier. Nói cách khác.

b]. điểm fourier x0 ∈ [a. Ngoài ra. 42 . 2m1 Bỏ qua phần chứng minh. ta có f’’(x) = 2 > 0. M2 và m1 được xác định như trong Định lý 1-4. Phương pháp lặp Newton có dạng xn = xn −1 − f ( xn −1 ) x2 − x −1 = xn−1 − n −1 n−1 .x -1.618034 1. Do đó chọn m1 =1. 4.3.618034 f[x(n-1)] f"[x(n-1)] 1 3 0.2360689 0.0000000 2.0000010 2. Tính x := g(x0). sai số được phép ε. Do đó [1. Áp dụng phương pháp Newton tìm nghiệm dương của phương trình x2 . Bước 3: In ra nghiệm x. Bước 2: Lặp quá trình sau đây khi e > ε 2.619048 0. khoảng phân ly [a. Nếu không xác định q thì e = abs(x-x0) 2.618 là nghiệm gần đúng với sai số nhỏ hơn 0. 2] là khoảng phân ly nghiệm dương của phương trình đã cho. Với tư cách xấp xỉ ban đầu ta chọn điểm Fourier x0 = 2.001. Gán x0 := x.3.618034 0.2.618034 0. Tính e := q*abs(x-x0)^2.236068 epsilon = |x(n)-x(n-1)| 0. mới 0<m<|f'(x)| và |f"(x)| <M1 Ouput: nghiệm gần đúng x của phương trình f(x) = 0 Algorithm: Bước 1: Khởi gán sai số e := 1. f(2) = 1 > 0 và f’(x) = 2x-1 > 0. M2 =2.001 <epsilon 1.666667 1.002267574 2.1.NCT-FIT-HNUE trong đó q = Computional methods and Optimization Problems M2 .047619048 1.2380952 0.333333333 1. f ' ( xn −1 ) 2 xn−1 − 1 Rút gọn vế phải ta được xn = xn2−1 + 1 2 xn −1 − 1 (1) Áp dụng phương pháp lặp Newton ta có bảng sau: n x(n-1) 0 1 2 3 4 2 1.001013171 1. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp Newton Input: f(x) = 0 được chuyển về dạng x = g(x) biểu thị xn = xn-1 + f(xn-1)/f'(xn-1). b] số q=M/2*m. Giải. Đặt f(x) = x2 . zn = xn − x*.x -1 = 0 với độ chính xác 0.666667 0. Ví dụ 1-4.2.111111111 2. Ta có f(1) = -1 < 0.001.2.3333333 0.00000046 FALSE FALSE FALSE TRUE x(n) Vậy x4 = 1. 2.619048 1.

0226 4 -2.5) hội tụ chậm hơn phương pháp Newton nhưng hội tụ nhanh hơn phương pháp lặp đơn. b) là khoảng phân ly của nghiệm. Phương pháp cát tuyến 5. Ví dụ 1-5. Mô tả phương pháp Việc tính đạo hàm trong công thức Newton (2-4. Thông thường.3. 2 nghiệm xấp xỉ ban đầu x0 và x1. Cho phương trình f(x) = x3 -3x + 2 = 0 có một nghiệm là x* = 2.0000 6 -2. phương pháp lặp có dạng xn = xn −1 − xn −1 − xn − 2 f ( xn −1 ).1066 3 -2. x1 là các xấp xỉ cho trước. n = 2. Ouput: nghiệm gần đúng x của phương trình f(x) = 0 Algorithm: Bước 1: Khởi gán sai số e := 1.1) x0. f ( xn − 2 )). Phương pháp lặp trên có tên là phương pháp cát tuyến (phương pháp vị trí ảo) vì ý nghĩa hình học của nó cụ thể như sau: Phương trình của cát tuyến qua hai điểm ( xn − 2 .1.1) có thể tốn thêm nhiều thời gian nếu f’(x) là hàm phức tạp.1.2.4 ta được n x(n) 2 -2.. ( xn −1 . người ta đặt x0 = a. x0 = -2. Thuật toán tìm nghiệm xấp xỉ bằng phương pháp Cát tuyến Input: Hàm số f(x) = 0. (a.NCT-FIT-HNUE Computional methods and Optimization Problems 5.. x1 = b.0000 5. Nghiệm tìm xấp xỉ cần tìm là x = x1 43 . f ( xn −1 ) − f ( xn −1 ) (1-5.6. sai số được phép ε. Sử dụng phương pháp cát tuyến với sai số 10-3. x2 x* x1 x3 Phương pháp cát tuyến (1-2.0015 5 -2.. f ( xn −1 )) là x0 y − f ( xn −1 ) x − xn−1 = f ( xn −2 ) − f ( xn −1 ) xn−2 − xn−1 . Khi đó. x1 = -2. người ta thay f’(xn-1) bởi tỷ sai phân f ( xn −1 ) − f ( xn−2 ) xn −1 − xn−2 . Vì thế.

b]. Mô tả phương pháp Giả sử (a. m1 Ở đây.1.NCT-FIT-HNUE Computional methods and Optimization Problems Bước 2: Lặp quá trình sau đây khi e > ε 2.f”(x) > 0.3. và lấy đầu mút còn lại làm xấp xỉ ban đầu x0. n = 1. 6. m1 = min | f '( x) | a ≤ x ≤b a ≤ x ≤b . 2.f”(x) > 0.2.1) f ( xn −1 ) − f (d ) trong đó d = b. Tính x := x1-f(x1)-((x1-x0)/(f(x1)-f(x0))). và d = a.2. b) là khoảng phân ly của phương trình f(x) = 0. ta ký hiệu M 1 = max | f '( x) |.. Hình bên minh họa một số xấp xỉ liên tiếp theo phương pháp dây cung giải phương trình 2x2 . ta cố định một đầu. Tìm khoảng phân ly với độ rộng bằng 1 cho các nghiệm của các phương trình sau: x 4 − 3x − 20 = 0 ( x > 0) 2 − ln( x) − x = 0 44 . x0 = b nếu f(a). như thường lệ. BÀI TẬP 1. m1 | xn − x* |≤ M 1 − m1 | xn − xn −1 |. Gán x0 := x1.x 0.1.. Giả thiết đạo hàm cấp hai f’’(x) không đổi dấu trên đoạn [a. Ý tưởng của phương pháp dây cung là thay dây cung cong của đường cong y = f(x) bằng dây cung trương cung cong ấy và xem hoành độ xn của giao điểm của dây cung với trục hoành là giá trị xấp xỉ của nghiệm đúng x*. 6. Phương pháp dây cung 6.. mà tại đó giá trị của hàm cùng dấu với dấu của f”(x) (tức là điểm Fourier). x0 = a nếu f(b). x1 :=x. Khi đó trong hai đầu mút a và b. e := abs(x-x0). Sự hội tụ của phương pháp Người ta đã chứng minh được rằng phương pháp dây cung hội tụ và thu được các đánh giá dưới đây về sai số của phương pháp: | xn − x* |≤ | f ( xn ) | . Bước 3: In ra nghiệm x. 2.1 = 0. Công thức lặp của phương pháp dây cung sẽ như sau: xn = xn −1 − f ( xn −1 )( xn −1 − d ) .2. (1-6.

phương pháp lặp đơn và phương pháp cát tuyến với độ chính xác 10-3. Gợi ý: Sử dụng cos 3 × 200 = 1/2. 2.x = 0 nếu xuất phát từ điểm x0 bất kỳ? 8.001 và so sánh tốc độ hội tụ. Bằng phương pháp chia đôi tìm nghiệm của các phương trình cho trong bài 1 với độ chính xác ε = 10-2.1=0 bằng các phương pháp cát tuyến và phương pháp dây cung với độ chính xác 0.x . 5. tìm 7. Lập chương trình giải phương trình phi tuyến bằng các phương pháp cát tuyến và dây cung. 6.. x3 . Tìm nghiệm của các phương trình cho trong bài 1 với độ chính xác ε = 10-3 bằng phương pháp Newton. 10. 9. Tính 13 bằng phương pháp Newton.0. Sử dụng phương pháp lặp đơn dạng xn+1 = xn + λf(xn) giải phương trình f(x) = 0 4. So sánh số lần lặp thực sự với số lần lặp ước lượng trước khi tính x2 .. 7. 1 và -1 của phương 3 trình x . Sử dụng chương trình này giải phương trình trong bài tập 7. Tìm nghiệm của các phương trình cho trong bài 1 với độ chính xác ε = 10-2 bằng phương 3.NCT-FIT-HNUE x 3 − 2 x − 5 = 0 ( x > 0) x 3 + 3x + 5 = 0 Computional methods and Optimization Problems 4 − e x − 2 x 2 = 0 ( x > 0) x − sin x = x + ex = 0 1 5 x 2 − sin πx = 0. Tính cos 200 với độ chính xác 10-3.. pháp lặp đơn. Phương pháp Newton hội tụ tới nghiệm nào trong ba nghiệm 0. 45 . Tìm nghiệm gần đúng của phương trình 2x2 .

1. u3) và a là một số thì au = (au1. u3 ) và v = (v1 . u2. Vectơ cột và vectơ hàng a) Định nghĩa Ta gọi vectơ cột là một dạy hữu hạn có thứ tự các số sắp xếp từ trên xuống dưới. b) Các phép toán trên vectơ Cộng hai vectơ ⎛ u1 ⎞ ⎛ v1 ⎞ ⎛ u1 + v1 ⎞ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ Cho u = ⎜ u2 ⎟ và v = ⎜ v2 ⎟ . là vectơ mà các thành phần của nó đều bằng 0. u2 . v = (4 2 9 ) là một vectơ hàng có 4 thành phần. Ví dụ 2-1. ⎜ 2⎟ ⎝ ⎠ Ta gọi vectơ hàng là một dạy hữu hạn có thứ tự các số được sắp xếp nối tiếp nhau theo hàng ngang. u3 + v3 ) Nhân một số với một vectơ Nếu u = (u1. Ví dụ 1-1. 46 . u3 ) ⎛ v1 ⎞ ⎜ ⎟ và v = ⎜ v2 ⎟ ⎜v ⎟ ⎝ 3⎠ Khi đó tích vô hướng của vectơ hàng u với vectơ cột v là số uv = u1v1 + u2v2 + u3v3 Ví dụ 3-1.1. Cho u = (u1 .1. u2 . au2. au3). v2 . thì u + v = ⎜ u2 + v2 ⎟ ⎜u ⎟ ⎜v ⎟ ⎜u + v ⎟ ⎝ 3⎠ ⎝ 3⎠ ⎝ 3 3⎠ Tương tự. Tích vô hướng (khi nhân vectơ hàng với vectơ cột) Cho u = (u1 . kí hiệu là 0.1. v3 ) . Đại số ma trận 1. thì u + v = (u1 + v1 . u2 + v2 . Vectơ không.NCT-FIT-HNUE Computional methods and Optimization Problems Chương 4 PHƯƠNG PHÁP SỐ TRONG ĐẠI SỐ TUYẾN TÍNH 1. ⎛ 3⎞ ⎜ ⎟ u = ⎜ 1 ⎟ là một vectơ cột ba thành phần.

tức là A có dạng: 47 .m].. 1 ≤ i. 1.A = E 1. • Ma trận tam giác trên: Ma trận vuông A được gọi là ma trận tam giác trên. công nhân thứ hai làm mất 4 giờ và công nhân thứ ba làm mất 2 giờ. ⎢ ⎣am1 am 2 . • Ma trận nghịch đảo: Cho ma trân vuông A.000 + 4*80.….. 80000đ và 60000đ.3.2... kí hiệu là A-1. a2 n ⎥⎥ . là một ma trận vuông cấp n thỏa mãn điều kiện sau: A.. Ma trận đơn vị.000 = 590.NCT-FIT-HNUE Computional methods and Optimization Problems Một sản phẩm được tạo ra bởi ba công đoạn.⎥ ⎥ ⎢ ⎣0 0 .2.. là ma trận nhận được từ ma trận A bằng cách đổi hàng thành cột và đổi cột thành hàng. mỗi công đoạn cần một công nhân làm.. 0⎤ ⎢0 1 . j ∈[1. cột j. n].000 + 2*60. . 0⎥ ⎥ E= ⎢ ⎢. ⎡1 0 . các phần tử còn lại bằng 0.. Công nhân thứ nhất làm mất 3 giờ. ..2.2. Ma trận 1.. . thường ký hiệu là E hoặc I. Tiền trả mỗi giờ cho các công nhân tương ứng là 50000đ. được gọi là ma trận đường chéo . a1n ⎤ . . i ∈ [1. tức là aii = 1 và aij = 0.. tức là aij = aji = 0 với i ≠ j. 1⎦ • Ma trận chuyển vị: Ma trận chuyển vị của một ma trận A.. Số tiền phải trả để hoàn thành sản phẩm là tích vô hướng của hai vectơ ⎛ 50000 ⎞ ⎜ ⎟ u = (3 4 2 ) và v = ⎜ 80000 ⎟ ⎜ 60000 ⎟ ⎝ ⎠ tức là số uv = 3*50. Một số dạng đặc biệt của ma trận • Ma trận chéo: Ma trận vuông cấp n mà mọi phần tử nằm ngoài đường chéo chính bằng 0. ma trận nghịch đảo của ma trận A (nếu có)... ⎥ ⎥ .2. là ma trận vuông cấp n có các phần tử nằm trên đường chéo bằng 1.000đ 1.. . ∀ i ≠ j.. ⎡ a11 a12 ⎢a a22 A = ⎢ 21 ⎢ .. kí hiệu là At. amn ⎦ trong đó aij là phần tử ở hàng i.A-1 = A-1...…. Các loại ma trận • • Ma trận vuông: Khi m = n thì ma trận A = (aij) gọi là ma trận vuông cấp n. . nếu aij = 0 nếu với ∀ i > j.1. Định nghĩa Một ma trận A cấp m × n là một bảng gồm m × n phần tử xếp theo m hàng và n cột.. j ≤ n.

.2. ........ ⎥ ⎥ ⎥ ⎦ • Ma trận đối xứng: Ma trận A được gọi là đối xứng nếu A=At.. n.....j=1.j=1.2.. m... . Các phép toán trên ma trận • Cộng 2 ma trận Phép cộng hai ma trận chỉ có nghĩa khi hai ma trận có cùng cấp. m..2. ⎥ ⎥ . j = 1.. ma trận vuông A được gọi là ma trận tam giác dưới. ⎢ 0 ⎣0 • Ma trận tam giác dưới: Tương tự...2. a2 n ⎥⎥ ..... an −1... k =1 Ví dụ 1-1..... kí hiệu là C = A + B.. ⎢ ⎣ an1 an 2 • ... Tích của hai ma trận A = (aij) kích thước m × p với ma trận B = (bij) kích thước p × n là ma trận C = (cij) có kích thước m × n.. • Ma trận xác định dương: Ma trận A được gọi là xác định dương nếu tích vô hướng (Ax.. ⎢ 0 . . m. tức là A có dạng: ⎡ a11 0 ⎢a a22 A = ⎢ 21 ⎢ . B = {bij}i = 1. • Nhân một hằng số k khác 0 với một ma trận: Nếu A = (aij) thì kA = (kaij) • Nhân hai ma trận: Điều kiện để thực hiện được phép nhân: Số cột của ma trận trước phải bằng số hàng của ma trận sau. 1. Trong trường hợp.......4... ann ⎦ 0⎤ 0 ⎥⎥ . x) > 0 với mọi x ≠ 0... ..... . ....0 0 ⎢ 0 ⎢a21 a22 a23 . với cij = aij + bij ... B[2 × 4 ] = C[3 × 5] 48 .. i = 1. Khi đó tổng của hai ma trận A và B là ma trận C = {cij}i = 1.. ....... nếu aij= 0 khi |i-j| > m và m<<n thì ma trận có tên gọi là ma trận băng. m. ⎥ ⎥ .... . ... A[3 × 2] . n. ... j = 1. tức là aịj=aji (i. . ...... trong đó: p cij = ∑ aik bkj .. . a1n ⎤ .. .. .... . .n)..... . Nếu m = 1 thì ma trận băng có dạng ba đường chéo ⎡a11 a12 0 .... nếu aij = 0 với ∀ i < j. (i..... n −1 ann ⎣ ⎤ ⎥ ⎥ ⎥.. Ma trận thưa: Ma trận thưa là ma trận có rất nhiều phần tử bằng 0...NCT-FIT-HNUE Computional methods and Optimization Problems ⎡a11 a12 ⎢0 a 22 A= ⎢ ⎢ ... n. ann ⎦ ....n).. n ⎢0 0 ⎢0 0 0 .... an ....0 A = ⎢ .... j = 1. Cho hai ma trận A = {aij}i = 1... j = 1. n....

ta tính được một số thực theo qui tắc dưới đây.4 + 1. Ví dụ 3-1.0 + 2.5 ⎤ ⎡16⎤ ⎢− 1 2⎥ .2 + 1. ⎡1 2 3 5⎤ = ⎢− 9 6 1 13 ⎥ ⎢ ⎥ ⎢ 6 0 4 1⎥ ⎢ ⎥ ⎦ ⎢⎣− 1 2 ⎥⎦ ⎣ ⎢⎣ 11 − 2 5 − 3⎥⎦ • Nhân một véc tơ (hàng) với một ma trận: Là trường hợp đặc biệt của phép nhân hai ma trận A[1 × n] * B[n × p] = C[1 × p]. kí hiệu là det A hoặc |A|.5.1] = [13 3] ⎢⎣ 3 1 ⎥⎦ • Nhân một ma trận với một véc tơ (cột): Là trường hợp đặc biệt của phép nhân hai ma trận A[m × n] * B[n × 1] = C[m × 1]. ⎡ 4 0⎤ [3 2 1] ⎢⎢− 1 2⎥⎥ = [3.a12a21 ⎣a21 a22 ⎦ b) Định thức của ma trận cấp ba ⎡ a11 a12 Cho ⎢⎢a21 a22 ⎢⎣ a31 a32 a13 ⎤ a23 ⎥⎥ thì a33 ⎥⎦ ⎡a det A = a11 det ⎢ 22 ⎣ a32 a23 ⎤ a23 ⎤ a22 ⎤ ⎡a ⎡a + a12 det ⎢ 21 + a13 det ⎢ 21 ⎥ ⎥ ⎥ a33 ⎦ ⎣a31 a33 ⎦ ⎣a31 a32 ⎦ 49 . điều kiện để thực hiện được phép nhân là: số phần tử của véc tơ hàng phải bằng số hàng của ma trận. ⎡4⎤ = ⎢(−1).4 + 2.2. Nói cách khác.4 + 2.2.2.4 + 0. Định thức của ma trận Với mỗi ma trận vuông A cấp n. ⎡ 4 0⎤ ⎡ 4. điều kiện để thực hiện được phép nhân là: Số cột của ma trận trước phải bằng số thành phần của véc tơ cột. Nói cách khác. a) Định thức của ma trận cấp hai a ⎤ ⎡a Cho A = ⎢ 11 12 ⎥ thì det(A) = a11a22 .5⎥ = ⎢ 6 ⎥ ⎢ ⎥ ⎢5 ⎥ ⎢ ⎥ ⎢ ⎥ ⎢⎣ 3 1 ⎥⎦ ⎣ ⎦ ⎢⎣ 3.3 3. gọi là định thức của ma trận A.(−1) + 1.NCT-FIT-HNUE Computional methods and Optimization Problems 0⎤ 2 3 5⎤ ⎡1 ⎡1 ⎢ 3 − 2⎥ .5 ⎥⎦ ⎢⎣17 ⎥⎦ Chú ý: • AB ≠ BA (phép nhân 2 ma trận không có tính giao hoán) • (AB)C = A(BC) • Nếu A là ma trận vuông cấp n và E là ma trận đơn vị thì AE = EA = A 1. Ví dụ 2-1.

n det Mi. ... ta có: det A = (-1)i+1 ai. Hệ phương trình đại số tuyến tính 2.xn + ⎧ a11 x1 ⎪a x ⎪ 21 1 ⎨ ⎪ ... .n Trong đó Mi.a11a23a32 + a12a21a33 .. + a n 2 x2 .2 det M1.2 det M1. + ann xn .. 2 3⎤ ⎡1 ⎡ 5 6⎤ ⎡ − 4 6⎤ ⎡− 4 5⎤ ⎢ .. a 2 n ⎥ ⎜ x2 ⎟ ⎜b ⎟ .j là ma trận thu được từ ma trận A sau khi bỏ đi hàng i và cột j. M 1.. ⎢ ⎣a n1 a12 a 22 . nếu chọn hàng 1 thì dấu cộng trừ đan xen nhau. a nn ⎦ ⎝ n⎠ ⎝ n⎠ Bài toán đặt ra là tìm nghiệm x = (x1.2 + . .1) sau một số hữu hạn các phép tính với giả thiết không có sai số làm tròn. Choleski.1.a1.. an 2 . x2.(-78)+3.1) Hệ phương trình này có thể viết dưới dạng ma trận Ax = b (2-2. M 1... 2 = ⎢ . ⎜ ⎟ ⎜ ⎟ ⎥ ⎜x ⎟ ⎜b ⎟ .. Ví dụ 4-1.. Để ý thấy. . 2. x2. ⎥ .1 det Mi.3 det M1. ví dụ như các phương pháp Cramer. ⎪⎩an1 x1 a12 x2 + .1) Các phương pháp giải: Người ta chia các phương pháp giải hệ PTĐSTT thành 2 loại: các phương pháp đúng và các phương pháp gần đúng: Phương pháp đúng hay còn gọi là phương pháp trực tiếp. …. + a1n xn = b1 + a22 x2 + .NCT-FIT-HNUE Computional methods and Optimization Problems det A = a11a22a33 .1 = ⎢ ⎥ ⎥ − 8 9⎦ 7 9⎦ 7 8⎥⎦ ⎣ ⎣ ⎣ ⎢⎣ 7 − 8 9⎥⎦ det A = (-1)1+1a1. b=⎜ 2⎟ .(-3) = 240. . . a1n ⎤ ⎛ x1 ⎞ ⎛ b1 ⎞ ⎜ ⎟ ⎜ ⎟ ⎥ . khử Gauss.2 det Mi. xn)t của hệ (2-2. Giới thiệu Cho hệ phương trình gồm n phương trình tuyến tính với n ẩn số x1.93 -2.3 =1. bắt đầu là dấu dương..a13a22a31 c) Định thức của ma trận vuông cấp n tổng quát Có thể tính theo cột hoặc hàng bất kỳ.. Ví dụ nếu chọn một hàng i nào đó.2. ..1 + (-1)i+2 ai.1 + (-1)1+2 a1.3 = a1.a12a23a31 + a13a21a32 . + . + a2 n xn = b2 . là phương pháp cho ta nghiệm đúng của hệ phương trình (1-2.1 ...1) trong đó ⎡ a11 ⎢a 21 A=⎢ ⎢ .. x=⎜ ⎟... = bn (1-2.1 det M1. M 1.3 = ⎢ A = ⎢− 4 5 6⎥⎥ .2 + a1. + (-1)i+n ai.2 + (-1)1+3 a1..1 det M1....3 det M1.. 50 .

ví dụ như các phương pháp Jacobi. x3 = 152/44 = 38/11 Vậy x = (-10/11.NCT-FIT-HNUE Computional methods and Optimization Problems Phương pháp gần đúng hay còn gọi là phương pháp lặp. b = ⎢⎢30⎥⎥ ⎢⎣ − 1 − 2 3⎥⎦ ⎢⎣ 8 ⎥⎦ Vậy 0 2⎤ 6 2⎤ 0 6⎤ ⎡6 ⎡1 ⎡1 ⎢ ⎥ ⎢ ⎥ ⎢ A1 = ⎢30 4 6⎥ . Khử Gausse. x2 = 72/44 = 18/11. Trong chương này chúng ta sẽ tìm hiểu các phương pháp: Cramer. Quá trình này được lặp nhiều lần và với một số điều kiện nhất định. A2 = ⎢− 3 30 6⎥ . ta nhận được nghiệm gần đúng của hệ với một sai số có thể ước lượng được. Gauss-Seidel. giảm dư.2.1) có nghiệm duy nhất và nghiệm của nó có thể tính theo phương pháp Cramer với công thức: x = A−1b tức là xj = det A j (1-2. 18/11. Hãy giải hệ ⎧ x1 ⎪ ⎨− 3 x1 ⎪−x ⎩ 1 + 2 x3 = + 4 x2 + 6 x3 = 30 − 2 x2 + 3 x3 = 6 8 Giải: Ta có 0 2⎤ ⎡1 ⎡6⎤ A = ⎢⎢− 3 4 6⎥⎥ . det A3 = 152 Ta suy ra các thành phần nghiệm của hệ đã cho: x1 = -40/44 = -10/11. Giới thiệu phương pháp Cramer Nếu det A ≠ 0 thì hệ (2-2.. 51 .2. từ giá trị này tính các giá trị nghiệm gần đúng tốt hơn theo một qui tắc nào đó. det A2 = 72. Ví dụ 1-2. A3 = ⎢− 3 4 30⎥⎥ ⎢⎣ 8 − 2 3⎥⎦ ⎢⎣ − 1 8 3⎥⎦ ⎢⎣ − 1 − 2 8 ⎥⎦ Ta tính được det A = 44 ≠ 0 det A1 = -40. là phương pháp giải hệ bằng cách cho nghiệm một giá trị ban đầu. 38/11)t là nghiệm của hệ đã cho.2) det A trong đó Aj là ma trận nhận được từ ma trận A bằng cách thay cột thứ j bởi cột b. 2. Gauss-Seidel và giảm dư.

a nn a1. . • • Cơ sở của việc biến đổi: Sử dụng các phép biến đổi tương đương như: - Đổi chỗ 2 phương trình bất kỳ. Phương pháp khử Gauss a) Mô tả phương pháp • Cần biến đổi ma trận vuông A cấp n về dạng ma trận tam giác trên: ⎡ a11 ⎢a 21 A=⎢ ⎢ .... Một đặc điểm của các phương pháp đó là khước từ việc nghịch đảo ma trận. . 1018 và n!(n+1)(n-1) ≈ 9. a '1n a ' 22 .. .n +1 ⎦ ⎣ 0 a '12 . Nếu máy tính thực hiện được 100 triệu phép tính trong một giây thì để để thực hiện được khối lượng tính toán trên cần 3. 2. phương pháp khử Gauss gồm 2 quá trình: - Quá trình thuận: đưa ma trận A về dạng tam giác trên.n+1 ⎦ Để tiện cho quá trình biến đổi tương đương. mỗi số hạng là tích của n thừa số. tức là tính các nghiệm xn. ... a ' 2 n . xn = 1 bn ann 52 .1 lần biến đổi : Lần biến đổi thứ i (làm cho aji = 0 .. xn-1. Cách biến đổi A Æ A’: Thực hiện n . Cụ thể là.. - Nhân một phương trình bất kỳ với một số khác không.. nghĩa là cần rất nhiều các phép tính số học.3.. Như vậy... an 2 a1n .. do vậy để tính mỗi số hạng cần thực hiện n-1 phép nhân.3) Quá trình ngược: giải hệ tam giác trên từ dưới lên trên. ⎥ ⎥ ⎢ a n . - Cộng vào một phương trình một tổ hợp tuyến tính của một số phương trình khác Từ đó.. Giả sử n=20. chục nghìn. 0 .2) rất đẹp về mặt lý thuyết nhưng rất đắt về về mặt tính toán. …. n. …. chẳng hạn cỡ nghìn. Vì thế cần phải có các phương pháp giải hệ phương trình tốt hơn để có thể cho lời giải trong một thời gian chấp nhận được. ta coi cột b là cột thứ n + 1 của ma trận A. a 22 .. thậm chí cỡ hàng triệu. n) bằng cách công thức: Dòng j - = Dòng j + Dòng i × m . 105 năm! Trong khoa học và công nghệ người ta thường phải giải các hệ phương trình cỡ lớn hơn 20 rất nhiều. j = i + 1. .7073 ..n+1 ⎥ Æ A' = ⎢ ⎢ . ⎥ a ' n . ⎢ ⎣a n1 a12 .. mà mỗi định thức chứa n! số hạng. Và kim chỉ nam cho việc xây dựng các phương pháp nhanh để giải hệ phương trình đại số tuyến tính cỡ lớn là khai thác triệt để các thông tin về ma trận của hệ. j = i + 1. a ' nn a '1...2) đã là n!(n+1)(n-1). riêng số phép nhân phải thực hiện trong (12. Khi đó n!=20! ≈ 2. x1 bằng phương pháp “thế ngược”.n+1 ⎥⎥ ⎥ ..n+1 ⎤ ⎡a '11 ⎥ ⎢ 0 a 2.NCT-FIT-HNUE Computional methods and Optimization Problems Nhận xét : Công thức (1-2. m = − a ji aii (1-2. a 2 n .4329 .0782 . để tính các xj theo công thức trên cần tính n+1 định thức cấp n.1023.n+1 ⎤ a ' 2.

n−1 (bn−1 − an−1. b] = ⎜ 2 3 1 ⎜3 1 2 ⎝ 6⎞ ⎟ 6⎟ 6 ⎟⎠ Quá trình thuận • i=1 Dòng 2 = Dòng 2 .2 * Dòng 1 Dòng 3 = Dòng 3 .b] = ⎜ 0 − 1 − 5 ⎜0 − 5 − 7 6 ⎟⎠ ⎝ 6 ⎞ ⎟ −6 ⎟ − 12 ⎟⎠ i=2 Dòng 3 = Dòng 3 . 53 .2 .NCT-FIT-HNUE Computional methods and Optimization Problems xn−1 = 1 an−1. x1 = 6 .b] = ⎜ 0 − 1 − 5 ⎜ 0 0 18 − 12 ⎟⎠ ⎝ 6 ⎞ ⎟ − 6⎟ 18 ⎟⎠ Như vậy kết thúc quá trình trên ta sẽ thu được hệ có dạng tam giác trên ⎧ x1 ⎪ ⎨ ⎪ ⎩ + 2 x2 + 3 x3 = − x2 − 5 x3 = −6 18 x3 = 6 18 Quá trình ngược Giải ngược: Tính các nghiệm xn.3. x2 = 6 .5. ….3) … xi = n 1 (bi − ∑ aij x j ) aii j =i +1 Ví dụ 1-2.b] = ⎜ 0 − 1 − 5 ⎜0 − 5 − 7 ⎝ ⎛1 2 6 ⎞ 3 ⎟ ⎜ − 6 ⎟ → [A.n xn ) (2-2.b] = ⎜ 2 3 1 ⎜3 1 2 ⎝ • ⎛1 2 6⎞ 3 ⎟ ⎜ 6 ⎟ → [A.3 * Dòng 1 ⎛1 2 3 ⎜ [A.1 = 1. Giải hệ phương trình ⎧ x1 ⎪ ⎨2 x1 ⎪3 x ⎩ 1 + 2 x2 + 3 x3 = 6 + 3 x2 + x2 + x3 + 2 x3 = 6 = 6 Ta có ⎛1 2 3 ⎜ A' = [A.5 * Dòng 2 ⎛1 2 3 ⎜ [A.3 = 1. x1 bằng phương pháp “thế ngược”: Ta tính được x3 = 1. xn-1.

(-5). ⎛2 4 3 ⎞ ⎛ 1 2 1.2x3 = -2 4x1+ 11x2+ 7x3 = 7 Các hệ số và vế phải của các hệ trung gian thu được sau từng bước khử được viết trong dạng ma trận mở rộng như sau ⎛2 4 3 4 ⎞ ⎜ ⎟ ⎜3 1 .3 ⎜ 4 11 7 ⎟ ⎜ 4 11 7 ⎟ ⎜0 3 1 ⎟ ⎜ 0 0 . x2 = -1.2 . do đó có thể làm giảm độ chính xác của nghiệm tìm được. Do đó.3 ⎟ = 2. Giải hệ PTĐSTT sau bằng phương pháp khử Gauss: 2x1 + 4x2+ 3x3 = 4 3x1+ x2.6 ⎟ . cột n+1 là vế phải của phương trình.9) det ⎜ 0 1 ⎜0 0 ⎝ ⎞ ⎟ ⎟ ⎟ ⎠ 1.(-2. Nếu nó bằng 0 thì quá trình không thực hiện được. Nhận xét 2: Trong phương pháp khử Gauss ta sử dụng các phép biến đổi lên ma trận như chia một hàng cho một số.n+1) là ma trận các hệ số.5 .1 ⎟⎠ ⎝ ⎛1 2 ⎜ ⎜0 1 ⎜0 0 ⎝ ⎛1 2 ⎜ ⎜0 1 ⎜0 0 ⎝ 2 ⎞ ⎟ 1. Nhận xét 1: Trong quá trình thuận ta phải thực hiện phép chia cho phần tử trụ aii. Ngoài ra nếu nó có trị tuyệt đối nhỏ thì khi chia cho nó sai số làm tròn sẽ lớn.5 . x3 = -2. 1 ⎟⎠ b) Thuật toán Khử Gauss Input: n.6.9) = 29.5 ⎜ ⎟ ⎜ 0 .NCT-FIT-HNUE Computional methods and Optimization Problems Khối lượng tính toán: Ta có thể đánh giá được tổng số phép toán của phương pháp khử Gauss là O(n3) khi n đủ lớn. 54 .2⎟ ⎜ 4 11 7 7 ⎟ ⎝ ⎠ 2⎞ ⎛ 1 2 1.3.2 ⎟ = 2 det ⎜ 3 1 .8 ⎟ ⎜0 3 1 .3.2.3 1. trừ đi từ hàng một hàng khác nhân với một số và đổi chỗ hai hàng. Để khắc phục khó khăn trên người ta thường dùng phương pháp Gauss với phần tử trụ có trị tuyệt đối lớn nhất trong cột.(-5) det ⎜ 0 1 1.5 .5 ⎜ ⎜ ⎜ ⎜ ⎟ ⎟ ⎟ det ⎜ 3 1 .2 ⎟ = 2 det ⎜ 0 . ma trận a(n..6 ⎟ 2 ⎟⎠ Quá trình tính ngược cho ta x1 = 1.5.6.5 ⎟ = 2.(-5).2.5 1.(-2. định thức của ma trận A có thể tính theo công thức (1) ( n −1) det A = (−1) k a11( 0 ) a 22 .5 ⎞ ⎛ 1 2 1. trong đó k là số lần đổi chỗ các hàng và aiij là phần tử trụ lần lặp thứ i. Ví dụ 2-2.5 ⎞ ⎛ 1 2 1.a nn .9 ⎝ ⎝ ⎝ ⎝ ⎠ ⎠ ⎠ ⎛1 2 ⎜ = 2.5 ⎞ ⎟ 1..8 ⎟⎠ 1.9 . Ví dụ 3-2.3 1 2⎞ ⎟ 1.5 1.

.n +1 a11 1 (a 2.3. j = 1..NCT-FIT-HNUE Computional methods and Optimization Problems Output: véct tơ nghiệm x. 2. − . . ai (i=1. − a n ... + an 2 x2 . ...n+1 Về dạng ⎧ ⎪ x1 ⎪ ⎪⎪ x 2 ⎨ ⎪.. gán kết quả cho phương trình trung gian c a[i.. = 1 (a1.i] = 0 thì tìm phương trình j sao cho a[j.i] ≠ 0..i] để chuẩn bị cho việc khử x[i] trong các phương trình còn lại . . + .. ... Nhập n. Quá trình thuận: Biến đổi A Æ A’ Lặp quá trình sau với i = 1 Æ n . .1. ⎪⎩a n1 x1 + a12 x 2 + .n −1 x n −1 ) .i]. Tính x[n]=a[n. xn 2.. . + a 2 n x n = a 2. Phương pháp Gauss-Seidel a) Mô tả phương pháp Ý tưởng chung của phương pháp Gauss-Deidel là đưa hệ Ax = b về dạng x = Bx + g..1 2.. . 1 (a n . n. Với mỗi phương trình j = i +1 Æ n Cộng phương trình j với phương trình c sau khi phương trình c (tức là phương trình i ở trên) đã nhân với -a[j.k]) .. ⎪ ⎪ xn ⎪⎩ = = ..n +1 a 22 . với k = 1. Algorithm: 1. c[j]=a[i. + a nn xn = a1. biến đổi hệ ⎧ a11 x1 ⎪a x ⎪ 21 1 ⎨ ⎪ . .j]..... n (ii) Tính x[k] = a[k. .4. Quá trình ngược 3.k] = a[j.j]/a[i.k] + c[k] * (-a[j. − a1n x n ) − a 23 x3 − .2. Trước hết.. j] với j = k+1. a1n x n . nếu không thì kết luận hệ suy biến và dừng thuật toán. Xuất x1. = a n .. 2... 2.n+1]. n 3. nếu a[i...1. 1 (i) Tính tổng s = s + a[k.. 3.2. với j = 1.. .. x2. + + a 22 x2 + .4) .2. .n +1 a nn − a12 x2 − a 21 x1 − a13 x3 − . n. Nếu tồn tại phương trình j thì hoán đổi hai phương trình cho nhau. n + 1] .. − a2 n xn ) . .. Chia 2 vế của phương trình i cho a[i.j]=a[i.s 4.i].. Xét a[i. . .. Tính thành phần nghiệm x[k] với k = n-1. − a n1 x1 − a n 2 x2 − a n 3 x3 55 .n +1 .. n+1) 2... ..n+1 (1-2.i] a[j. .

. − ⎟ ⎜ a 22 ⎥ . …. x n0 ) t ...4) để tính x1 = ( x11 . ⎢ a ⎢− n1 ⎢⎣ a nn − a12 a11 0 .4) trong đó B gọi là ma trận lặp và ⎡ ⎢ 0 ⎢ ⎢ − a 21 B = ⎢ a 22 ⎢ .. Thay x0 vào phương trình (2-2.. an 2 − a nn ⎛ a1. n thì n xi = (ai .. ⎟ ⎜ ⎥ xn ⎟⎠ ⎝ ⎜ a n . ⎥ ⎜ .n +1 − ∑ a 2 j x j ) / a 22 ( j ≠ 2) = j =1 n j =1 ...n+1 − ∑ aij x j ) / aii . ( j ≠ n) j =1 Tổng quát ta có với i = 1. xk Tổng quát: xik +1 = n 1 (ai .... x 20 .. − Tiếp theo. x3. . ….n+1 − ∑ aij x 0j ) / aii . 2. j ≠ i j =1 Tiếp tục quá trình đó ta tính x2.. j ≠ i aii j =1 (4-2.4) Quá trình lặp nói trên sẽ dừng tại xk nếu thỏa mãn tiêu chuẩn hội tụ tuyệt đối: xik +i − xik < ε (∀i = 1.n +1 − ∑ a1 j x j ) / a11 ( j ≠ 1) = (a 2. g = ⎜ a 22 ⎟ ... ⎜ ⎟ .NCT-FIT-HNUE Computional methods and Optimization Problems Hay ⎧ ⎪ x1 ⎪ ⎪⎪ x ⎨ 2 ⎪.. ...n +1 ⎟ . n) b) Điều kiện hội tụ của phương pháp Gauss-Seidel Hệ phương trình có ma trận lặp B thỏa mãn một trong các điều kiện sau đây thì quá trình lặp sẽ hội tụ: 56 .n+1 − ∑ a nj x j ) / a nn .4) có dạng x = Bx + g (3-2.n+1 − ∑ aij x kj ) . x1n ) t với n xi1 = (ai ... 0 ⎥ ⎜ a ⎟ ⎥⎦ ⎝ nn ⎠ ... = (a n .n +1 ⎞ a1n ⎤ ⎟ ⎜ ⎥ a a11 ⎟ ⎜ x ⎛ ⎞ 11 ⎥ ⎜ 1⎟ ⎜ a 2. ⎪ ⎪ xn ⎪⎩ n (a1. n ... cho hệ nghiệm ban đầu x0 = ( x10 .n +1 ⎟ a2n ⎥ ⎜ x2 ⎟ ..4) j =1 Viết gọn hơn thì hệ (1-2. j ≠ i (2-2. x = ⎜ ⎟ . x12 ....

9975 1.4 x3( k ) + 1.0000 0.0009 5 1.25 x 2( k +1) + 1 ⎩ x3 cho thấy phương pháp Gauss-Seidel thực sự hội tụ nhanh.1x3 +1 − 0.6000 2 0. Giải hệ cho dưới dạng ma trận [A.9951 1.0009 -1.4) i =1 n ∑b 2 ij j =1 <1 (7-2.6 ⎪ ( k +1) = −0.0001 0.2 x 2( k ) − 0.8 57 .0000 Ví dụ 2-2.2 x3 + 1 .0052 4 1.4) ta có ⎧ x1 ⎪ ⎨ x2 ⎪x ⎩ 3 = = − 0.1x 2 − 0.4000 0.1x1 − 0 .4) thì ⎧ x1( k +1) = 0.9400 -0.0000 1.6000 -1.1x1 = − 0.NCT-FIT-HNUE Computional methods and Optimization Problems n r1 = max ∑ bij < 1 (i) i (5-2.9948 -0.4) j =1 n r2 = max ∑ bij < 1 (ii) j n r3 = ∑ (iii) i =1 (6-2.0000 -1.25 x1( k +1) − 0.25 x1( k +1) + 0.4.0002 0.9500 0.2 x 2 − 0.2 + 0 .0001 1.0000 0.25 x3( k ) − 1 ⎨ x2 ⎪ ( k +1) = −0. k x1( k ) x 2( k ) x3( k ) || x ( k ) − x || ∞ 1 1.0600 3 0.4.4) Ví dụ 1-2. Bảng kết quả tính toán dưới đây giải hệ ⎧5 x1 − x 2 + 2 x3 = 8 ⎪ ⎨ x1 + 4 x 2 − x3 = −4 ⎪ x + x + 4x = 4 2 3 ⎩ 1 theo công thức (4-2. b] với sai số không vượt quá 10-3.0000 -1.0001 6 1.0144 0.9998 0. ⎡10 2 1 10⎤ ⎢ 1 10 2 10⎥ ⎢ ⎥ ⎢⎣ 1 1 10 8 ⎥⎦ Áp dụng công thức (4-2.

2 ⎥ . và bảng kết quả là k x1(k) x2(k) x3(k) 1 1.1.1 0 − 0 . Nhập nghiệm xuất phát x = (x1.xi6| < 10-3 ∀ i = 1.NCT-FIT-HNUE Computional methods and Optimization Problems Ta có − 0. Algorithm: 1.1⎤ ⎡ 0 ⎛ 1 ⎞ ⎜ ⎟ ⎢ ⎥ B = ⎢ − 0 .733 0. 1.738 1.737 1.8 2 0. c) Thuật toán Gauss-Seidel Input: n.. 0.2 0.2. ai (i=1 Æ n.001.yn) */ 4.626 Nghiệm của hệ là x = (0.2 − 0.016 0.94 0..997 0.xn) /* Ta gọi nghiệm thứ k là x.n+1) là ma trận các hệ số. ma trận a(n.626) vì |xi7 .58 3 0. j = 1 Æ n+1) 2. x3.001 0.754 1..627 6 0.2.737.002 0.1 0 ⎥⎦ ⎝ ⎠ n Do r1 = max ∑ bij = 0. 0. y2.8)t. nghiệm thứ k+1 là y = (y1.1 − 0.3 < 1 thỏa mãn điều kiện hội tụ nên ta có thể áp dụng phương pháp Gaussi j =1 Seidel. Tính các thành phần yi cho nghiệm tiếp theo.626 7 0. Nhập sai số ε 3. g = ⎜ 1 .2.638 4 0.n+1 .. 0.8 ⎟ ⎢⎣− 0.3. với i = 1 Æ n a) Khởi tạo tổng S = 0 b) Với j = 1 Æ n Nếu (j ≠ i) thì gán S = S + aij * xj c) yi = (ai. 0)t thay vào ta được x1 = (1.2 ⎟ ⎜ 0 . Chọn x0 = (0.001 0.68 0. . Khởi tạo stop = true 4. . x2. Nhập n. Output: véct tơ nghiệm x. 1.S)/aii d) Nếu |yi . tương tự tính x2. e) Thay xi = yi 58 . . cột n+1 là vế phải của phương trình.737 1.623 5 0.xi| ≥ ε thì gán stop = false. Lặp quá trình sau đây 4..

.. = a n .5) ..5) R10.. .n +1 − b12 x 2 ⎪b ⎪ 2... − .. − a nn x n . . x n0 ) t Vì x0 chưa phải là nghiệm.. − bn 2 x20 − − .. (2-2.. thu được hệ có dạng ⎧b1. |R20|.. .5) (6-2.5) = 0 Cho vectơ (cột) nghiệm ban đầu là x0 = ( x10 . ... Rn0 là các số dư sai khác giữa nghiệm x0 và nghiệm đúng của hệ.. + a1n xn = a1. (1-2. − bn1 x10 − b13 x30 − b23 x30 .5. .n +1 − bn1 x1 − b13 x3 − .. = Rn0 (4-2.. . .. − x n . . Tìm Rs0 = max {|R10|. x 20 . − x10 .n+1 ⎪a ⎪ 2..s * δxs = Ri0 .. .n+1 ⎩ − b12 x20 − b21 x10 . 2. n) 59 (5-2. − x2 = 0 . ... − x20 .. − . − .s * Rs0 (i = 1. (3-2... |Rn0|} và làm triệt tiêu phần tử đó bằng cách cho xs một số gia δxs = Rs0. − bn 2 x 2 . ...n+1 ⎨ ⎪ ⎪⎩a n .... Tính lại các số dư: Rs1 = 0 Ri1 = Ri0 .n+1 ⎨ ⎪ ⎪bn .... − a 2 n x n = 0 .. .. nghĩa là xs1 = xs0 .n+1 về dạng a1n xn = 0 − a 22 x2 − .NCT-FIT-HNUE Computional methods and Optimization Problems Lặp quá trình trên đến khi stop = true 5. − . − . .n +1 − b21 x1 ⎨ .n+1 + a 22 x2 + .n+1 . .n+1 − a11 x1 − − a 21 x1 a12 x 2 + ..Rs0. . ⎪ ⎪⎩bn . . R20. Phương pháp giảm dư a) Mô tả phương pháp Biến đổi hệ phương trình ⎧ a11 x1 ⎪a x ⎪ 21 1 ⎨ ⎪ . + a 2 n xn = a 2. .n+1 ⎪ ⎪b2.5) ... .. − xn0 = R10 = R20 . − a n1 x1 − an 2 x2 a12 x2 ... .. + a nn xn ⎧ a1. . ... .. .5) = 0 Chia hàng i cho aii ≠ 0.bi.. Xuất xi (i = 1 Æ n) 2. nên ⎧ b1. .bi. − x1 = 0 − b23 x3 − . ⎪⎩a n1 x1 + + a n 2 x2 + .

02 0 0 0.7.NCT-FIT-HNUE Computional methods and Optimization Problems Cứ tiếp tục quá trình lặp trên cho đến khi |Rik| < ε (∀i=1. ∀i =1. 2.1x2 − − x2 x3 = 0 = 0 Cho x0 = (0.78 0 0. 1).04 0 0.1 × 0.18 0. x31 = x30 + R30 = 0.8 = 0. .78 Æ R1 = (R11.01 0 0.78.R30 = 0.99 1 1 1 Vậy nghiệm của hệ là x = (1..6 + 0.6 0.76.5. 0) Tương tự. xnk) là nghiệm của hệ.2 × 0. 0..2 x2 ⎪ ⎨0..92 0. 0.8 = 0.78 0.08 0 0.99 0.19 0.03 0.96 0. 0) Æ R0 = (R10.8 Tính lại các số dư: R31 = 0 R11 = R10 + b13.76 0. 0.2 x1 ⎪0.01 0 0 0 0 0.07 0. R30) = (0. ta có bảng kết quả x1 0 x2 0 x3 R1 R2 R3 0 0. x2k.99 0.6. 3. . Giải hệ cho bởi ma trận [A.7 0.8 + 0.1x 1 ⎩ + 0 .6 + 0. R20.. R31) = (0..17 0. 1.01 0. Ví dụ 1-2.7 + 0.92 0 0.. R21.b] sau ⎡ 10 − 2 − 2 6⎤ ⎢− 2 10 − 1 7 ⎥ ⎢ ⎥ ⎢⎣ 1 1 − 10 8 ⎥⎦ Giải: Biến đổi hệ về dạng ⎧0. n) thì xk = (x1k.01 0.2 x 3 + 0.2 x 3 − x1 = 0 + 0 .76 R21 = R20 + b23.R30 = 0.7 + 0. 0.01 0 0 0 0.8.8 0.8 0.8) R30 = max{|Ri0|} = 0. 60 .

a[i. n) Lưu ý: . 61 . ….n+1) là ma trận các hệ số.i] = 1. for j=1 Æ n r[i] = r[i] . (i= 1.j] / a[i. if (|r[i]| ≥ ε) continue = true. xi 2.NCT-FIT-HNUE Computional methods and Optimization Problems b) Thuật toán Giảm dư Input: n. } 5. } 4. /* Tính lại r[i] và kiểm tra khả năng lặp tiếp theo */ d = r[k]. 2. for i = 1 Æ n { for j = 1 Æ n+1 if (i!=j) a[i. ma trận a(n.13) về dạng (3.} x[k] = x[k] + r[k].Phương pháp chỉ thực hiện được khi aii ≠ 0. n+1]. k] * d.j] * x[j]. Xuất nghiệm x[i]. Algorithm: 1. Khởi tạo đầu lặp continue = true 6. n) for i = 1 Æ n { r[i] = a[i. . for i = 1 Æ n { r[i] = r[i] . n} và tính lại xs */ max = |r[1]|.14) 3.. Biến đổi hệ từ dạng (3. ….i].. i = 1. k = i. cột n+1 là vế phải của phương trình.. Output: véct tơ nghiệm x. k = 1. Lặp khi continue = true continue = false.Quá trình hội tụ không phụ thuộc vào x0 mà chỉ phụ thuộc vào bản chất của hệ phương trình. 2.} 7. for i = 1 Æ n if (max < |r[i]|) {max = r[i]. .a[i. nếu không phải đổi hàng. 2. Nhập n. Tính r[i] ban đầu (i = 1. /* Tìm rs = max{|r[i]|.a[i. aij.

6) Vấn đề đặt ra là liệu sự thay đổi δx của nghiệm có phụ thuộc liên tục vào sự thay đổi của dữ kiện đầu vào là δA và δb hay không.0001x1 + x 2 = 3 ⎨ ⎩x 1 + x 2 = 3 có nghiệm là x1= 0.Nếu các phần tử aii càng lớn hơn các phần tử trên dòng bao nhiêu thì quá trình hội tụ càng nhanh. Ví dụ 2-2. rất khác so với nghiệm của hệ đã cho. Hệ phương trình ⎧x1 + 2x 2 = 1 ⎨ ⎩x1 + 2.01x 2 = 1 có nghiệm là x1= 1. x2 = 0.01x 2 = 2.01 lại có nghiệm là x1= -19. Hệ với nhiễu nhỏ của vế phải ⎧x 1 + 2x 2 = 1 ⎨ ⎩x 1 + 2. .6) trong đó các hệ số aij và bi được tính theo một công thức nào đó. rất khác so với nghiệm của hệ đã cho. x2 = 10. Như vậy. trong đó xảy ra hiện tượng “sai một ly đi một dặm”.NCT-FIT-HNUE Computional methods and Optimization Problems . Trong khi đó hệ với nhiễu nhỏ của ma trận A ⎧x 1 + x 2 = 3 ⎨ ⎩x 1 + 1. Vấn đề ổn định của nghiệm của hệ phương trình Trong nhiều trường hợp người ta thu được hệ phương trình đại số tuyến tính Ax = b (1-2. cụ thể là sai số nhỏ của dữ kiện dẫn đến sai số lớn của nghiệm. x2 = 0.6.0001x 2 = 3 có nghiệm là x1= 3.6). Hệ phương trình ⎧1. tức là khi dữ kiện đầu vào thay đổi ít thì liệu nghiệm có thay đổi ít không? Dưới đây ta chỉ ra một vài thí dụ. x2 = 3. mà là hệ phương trình với ma trận nhiễu A+δA và vế phải nhiễu b+δb. Ví dụ 3-2.01x 2 = 1. có thể là khá phức tạp cho nên không tránh khỏi sai số. Và tất nhiên nghiệm của hệ nhiễu này bây giờ không phải là x mà là x+δx.Mọi hệ phương trình có giá trị riêng λ ≥ 1 đều hội tụ đến nghiệm một cách nhanh chóng.6. Ví dụ 1-2. 2. Khi đó người ta thu được không phải là hệ (1-2. ta có (A + δA)( x+δx) = b+δb (2-2.01 62 .6.6. Hệ phương trình ⎧2x 1 + x 2 = 2 ⎨ ⎩2x 1 + 1.

. …. Do đó ta có (A . x2 = 1. Số λ gọi là giá trị riêng của A nếu phương trình Ax = λx.1: Giả sử A là ma trận vuông cấp n.05 lại có nghiệm là x1= 5. x2.1. …. 2) thì Ax = 3x Do đó giá trị riêng của A là 3 ứng với vectơ riêng là (1.01x 1 + x 2 = 2. x2 = -8. Tính gần đúng giá trị riêng và véc tơ riêng của ma trận 3. x ∈ Rn. Ví dụ 1-3.1) có nghiệm x = (x1. Định nghĩa 2-3. 0.1) Đó là phương trình để xác định giá trị riêng của A. xn) khác (0.λE)x = 0 (2-3. Hãy tìm các giá trị riêng của ma trận ⎡ 3 2⎤ A=⎢ ⎥ ⎣− 1 0⎦ Giải: Ta có 63 . Chú ý trong cách viết Ax. ta viết Ax = λx thành Ax = λEx. khác xa so với nghiệm của hệ gốc đã cho. 0). Ví dụ 2-3. 2) ∈ R2. 3. Muốn cho λ là giá trị riêng của A và hệ trên có nghĩa x ≠ 0 thì điều kiện cần và đủ là det (A-λE) = 0 (3-3.1) được gọi là phương trình đặc trưng của ma trận vuông A.1. Phương trình (3-3.NCT-FIT-HNUE Computional methods and Optimization Problems có nghiệm là x1= 0.1) Đây là một hệ phương trình tuyến tính thuần nhất. trong đó E là ma trận đơn vị cấp n. x ∈ Rn (1-3.5. Vectơ x ≠ 0 này được gọi là vectơ riêng ứng với giá trị riêng λ. Để tìm giá trị riêng của ma trận vuông A cấp n. Nhưng hệ phương trình trên với sự thay đổi ít của ma trận A và vế phải ⎧2x 1 + x 2 = 2 ⎨ ⎩2. x luôn hiểu là vecto cột. Ta thấy A⎢ ⎥ = ⎢ Cho A = ⎢ ⎥ ⎢ ⎥ = ⎢ ⎥ = 3⎢ ⎥ ⎥ ⎣2⎦ ⎣8 − 1⎦ ⎣2⎦ ⎣6⎦ ⎣2⎦ ⎣8 − 1⎦ Vậy với x = (1. Giới thiệu Định nghĩa 1-3.1. Trong những thí dụ trên ta nói rằng hệ phương trình có nghiệm không ổn định. ⎡1⎤ ⎡3 0 ⎤ ⎡1⎤ ⎡3⎤ ⎡1 ⎤ ⎡3 0 ⎤ .1.

⎢⎣ 0 p2 0 1 . 2 0 .n ⎥ 0 1 ⎥⎦ (1-3. Thực hiện n .. . M sao cho A1 = M1 A M ~ A và dòng thứ n của A1 có dạng là 0 0 0 .. ⎥ ⎥ .3) Hàng thứ n-1 của M-1 bằng hàng thứ n của A. ta chỉ cần tìm ma trận B sao cho B đồng dạng với ma trận A và B có dạng là ma trận Phơ-rê-be-mit.. 1 pn ⎤ 0 ⎥⎥ 0⎥ ⎥ . 1 0.. Ma trận đồng dạng Định nghĩa 1-3.λI) = 3−λ −1 2 = λ2 .. 0 ⎤ . 3.NCT-FIT-HNUE Computional methods and Optimization Problems ⎡ 3 2⎤ ⎡1 0⎤ ⎡3 − λ − λ⎢ A.. Ma trận B gọi là ma trận đồng dạng với ma trận A. kí hiệu là B ~ A. B ~ C Æ A ~ C A ~ B Æ Giá trị riêng λ của A và B trùng nhau. . j = An . a n .3. Tìm giá trị riêng bằng phương pháp Đa-nhi-lép-ski a) Mô tả phương pháp tìm giá trị riêng Mục tiêu cần đạt được là đưa ma trận A về dạng ma trận Phơ-rê-be-mit.. . Trong phương pháp này. Tính M-1 và M có dạng như sau: M −1 ⎡ 1 ⎢ 0 ⎢ =⎢ . nếu tồn tại ma trận không suy biến M (tức det M ≠ 0) sao cho B = M-1AM. . khi tìm giá trị riêng λ ta có thể áp dụng phương pháp Đa-nhi-lep-ski..2. . Tính chất: A~BÆB~A A ~ B...1 lần biến đổi: • Lần biến đổi 1: Tìm M-1...3λ + 2 = 0 −λ Suy ra λ = 1 và λ = 2 là các giá trị riêng của A. ⎥ 0 ⎥⎦ (4-3.λI = ⎢ ⎥ ⎥=⎢ ⎣− 1 0⎦ ⎣0 1 ⎦ ⎣ − 1 2 ⎤ − λ ⎥⎦ Vậy phương trình đặc trưng của A là det (A . 0 ⎥⎥ .1 ⎢⎣ 0 0 1 ... j 64 . 3... nói cách khác ta có: M n−−11.2.. pn−1 0 0 . ⎢ ⎢a n . a n.. Để tránh việc khai triển định thức đòi hỏi số phép tính lớn. 0 .1) Khi đó giá trị riêng của A cũng là giá trị riêng của B. ⎡ p1 ⎢1 ⎢ P=⎢0 ⎢ ⎢...

. 2 . ⎢ a n .3...3) a 1 n . 0 .p1λn-1 .n ⎥ − ⎥ a n .n −1 0 . • Lần biến đổi thứ n .. Riêng phần tử trong M ở vị trí tương ứng với phần tử biến đổi của A thì mang dấu dương và bằng 1 chia cho phần tử biến đổi.pn-1λ .. j ⎪⎩ a n .. Chú ý rằng P = M-1AM. a n. .n −1 if j = n −1 (3-3. . ⎥ 0 ⎥⎦ Khi đó giá trị định thức của P . Ta thu được A2 ~ A1.. Computional methods and Optimization Problems 0 0 ⎤ 0 0 ⎥⎥ . M sao cho A2 = M-1 A1 M ~ A1 và dòng thứ n -1 của A2 có dạng 0 0 0 ..1và cột n . A1 ~ A Æ A2 ~ A. j ⎧ 1 ⎪a ⎪ = ⎨ n . .1.n −1 ⎥ 0 1 ⎥⎦ Gọi phần tử biến đổi của ma trận A ứng với lần thứ nhất là phần tử ở hàng n và cột n . . Phần tử biến đổi của A ứng với lần thứ hai ở trên hàng n ... 1 pn ⎤ 0 ⎥⎥ 0⎥ ⎥ . a n .pn-1λ .n −1 a ⎪− n .. 1 0 0..2..… . Nói cách khác ta có: M n −1.p1λn-1 .. ⎥ (2-3. ⎡ p1 ⎢1 ⎢ P=⎢0 ⎢ ⎢. Riêng phần tử trong M ở vị trí tương ứng với phần tử biến đổi của A thì mang dấu dương và bằng 1 chia cho phần tử biến đổi.3) if j ≠ n −1 A1 = M-1 A M ~ A • (4-3.. ⎢⎣ 0 p2 0 1 .NCT-FIT-HNUE ⎡ 1 ⎢ 0 ⎢ M =⎢ .2 của M-1 sẽ bằng hàng thứ n .λE) = 0 ⇔ λn . pn−1 0 0 ..n −1 ⎣⎢ 0 − 0 1 .λE) = (-1)n (λn ..… ..1 ta nhận được ma trận An-1 ~ A và có dạng ma trận Phơ-rê-be-mit P. • .Hàng thứ n . .. Hàng thứ n-1 của M bằng hàng thứ n của A chia cho phần tử biến đổi và thương mang dấu âm. .. Tại lần này: .3) Lần biến đổi 2 tương tự: Chọn M-1.2 của M bằng hàng thứ n -1 của A chia cho phần tử biến đổi và thương mang dấu âm.n −1 a n .λE là det (P . Giải phương trình trên ta suy ra được các giá trị riêng λ..1 ⎢− ⎢ a n . .Hàng thứ n . .1 của ma trận A... . Ví dụ 1-3.pn = 0.. Tìm giá trị riêng của ma trận 65 .pn) det (P .

n) Output: Các giá trị riêng của ma trận A = (ai. M = ⎢ 0 ⎢ ⎢⎣0 0 1 ⎥⎦ ⎢0 ⎣⎢ 5 1 1 0 − − − 5⎤ ⎡1 1 ⎥ ⎢ ⎥ = 0 0 ⎥ ⎢ 1 ⎥ ⎢⎣ 0 ⎦⎥ −5 1 0 5⎤ 0 ⎥⎥ 1 ⎥⎦ Trong đó : dòng 1 của M-1 là dòng 2 của A. . b) Thuật toán Đan-nhi-lep-ski tìm giá trị riêng Input: n.. n = 3 ⎢⎣0 1 2⎥⎦ Ta tìm ma trận Phơ-rê-be-mit: ⎡ p1 P = ⎢⎢ 1 ⎢⎣ 0 p2 0 1 p3 ⎤ 0 ⎥⎥ 0 ⎥⎦ Lần 1. λ = 4. Nhập a. 2.7λ2 + 14λ . λ = 1. trừ vị trí ở chính cột 2 thì bằng 1 chia cho nó.j = 1. 2.. ⎡7 − 14 8⎤ A2 = M-1 A M = ⎢⎢1 0 0⎥⎥ = P ⎢⎣0 1 0⎥⎦ Vậy giá trị riêng là nghiệm của phương trình λ3 .4) = 0 ⇔ λ = 2. n) 66 .. chọn M −1 ⎡1 = ⎢⎢ 0 ⎢⎣ 0 0 1 1 0⎤ ⎡ 1 0 0 ⎤ ⎡1 0 0 ⎤ 2 ⎥⎥ . ⎡ 2 1 − 2⎤ A1 = M A M = ⎢⎢1 5 − 5⎥⎥ ⎢⎣0 1 0 ⎥⎦ -1 Lần 2. .j (i. chọn M −1 ⎡1 ⎡ 1 5 − 5⎤ ⎢1 ⎢ ⎥ = ⎢0 1 0 ⎥ .j) (i..j) Algorithm: 1. ai. M = ⎢− 0 1 − 2 ⎥ = ⎢0 1 − 2⎥ ⎥ ⎢ ⎢ 1 1 ⎥ ⎢ 0 0 11 ⎥ ⎢⎣0 0 1 ⎥⎦ 0 ⎥⎦ ⎦ ⎣ Trong đó : dòng 2 của M-1 là dòng 3 của A. ma trận A= (ai. trừ vị trí ở chính cột 1 thì bằng 1 chia cho nó. Dòng 2 của M bằng dòng 2 của A chia cho phần tử cột 1 lấy dấu âm.NCT-FIT-HNUE Computional methods and Optimization Problems ⎡2 1 0⎤ A = ⎢⎢1 3 1 ⎥⎥ .2)(λ .8 = 0 ⇔ (λ ..1)(λ ..j = 1. Dòng 2 của M bằng dòng 3 của A chia cho phần tử cột 2 lấy dấu âm.

M. M1[i.y = M.M n −1 .y = λ..y = λ.λ.A.y A. j] = 1} else {M[i. M1[i. j] = 1. if (j = k) M[i.j] = 0. Tìm vectơ riêng bằng phương pháp Đan-nhi-lep-ski a) Mô tả phương pháp Gọi y là vectơ riêng của ma trận P ~ A Ta có (P .j] = 0} else {M1[i.a[k+1.1 Æ 1 (phần tử biến đổi là ak+1.E.NCT-FIT-HNUE Computional methods and Optimization Problems 2.M.4) Ax = λEx Vậy x là vectơ riêng của A Tính x theo công thức (9-3. B. j].λE)y = 0 Py = λEy M-1. output: A) 4.. output: B) Lần 2: Nhân(input: M1.3) trong đó M và Y xác định bởi các công thức sau: P = M n−−11 M n−−12 . k]} /* Gọi hàm nhân 2 lần */ Lần 1: Nhân(input A.j = 1 Æ n) 3.M. Mi và Mi-1 là ma trận M và M-1 xác định ở lần biến đổi thứ i và M = M1M2…Mn-1 (2-3. Xuất ai. else M[i.4.j (i..k) /* Tính hai ma trận M và M1 (M1 là nghịch đảo của ma trận M*/ for i = 1 Æ n for j = 1 Æ n if i ≠ k if (i = j) {M[i.A.y Đặt vectơ x = My: (1-3.E.4) Xác định vectơ y nhờ phương trình (P ..j] = 1/a[k+1.j] = a[k+1.E.M.λE)y = 0 67 . Lặp k = n . Y. j]/a[k+1.. k]. M.j] = .y Nhân hai vế với M: M. Định nghĩa hàm nhân 2 ma trận vuông cấp n: Nhân(input: X. output: Z) 3.M 1−1 AM 1 M 2 .M-1.

⎢ ⎣ 0 p2 . .3... 2. ta có 3 vectơ riêng ⎡1 − 5 5 ⎤ ⎡4⎤ ⎡− 1⎤ x = ⎢⎢0 1 − 2⎥⎥ ⎢⎢2⎥⎥ = ⎢⎢ 0 ⎥⎥ ⎢⎣0 0 1 ⎥⎦ ⎢⎣1 ⎥⎦ ⎢⎣ 1 ⎥⎦ 1 68 . 1) Tìm M : ⎡1 0 0 ⎤ ⎡1 − 5 5⎤ ⎡1 − 5 5 ⎤ M = M 1 M 2 = ⎢⎢0 1 − 2⎥⎥ ⎢⎢0 1 0⎥⎥ = ⎢⎢0 1 − 2⎥⎥ ⎢⎣0 1 0 ⎥⎦ ⎢⎣0 0 1⎥⎦ ⎢⎣0 0 1 ⎥⎦ x = M y.18 ta đã tìm được 3 giá trị riêng.. Ứng với 3 giá trị riêng.. 1) λ2 = 1 Æ y2 = (1. Ở ví dụ 3. 1) (3.. − λ . ⎥ ⎢ ⎥ ⎣ yn ⎦ + .. λ..... 4. + p n −1 y n −1 p n −1 0 . λn-1.. pn ⎤ 0 ⎥⎥ . 1 hay ⎧( p1 − λ ) y1 ⎪y ⎪ 1 ⎨ ⎪ ⎪⎩ + p2 y2 + pn yn − λy 2 = 0 = 0 .4) Ví dụ 1-3.. ..... y n −1 − λy n = 0 cho yn =1 Æ yn-1 = λ. 1) λ3 = 3 Æ y3 = (16. ⎥ ⎥ − λ⎦ ⎡ y1 ⎤ ⎢y ⎥ ⎢ 2⎥ = 0 ⎢ . 0 . nên ta có λ1 = 2 Æ y1 = (4.NCT-FIT-HNUE Computional methods and Optimization Problems hay ⎡ p1 − λ ⎢ 1 P=⎢ ⎢ . y1 = λn-1 Vậy y = (λn-1. . . 1. yn-2 = λyn-1= λ2.4. Tìm vectơ riêng của A ⎡ 2 1 0⎤ A = ⎢⎢1 3 1 ⎥⎥ ⎢⎣0 1 2⎥⎦ Gọi y là vectơ riêng của ma trận Phơ-rê-be-mit P ~ A.....

3 1 ⎟' b = ⎜ 2 ⎟ .1 Æ 1 /* Tính 2 ma trận M. So sánh với nghiệm đúng x* ⎛11⎞ ⎛5 0 1⎞ ⎜ ⎟ ⎟ ⎜ a) A = ⎜ 1 3 .1⎞ ⎛ − 3⎞ ⎜ ⎟ ⎟ 1 ⎟' b = ⎜ 2 ⎟ . 1) và x3 = (1. Xuất ai. ⎜3 ⎟ 4 ⎟⎠ ⎝ ⎠ ⎛1 ⎞ ⎛ 2 0 -1 ⎞ ⎜ ⎟ ⎟ ⎜ c) A = ⎜ 1 . M. Khởi tạo B1 = E 2. 0. x2 = (1. output: A) Lần 3: Nhân(input: B1. 1) .NCT-FIT-HNUE Computional methods and Optimization Problems ⎡1 − 5 5 ⎤ ⎡1⎤ ⎡ 1 ⎤ x = ⎢⎢0 1 − 2⎥⎥ ⎢⎢1⎥⎥ = ⎢⎢− 1⎥⎥ ⎢⎣0 0 1 ⎥⎦ ⎢⎣1⎥⎦ ⎢⎣ 1 ⎥⎦ 2 ⎡1 − 5 5 ⎤ ⎡16⎤ ⎡1 ⎤ x = ⎢⎢0 1 − 2⎥⎥ ⎢⎢ 4 ⎥⎥ = ⎢⎢2⎥⎥ ⎢⎣0 0 1 ⎥⎦ ⎢⎣ 1 ⎥⎦ ⎢⎣1 ⎥⎦ 3 Vậy các vectơ riêng của A là x1 = (-1.3 2 10 ⎟ ⎝ ⎠ ⎠ ⎝ ⎛ 2 0 ⎜ b) A = ⎜ . Lặp k = n . output B) Lần 2: Nhân(input: B1. ⎜1 ⎟ ⎝ ⎠ ⎛1 ⎞ ⎜ ⎟ x* = ⎜ 0 ⎟ . M1 như thuật toán tìm giá trị riêng*/ /* Gọi hàm nhân 3 lần */ Lần 1: Nhân(input: A. 2.1 3 ⎜ 1 -1 ⎝ . output: B) /* Gán lại ma trận B1 = B */ 3. Giải các hệ phương trình Ax = b sau đây bằng phương pháp khử Gauss. M. ⎜6 ⎟ ⎜ . M.1 ⎟' b = ⎜ 4 ⎟ . ⎜1 ⎟ ⎝ ⎠ 69 . -1 . ⎜1 ⎟ ⎝ ⎠ ⎛ − 1⎞ ⎜ ⎟ x* = ⎜ 0 ⎟ .j và bi.j BÀI TẬP 1. 1) b) Thuật toán tìm vectơ riêng Ta bổ sung vào thuật toán tìm giá trị riêng ở hai chỗ : phần khởi tạo và trong vòng lặp k 1. ⎜ 4⎟ ⎜ 1 1 3⎟ ⎝ ⎠ ⎠ ⎝ ⎛ 2⎞ ⎜ ⎟ x* = ⎜1 ⎟ .

⎜ 4 ⎟ ⎜ 1 . x* = ⎜ −1 ⎟ ⎟⎟ ⎜⎜ 0 ⎠ ⎝ 3. 7. Hãy đề xuất một phương pháp lặp giải hệ trên và biện luận sự hội tụ của nó. 10.1 3⎟ ⎝ ⎠ ⎠ ⎝ ⎛ − 1⎞ ⎜ ⎟ x* = ⎜ 0 ⎟ .01 Giải thích vì sao nghiệm thu được có thể sai khác rất lớn so với nghiệm đúng là x1 = 0.1 3 1 ⎟' b = ⎜ 4 ⎟. 70 .1 3⎟ ⎝ ⎠ ⎠ ⎝ ⎛ − 2⎞ ⎜ ⎟ x* = ⎜ 0 ⎟ .NCT-FIT-HNUE Computional methods and Optimization Problems ⎛ − 2⎞ ⎛ 2 -1 0 ⎞ ⎜ ⎟ ⎟ ⎜ d) A = ⎜ 2 5 . ⎜ 2 ⎟ ⎜ 1 .1 ⎥ .01 y = 2.1 2 . b = ⎜ 5 ⎟ . Sau các phép biến đổi thích hợp hãy sử dụng phương pháp lặp Gauss-Seidel giải hệ phương trình sau với sai số 10-3 x1 + 3 x2 + 9 x3 + x4 = 10 x1 + x2 + x3 + 5 x4 = 6 2 x1 + 7 x2 + 3 x3 + 2 x4 = 15 4 x1 + 2 x2 + x3 + x4 = 9. ⎜1 ⎟ ⎝ ⎠ ⎛ − 4⎞ ⎛ 3 -1 1 ⎞ ⎜ ⎟ ⎟ ⎜ e) A = ⎜ .2 ⎟' b = ⎜ − 4 ⎟. x2 = 1. 6. ⎜ − 3⎟ ⎢⎣ 0 .5. Có thể áp dụng phương pháp lặp gì để giải hệ sau đây và lý giải vì sao x1 − x2 = 10 − x1 + 2 x2 − x3 = 6 − x2 + 2 x3 − x4 = 10 − x3 + 2 x4 = 9. ⎜ 2 ⎟ ⎝ ⎠ ⎛3 ⎜ ⎜2 f) A = ⎜ 2 ⎜⎜ ⎝1 0 -1 1 ⎞ ⎛ 4⎞ ⎜ ⎟ ⎟ 2 1 .1⎟ ⎜ − 1⎟ ' b = ⎜ ⎟.1 2⎥⎦ ⎝ ⎠ Tìm nghiệm của hệ bằng phương pháp khử Gauss. Cho hệ phương trình Ax = b với ⎛ −1 ⎞ ⎡ 2 -1 0 ⎤ ⎜ ⎟ ⎥ ⎢ A = ⎢. ⎟ -5 1 0 6 ⎜⎜ ⎟⎟ ⎟⎟ 1 -1 1 ⎠ ⎝1 ⎠ ⎛ 1 ⎞ ⎟ ⎜ ⎜ −1 ⎟ . Dùng phương pháp đồ thị giải hệ phương trình sau 2x + y = 2 2 x + 1.

i − f ' ' ( x i ) = O ( h 2 ) (8-1. b]. trong đó h = (b − a) / n. i = yi +1 − 2 yi + y i −1 h2 (i = 1.2) Sai số của công thức trên được ước lượng như sau y xx . n − 1) 2h 2 (3-1. n) (2-1.Đạo hàm sai phân lùi: thường để tính gần đúng đạo hàm tại điểm biên y’(xn) y x .i = y i − y i −1 ∇y i = h h (i = 1.1) x .i 1.1) y x .2. n) . 71 .i = y i +1 − y i ∆y i = h h (i = 0. (5-1. (4-1.2) Ước lượng trên được chứng minh nhờ khai triển Taylor đến thành phần chứa đạo hàm cấp 4 với giả thiết f ( x) ∈ C ( 4) [a. Tính gần đúng đạo hàm Giả sử f (x) là hàm trơn trên đoạn [a. (6-1. Cho gía trị của hàm tại các điểm lưới trên: yi = f ( xi ) (i = 0. n − 1) (1-1. là các điểm mốc cách đều nhau. 1.1.NCT-FIT-HNUE Computional methods and Optimization Problems Chương 5 TÍNH GẦN ĐÚNG ĐẠO HÀM VÀ TÍCH PHÂN 1.1. n. i = 0. Khi đó có thể tính gần đúng đạo hàm cấp một của hàm tại các điểm lưới nhờ các công thức đạo hàm sai phân sau.i + y x .Đạo hàm sai phân trung tâm: thường để tính gần đúng đạo hàm tại các điểm trong yο = x .) Sai số của các đạo hàm sai phân trên được đánh giá như sau: y x .1) y 0 − f ' ( xi ) = O ( h 2 ) .i yi +1 − yi −1 1 = ( y x .b] và xi = a + ih.i ) (i = 1.i − f ' ( x i ) = O ( h ) .1) .i − f ' ( x i ) = O ( h ) .Đạo hàm sai phân tiến: thường để tính gần đúng đạo hàm tại điểm biên y’(x0) y x .1) . Đạo hàm cấp hai Để tính đạo hàm cấp hai của hàm f (x) tại các nút xi có thể dùng công thức đạo hàm sai phân sau y xx . Đạo hàm cấp 1 . n − 1) (7-1.

Cần tính b I = ∫ f ( x)dx (1-2. b] thành n đoạn con [ xi . b] thành các đoạn con và trên mỗi khoảng con xấp xỉ hàm số bởi một đa thức. 2 Ta có b n −1 xi +1 a i =0 xi ∫ f ( x)dx = ∑ ∫ f ( x)dx (1-2. Công thức hình chữ nhật trung tâm a) Thiết lập công thức Chia đoạn [a. cũng như tính đạo hàm cấp cao hơn ta sẽ sử dụng công cụ nội suy hàm số.1) a Trong giáo trình giải tích toán học ta biết rằng nếu f (x) có nguyên hàm là hàm F (x) thì có thể tính tích phân trên một cách đơn giản nhờ công thức Newton.Leibnitz b ∫ f ( x)dx = F (b) − F (a). n) với 1 h = (b − a) / n. Với các đa thức ta có thể tìm được các nguyên hàm của chúng. do đó có thể áp dụng công thức Newton.1) không có tác dụng.2) xi 72 . Ý tưởng cơ bản của các phương pháp tính gần đúng tích phân là chia nhỏ khoảng tích phân [a. Ký hiệu xi +1 / 2 = ( xi + xi +1 ) là điểm giữa của mỗi đoạn con. Trong những trường hợp ấy công thức (2-2.2. Giới thiệu bài toán Cho f (x) là hàm số liên tục trên đoạn [a. xi +1 ] (i = 0.1. (i = 0.Leibnitz tính tích phân trên mỗi đoạn con. n − 1) bởi các điểm xi = a + ih. Tính gần đúng tích phân 2. Vì thế người ta phải tìm cách tính gần đúng tích phân xác định. 2.1) a Tuy nhiên trong thực tế ta gặp các hàm f (x) mà nguyên hàm của nó không thể biểu diễn bằng các hàm số sơ cấp hoặc ta không tìm được nguyên hàm của chúng. (2-2.NCT-FIT-HNUE Computional methods and Optimization Problems Để xây dựng các công thức tính đạo hàm với sai số cấp 2 tức là có ước lượng O(h 2 ) tại các điểm mút x0 và xn .) Ta xấp xỉ xi +1 ∫ f ( x)dx ≈ f ( xi +1 / 2 )h (2-2. Tính gần đúng tích phân còn có ý nghĩa khi hàm f (x) không cho ở dạng biểu thức toán học mà cho dưới dạng bảng số. Tích phân trên toàn đoạn [a. b] . b] sẽ là tổng các tích phân trên từng khoảng con.2. 2.

2) và (2-2. xn = b]: n −1 I CN ≈ ∑ f ( xi +1/ 2 )h (3-2. xi +1 ] được xấp xỉ bởi hình chữ nhật trung tâm với đường cao bằng giá trị của hàm f (x) tại điểm giữa xi +1 / 2 . Từ (1-2. Với h = 0.7692 2 0.2) suy ra công thức hình chữ nhật trung tâm tính gần đúng tích phân xác định trên đoạn [a = x0.2 ta lập bảng giá trị i+1/2 xi+1/2 yi+1/2 0 0.5000 0.5882 4 0.3000 0.2) M 2 = max f ' ' ( x) . điều đó có nghĩa là hình thang cong giới hạn bởi đường cong y = f (x) trên đoạn [ xi . Ta có 73 .2* 3.2) 4 I hcn = h∑ yi +1/ 2 =0.1000 0.9091 1 0.6919.4595 = 0.2) ei ≤ trong đó: a ≤ x ≤b Từ đó suy ra ước lượng của sai số toàn phần của công thức hình chữ nhật trung tâm là E ≤ M2 (b − a)h 2 24 (6-2.7000 0.NCT-FIT-HNUE Computional methods and Optimization Problems Về mặt hình học. i =0 Bây giờ ta ước lượng sai số của giá trị tính được.4595 Theo công thức (3-2.9000 0. (5-2.6667 3 0.2) i =0 b) Đánh giá sai số: Người ta đã chứng minh được ước lượng sai số địa phương là: M2 3 h . Giải.2) c) Thí dụ 1 dx bằng công thức hình chữ nhật trung tâm với số đoạn chia n 1+ x 0 Tính gần đúng tích phân I = ∫ =5 và đánh giá sai số.5263 Σ=3. 24 (4-2.

(1 + x) 3 Do đó M 2 = max f ' ' ( x) = 2 . (1 + x) 2 f ' ' ( x) = 2 .6919 ± 0..0033 = (0.3) hoặc I ht ≈ b−a ( y0 + 2 y1 + .NCT-FIT-HNUE f ' ( x) = − Computional methods and Optimization Problems 1 . 0. 2 Vậy ta có công thức hình thang tính gần đúng tích phân xác định là ⎛ y + yn ⎞ + y1 + .3) trong dạng y + yn ⎞ ⎛ n I ht ≈= h⎜ ∑ yi − 0 ⎟ 2 ⎠ ⎝ i =0 (2’-2.0033.. 2 (1-2.2) 2 = 0..3) 74 . + 2 yn−1 + yn ) 2n (3-2.3) Có thể viết (2-2.3) trong đó để viết cho gọn ta đã ký hiệu yi = f ( xi ) .6931. Do đó b n −1 a i =0 I = ∫ f ( x)dx ≈ ∑ h ( yi + yi+1 ).6952) trong khi giá trị đúng của 24 tích phân là I = ln 2 = 0. + y n−1 ⎟ I ht ≈ h⎜ 0 ⎝ 2 ⎠ (2-2.6886. Công thức hình thang a) Thiết lập công thức Ta thay hình thang cong bởi hình thang thẳng như trong hình sau đây: yi x0 x1 yi+1 xi xi+1 xn Khi đó xi +1 ∫ f ( x)dx ≈ xi 1 ( yi + yi+1 )h. Vậy I = 0.2) ta có ước lượng sai số 0 ≤ x ≤1 2 (0.3. Theo công thức (6-2.. | E |≤ 2.

3) Trong đó M 2 = max f " ( x ) x0 ≤ x ≤ xn c) Ví dụ 1 dx bằng công thức hình thang với số đoạn chia n =10 và đánh 1+ x 0 Tính gần đúng tích phân I = ∫ giá sai số.0000 1.5000/2 ) = 0.7143 5 0.7000 0.5000 Σ=7.1000 0.0000 1 0.6000 0.0000 0.6667 6 0.3) Do đó sai số toàn phần của công thức hình thang sẽ là E ≤ M2 (b − a )h 2 . Ta có f ' ( x) = − 1 . (1 + x) 2 f ' ' ( x) = 2 .8000 0. 12 (4-2.5263 10 1.6877 – 1. Giải.9091 2 0.4000 0.1 và bảng giá trị i xi yi 0 0.NCT-FIT-HNUE Computional methods and Optimization Problems b) Đánh giá sai số Người ta đã chứng minh được ước lượng của sai số địa phương là ei ≤ M2 3 h .7692 4 0. (1 + x) 3 75 .5000 0.3000 0.2000 0.6938. Ta có h = 0.5556 9 0.9000 0.6877 Theo công thức (2’-2.6250 7 0.1 * (7. 2 ⎠ ⎝ i =0 Bây giờ ta ước lượng sai số của giá trị tính được.5882 8 0.8333 3 0.3) y + y10 ⎞ ⎛ 10 I ht ≈ h⎜ ∑ yi − 0 ⎟ = 0. 12 (5-2.

Trên mỗi đoạn con ta sẽ xấp xỉ hàm y = f (x ) bởi đa thức nội suy bậc hai tại các điểm xi . Để tránh dùng chỉ số không nguyên người ta thường chia đoạn [a. xi +1 ] . yi). (xi+1/2. xi +1 f ( x) ≈ L2i ( x) = yi ( x − xi +1 / 2 )( x − xi +1 ) ( x − xi )( x − xi +1 ) + yi +1 / 2 ( xi − xi +1 / 2 )( xi − xi +1 ) ( xi +1 / 2 − xi )( xi +1 / 2 − xi +1 ) + yi +1 = ( x − xi )( x − xi +1 / 2 ) ( xi +1 − xi )( xi +1 − xi +1 / 2 ) 2 4 yi ( x − xi +1 / 2 )( x − xi +1 ) − 2 yi +1 / 2 ( x − xi )( x − xi +1 ) 2 h h 2 + 2 yi +1 ( x − xi )( x − xi +1 / 2 ). yi).3) trong dạng thuận tiện cho tính toán như sau y + y n ⎞ 2h n h⎛ n I sim ≈ ⎜ ∑ yi − 0 ⎟ + ∑ yi +1 / 2 3 ⎝ i =0 2 ⎠ 3 i =0 (2-2. yi+1/2). 2. (xi+1.4) còn gọi là công thức parabol vì nó nhận được nhờ thay đường cong y = f(x) bởi parabol qua 3 điểm (xi.0017 trong khi giá trị đúng của tích phân là I = ln 2 = 0. (xi+1. b] thành n đoạn con bằng nhau bởi các điểm xi = a + ih với h = (b − a ) / n và ký hiệu xi +1 / 2 là điểm giữa của đoạn con [ xi . x2i+2] xấp xỉ hàm f(x) bởi bởi parabol qua 3 điểm (xi. yi+1). . h Đặt xi + 1 xi + 1 xi xi I i = ∫ f ( x)dx ≈ ∫ L2i ( x)dx. Theo công thức (5-2. xi +1 / 2 .0017. b] thành 2n phần bằng nhau với độ rộng h = (b . Khi đó công thức Simpson có dạng: 76 . 12 Vậy I = 0.NCT-FIT-HNUE Computional methods and Optimization Problems Do đó M 2 = max f ''( x) = 2. Công thức Simpson (hay công thức Parabol) a) Thiết lập công thức Cũng như ở trên ta chia [a. yi+1). yi+2).a)/(2n) và trên mỗi đoạn kép [x2i. Có thể viết lại công thức (1-2.3) ta có ước lượng sai số 0≤ x ≤1 | E |≤ 2 (0.1) 2 = 0.4. Kết quả tính tích phân ở vế phải cho ta Ii ≈ h ( yi + 4 yi+1 / 2 + yi+1 ) 6 Khi đó ta có công thức Simson tính gần đúng tích phân xác định: n −1 I sim ≈ ∑ i =0 h ( yi + 4 yi+1/ 2 + yi+1 ) 6 (1-2. (xi+2.4) Nhận xét 1.6931.4) Công thức (1-2.6938 ± 0.

Từ các công thức (3-2. (3-2.2282 ..4) Từ đây ta thấy rằng công thức Simpson đúng cho mọi đa thức bậc 3..8000 4+1/2 0.2). (6-2.5000 3 0.4) suy ra được: I sim = ( I ht + 2 I cn ) / 3 . Giải.4595 77 S2=4.4000 2+1/2 0.0000 yi yi 1.8333 0. c) Ví dụ 1 dx bằng công thức Simpson với số đoạn chia n =5 và đánh giá 1 + x 0 Tính gần đúng tích phân I = ∫ sai số.5882 0. (4-2.5000 S1=3.3000 2 0.7692 0.1000 1 0.NCT-FIT-HNUE I sim = Computional methods and Optimization Problems b−a ( y 0 + 4 y1 + 2 y 2 + . 2880 (7-2.6667 0.3) và (2-2.9091 0.6000 3+1/2 0.7000 4 0.4) a ≤ x ≤b Từ công thức trên ta nhận được đánh giá sai số toàn phần của công thức Simpson E = I − I sim ≤ M 4 (b − a) 4 h .0000 0.0000 1/2 0.4) trong đó M 4 = max f ( 4) ( x) .6250 0.9000 5 1.5263 0. Ta có h = 0. xi + 1 ei = ∫ f ( x)dx − xi 5 h ( yi + 4 yi +1 / 2 + yi +1 ) ≤ M 4 h 6 2880 (5-2.2. + 2 y 2 n − 2 + 4 y 2 n −1 + y 2 n 6n (3-2. Lập bảng giá trị của hàm tại các điểm nút và điểm giữa i xi 0 0.7143 0.5556 0.2000 1+1/2 0.4) Nhận xét 2.4) b) Đánh giá sai số Người ta đã chứng tỏ được rằng (xem sách Bakhvalov [5] trang 101).

Isim 78 . (1 + x) f ( 4) ( x) = 24 . b. Các thuật toán “hcn.5. = 24 và ta có đánh giá 0≤x ≤1 E = I − I sim ≤ 24 × (1 − 0) × 0. hàm f (x) trên đoạn [ a.00001333. 2. x1=x1+h. 4. Lặp for i=1 Æ n-1 2.2 * 3.2282 – 0. 3.1.2 * (4. Gán Icn=h*Icn. Iht=f(x2). x2=a. x1=a+h/2.00000051. return Icn. hình thang. sim” tính gần đúng tích phân xác định Input: a. ht. Khởi tạo h=(b-a)/n.4. (1 + x) 5 Do đó M 4 = max f ( 4 ) ( x) . Bây giờ ta ược lượng sai số theo công thức (7-2. 2. 2. Icn=f(x1).2. Isim là các giá trị gần đúng của tích phân I = ∫ f ( x)dx tương ứng bởi các a công thức hình chữ nhật trung tâm. Iht.75) / 3 + 2 * 0.NCT-FIT-HNUE Computional methods and Optimization Problems Theo công thức (2-2.3. Ta có f ( x) = 1 .4) ta có I sim = y + y 5 ⎞ 2h 4 h⎛ 5 ⎜ ∑ yi − 0 ⎟+ ∑ yi +1 / 2 3 ⎝ i =0 2 ⎠ 3 i =0 = 0.2 4 = 0.4595 / 3 = 0. x2=x2=h. Algorithm: 1. Iht=Iht+f(x2).4).69314667 trong khi giá trị đúng của tích phân là I = ln 2 =0. và Simpson. Iht=h*Iht. 2. n. Iht.69314718. sai số thực sự của Isim là 0. Icn=Icn+f(x1). 2. Isim=(Iht+2*Icn)/3. Như vậy. 2880 Kết quả tính toán và ước lượng trên cho thấy công thức Simpson có độ chính xác rất cao (so sánh với kết quả tính bằng công thức hình thang ở tiểu mục trước!). b] b Output: Ihcn.

Ví dụ mở đầu a) Phát biểu bài toán . Theo bài toán ta có mô hình: f(x) = 4x1 + 5x2 Æ max + x2 ⎧2 x1 ⎪x + 2 x2 ⎪ 1 ⎨ x2 ⎪ ⎪⎩ x j ≥ 0 . 3. x2. Tiền lãi của một đơn vị sản phẩm A là 4 triệu đồng. xn)t ∈ X ⊂ Rn để cực đại hóa hàm f(x) sau đây: n f ( x) = ∑ c j x j → max (1-1.NCT-FIT-HNUE Computional methods and Optimization Problems Chương 6 BÀI TOÁN QUI HOẠCH TUYẾN TÍNH 1. j = 1. Giới thiệu bài toán tối ưu tổng quát 1. Chi phí nguyên liệu (số lượng nguyên liệu) để sản xuất ra hai sản phẩm A và B cho trong bảng sau: Sản phẩm A B I 2 1 II 1 2 III 0 1 Nguyên liệu ..2 ≤ 8 ≤ 7 ≤ 3 Bài toán trên được xem là thuộc dạng bài toán qui hoạch tuyến tính vì các hàm g1(x) = 2x1 + x2. 1. . II. x2)t. Một công ty sản xuất 2 loại sản phẩm A và B .. 7. g2(x) = x1 + 2x2. và II. II. .1. Mô hình bài toán tối ưu tổng quát Bài toán tối ưu tổng quát P có dạng: Tìm phương án x = (x1. Sử dụng ba loại nguyên liệu I. Công ty dự trữ ba loại nguyên liệu I. b) Mô hình toán học của bài toán Xét vectơ cột x = (x1.. g3(x) = x2 là các hàm tuyến tính. của một đơn vị sản phầm B là 5 triệu đồng Yêu cầu: Lập kế hoạch sản xuất (sản xuất bào nhiêu mỗi loại sản phẩm) để tiền lãi thu về nhiều nhất với hạn chế về nguyên liệu đã cho.2) j =1 79 . .2. trong đó x1 và x2 lần lượt là số lượng sản phẩm A và B tương ứng cần sản xuất. III với số lượng tương ứng là 8.

Phương phán x* ∈ D được gọi là phương án tối ưu (tức là nghiệm của bài toán) nếu f(x*) ≥ f(x) với ∀ x ∈ D.. xn)t.. i = 1. x> = n ∑c x j =1 j j . m D⎨ j =1 ⎪ x ≥ 0.. Chú ý: Bài toán tìm min của hàm mục tiêu có thể chuyển thành bài toán tìm max bằng cách thay các hệ số của hàm mục tiêu là -cj. m ⎪ i ∑ D⎨ j =1 ⎪ x ≥ 0. ≥..m. 1.j)m × n. <C. =) bi . xj ≥ 0.. j ≥ bi = bi ⇔ ⎨ jn=1 ⎪∑ ai . bn)t. Dạng chuẩn tắc và dạng chính tắc Bài toán QHTT tổng quát có hai dạng chuẩn tắc và chính tắc được định nghĩa như sau: Dạng chuẩn tắc Dạng chính tắc n n f ( x) = ∑ c j x j → max f ( x) = ∑ c j x j → max j =1 j =1 n ⎧ = g ( x ) ai . m .. . i = 1. j = 1. x2. Hàm f(x) được gọi là hàm mục tiêu. . j = 1.=) bi với i = 1. chú ý rằng x là vectơ cột. n ⎩ j n Hoặc viết dưới dạng ma trận như sau f(x) = <c.. m ⎪ i ∑ D⎨ j =1 ⎪ x ≥ 0. j ≤ bi ⎪⎩ j =1 80 . j = 1.... j ≤ b'i (2) Ràng buộc = tương đương với hai ràng buộc ≤ và ≥ n ∑a j =1 i. b = (b1.. xn)t ∈ X ⊂ Rn : gi(x) (≤.. j = 1. x = (x1..3.j)i=1.NCT-FIT-HNUE Computional methods and Optimization Problems n ⎧ = g ( x ) ai .. j ⎧n ⎪⎪∑ ai .. j=1. b2. j n n j =1 j =1 ≥ bi ⇔ −∑ ai . cn) là các hệ số của hàm mục tiêu. . n ⎩ j ⎧ ⎪ g i ( x) = ∑ ai . j ≤ −bi ⇔ ∑ a 'i . j x j = bi . j x j (≤... Vectơ dòng c = (c1. . n ⎩ j (2 − 1. Ma trận A = (ai. n } được gọi là tập các phương án chấp nhận được. n là ma trận gồm m ràng buộc đối với phương án x. i = 1. x> Æ max f(x) = <c.. c2.2) Trong đó: D = {x = (x1. x> Æ max ⎧ Ax ≤ b ⎨ ≥ 0 ⎩x ⎧ Ax = b ⎨ ≥ 0 ⎩x trong đó A = (ai.. Các bài toán QHTT có thể qui về dạng chuẩn tắc và dạng chính tắc nhờ các phép biến đổi sau đây : (1) Một rạng buộc ≥ đưa đ\ực về ràng buộc ≤ nhờ việc nhân hai vế với -1 n ∑a j =1 i. j x j ≤ bi .2) (3 − 1.≥.

3 ⎩ = 7 = 9 = 2 2. ….x3-) + 0. j + yi = bi j =1 (4) Một biến xj không phụ thuộc dấu có thể thay bằng hai biến phụ thuộc dấu xj = xj+ ..1. m nếu m x = α1 x1 + α 2 x 2 + .. được định nghĩa là một tổ hợp lồi của tập hai điểm A và B.2 ≤ 7 ≥ 9 = 2 Thêm biến phụ x4 ≥ 0.3 Xét bài toán f(x) = x1 + 4x2 -3x3 Æ max + x2 + 3 x3 ⎧2 x1 ⎪4 x − 3 x2 − 2 x3 ⎪ 1 ⎨ + 2 x2 − x3 ⎪ x1 ⎪⎩ x j ≥ 0. j j =1 n n ∑a j =1 i. j ≤ bi ⇔ ∑ ai . Đặc điểm của tập các phương án của bài toán QHTT 2.> 0 ta được bài toán mới tương đương là một bài toán dạng chính tắc: f(x) = x1 + 4x2 -3(x3+ .Computional methods and Optimization Problems NCT-FIT-HNUE (3) Đưa ràng buộc ≤ và ≥ về ràng buộc = nhờ việc thêm biến phụ (i) j =1 (ii) n n ∑a ≥ bi ⇔ ∑ ai . j − yi = bi i.2. + α m x m = ∑ α i xi i =1 với α i ≥ 0.x4 + 0. Tổ hợp lồi : Cho m điểm x1. x3.1.với xj+ và xj.1.x5Æ max ⎧2 x1 + x2 + 3( x 3+ − x3− ) + x4 ⎪ − 3 x2 − 2( x 3+ − x3− ) − x5 ⎪4 x1 ⎨ + 2 x2 − ( x 3+ − x3− ) ⎪ x1 ⎪ x j ≥ 0.> 0 Ví dụ 1-1. i = 1.xj. Tập lồi và đa diện lồi Định nghĩa 1-2. i = 1. kí hiệu là dAB. 0 ≤ α ≤ 1} Ví dụ 1-2. Điểm x gọi là tổ hợp lồi của các điểm xi. Đoạn thẳng: Đoạn thẳng đi qua hai điểm A và B ∈ Rn. xm trong không gian Rm. x2.x3. j = 1.1 Trong mặt phẳng R2: 81 . j = 1.với x3+. x5 ≥ 0 và thay biến x3 không phụ thuộc dấu bởi hai biến phụ thuộc dấu: x3 = x3+ . m và n ∑α i =1 i =1 Định nghĩa 2-2. tức là: dAB = { M ∈ Rn | M = αA + (1-α)B.

1 Trong mặt phẳng R2. Ví dụ 3-2. Ví dụ 2-2.Computional methods and Optimization Problems NCT-FIT-HNUE 3 -∞ 8 A M +∞ B Đoạn thẳng dAB gồm các điểm M nằm giữa A và B. các đỉnh của các đa giác lồi là các điểm cực biên. Định nghĩa 5-2. tức là: dAB = { M ∈ R | M = αA + (1-α)B. thì các điểm còn lại đó chính là các điểm cực biên của đa diện lồi. • Đa diện lồi là một tập lồi. trong đó mọi điểm bên trong đều có thể biểu diễn dưới dạng tổ hợp lồi của các đỉnh đa giác . Nếu một đa giác không có cạnh thì phần mặt phẳng tạo bởi đa giác là một tập lồi đa diện. 1]. các đa giác lồi là các tập lồi. Tập lồi: Cho S ⊂ Rn. A B Định nghĩa 4-2.1 Trong mặt phẳng R2.1. các đa giác lồi là các đa diện lồi. x2 y2 x3 y3 x1 y1 x4 y4 x5 y5 Đa diện lồi Tập lồi đa diện 82 . Điểm cực biên: Xét các điểm x trong tập lồi S ⊂ Rn. xm còn lại. Chúng sinh ra đa diện lồi. …. Nói cách khác. x2 ∈ S thì x = αx1 + (1-α)x2 ∈ S với ∀ α ∈ [0. • Tập lồi đa diện là một tập lồi không giới nội Ví dụ 3-2.1 Trong mặt phẳng R2. • Trong đa diện lồi.1. Đa diện lồi và tập lồi đa diện • Đa diện lồi là tập S chứa các điểm là tổ hợp lồi của m điểm x1. với 2 điểm bất kì x1. xm nào đó cho trước. nếu ta loại bỏ những điểm mà nó có thể biểu diễn được dưới dạng tổ hợp lồi của các điểm x1.1.các điểm cực biên. Điểm x* ∈ S được gọi là điểm cực biên nếu x* không thể biểu diễn được dưới dạng tổ hợp lồi thật sự của hai điểm phân biệt trong S. …. Tập S được gọi là một tập lồi nếu với hai điểm A và B bất kì trong S thì đoạn thẳng dAB nằm trọn trong S. 0 ≤ α ≤ 1} Định nghĩa 3-2.

Xét mọi điểm x mà x = αx1 + (1-α)x2 với α ∈ [0. có ba khả năng • D=∅ • D là đa diện lồi (tập lồi bị chặn) • D là tập lồi đa diện (tập lồi không bị chặn) Hệ quả 1-1. • Việc chọn phương án tối ưu tương đương với việc chọn các điểm cực biên của D (các đỉnh của D). Lấy 2 điểm bất kì x1. Kí hiệu Aj là vectơ cột thứ j của ma trận A khi đó phương trình 83 .2 Cho đường mức f(x) = 4x1 + 5x2 chuyển động trong miền đa giác (màu xám) là miền thỏa mãn các ràng buộc của bài toán. Nói cách khác. Minh họa ý nghĩa hình học của định lý 1-2. Tập tất cả các phương án D của bài toán QHTT là một tập lồi. Nhận xét: Tập phương án D là tập lồi.2. 1] ta có Ax = A(αx1 + (1-α)x2) = αAx1 + (1-α)Ax2 = αb + (1-α)b = b. để tìm phương án tối ưu thì ta chỉ cần tìm trên các phương án cực biên trong tập phương án D. Bây giờ xét hệ ràng buộc Ax = b.2: • Nếu D là một đa diện lồi khác rỗng thì bài toán QHTT chắc chắn có phương án tối ưu.2. j = 1. Xét bài toán QHTT chính tắc (chuẩn tắc chứng minh tương tự). Đặc điểm của tập các phương án của bài toán QHTT Định lí 1-2.NCT-FIT-HNUE Computional methods and Optimization Problems 2.j)m × n.2 qua lời giải “bài toán mở đầu” bằng phương pháp hình học f(x) = 4x1 + 5x2 Æ max ⎧2 x1 + x2 ≤ 8 ⎪ x1 + 2 x2 ≤ 7 ⎪ ⎨x ≤ 3 ⎪ 2 ⎪⎩ x j ≥ 0. x2 ∈ D. 2) của đa giác.2. • Nếu D không giới nội nhưng hàm mục tiêu bị chặn trên D thì cũng chắc chắn có phương án tối ưu. với A = (ai. thì f(x) đạt giá trị lớn nhất bằng 22 tại điểm cực biên là đỉnh M(3. • Nếu D có phương án tối ưu thì có ít nhất một phương án tối ưu. Chứng minh. do đó x ∈ D. Ví dụ 1-2. Ta có Ax1 = b và Ax2 = b. Vậy D là tập lồi.

…. A2 . Pacb thỏa mãn điều kiện tối ưu.1.. …. ….2) Nếu hệ {A1. Pacb đang xét đủ để kết luận bài toán không có patu (bài toán vô nghiệm). Tính chất 2 (Định lý 3-2.. khi đó cũng kết thúc thuật toán. (2) Điều kiện tối ưu của một pacb là gì? Điều này dẫn đến Định 1-3. …. + An xn ) = b Ta có 3 tính chất quan trọng sau đây: Tính chất 1 (Định lý 2-2. Như vậy có 4 vấn đề nảy sinh: (1) Tìm pacb ban đầu ở bước 1 như thế nào? Điều này sẽ được nghiên cứu trong mục 4.. nếu D là đa diện lồi thì phải có hữu hạn đỉnh. khi đó nó là patu cần tìm (nghiệm của bài toán). Thuật toán đơn hình giải bài toán QHTT 3. Thuật toán chung Bước 1: Tìm một pacb (một đỉnh thuộc D)..NCT-FIT-HNUE Computional methods and Optimization Problems ⎛ x1 ⎞ ⎜ ⎟ ⎜x ⎟ Ax = b ⇔ ( A1 . x2. Mặt khác. A2. Đường lối chung của thuật toán Vì bài toán QHTT có phương án tối ưu (patu) thì có ít nhất một phương án cực biên (pacb) của D là patu. xn) ∈ D là phương án cực biên của bài toán QHTT chính tắc khi và chỉ khi các vec tơ Aj ứng với các thành phần xj > 0 là một hệ độc lập tuyến tính. x2. do đó tồn tại một thuật toán để tìm patu là một trong các đỉnh của D.2) Phương án x = (x1. Từ các tính chất trên dẫn đến thuật toán đơn hình giải bài toán QHTT.2 dưới đây để kiểm tra một pacb có phải là patu hay không... k (k ≤ n) thì điểm x = (x1. Tính chất 3 (Định lý 4-2. ∀ j = 1. xn) là phương án cực biên của D thì hệ vectơ tương ứng với các thành phần xj > 0 trong biểu diễn A1x1 + A2x2 + … + Anxn = b là độc lập tuyến tính. kết thúc thuật toán. xk. 0. Bước 3: Tìm một pacb mới sao cho cải thiện giá trị hàm mục tiêu rồi quay về Bước 2. …. 84 . 2. An ) ⎜ 2 ⎟ = b .2) Nếu x = (x1. 0) là phương án cực biên của D.. ⎜ ⎟ ⎜x ⎟ ⎝ n⎠ ⇔ ( A1 x + A2 x2 + . Bước 2: Kiểm tra 2 điều kiện sau đây đối với pacb đã tìm được: 2.. An} là độc lập tuyến tính và A1x1 + A2x2 + … + Akxk = b với xj > 0 .1. x2. 3.2. Tính chất 3 là điều kiện cần và đủ để một phương án là phương án cực biên..

x> Æ max Trong đó A = (ai. cách nào cũng được. còn các biến x32 và x42 là các biến phi cơ sở. hay ∑x j∈J 0 j Aj = b (1-3. (4) Bằng cách nào để tìm pacb mới tốt hơn pacb cũ? Điều này dẫn đến Định lí 3-3. Các định lý cơ bản của thuật toán đơn hình Xét bài toán QHTT dạng chính tắc: f(x) = <c..2x3 Æ max ⎧ x1 + 2 x2 + x3 = 4 ⎪ D : ⎨ x1 + x2 + x4 = 2 ⎪ x ≥ 0. tức là J0 = {j | xj0 > 0} Khi đó.4 ⎩ j Nhận xét : x1 =(0.2) 85 .2 dưới đây để kiểm tra dấu hiệu bài toán không có lời giải.. Ta có thể bổ sung vào J0 để được tập J sao cho |J| = 2. Kí hiệu J0 là tập các chỉ số ứng với các thành phần xj0 > 0. • Từ các giả định trên ta có ngay kết quả sau đây : Vì x0 là pacb nên nó thỏa mãn ràng buộc của bài toán.Computional methods and Optimization Problems NCT-FIT-HNUE (3) Dấu hiệu nào của pacb đang xét để chứng tỏ bài toán không có patu? Điều này dẫn đến Định lí 2-3. 4. 3}. 2) và x2 = (0. n Giả thiết rank(A) = m • Giả sử x0 = (x10.. 0 . 2} thì các biến x12 và x22 là các biến cơ sở. 3. 4}. Khi đó hệ vectơ {Aj}j ∈ J là độc lập tuyến tính và hệ này được gọi là (các vectơ) cơ sở của các phương án. 0 . ví dụ J = {1. x20. 0)t là các phương án thuộc D. 3x1 . • Nếu |J0| = m thì ta nói rằng pacb x0 là phương án không suy biến. Với pacb đang xét.2 dưới đây để cải thiện hàm mục tiêu. 2}. 4}. Phương án x1 không suy biến ứng với J = {3. Ví dụ 1-3. • Ta xét các vectơ cột trong A. Vì rank(A) = m nên nếu |J0| < m thì ta sẽ bổ sung để thu được tập J (chứa J0) sao cho |J| = m. ngược lại ta nói rằng nó là phương án suy biến. Giả sử chọn J = {1. ta gọi các biến xj với j ∈ J là các biến cơ sở. hệ vectơ {Aj}j ∈ J0 là độc lập tuyến tính (theo điều kiện cần và đủ để một phương án là pacb). Phương án x2 suy biến và J0 = {2}.2. hoặc J = {2.x2 . xn0) là một pacb. nhưng khi đã chọn thì phải cố định. hoặc J = {2. 2.j) m × n ⎧ Ax = b ⎨ ≥ 0 ⎩x Aj là các vectơ cột của A. các biến còn lại gọi là các biến phi cơ sở. j = 1.2. j = 1. Bài toán QHTT mà mọi pacb đều không suy biến gọi là bài toán không suy biến. .

k c j − ck (5-3.2) khi k ∈ J thì xk.k = ∑ x j . j .2) có thể tính được nhờ giải hệ sau : ai .2) ở trên. A4} gồm các vectơ đơn vị ⎡a ⎤ ⎡a ⎤ ⎡a ⎤ ⎡1⎤ ⎡1⎤ ⎡0 ⎤ k = 1.2) j∈J trong đó các hệ số xj. Vậy ∆k biểu thị độ lệch của hàm mục tiêu trong cơ sở biểu thị cho Ak với hệ số của hàm mục tiêu tại thành phần thứ k.Computional methods and Optimization Problems NCT-FIT-HNUE Vì hệ vectơ {Aj}j ∈ J là độc lập tuyến tính nên mọi vectơ cột Ak. Ví dụ 2-3. xn)t là một phương án bất kỳ.k =1 và xj.k bằng chính các thành phần tương ứng của vectơ Ak cần tình.2: Giả sử x = (x1.k trong (2-3.2) tức là xj. của bài toán QHTT chính tắc đã cho.k ai . j . Do đó ta chỉ cần xét Ak với ∀ k ∉ J.a13 + x41a14 Æ ⎨ 11 Æ tổng quát là ai . 4} và cơ sở {A3. Khi đó ta có: 86 .k A j (2-3. Trong công thức (5-3.k (4-3.k 0 với ∀ j ≠ k. i = 1. Qua ví dụ trên ta rút ra được kết luận tổng quát như sau: Các hệ số xj. tức x ∈ D.k = ai . Bổ đề 1-3. m (1) j∈J ⎩a21 = x31a23 + x42 a24 ⎧ x = a14 = 1 Æ ⎨ 31 ⎩ x41 = a21 = 1 Æ tổng quát là x j . k = 1. m (3-3.2) j∈J Nếu các vectơ cơ sở là các vectơ đơn vị thì ta có ngay : x j . • Ta cần lập một đại lượng ∆k quan trọng sau đây : ∆ k = ∑ x j . ….2. A1 A2 A3 A4 J = {3.k = ∑ x j .k = ai . tổng Σ chính là giá trị của hàm mục tiêu tại các thành phần cơ sở biểu thị cho Ak.k (2) Với k = 2 cũng tương tự như thế ta rút được các công thức (1) và (2).k ai . i = 1. A1 = x31A3 + x41A4 hay ⎢ 11 ⎥ = x31 ⎢ 13 ⎥ + x41 ⎢ 14 ⎥ ⇔ ⎢ ⎥ = x31 ⎢ ⎥ + x41 ⎢ ⎥ ⎣1⎦ ⎣0 ⎦ ⎣1 ⎦ ⎣a21 ⎦ ⎣a24 ⎦ ⎣a23 ⎦ ⎧a = x31. n đều có thể biểu diễn được thông qua hệ đó dưới dạng tổ hợp tuyến tính của các vectơ trong hệ : Ak = ∑ x j .k được xác định trong công thức (2-3.2 Xét lại bài toán ở vị 1-3. x2.….2 ở trên ⎡a A = ⎢ 11 ⎣a21 a12 a22 a13 a23 a14 ⎤ ⎡1 2 1 0⎤ = a24 ⎥⎦ ⎢⎣1 1 0 1 ⎥⎦ .2).2) j∈J Rõ ràng trong công thức (2-3.

thay Ak bởi vế phải trong (2-3.2) k∉J n Chứng minh: (i) x ∈ D Æ x = ∑ xi Ai = b . Vậy (i) được chứng minh.k ⎟⎟ + ∑ ck xk . Dấu hiệu vô nghiệm Nếu tồn tại k sao cho ∆k < 0 và xj.2.2) j∈J k∉J j∈J ⇔ ∑ x j A j = ∑ x 0j A j − ∑ xk Ak .k . ∆k ≥ 0 do đó tổng sau dấu trừ mang dấu dương.2) k∉J f ( x ) = f ( x 0 ) − ∑ xk ∆ k (ii) (7-3.k A j j∈J j∈J k∉J j∈J ⇔ ∑ x j A j = ∑ ( x 0j − ∑ xk x j . do khai triển và thay đổi thứ tự hai tổng j∈J k∉J j∈J k∉J ⎛ ⎞ = f ( x 0 ) − ∑ ⎜⎜ ∑ x j . ước lược Aj và tổng theo j ở hai vế ta được: j∈J j∈J k∉J ⇔ x j = x 0j − ∑ xk x j . ∀ x ∈ D ta có f ( x ) = f ( x 0 ) − ∑ xk ∆ k k∉J trong đó xk ≥ 0.2) k∉J ⎝ j∈J ⎠ ⇔ f ( x) = f ( x 0 ) − ∑ ∆ k xk .k ) A j . j∈J (6-3. Chứng minh.k ≤ 0 ∀j ∈ J thì bài toán không có patu.k c j − ck ⎟⎟xk thay biểu thức trong ngoặc bởi ∆k trong (5-3. tách tổng này thành hai tổng: i =1 ⇔ ∑ x j A j + ∑ xk Ak = b = ∑ x 0j A j (b bằng tổng vế phải do 1-3.k + ∑ ck xk .Computional methods and Optimization Problems NCT-FIT-HNUE (i) x j = x 0j − ∑ xk x j .2) ta được: j∈J j∈J k∉J ⇔ ∑ x j A j = ∑ x 0j A j − ∑ xk ∑ x j . do đó x0 là patu. Tiêu chuẩn tối ưu Nếu ∆k ≥ 0. suy ra f(x) ≤ f(x0) với ∀ x ∈ D.2. k∉J Định lý 1-3. Vậy (ii) được chứng minh. Theo bổ đề (ii). k∉J n (ii) f ( x) = ∑ c j x j = ∑ c j x j + ∑ ck xk j =1 j∈J k∉J ⎞ ⎛ = ∑ c j ⎜⎜ x 0j − ∑ xk x j . 87 . do thay xj bởi vế phải trong (i) j∈J k∉J ⎠ k∉J ⎝ = ∑ c j x 0j − ∑∑ c j xk x j . Định lý 2-3. ∀k ≤ n thì pacb x0 là patu. j ∈ J .k .

j ∈ J ' j j .s ⎩ j (a) (10-3. s > 0⎬ xr . Định lý 3-3. ta tìm được một pacb x1 mới nhận xs1 làm biến cơ sở (mới) và thỏa mãn f(x1) > f(x0). Bây giờ ta chọn cơ sở mới J’ như sau : J’ = J \ {r} ∪ {s} Nói cách khác cơ sở mới nhận được từ cơ sở cũ bằng cách thay cột Ar bằng cột As (Cột xoay s được đưa vào cơ sở mới). Ta thấy f(x1) Æ ∞ khi θ Æ ∞. Khi đó.2) và (2-3.θ∆k > f(x0) (lớn hơn f(x0) vì θ > 0 và ∆k < 0).2) : . Dòng r thu được được gọi là dòng xoay.2. ta chỉ cần quan tâm đến cách tìm ra pacb x1.2) không thỏa mãn thì khi đó với ∆s > 0 nào đó. do đó x1 là pacb tốt hơn pacb x0. Dòng s mới được gọi là dòng chính.Công thức (a): Lấy biến cơ sở cũ tại dòng xoay r cũ chia cho phần tử trục rồi đặt kết quả là θ vào dòng s mới.Computional methods and Optimization Problems NCT-FIT-HNUE (xj. do đó bài toán vô nghiệm. Phần tử xr.k là các hệ số trong biểu thức biểu thị Ak qua cơ sở {Aj}j ∈ J) Chứng minh. các thành phần của pacb x1 được xác định như sau: ⎧ 1 xr0 =θ ⎪ xs = xr . Trong nội dung chứng minh định lý (3-3. trong số đó. 88 . Vì thế các nội dung sau đây là quan trọng vì nó được sử dụng lại trong thuật toán đơn hình cần xây dựng. Cải thiện hàm mục tiêu Nếu định lý (1-3.s bé nhất.2) Lưu ý rằng các phần tử xjs là các phần tử ở cột xoay.2). Chứng minh. s ⎪⎭ ⎪⎩ x j . Vì xj. Trong cơ sở J’ mới này. tức là : ⎫⎪ ⎧⎪ x 0j xr0 = min ⎨ | x j . ta chọn dòng j = r sao cho tỷ số x 0j x j .2) (b) Về thao tác trong công thức (10-3.s là giao của dòng xoay r và cột xoay s được gọi là phần tử trục (hoặc phần tử xoay).2) thì phải tồn tại các thành phần xj. s ⎨ ⎪ x1 = x 0 − θ . theo điều kiện của định lý (3-3.s > 0. Ta chọn ∆ s = min{∆ k | ∆ k < 0} (8-3.s (9-3.θxj.k với θ > 0. x .k ≤ 0 thì xj1 > 0 và hàm mục tiêu f(x1) = f(x0) . Ta có thể chỉ ra một pacb x1 mà xj1= xj0 .2) Ta gọi cột As hay (ngắn gọn cột s) là cột xoay.

.1 xjm. Bước 3: Kiểm tra “Dấu hiệu vô nghiệm” theo định lý 2-3. . cjm Ajm . người ta chứng minh được f(x1) > f(x0).2) : . . Thuật toán đơn hình Bước 1: Tìm pacb ban đầu x0 với cơ sở J = {Aj1. . . Trong cơ sở mới này. .Công thức (a): Chia các phần tử ở dòng xoay cho phần tử trục rồi đặt vào dòng chính.Cột cơ sở ghi tên các vectơ cơ sở .2 … xjm.k j . . Aj2. . .2) (b) Về thao tác trong công thức (11-3. . Nếu tồn tại ∆k < 0 và xj.2.Cột hệ số biểu diễn các hệ số của hàm mục tiêu tương ứng với các vectơ cơ sở (hoặc các biến cơ sở) .1 xj2. . Bước 2: Kiểm tra “Tiêu chuẩn tối ưu” theo định lý 1-3.4.n . Ajm} và lập bảng đơn hình phần 1.k của vectơ cột Ak trong cơ sở {Aj}j ∈ J.2. dừng thuật toán. .NCT-FIT-HNUE Computional methods and Optimization Problems .Công thức (b): Lấy phần tử cũ tương ứng trừ đi tích của δ trên dòng chính nhân với phần tử tương ứng ở dòng xoay.k (a ) (11-3.Hàng cuối cùng là giá trị của f(x0) và các giá trị ∆k.Công thức (b): Lấy biến cơ sở cũ ở dòng j tương ứng trừ đi tích của số θ trên dòng chính nhân với phần tử ở cột xoay tương ứng.k = xr .k ≤ 0 với mọi j ∈ J thì bài toán không có patu. 3.Cột phương án ghi giá trị tương ứng của các biến cơ sở của phương án x0 . . Hệ số Cơ sở c1 c2 … cn cj Aj.x j .2 … xj2.k ⎧ ' =δ ⎪ x s . . …. . ta tính được các thành phần x 'j .s ⎩ j . Khi đó.Các cột Aj ghi hệ số của hàm mục tiêu ở hàng trên cùng và bên dưới là các hệ số khai triển xj.n cj2 Aj2 x 0j 2 xj2. 89 . Nếu mọi ∆k ≥ 0 thì x0 là patu.1 xj1. . x 0jm Phương án f(x0) . xjm.2 … xj1. . j∈J A1 A2 … An cj1 Aj1 x 0j1 xj1. dừng thuật toán.k mới của các vectơ Ak biểu diễn qua cơ sở mới {Aj}j ∈ J’ nhờ các biến đổi Gauss-Jordan như sau: xr . . . .n ∆1 ∆2 … ∆n . s ⎨ ⎪ x ' = x − δ .

s 1 s (11a-3.s : phần tử trục . s b) Lấy mỗi dòng khác (cũ) trừ đi tích của dòng chính nhân với phần tử ở cột xoay tương ứng (được số 0 ở vị trí còn lại trên cột xoay). Tình bảng đơn hình phần tiếp theo cho cơ sở mới theo các biến đổi Gauss-Jordan sau đây a) Chia mỗi phần tử dòng xoay cho phần tử trục (được số 1 ở vị trí trục). tức là tìm r sao cho ⎧⎪ x 0 ⎫⎪ xr0 = min ⎨ j | x j . Và ta có cơ sở mới gồm các vectơ cột {Aj }.x j .2) xs' .2) xr0 =θ x = xr . s ⎪⎩ x j .2. Các thao tác này chính là thực hiện các công thức: (10a-3.2 và 2-3.1.2) x 'j .2) .4. Dòng mới = Dòng cũ . Dòng r: dòng xoay . j = 1.Dòng chính * phần tử trên cột xoay Thực chất các thao tác trên là thực hiện các công thức : (10b-3.4.k = xr . thay Ar bởi As.5.4 ⎩ 90 .k − δ . xr. như vậy dòng r bây giờ là dòng s.2 không thỏa mãn thì xây dựng pacb mới x1 và lập bảng đơn hình phần thứ hai tiếp theo như nội dung chứng minh của định lý 3-3.2.x j . Trong cột hệ số Cj : thay Cr bởi Cs .3.Dòng chính * ∆s Ví dụ 1-3. Cuối cùng tính lại các độ lệnh ∆k mới ∆k (mới) = ∆k (cũ) . Giải bài toán tối ưu sau bằng thuật toán đơn hình: f(x) = 21 . Việc xây dựng x1 có thể tóm tắt lại như sau: 4. gọi là dòng chính. gọi là dòng chính.k = x j . xjr : phần tử thuộc cột xoay.NCT-FIT-HNUE Computional methods and Optimization Problems Bước 4: Nếu hai định lý 1-3. Trong cột cơ sở.s > 0⎬ xr .2. Cột s: cột xoay (9-3. j ∈ J’ = J \ {r} ∪ {s} 4. 4.3.s . Chọn vectơ As để đưa nó vào cơ sở mới.2) 4. kết quả thu được đặt ở dòng As.2) x1j = x 0j − θ .s ⎪⎭ .k =δ xr . Sau đó quay về bước 2.x2 + 3x3 + x4 Æ max ⎧ x1 + 2 x2 + x3 = 8 ⎪ D : ⎨2 x1 + x2 + x4 = 10 ⎪ x j ≥ 0. tức là tìm s sao cho ∆ s = min{∆ k | ∆ k < 0} (8-3. j ∈ J ' (11b-3. Chọn vectơ Ar để đưa nó ra khỏi cơ sở mới. Kết quả được đặt ở dòng mới tương ứng. s 4.

j = 1. Giải bài toán tối ưu sau bằng thuật toán đơn hình: f(x) = -x1 + 3x2 + 4x3 .1 .3 .4. Ví dụ 2-3. 20)t.NCT-FIT-HNUE Computional methods and Optimization Problems ⎡1 2 1 0⎤ 0 t A=⎢ ⎥ .3 < 0 với j = 3. j ∈ J c3 4 A3 c4 1 A4 c5 0 A5 1 A4 10 2 -1 -1 1 0 0 A5 20 3 1 -1 0 1 f(x) = 10 3 -4 -4 0 0 ∆1 = 1. Giải bài toán Lập kế hoạch sản xuất cho một xí nghiệp sao cho tiền lãi thu được lớn nhất Thời gian làm các sản phẩm (giờ) Máy I A B C D Hạn định số giờ 1 máy/1 tháng 1 2 4 8 24. Ví dụ 3-3.8 + 1. 8.(-1) = 8. 4 ∈ J nên theo định lý về “Dấu hiệu vô nghiệm” thì bài toán đã cho không có patu.1 + 1. ∆1 = 3. Tồn tại ∆k = ∆3 < 0 (k=3 ∉J) và xj. Hệ số cơ sở J = {3. pacb x = (0.3 = -4.(-1) . 10) là patu với giá trị tối ưu của hàm mục tiêu là f(x0) = 34. ∆4 =∆5 = 0. 0.4. ∆2 = 1. ∆3 = 1(-1)+0.2 = 3. 10) . 0.(-1) + 0. pacb x0 = (0.x4 Æ max ⎧2 x1 − x2 − x3 − x4 = 10 ⎪ D : ⎨3 x1 + x2 − x3 + x5 = 20 ⎪ x ≥ 0. c2 c1 Cơ sở Phương Hệ số -1 3 án A1 A2 cj Aj . 3. 0.2 . ∆3 =∆4 = 0. 4 nên theo định lý về “Dấu hiệu tối ưu” thì x0 = (0.000 91 .4 = -4.2. 5}.10 = 34. Vì ∆k ≥ 0 với ∀ k = 1.(-1) = 3. 2 1 0 1 ⎣ ⎦ c2 c1 Cơ sở Phương án Hệ số 2 -1 A A cj 1 2 Aj . ∆2 = 3. j ∈ J c3 3 A3 c4 1 A4 3 A3 8 1 2 1 0 1 A4 10 2 1 0 1 f(x) = 34 3 8 0 0 f(x) = 3.k = xj.1 .2 + 0. 4}.5 ⎩ j Hệ số cơ sở J = {4. 0. 10.2 + 1. 8.

(1/8)*1 = 47/8 .s x5. 4 ⎪⎩ x j .3.7 + 8 x4 + x5 = 24000 + x6 + x4 = 12000 + x7 = 26500 Minh họa cách tính theo các công thức (8Æ 11 .(1/2)*0 = 1 . ví dụ: .4x1 + 0..2x2 + 0. j = 1. phần tử ở cột xoay tương ứng là 0 5 .(1/8)*0 = 3.3000*1 = 23. 6.2x2 + 0. 26.5x3 + 0.500) Tồn tại ∆k <0 do đó x0 chưa là patu.(1/4)*0 = 5 1 . Dòng A6: 3 .000.Cột phương án: tính biến cơ sở xj1: . phần tử trục x5.000 . phần tử ở cột xoay tương ứng là 1 92 . 2/8 = 1/4.500 .Dòng A7: 26. 4/8 = 1/2.000 .Các cột Aj: tính xj. đó là dòng chính • Tính các dòng còn lại: (dòng mới = dòng chính * phần tử cột xoay tương ứng) .000 Máy III 6 0 3 1 26. 0. 12. 4 ⎪⎭ • Tính dòng chính: Chia các phần tử ở dòng xoay Ar cũ cho phần tử trục và đặt vào dòng chính As mới . Cơ sở mới J = {4. 7} xr . ∆s = ∆4 = min {∆k | ∆k < 0} Æ s = 4 ⎧⎪ x 0j ⎫⎪ x50 xr0 = = min ⎨ | x j . j = 1.8x4 Æ max + 2 x2 + 4 x3 ⎧ x1 ⎪3x + 5 x2 + x3 ⎪ 1 ⎨ + 3 x3 ⎪6 x1 ⎪⎩ x j ≥ 0. 4 > 0⎬ Æ r = 5.2 0. x0 = (0.4 + 8 x4 ≤ 24000 ≤ 12000 + x4 ≤ 26500 Ta chuyển về bài toán QHTT dạng chính tắc: f(x) = 0. 0. 6.4 0. Dòng A7: 6 .8x4 + 0x5 + 0x6 + 0x7 Æ max + 2 x2 + 4 x3 ⎧ x1 ⎪3 x + 5 x2 + x3 ⎪ 1 ⎨ + 3x3 ⎪6 x1 ⎪⎩ x j ≥ 0.8 Lãi/1 đvsp Mô hình toán học của bài toán là mô hình của bài toán QHTT dạng chuẩn tắc: f(x) = 0.k. 7}.5x3 + 0.000. 0.NCT-FIT-HNUE Computional methods and Optimization Problems Máy II 3 5 1 0 12.3000*0 = 12. 24. Dòng A6: 12. .2): Ở lần lặp thứ nhất: J = {5.5 0. .4 = 8.Rồi đặt vào dòng A4 trong bảng đơn hình phần II.4x1 + 0.500 .500 0.Dòng A5 : 24000/8 = 3000.

4 0..4 A1 4.000 1/8 1/4 1/2 1 1/8 0 0 0 A6 12.4-(1/8)*(-0.(1/2)*1 =5/2...5 = 8 + x4 = 7 + x5 93 = 3 .3.j∈J cj I II III 0 A5 24. c2 c3 c4 c5 c6 c7 c1 Cơ sở Phương 0.1 0. 0.8 A4 2.4. ta có ∆k ≥ 0 với ∀ k = 1..500 6 0 3 1 0 0 1 f(x) = 0 -0. 0.8) 0 0 0 0.000.500) Ví dụ 4-3. Vậy giá trị tối ưu của hàm mục tiêu là f(x*) = 3.(1/4)*1 = -1/4 3 .500.500 0 1/24 11/24 1 1/8 -1/24 0 0. 0. 2. Ví dụ ∆’1= -0.600. . 0..2 -0.5 0 0 0 0.NCT-FIT-HNUE Computional methods and Optimization Problems 0 .000 1 2 4 [8] 1 0 0 0 A6 12.5 0.5 (-0.600 0 0.Kể cả ∆k (mới) cũng tính = ∆k (cũ) .2 0.000 [3] 5 1 0 0 1 0 0 A7 23. j = 1. và patu là x* = (4.1 0 0. 0) là patu.1 0 0 0.8)=-0.dòng chính * ∆s.2 ≤ 8 ≤ 7 ≤ 3 Ta chuyển bài toán về dạng chính tắc: f(x) = 4x1 + 5x2 + 0x3 + 0x4 + 0x5 Æ max + x2 + x3 ⎧2 x1 ⎪x + 2 x2 ⎪ 1 ⎨ x3 ⎪ ⎪⎩ x j ≥ 0.000 3 5 1 0 0 1 0 0 A7 26.8 A4 3. j = 1.000 1 5/3 1/3 0 0 1/3 0 0 A7 0 0 -241/24 13/24 0 -1/8 -47/24 1 f(x) = 3. 0. .000.7 nên theo định lý về “Dấu hiệu tối ưu” thì x = (4.4 -0. 2.500 47/8 -1/4 5/2 0 -1/8 0 0 f(x) = 2400 (-0.1 Tại bảng đơn hình lần lặp thứ 3. 0. Giải bài toán Lập kế hoạch sản xuất trong ví dụ mở đầu: f(x) = 4x1 + 5x2 Æ max + x2 ⎧2 x1 ⎪x + 2 x2 ⎪ 1 ⎨ x2 ⎪ ⎪⎩ x j ≥ 0 .8 0 0 0 án Hệ số A A A A A A A 1 2 3 4 5 6 7 Aj.3) 0 -0.

. . 1) là patu.. 0. Vậy giá trị tối ưu của hàm mục tiêu là f(x*) = 22.1. hơn nữa các vectơ cơ sở là các vectơ đơn vị. ta có ∆k ≥ 0 với ∀ k = 1.j∈J 0 Tại bảng đơn hình lần lặp thứ 4. .Ở bước đầu tiên của thuật toán phải có ngay một pacb. Nhận xét Bài toán QHTT đã giới thiệu ở trên thực hiện thuật toán đơn hình với các điều kiện sau: . . 2.Giải hệ Ax0 = b để tìm pacb ban đầu. Khi đó pacb x0 tìm được ngay vì xj0 = bi. 0.Phải ở dạng chính tắc với b > 0. Tìm phương án cực biên ban đầu 4.Nếu ở dạng chuẩn thì đưa được về dạng chính tắc bằng cách thêm biến phụ..pacb ban đầu tìm được ngay nếu cơ sở không suy biến. Như vậy bài toán QHTT dạng chính tắc có thể không giải được ngay ngay cả khi cơ sở của nó không suy biến nhưng các vectơ cơ sở không là các vectơ đơn vị. Khi đó ta có hai cách . 2). 94 .5 nên x = (3.NCT-FIT-HNUE I II III IV Computional methods and Optimization Problems Phương án c1 4 A1 c2 5 A2 c3 0 A3 c4 0 A4 c5 0 A7 A3 8 2 1 1 0 0 0 A4 7 1 2 0 1 0 0 A5 3 0 [1] 0 0 1 f(x) = 0 -4 (-5) 0 0 0 0 A3 5 2 0 1 0 -1 0 A4 1 [1] 0 0 1 -2 5 A2 3 0 1 0 0 1 f(x)= 15 (-4) 0 0 0 1 0 A3 3 0 0 1 -2 [3] 4 A1 1 1 0 0 1 -2 5 A2 3 0 1 0 0 1 f(x) = 19 0 0 0 4 (-3) 0 A5 1 0 0 1/3 -2/3 1 4 A1 3 1 0 2/3 -1/3 0 5 A2 2 0 1 -1/3 2 0 f(x) = 22 0 0 1 2 0 Hệ số Cơ sở cj Aj. Có thể giải trực tiếp bằng phương pháp Crame. và patu là x* = (3. 4.

Định nghĩa ràng buộc chuẩn Xét bài toán QHTT dạng chính tắc . các thành phần còn lại tất nhiên bằng 0. j x j = bi .x5 Æ max 3 x2 ⎧ ⎪ x3 ⎪ D:⎨ + x2 ⎪ x1 ⎪⎩ x j ≥ 0.Bài toán QHTT dạng chính tắc mà mọi ràng buộc đều chuẩn thì gọi là bài toán QHTT (chính tắc) chuẩn.15x5 Æ max 95 .j = 0 với ∀j = 2.3 = 1. Nói cách khác vectơ cột Ak của A là vectơ cơ sở thứ i của cơ sở.3 = 1. i = 1.5 + 2 x4 + x5 = 15 (1) + x4 = 30 (2) + 3 x4 = 20 (3) ⎡0 A = ⎢⎢0 ⎢⎣1 A1 3 0 2 1⎤ 0 1 1 0⎥⎥ 1 0 3 0⎥⎦ A2 A3 A4 A5 Ta có J = {5.j = 0 với ∀j = 1. Xét Bài toán P sau đây : f(x) = x1 + 6x2 + 3x4 .k = 0 với ∀j ≠ i. tức là Ak = A3 là vec tơ cơ sở thứ hai có ai. nói cách khác cơ sở là {A5. tức là Ak = A5 là vec tơ cơ sở thứ nhất có ai. Khi đó biến xk được gọi là biến chuẩn của điều kiện i. m vaf x0j =0 với ∀ j ≠ i.Ràng buộc (2) có biến chuẩn là xk(i) = x3(2) của điều kiện i = 2.Ràng buộc n ∑a j =1 i. (2). 2 (≠ i = 3). tức là Ak = A1 là vec tơ cơ sở thứ ba có ai. Ví dụ 1-4. 3. j = 1. Đối với bài toán chuẩn.j = 0 với ∀j = 1.3 (≠ i = 1).2. 4.k = a2.NCT-FIT-HNUE Computional methods and Optimization Problems .5 = 1. Nói một cách đơn giản : ràng buộc chuẩn là ràng buộc tương ứng với một vectơ cột Ak là vectơ đơn vị để có thể đưa vào cơ sở.k = a1. 3 (≠ i = 2). ta có ngay pacb ban đầu x0 mà x0k(i) = bi ∀i = 1.Ràng buộc (3) có biến chuẩn là xk(i) = x1(3) của điều kiện i = 3. 1}. .k = a1. Ví dụ 2-4.k = 1. A1} gồm các vectơ đơn vị. do đó các ràng buộc (1).2. . Xét Bài toán f(x) = 0. còn lại ai. . trong đó : . m được gọi là ràng buộc chuẩn (của điều kiện i) nếu: (i) bi ≥ 0 (nếu bi < 0 ta nhân hai vế với -1) (ii) Tìm được biến xk(i) (viết k(i) để nói rằng dòng k tìm phụ thuộc vào i) sao cho ai. còn lại ai.2.Ràng buộc (1) có biến chuẩn là xk(i) = x5(1) của điều kiện i = 1. aj. còn lại ai.2 x1 + x2 + 5x3 + x4 .Thêm biến giả để có một cơ sở gồm các vectơ đơn vị. vectơ Ak này có thành phần thứ i bằng 1. A3. (3) đều là ràng buộc chuẩn.

15x5 .5 − 3 x4 = 0 (1) − 5 x4 + 2 x5 = 5 ( 2) + 4 x4 + x5 = 2 (3) ⎡0 A = ⎢⎢0 ⎢⎣1 A1 0 − 1 − 3 0⎤ 1 -7 − 5 2⎥⎥ 1 2 4 1 ⎥⎦ A2 A3 A4 A5 Ta thấy chỉ có ràng buộc (3) là ràng buộc chuẩn với biến chuẩn là xk(i) = x1(3) của điều kiện i = 3. j x j ⎪ j =1 ⎪ x j ≥ 0.k = a3.Mx7Æ max (M lớn bao nhiêu tùy ý) − x3 ⎧ ⎪ x2 − 7 x3 ⎪ D:⎨ + x2 + 2 x3 ⎪ x1 ⎪⎩ x j ≥ 0.Mx6 . j x j ⎪ jn=1 ⎪ D : ⎨∑ ak . A1} là cơ sở gồm các vectơ đơn vị với các ràng buộc đều là chuẩn và có ngay pacb ban đầu là x0 = (2. 0. 7.<M. x> Æ max ⎧n ⎪∑ ai . 0. Vấn đề đặt ra là bài toán P2 có tương đương với bài toán P không và giải bài toán P2 này như thế nào? 4. Phương pháp phạt hay phương pháp bài toán M Bài toán P : Một cách tổng quát. Bài toán M: Bài toán sau đây được gọi là bài toán phạt (hay bài toán M) của bài toán P : f(x) = <c. 0. n Ví dụ : Bài toán P trong Ví dụ 2-4.1 = 1.2 có I1 = {3}.NCT-FIT-HNUE Computional methods and Optimization Problems − x3 ⎧ ⎪ − 7 x3 x2 ⎪ D:⎨ + x2 + 2 x3 ⎪ x1 ⎪⎩ x j ≥ 0. Bài toán P2 cùng với số M lớn bao nhiêu tùy ý này được gọi là “bài toán M”. M. Để tất cả các ràng buộc đều là chuẩn thì bài toán P cần thêm 2 biến giả nữa để có bài toán sau đây : Bài toán P2: f(x) = x1 + 6x2 + 3x4 .2 (≠ i = 3).j = 0 với ∀j = 1. tức là Ak = A1 là vec tơ cơ sở thứ ba có ai. M). 1} hay {A6.5 ⎡0 A = ⎢⎢0 ⎢⎣1 A1 − 3 x4 − 5 x4 + x6 + 2 x5 + x7 = 0 (1) = 5 ( 2) + 4 x4 + x5 = 2 (3) 0 − 1 − 3 0 1 0⎤ 1 -7 − 5 2 0 1⎥⎥ 1 2 4 1 0 0 ⎥⎦ A2 A3 A4 A5 A6 A7 Khi đó ta có J = {6. j = 1. k ∈ I 2 I2 là tập các ràng buộc không chuẩn j = 1. A7. còn lại ai. j = 1. i ∈ I1 I1 là tập các ràng buộc chuẩn = bk . x> . I2 = {1.3. 2}. bài toán QHTT chính tắc P có thể viết dưới dạng f(x) = <c. Bài toán P2 khi thêm biến giả không phải là để khử các dấu bất đẳng thức trong các ràng buộc mà là để sinh thêm các vectơ đơn vị. ⎪ ⎩ = bi . x> Æ max (M là số dương lớn tùy ý) 96 . đủ để tạo thành một cơ sở có hạng bằng m.

x >= ∑ c j x j . j = 1. ngược lại nếu tất cả các thành phần ứng với biến giả mà bằng 0 thì bài toán P có nghiệm là nghiệm của bài toán M nhưng bỏ đi các biến giả. dòng ∆k được tách thành 2 dòng : . Việc xét dấu ∆k và so sánh hai số ∆k = akM + bk và ∆’k = a’kM + b’k dựa vào (*). Trong bảng đơn hình giải bài toán M. j ∈ I 2 thì bài toán P không có phương án chấp nhận được. Từ định lí trên suy ra : Để giải bài toán P ta tiến hành giải bài toán M. 0. i ∈ I1 ⎪∑ ai . xI*2 ) và ∃x *j > 0. ∀bk . j x j j =1 ⎪n ⎪ D : ⎨∑ ak . 0) với các thành phần 0 phía sau thuộc I2 thì bài toán P có nghiệm là x = (x1. j x j + xk = bk . Ví dụ 1-4. < M . n. 2) Nếu bài toán M có nghiệm ( x * . x> = -x1 + x2 + x3 -2x5 Æ max 97 . xn). nếu bài toán M có nghiệm x = (x1. . x >= ∑ Mxk j =1 k∈I 2 Định lý 1-4.Dòng trên ứng với các hệ số M của I2 (ứng với biến giả) . x I*2 ) và x *j = 0. b'k và ∆ k < ∆'k ⇔ ⎨ k ∆k < 0 ⇔ ⎨ k ⎩ak = 0. xk ≥ 0.3. x> và aM + b ≥ cM + d ⎡a > c ⇔⎢ ⎣a = c and b > d (*) n Ở đây < c. nếu đây là bài toán tìm min thì hàm mục tiêu cộng thêm lượng <M. Mối quan hệ về nghiệm của bài toán P và bài toán M được cho như sau 1) Nếu bài toán M không có nghiệm thì bài toán P cũng không có nghiệm. …. xn. ∀bk ⎧a < a 'k .NCT-FIT-HNUE Computional methods and Optimization Problems ⎧n = bi .3 Giải bài toán P sau đây : f(x) = <c. Nếu bài toán M có nghiệm nhưng có ít nhất một thành phần ứng với biến giả mà khác 0 thì bài toán P cũng vô nghiệm. k ∈ I 2 ⎪ j =1 ⎪ x j ≥ 0. k ∈ I 2 ⎪ ⎩ Chú ý rằng. bk < 0 ⎩bk < b'k . 3) Nếu bài toán M có nghiệm ( x * ... if ak = a'k Chú ý: Các cột ứng với biến giả (tức là ck = -M) không cần phải tính. ∀j ∈ I 2 thì x* là nghiệm của bài toán P. Tại dòng f(x): không cần tính giá trị f(x) khi trong cơ sở còn có các vectơ giả. Tức là ta có: ⎧a < 0. Khi cơ sở không còn vectơ giả thì dòng ∆k cũng không cần tách thành 2 dòng. Nói cách khác. Nếu bài toán M vô nghiệm thì P cũng vô nghiệm. ….Dòng dưới ứng với các hệ số cj mà j ∈ I1 (ứng với biến thật) Hoặc nếu không tách thành hai dòng thì ∆k viết dưới dạng ∆k = ak + bkM.

A6. 0.3 Giải bài toán P sau đây : f(x) = <c. Biến giả x7 = 0. 10.0). j = 1. do đó bài toán P đã cho có patu là x* = (4. 0. 2. Khi đó ta có bài toán phạt của bài toán P sau đây: Bài toán M: f(x) = <c. Ví dụ 2-4. x> = -x1 + x2 + x3 -2x5 -Mx7 Æ max (M lớn tùy ý) − x2 ⎧2 x1 ⎪3x ⎪ 1 D:⎨ ⎪ ⎪⎩ x j ≥ 0. 0 . 8. ta cần thêm một biến giả x7 ở ràng buộc (1). 4. 0. j = 1. 6) c2 c3 c4 c1 Cơ sở Phương Hệ -1 1 1 0 án số A A A A 1 2 3 4 Aj. tập các ràng buộc chuẩn tương ứng với các điều kiện i = 2 và i = 3.7 x3 − x4 − x4 + x5 − 2x4 + 2 x5 + x7 = 6 (1) = 10 (2) + x6 = 4 (3) Cơ sở ban đầu là J = {A7. 2.NCT-FIT-HNUE Computional methods and Optimization Problems − x2 ⎧2 x1 ⎪3 x ⎪ 1 D:⎨ x3 ⎪ ⎪⎩ x j ≥ 0. 0. Để có ràng buộc chuẩn với điều kiện i = 1. 0.….x3 -x4 Æ max 98 . 0) với giá trị tối ưu của hàm mục tiêu là f(x*) = 4. 7 nên thu được patu là (4. x> = 2x1 + x2 . 3}.j∈J cj I III c5 0 A6 -M A7 6 [2] -1 0 -1 0 0 0 A6 10 3 0 0 -1 1 1 1 A3 4 0 0 1 -2 2 0 (-2M) M 0 M 0 0 1 -1 0 -2 0 0 f(x) = II c5 2 A5 -1 A1 3 1 -1/2 0 -1/2 0 0 0 A6 1 0 3/2 0 [1/2] 1 1 1 A3 4 0 0 1 -2 2 0 f(x)= 1 0 -1/2 0 (-3/2) 0 0 -1 A1 4 1 1 0 0 1 1 0 A4 2 0 3 0 1 2 2 1 A3 8 0 6 1 0 6 4 f(x) = 4 0 4 0 0 3 3 c5 -M A7 Bài toán M tại lần lặp thứ 3 có ∆k ≥ 0 với ∀ k = 1. 8.6 − x4 = 6 − x4 + x5 + x6 − 2 x4 + 2 x5 (1) = 10 (2) = 4 (3) Ta có I1 ={2. 0. A3} với pacb ban đầu là x0 = (0.

M 0 0 -2/3 2 f(x) = IV c5 -M A6 A5 f(x)= III c5 -M A5 -M f(x) = II c4 -1 A4 2 A1 3 1 0 0 0 1 A2 3 0 1 0 1 -1 A3 1 0 0 1 0 f(x) = 8 0 0 0 2 99 . 6.M 0 -3 +5 -1 2 A1 8/3 1 0 -1/3 0 1 A2 2/3 0 1 -7/3 1 -M A7 11/3 0 0 [11/3] 0 0. j = 1.x3 -x4 -Mx5 -Mx6 -Mx7 Æ max (M lơn tùy ý) − x2 + 2 x3 ⎧ x1 ⎪2 x + x2 − 3 x3 ⎪ 1 D:⎨ + x2 + x3 ⎪ x1 ⎪⎩ x j ≥ 0.M 0. j = 1.j∈J I c5 -M A7 2 [1] -1 2 -1 1 0 0 -M A6 6 2 1 -3 1 0 1 0 -M A7 7 1 1 1 1 0 0 1 (-4M) -M 0. 0.NCT-FIT-HNUE Computional methods and Optimization Problems − x2 + 2 x3 ⎧ x1 ⎪2 x + x2 − 3 x3 ⎪ 1 D:⎨ + x2 + x3 ⎪ x1 ⎪⎩ x j ≥ 0.M (-11M/3) 0.M) 8.4 − x4 = 2 (1) + x4 = 6 ( 2) + x4 = 7 (3) Bài toán P đã cho không có ràng buộc nào chuẩn.M -5. A7). 0.M (-5. Ta chuyển về Bài toán M: f(x) = <c. 7) c2 c3 c1 Cơ sở Phương Hệ 2 1 -1 án số cj A A A 1 2 3 Aj. 2. x> = 2x1 + x2 .M -M -2 -1 1 1 2 A1 2 1 -1 2 -1 -M A6 2 0 [3] -7 3 -M A7 5 0 2 -1 2 0. 0. A6. Pacb ban đầu là (0.4 − x4 + x5 + x4 + x6 + x4 + x7 = 2 (1) = 6 ( 2) = 7 (3) Cơ sở ban đầu là {A5.

2 x1 + x2 + 3 x3 − 4 x4 + 3 x5 − x6 → Min − x3 + x 4 +2 x5 − 3 x6 = 45 ⎧ 3 x1 ⎪− 2 x + x +2 x − x − x + 2 x = 8 ⎪ 1 2 3 4 5 6 ⎨ − 3 x3 − 2 x4 + x5 = 20 ⎪ x1 ⎪⎩ xj ≥ 0 j = 1. 7 nên thu được patu là (3..3.3. 0 .5. do đó bài toán P đã cho có patu là x* = (3.. 3. 3. 3. BÀI TẬP Giải các bài toán tối ưu sau đây: 1. 0..NCT-FIT-HNUE Computional methods and Optimization Problems Bài toán M tại lần lặp thứ 4 có ∆k ≥ 0 với ∀ k = 1. 0. j = 1.2. x1 + x2 + 3 x3 + 2 x4 → Max ⎧ x1 + 2 x2 + x 3 +2 x4 ≤ 10 ⎪ 2 x + x +3 x + 4 x = 9 ⎪ 1 2 3 4 ⎨ ⎪ x1 + 2 x2 + 2 x3 + x4 ≥ 8 ⎪⎩ x j ≥ 0 j = 1..2.2. x1 + 3x2 + x3 → Min ⎧ x1 + x2 + x3 ≥ 5 ⎪ − x 2 − 2 x 3 = −8 ⎪ ⎨ ⎪ x1 + 2 x2 + x3 ≤ 10 ⎪⎩ x j ≥ 0. 1...0). j = 1. 2 x1 + x2 − x3 + x4 + 3 x5 → Max ⎧ − 3 x1 + 2 x2 + x3 + x4 + 2 x5 = 14 ⎪ − 2 x + 6 x − 3x + x5 ≤ 18 ⎪ 1 2 3 ⎨ − x5 = −16 ⎪− 2 x1 + x2 − 2 x3 ⎪⎩ x j ≥ 0.. 0) với giá trị tối ưu của hàm mục tiêu là f(x*) = 8. 4.2. 1.6 2. 0.4 100 .…. Các biến giả x5 = x6 = x7 = 0..

Sign up to vote on this title
UsefulNot useful