Cong Ty Cong Nghe Tin Hoc Nha Truong

Để các giải chương trình tuyến tính ( bậc nhất ) hay phi tuyến tính ( có nhiều bậc ), các bạn phải triển khai rất nhiều phép toán theo một số quy tắc trước khi tính được nghiệm. Phần mềm Excel có thể làm được điều này, bài viết sau giới thiệu một số phương pháp giải phương trình bằng Excel. Các bạn cần có kỹ năng về Excel: mở và lập một bảng tính, vẽ đồ thị, sử dụng các add-in Solver, GoalSeek trong Excel.

1. Giải phương trình bằng đồ thị:

Sử dụng Excel rất dễ dàng vẽ đồ thị hàm f(x), dựa vào đồ thị ta có thể tìm nghiệm của phương trìnhf(x) = 0 chính là giao điểm đối với trục hoành của đồ thị.

f(x) = 2x5 – 3x2 – 5 = 0

Để giải phương trình này, ta chuẩn bị một trang tính mới với hai cột như trong hình 1, cột thứ nhất là giá trị của biến x , cột thứ hai tính toán giá trị của hàm f(x) với biến x trong khoảng-10 ≤ x≤ 10, sau đó vẽ đồ thị của hàm f(x). Điểm giao cắt giữa đồ thị và trục hoành chính là f(x) = 0. giá trị của x tại đó chính là nghiệm của phương trình. Lưu ý nhập công thức tại ô B2 chính xác là=2*A^5 – 3*A^2 – 5, công thức này sử dụng cho toàn bộ cột B.

Để vẽ đồ thị hàm f(x) các bạn làm như sau:

Trên bảng tính, chúng ta thấy hàm f(x)cắt trục x tại một điểm nằm giữa x = 1 và x = 2 ( phần tô màu vàng ). Tuy nhiên sử dụng biểu đồ trong hình 1 rất khó nhận ra (vì phạm vi giá trị của f(x)quá lớn). Do đó, ta sẽ tính toán và vẽ lại đồ thị f(x) trong khoảng từ 0 ≤ x≤ 2 ( phần tô màu vàng ) như trong hình 2.

Bạn cũng có thể dễ dàng vẽ đồ thị của bất kỳ hàm số nào để khảo sát biến thiên hoặc tìm miền giá trị (nghiệm) của các bất phương trình bằng phương pháp như trên.

Bây giờ ta có thể thấy rõ ràng trên đồ thị f(x) cắt trục hoành tại điểm x = 1.4, chúng ta kết luận nghiệm của phương trình đã cho xấp xỉ là: x = 1.4. Nếu giá trị này chưa thỏa mãn về độ chính xác, chúng ta sẽ sử dụng các phương pháp trình bày ở phần kế tiếp.

2. Giải phương trình bằng Goal Seek trong Excel:

Sử dụng chức năng GoalSeek của Excel chúng ta có thể giải gần chính xác nghiệm của phương trình nhanh chóng và dễ dàng. Để làm quen, bạn giải phương trình sau:

f(x) = 2x5 – 3x2 – 5 = 0

Để giải phương trình này, ta chuẩn bị một trang tính mới như trong hình 2.1, công thức tại ô B5 là = 2*B3^5 – 3B*3^2 – 5, đây là công thức hàm f(x) của phương trình.

Tại ô B3 bạn nhập giá trị là 1 ( hoặc bất kỳ giá trị nào ), ta sẽ dùng ô này thử tính nghiệm của phương trình bằng Goal Seek. Bạn vào menu Tool chọn Gool Seek, mục đích của chúng ta là tìm giá trị của x để hàm f(x) trong ô B5 đạt giá trị bằng không, do vậy bạn điền vào mục Set cell= B5, To value = 0. Trong mục By changing cell, bạn điền vào $B$3, sau đó bấm OK, chúng ta sẽ có nghiệm x = 1.4041169như trong hình-2.2, giá trị này chính xác hơn ví dụ ban đầu. (Lưu ý là lúc này giá trị f(x) được Excel tính toán chỉ gần xấp xỉ bằng không theo thuật toán xấp xỉ lặp của chương trình).

Chọn ô mục tiêu ( Settarget Cell ) là B$5$, đánh dấu chọn mục value of và điền vào 0 (giá trị là 0). Điền $B$3 vào mục By changing Contraints. Như vậy bạn tìm nghiệm cho phương trình f(x) tại ô $B$5 sao cho f(x) = 0, tuy nhiên ở đây với điều kiện nghiệm x ≥ 0.

Để thêm điều kiện x ≥ 0 vào, bạn bấm nút lệnh Add, sau đó chọn ô B3, chọn ≥ trên thanh công cụ Droplist, điền 0 vào như trong hình 3.2. Nhấn phím Add, sau đó nhấn Cancel để trở về như trong hình 3.3.

Điều kiện biến x ≥ 0 đã được thêm vào, bây giờ bạn nhấn Solver, chương trình Excel sẽ giải ra nghiệm là x = 1.404086 như hình 3.4 Bạn nhấn OK.

4. Giải hệ các phương trình tuyến tính bằng Ma trận trong Excel: a. Quan hệ giữa ma trận và hệ phương trình tuyến tính

Ma trận toán học chỉ đơn giản là mảng số hai chiều, các thành phần trong ma trận có chỉ số hàng và chỉ số cột. Một ma trận mà chỉ có một cột thì gọi là véc tơ. Phần này trình bày cách sử dụng các tính chất của ma trận để giải một hệ phương trình tuyến tính.

a11x1+ a12x2+. . . + a1nxn=b1 a21x1+ a22x2+. . . + a2nxn=b2 . . . . . (4.1) an1x1+ an2x2+. . . + annxn=bn

Cho một hệ phương trình tuyến tính có công thức tổng quát như sau

Trong đó aij, bi là tham số (đã biết), xj là biến số (chưa biết) của hệ phương trình. Hai chỉ số i và j là chỉ số hàng và cột của hệ phương trình.

AX = B(4.2)

Với aij, bj là các tham số trong hệ phương trình (4.1) trên, xj là véc tơ nghiệm của hệ phương trình. Như vậy, hệ phương trình (4.1) có thể viết lại là:

Nhân cả hai vế với A-1( lưu ý A-1A = I với I là ma trận đơn vị ) ta được:

A-1X = IX = A-1B(với IX = X)

X = A-1B(4.3)

Vậy

Do đó, chúng ta kết luận: nghiệm của hệ phương trình tuyến tính (4.1) chính là ma trận tích của Ma trận đảo (chuyển vị) của A với ma trận B . Như chúng ta thấy trong phương trình (4.3).

a. Các tính toánMa trận trong Excel

Chúng ta sẽ sử dụng kết luận trên để giải hệ phương trình tuyến tinh trong Excel, như sẽ trình bày trong phần sau.

Excel xem ma trận như là một khối vùng gồm các ô liền kề nhau, được excel xử lýnhư một ô riêng biệt. Điều đó có nghĩa là nếu bạn muốn nhập một ma trận có kích thước n hàng , m cột vào excel thì bạn phải chọn một khối vùng có n hàng, m cột nằm liền kề nhau trong bảng tính (lưu ý là chúng phải nằm liền kề nhau). Sau đó bạn nhập công thức mảng cho ma trận. Cuối cùng bạn nhấn tổ hợp phím Ctrl-Shift-Enter cùng lúc, công thức mảng sẽ xuất hiện trong dấu ngoặc cong { } trên thanh công thức (formula bar). Ví dụ {A1:C3} là mảng có kích thước 3hàng x 3cột gồm các ô nằm liền nhau từ A1 đến C3.

c. Giải hệ các phương trình tuyến tính bằng Ma trận đảo trong excel

( lưu ý: các bạn phải nhấn tổ hợp phím thì trên thanh công thức mới xuất hiện dấu ngoặc cong, nếu các bạn tự điền dấu ngoặc cong vào thì vẫn không hợp lệ, Excel không xử lý được).

2x 1 +3x 2=8

4x 1-3x 2=-2

Để giải hệ phương trình này, chúng ta sử dụng Excel để tính ma trận đảo của hệ phương trình. Bạn mở trang tính mới nhập ma trận (mảng giá trị) như trong hình 4.1.

Chọn khối vùng A4:B5chứa ma trận A, G4:G5 chứa véc tơ B, I4:I5chứa vec tơ nghiệm X, vùng D4:E5 là ma trận đảo A-1 của ma trận A.

Các ô từ A4:B5 bạn lần lượt nhập 2, 3 ; 4, -3 như hình 4.1, G4:G5 là 8, -2. Để tính ma trận đảo của A, chọn D4:E5, sau đó bạn nhập chính xác công thức =INVERSER(A4:B5), nhấn Ctrl-Shift-Enter sẽ xuất hiện công thức như hình 4.1,

hàm inverser(array)của Excel tính toán và trả về mảng giá trị là ma trận đảo của array. Kết quả ma trận đảo A-1xuất hiện như trong hình 4.1.

5. Giải hệ phương trình trong Excel bằng add-in Solver:

Véc tơ X từ I4:I5 là nghiệm của hệ phương trình, bạn chọn I4:I5, nhập vào công thức =MMULT(D4:E5, G4:G5), sau đó nhấn tổ hợp phím Ctrl-Shift-Enter , công thức này nhân ma trận (mảng ) A-1 vớima trận B, kết quả là nghiệm của phương trình như trong hình 4.2 là x 1 = 1, x 2 = 2. ( Để kiểm tra lại, các bạn nhập công thức mảng K4:K5 =MMULT(A4:B5, I4:I5) cho ra ma trận tích AX = B).

Đây là hệ phương trình gồm n phương trình với n ẩn, chúng ta phải tìm giá trị của x 1, x 2, … , x n để từng phương trình bằng không ( zero).

y = f12 + f22+… +fn2(5.a)

Có nhiều cách để giải hệ phương trình này, một trong các cách mà chúng ta sẽ chọn để giải bằng excel là bắt buộc phương trình

bằng zero.Đó là, tìm các giá trị x 1, x 2, … , x n sao cho phương trình ( 5.a) bằng không ( zero).Vì các thành phần bên vế phải là bình phương, nên luôn ≥ 0,do vậy để y =0 thì từng thành phần fs phải đồng thời bằng 0. nên giá trị x 1, x 2, … , x n để y =0 sẽ là lời giải cho hệ phương trình trên.

Do vậy, mục đích của việc dùng Solver để giải hệ là định nghĩa hàm mục tiêu ( targer function) gồm tổng bình phương của từng phương thành phần như trong hình 5.1 sau đó tìm giá trị x 1, x 2, … , x n để hàm mục tiêu bằng không.

3 x 1 +2 x 2– x 3=4

2x 1-x 2+ x 3 =3

x 1+x 2– 2x 3 = -3

Ta đặt f(x 1, x 2, x 3), g(x 1, x 2, x 3), h(x 1, x 2, x 3) lần lượt bằng phương trình thứ nhất, thứ hai và thứ ba, vậy hệ phương trình viết lại là :

f(x 1, x 2, x 3) = 3 x 1 +2 x 2– x 3 – 4 = 0

g(x 1, x 2, x 3) = 2 x 1 -x 2+ x 3 -3 = 0

h(x 1, x 2, x 3)=x 1+x 2– 2x 3+ 3 = 0

muốn tìm x 1, x 2, x 3 để ba phương trình trên bằng zero, ta đặt tổng

y= f 2 + g 2 + h 2

Để giải hệ phương trình trên bằng Solver , bạn mở một trang tính mới, nhập các công thức vào như trong hình 5.1. Các công thức trên ô B7, B8 và B9 là các hàm f(x 1, x 2, x 3), g(x 1, x 2, x 3), h(x 1, x 2, x 3), ô B11 là công thức hàm y, các ô từ B3: B6sẽ chứa các giá trị nghiệm do Solver tính toán.

b. Giải hệ các phương trình phi tuyến tính

Sau khi đã Solver đã tìm ra lời giải , bạn chọn Keep SolverSolution, các giá trị kết quả x 1, x 2, x 3 tìm được sẽ có trên các ô của bảng tính như trên hình 5.3. Như vậy lời giải cho hệ các phương trình tuyến tính trên làx 1=1, x 2 = 2, x 3 = 3. (Các giá trị tương ứng của từng hàm f, g, h và y là xấp xỉ zero.)

Ví dụ: giải hệ các phương trình phi tuyến tính sau với điều kiện x1, x2≥ 0

Giải hệ các phương trình phi tuyến tính cũng tương tự như hệ tuyến tính.

x 12+2 x 22-5x 1 +2 x 2=40

3x 12 -x 22+4x 1 +2 x 2=28

Ta đặt f(x 1, x 2), g(x 1, x 2) lần lượt bằng phương trình thứ nhất và thứ hai , vậy hệ phương trình viết lại là:

f(x 1, x 2)=x 12+2 x 22– 5x 1+2 x 2-40 = 0

g(x 1, x 2) = 3x 12 -x 22+ 4x 1 +2 x 2-28 = 0

muốn tìm x 1, x 2, để hai phương trình trên bằng zero, ta đặt hàm mục tiêu

y(x 1, x 2) = f 2 + g 2 ( với x 1 ≥ 0, x 2 ≥ 0 )

sau đó dùng Solverđể xác định giá trị x 1, x 2 để hàm mục tiêu bằng zero, giá trị tìm được sẽ là lời giải của hệ phương trình.

Để giải hệ các phương trình phi tuyến tính trên bằng Solver , bạn mở một trang tính mới, nhập các công thức vào như trong hình 6.1. Các công thức trên ô B6, B7 là các hàm f(x 1, x 2), g(x 1, x 2), ô B9 là công thức hàm y, các ô B3, B4 sẽ chứa các giá trị nghiệm do Solver tính toán.

Để giải điều kiện của hệ phương trình này là x1 ≥ 0, x2 ≥ 0, trong mục các điều kiện ràng buộc của Solver ( Subject to the Constraints) bạn phải thêm các tham số điều kiện là $B$3 ≥0, $B4$≥0 bằng cách nhấn nút add như trong hình 6.3. Sau đó nhấn Cancel,Bấm nút Solver, bạn sẽ có kết quả cho lời giải nhưtrong hình 6.4

Sau khi đã Solver đã tìm ra lời giải , bạn chọn Keep SolverSolution, các giá trị kết quả x 1, x 2, x 3 tìm được sẽ có trên các ô của bảng tính như trên hình 6.5. Như vậy lời giải cho hệ các phương trình tuyến tính trên làx 1= 2.8, x 2 = 3.6. (Các giá trị tương ứng của từng hàm f, g, và y là xấp xỉ zero.)

Ngoài các phương pháp giải đã nói ở trên, sử dụng phần mềm Excel còn có thể lập bảng tính các biểu thức tích phân, vi phân hoặc các phép toán thống kê… Vì thời gian có hạn nên không trình bày ở đây.

School@net