SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Downloaden Sie, um offline zu lesen
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
‹›


•            o




    Ứng dụng excel_de_giai_qhtt — Document Transcript

•            1. ỨNG DỤNG EXCEL ĐỂ GIẢI BÀI TOÁN QUY HOẠCH

    TUYẾN T ÍNH Sự cạnh tranh khốc liệt trong hoạt động sản xuất
    kinh doanh luôn đ òi hỏicác nhà quản lý doanh nghiệp phải thường
    xuyên lựa chọn phương án để đưa racác quyết định nhanh chóng,
    chính xác và kịp thời với những ràng buộc và hạnchế về các điều
    kiện liên quan tới tiềm năng của doanh nghiệp, điều kiện thịtrường,
    hoàn cảnh tự nhiên và xã hội. Việc lựa chọn phương án nào là tối
    ưutheo mục tiêu định trước là hết sức quan trọng. Nếu tất cả các
    yếu tố (biến số)liên quan đến khả năng, mục đích và quyết định lựa
    chọn đều có mối quan hệtuyến tính thì chúng ta hoàn toàn có thể
    sử dụng mô hình quy hoạch tuyến tính(QHTT) để mô tả, phân tích
    và tìm lời giải cho vấn đề lựa chọn tối ưu trongquản lý kinh tế.
    Trong môn học Toán kinh tế việc giải bài toán QHTT thực hiệnbằng
    thuật toán đơn hình . Trong phần mềm Excel sử dụng một công cụ
    càithêm là Solver có thể giải bài toán tối ưu nhanh chóng. 2.1
    NHẮC LẠI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.1.1 Bài toán
    QHTT dạng tổng quát Bài toán QHTT dạng tổng quát là bài toán tối
    ưu hoá hay bài toán tìm cựctrị (cực tiểu hoặc cực đại) của một hàm
    tuyến tính với điều kiện các biến số phảithoả mãn một hệ phương
    trình và (hoặc) bất phương trình tuyến tính. Mô hìnhtoán học của
    bài toán QHTT tổng quát có thể viết như sau: n Hàm mục tiêu: f ( x1
    ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 với các ràng buộc (điều


    kiện): n ∑a ij x j = bi , (i ∈ I1 ) (2.2) j =1 1
•            2. ∑a ij x j ≥ bi , (i ∈ I 2 ) (2.3) j =1 n ∑a ij x j ≤ bi , (i ∈ I 3 )



    (2.4) j =1 x j ≤ 0 hoặc x j ≥ 0 (2.5) trong đ ó: I1, I2, I3 là tập các chỉ


    số (I1, I2, I3 không giao nhau), ký hiệuI = I1 ∪ I 2 ∪ I 3 aij, bi, cj với




    i ∈ I , j = 1 ÷n là các hằng số (có thể là tham số), n là sốbiến số xj



    với j = 1 ÷n là các biến số (ẩn số) của bài toán, (2.5) được gọi là
    cácràng buộc về dấu * Một số khái niệm và định nghĩa (1) Một
    nhóm ràng buộc có hệ véc tơ tương ứng độc lập tuyến tính
    đượcgọi là các ràng buộc độc lập tuyến tính. Các ràng buộc dấu
    luôn là độc lập tuyếntính. (2) Phương án: Một véc tơ x = (x1,x2,
    …,xn) thoả mãn hệ ràng buộc củabài toán gọi là một phương án của
    bài toán. Để phân biệt tính chất của các ràng buộc (cả ràng buộc
    dấu) đối với mộtphương án cụ thể, ta có các khái niệm ràng buộc:
    chặt và lỏng. + nếu đối với phương án x mà ràng buộc i thoả mãn
    với dấu đẳng thức(2.2) hoặc xi = 0 (nếu là ràng buộc dấu) thì ta
    nói phương án x thoả mãn chặtràng buộc i hay ràng buộc i là chặt
    đối với phương án x. + nếu đối với phương án x mà ràng buộc i thoả
    mãn với dấu bất đẳng thức(2.3), (2.4) hoặc xi > 0, xi < 0 (tuỳ thuộc
    ràng buộc loại gì) thì ta nói phương ánx thoả mãn lỏng ràng buộc i
    hay ràng buộc i là lỏng đối với phương án x. 2


•            3. Ràng buộc i có dạng phương trình thì nó sẽ là chặt với

    mọi phương án củabài toán, nếu có dạng bất phương trình thì nó
    có thể là chặt đối với phương ánnày và là lỏng đối với phương án
    kia. (3) Phương án tối ưu (phưong án tốt nhất): Một phương án mà
    tại đ ó trịsố hàm mục tiêu đạt cực tiểu (hoặc cực đại, tuỳ trường hợp
    cụ thể của f(x)) gọilà phương án tố ưu. (4) Phưong án tốt hơn: Xét
    bài toán có f(x) → min (max) và hai phươngán x1, x2 của nó.
    Phương án x1 gọi là tốt hơn phương án x2 nếu ( ) ( )f x 1 ≤ (≥ ) f x 2
. Nếu có các dấu bất đẳng thức thực sự thì gọi là tốt hơn thực sự.
    Một bài toán có tồn tại phương án tối ưu gọi là bài toán giải được
    vàngược lại nếu không có phương án tối ưu gọi là bài toán không
    giải được. Bàitoán không giải được là do một trong hai nguyên nhân
    sau: + Bài toán không có phương án + Bài toán có phương án,
    nhưng hàm mục tiêu không bị chặn dưới nếuf(x) → min hoặc không
    bị chặn trên nếu f(x) → max trên tập phương án. (5) Phương án cực
    biên (PACB): Một phương án thoả mãn chặt n ràngbuộc độc lập
    tuyến tính được gọi là phương án cực biên. Một bài toán có số ràng
    buộc (kể cả ràng buộc dấu nếu có) ít hơn n thìchắc chắn sẽ không
    có phương án cực biên dù nó có phương án. Phương án cực biên
    thoả mãn chặt đúng n ràng buộc gọi là phương án cựcbiên không
    suy biến, thoả mãn chặt hơn n ràng buộc gọi là phương án cực
    biênsuy biến. Nếu tất cả các phương án cực biên của bài toán đều
    không suy biến thìgọi là bài toán không suy biến, ngược lại là bài
    toán suy biến. Để thuận tiện cho việc trình bày các kết quả lý thuyết
    cũng như thuật toángiải QHTT, người ta thường sử dụng hai dạng
    đặc biệt của bài toán QHTT là bàitoán dạng chính tắc và bài toán
    dạng chuẩn. 2.1.2 Bài toán QHTT dạng chính tắc 3


•            4. Bài toán QHTT dạng chính tắc có dạng như sau: n Hàm

    mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng
    buộc: ∑a x j =1 ij j = bi , i = 1 ÷m (2.6) x j ≥ 0, j = 1 ÷n (2.7) Như
    vậy, bài toán QHTT dạng chính tắc gồm có 2 nhóm: nhóm các
    ràngbuộc dạng phương trình (2.6), nhóm ràng buộc dạng bất
    phương trình chỉ baogồm các ràng buộc về dấu (2.7). 2.1.3 Bài toán
    QHTT dạng chuẩn Bài toán QHTT dạng chuẩn có dạng như sau: n
    Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với
    các ràng buộc: ∑a x j =1 ij j ≥ bi , i = 1 ÷ m (2.8) x j ≥ 0, j = 1 ÷ n
    (2.7) Bài toán QHTT dạng chuẩn chỉ gồm 1 nhóm các ràng buộc
    dạng bấtphương trình bao gồm các ràng buộc về dấu là (2.8) và
    (2.7). 2.2 CÁC BƯỚC GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH
    TRONG EXCEL Để giải quyết các bài toán QHTT phần mềm Excel
cung cấp cho chúng tamột công cụ khá hữu ích là Solver. Các bài
    toán QHTT dạng chính tắc và dạngchuẩn chỉ là các trường hợp riêng
    bài toán QHTT dạng tổng quát. Vì thế ở đây tasẽ xem xét cách giải
    quyết bài toán QHTT dạng tổng quát rồi từ đ ó áp dụngtương tự cho
    hai dạng còn lại. 2.2.1 Cài thêm công cụ Add-ins Solver Vào thực
    đơn Tools Solver. Nếu chưa thấy chức năng Solver trên thựcđơn
    Tools thì ta cần bổ sung chức năng này vào Excel. Các bước tiến
    hành: (1) Vào menu Tools Add-Ins, xuất hiện cửa sổ: 4


•           5. Hình 2.1 Hộp thoại Add-ins chứa các chức năng mở

    rộng của Excel (2) Chọn Solver Add-Ins và chọn OK. 2.2.2 Xây
    dựng bài toán trong Excel Việc xây dựng bài toán trong Excel cũng
    tương tự như việc xây dựng bàitoán khi chúng ta tiến hành giải thủ
    công thông thường. Sau khi phân tích đầubài chúng ta cần viết
    được hàm mục tiêu và các ràng buộc của bài toán rồi tiếnhành tổ
    chức dữ liệu vào bảng tính. Ta xét ví dụ sau: Ví dụ 2.1: Cho bài
    toán QHTT sau: Hàm mục tiêu: f(x) = 2x1+8x2-5x3+15x4 → max với
    ràng buộc: 3x1-x2+x3+10x4=5 x1+2x2+x3+5x4 ≥ 9
    2x1+10x2+2x3-5x4 ≤ 26 x j ≥ 0, j = 1 ÷4 Tổ chức dữ liệu trên bảng
    tính: Biến quyết định: được nhập tại các ô B7:E7. Cho các giá trị
    khởi độnglà 0. Hàm mục tiêu f(x): có giá trị căn cứ vào giá trị khởi
    động của các biến.Công thức tại ô F8. 5


•           6. Các ràng buộc: nhập các hệ số của các quan hệ ràng

    buộc tại các ôB10:E12. Tính vế trái của các ràng buộc theo công
    thức tại các ô F10:F12.Nhập các giá trị vế phải của các ràng buộc tại
    các ô G10:G12. Theo bảng sau: Hình 2.2 Tổ chức bài toán trên
    bảng tính Sau khi nạp xong dữ liệu vào bảng tính ta tiến hành giải
    bài toán. 2.2.3 Tiến hành giải bài toán (1) Chọn ô F8 và chọn Tools
    Solver. Bảng hộp thoại Solver Parametersxuất hiện và gồm các
    thông số sau: Hình 2.3 Hộp thoại khai báo các thông số cho Solver
    Trong đ ó: 6
•           7. Set Tanget Cell: Nhập ô chứa địa chỉ tuyệt đối của hàm

    mục tiêu. Equal To: Xác định giới hạn cho hàm mục tiêu hoặc giá trị
    cần đạt đếncủa hàm mục tiêu: Max, Min hay Value of tuỳ thuộc vào
    yêu cầu của bài. By Changing Cells: Nhập địa chỉ tuyệt đối của các
    ô ghi các giá trị banđầu của biến. Subject to the Constraints: Nhập
    các ràng buộc của bài toán. Cách làm của Solver là thay đổi giá trị
    của các biến tại By ChangingCells cho đến lúc giá trị của hàm mục
    tiêu tại Set Tanget Cell đạt một giá trị quyđịnh tại Equal To và đồng
    thời thoả mãn tập các ràng buộc tại Subject to theConstraints. Với ví
    dụ 2.1 ta tiến hành khai báo các thông số cho Solver như sau: Địa
    chỉ của hàm mục tiêu F8 được đưa vào Set Target Cell Chọn Max
    tại Equal To để Solver tìm lời giải cực đại cho hàm mụctiêu. Nhập
    địa chỉ của các biến quyết định B7:E7 tại By Changing Cells. Hình
    2.4 Khai báo hàm mục tiêu và các biến Thêm các ràng buộc vào
    Subject to the Contraints: Nhấp nút Add,bảng Add Constraint xuất
    hiện và gồm các thông số sau: 7


•           8. Hình 2.5 Hộp thoại thêm các ràng buộc Cell Reference: Ô

    hoặc vùng ô chứa công thức của các ràng buộc. Ô ấu: Cho phép
                                                   d
    ta lựa chọn dấu của các ràng buộc tương ứng. Constraint: Ô ứa giá
                                                              ch
    trị vế phải của các ràng buộc tương ứng (ta cũngcó thể nhập trực
    tiếp giá trị vế phải của ràng buộc tương ứng). Với ví dụ 2.1 các ràng
    buộc được nhập như sau: + Các ràng buộc về dấu: do x j ≥ 0, j = 1
    ÷ 4 (các ràng buộc đều có dạng≥ ) nên ta chọn vùng địa chỉ chứa
    biến B7:E7 vào Cell Reference, chọn dấu ≥và nhập 0 vào
    Constraint: Hình 2.6 Thêm các ràng buộc Chú ý: Nếu bài yêu cầu
    ràng buộc (xj) là nguyên thì trong ô dấu ta chọnint, nếu là kiểu nhị
    phân ta chọn bin. + Tiếp tục chọn Add để nhập tiếp các ràng buộc
    phương trình và bấtphương trình: Cell Reference Constraint F10 =
    G10 F11 >= G11 F12 <= G12 Chọn OK để kết thúc việc khai báo
    các ràng buộc. Tuy nhiên, muốn hiệuchỉnh ràng buộc ta chọn ràng
    buộc và chọn Change, xoá ràng buộc ta chọn ràngbuộc từ danh
    sách Subject to the Contraints và nhấp Delete. 8
•           9. Hình 2.7 Khai báo các thông số của bài toán Sau khi

    hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuấthiện
    và cho ta hai sự lựa chọn sau: Hình 2.8 Chọn kiểu báo cáo Keep
    Solver Solution: Giữ kết quả và in ra bảng tính. Restore Original
    Values: Huỷ kết quả vừa tìm được và trả các biến vềtình trạng ban
    đầu. Save Scenario: Lưu kết quả vừa tìm được thành một tình
    huống để có thểxem lại sau này. Ngoài ra có 3 loại báo cáo là
    Answer, Sensitivity và Limits. Ở ví dụ 2.1 ta chọn Keep Solver
    Solution, OK. Bảng kết quả nhận đượcnhư sau:


•           10. Như vậy phương án cực biên tìm được là X=(0,3,0,0.8)

    và giá trị cực đạicủa hàm mục tiêu f(x) là 36. 2.2.4 Giải thích thuật
    ngữ Tuy nhiên để tiện cho việc phân tích kết quả thì trong bảng
    SolverResults ta chọn thêm mục Answer Reports khi đ ó bảng kết
    quả nhận được củaví dụ 2.1 như sau: Ta cần phải nắm vững một
    số thuật ngữ sau: Original Value: Giá trị ban đầu. Final Value: Giá trị
    cuối cùng. Formula: Công thức tính. Status: Trạng thái. Binding:
    Ràng buộc chặt. 10


•           11. Not Binding: Ràng buộc không chặt (ràng buộc lỏng).

    2.3 CÁC LỰA CHỌN KHI GIẢI BÀI TOÁN QUY HOẠCH TUYẾN
    T ÍNH 2.3.1 Các lựa chọn Để thiết lập các thuộc tính cho Solver thì
    trong bảng Solver Parametersta nhấp chuột vào Options hộp thoại
    Solver Options cho ta các lựa chọn sau: Hình 2.9 Thiết lập các
    thuộc tính cho Solver Max Time: Thời gian tối đa để giải bài toán là
    32.767 giây (mặc định là100 giây cho các bài toán đơn giản).
    Iterations: Số lần lặp tối đa để giải các bài toán là 32.767 lần(mặc
    định là100 lần). Precision: Độ chính xác của bài toán (từ 0 đến 1,
    mặc định là 0.000001,giá trị càng gần với 0 thì độ chính xác càng
    cao). Giá trị này điều chỉnh độ sai sốcho tập ràng buộc. Tolerance:
    Chỉ áp dụng đối với các bài toán có ràng buộc nguyên. Nhậpvào sai
    số có thể chấp nhận được. Sai số càng lớn thì tốc độ giải càng
    nhanh(mặc định là 5%) Convergence: Chỉ áp dụng đối với các bài
    toán không tuyến tính. Khi tỉsố của giá trị tính toán ban đầu của ô
đích đến giá trị tính toán hiện hành ít hơngiá trị đồng quy Solver
    ngừng việc tìm kiếm dù có tìm thấy lời giải hay không. 11


•           12. Giá trị nằm trong khoảng từ 0 đến 1. Giá trị càng gần 0

    thì độ chính xác càngcao và cần nhiều thời gian hơn (mặc định là
    0.0001). Assume Linear Model: Khi tất cả quan hệ trong mô hình
    là tuyến tính thìchọn mục này để tăng tốc độ giải bài toán. Assume
    Non-Negative: Chọn tuỳ chọn này nếu muốn giả định tất cả cácbiến
    của bài toán đều không âm. Use Automatic Scaling: Chọn tuỳ chọn
    này khi ô đích và ô thay đổi có sựkhác nhau lớn. Solver sẽ tự
    động điều chỉnh các biến để tìm ra lời giải. Chẳnghạn như bài toán
    tối đa % lợi nhuận trên hàng triệu đồng vốn đầu tư. Show Iteration
    Results: Chọn tuỳ chọn này nếu muốn Solver tạm dừnglại và hiển
    thị kết quả sau mỗi lần lặp. Ba tính năng nâng cao điều khiển cho
    Solver: Estimates: Chọn phương pháp cho Solver ước lượng các
    biến - Tangent: Sử dụng cách xấp xỉ tuyến tính bậc nhất. -
    Quandratic: Sử dụng cách xấp xỉ bậc bốn. Derivatives: Chọn cách
    để ước lượng hàm mục tiêu và các ràng buộc - Forward: Dùng khi giá
    trị của các ràng buộc biến đổi chậm (đượcdùng phổ biến). - Central:
    Dùng khi giá trị của các ràng buộc biến đổi nhanh và khiSolver báo
    không thể cải tiến kết quả thu được. Search: Quy định giải thuật
    tìm kiếm kết quả cho bài toán - Newton: là phương pháp mặc định,
    sử dụng nhiều bộ nhớ và có số lầnlặp ít. - Conjugate: cần ít bộ
    nhớ hơn phương pháp Newton nhưng số lần lặpthì nhiều hơn. Được
    sử dụng khi giải các bài toán phức tạp và bộ nhớ máy tínhcó giới
    hạn. Save Model: Chọn nơi lưu mô hình bài toán. Sử dụng khi
    muốn lưu nhiềumô hình trên một worksheet. Mô hình đầu tiên đã
    được lưu tự động. Load Model: Xác định vùng địa chỉ của mô hình
    bài toán cần nạp vào. 12


•           13. 2.3.2 Hạn chế khi giải bài toán quy hoạch tuyến tính

    trong Excel Hạn chế của bài trình cài thêm Solver là chỉ giải được
    các bài toán có tối dalà 16 biến số. Mặt khác số lần lặp tối đa để giải
    bài toán là 32767, thời gian tối đađể giải bài toán là 32767…nên bên
cạnh đ ó nó còn tồn tại một số mặt hạn chếnhất định về quy mô
    của bài toán và khó khăn trong việc tìm miền tối ưu. Đối với những
    bài toán tối ưu có quy mô lớn ta có thể sử dụng phần mềmLindo
    đây là một phần mềm tin học rất mạnh trong lĩnh vực này. 2.4 MỞ
    RỘNG BÀI TOÁN Việc ứng dụng mô hình QHTT trong quản lý kinh
    tế và quản trị doanhnghiệp là rất phổ biến. Chúng ta thường bắt
    gặp mô hình này trong các bài toánnhư: bài toán lập kế hoạch sản
    xuất tối ưu cho doanh nghiệp, bài toán phân bổvốn đầu tư, bài toán
    dự trữ…Tuy nhiên trong phần này xin trình bày ra đây 2loại bài toán
    QHTT thông dụng nhất là: bài toán nguyên vật liệu và bài toán
    vậntải. 2.4.1 Bài toán nguyên vật liệu Bài toán tổng quát Một nhà máy
    có khả năng sản xuất n loại sản phẩm. Để sản xuất các sảnphẩm
    này cần phải sử dụng m loại nguyên vật liệu. Biết rằng: aij là lượng
    nguyên vật liệu loại i cần thiết để sản xuất ra một đơn vị sảnphẩm
    loại j bi là dự trữ nguyên vật liệu loại i cj là lợi nhuận từ việc bán một
    đơn vị sản phẩm loại j với i = 1, m và j = 1, n Bài toán được mô tả
    theo bảng sau: S1 S2 … Sj … Sn Dự trữ NVL1 a11 a12 … a1j …
    a1n b1 NVL2 a21 a22 … a2j … a2n b2 … … … … … … … … 13


•            14. NVLi ai1 ai2 … aij … ain bi … … … … … … … …

    NVLm am1 am2 … amj … amn bm Lợi nhuận đơn vị c1 c2 … cj …
    cn Hãy tìm phương án sản xuất để tối đa hoá lợi nhuận. Bài giải: Gọi
    xj là lượng sản phẩm loại j mà nhà máy sẽ sản xuất nên x j ≥ 0 . Do
    đ ó phương án sản xuất của nhà máy là vectơ x=(x1, x2,…,xj,..,xn).
    Khi đ ó: n Tổng chi phí nguyên vật liệu loại i để sản xuất x là ∑a j
    =1 ij x j sẽ không vượt nquá dự trữ bi: ∑a j =1 ij x j ≤ bi n Tổng lợi
    nhuận thu được khi sản xuất x là ∑c x j =1 j j Vậy mô hình toán học
    của bài toán nguyên vật liệu có thể phát biểu theomô hình bài toán
    QHTT như sau: n Hàm mục tiêu: f(x)= ∑ c j x j → max j =1 n Các
    ràng buộc: ∑a j =1 ij x j ≤ bi , i = 1, m x j ≥ 0, j = 1, n Việc giải bài
    toán nguyên vật liệu trong Excel cũng bao gồm 2 bước: B1: Xây
    dựng bài toán (lập bài toán và tổ chức dữ liệu trên bảng tính). B2:
Tiến hành giải bài toán bằng cách chạy Solver theo trình tự như trên.
    Ta xét một ví dụ cụ thể sau: Ví dụ 2.2 14


•           15. Một nhà máy dự định tiến hành sản xuất 5 loại sản

    phẩm Sj ( j = 1,5 ). Cả 5loại sản phẩm này đều sử dụng 4 loại
    nguyên vật liệu chính NVLi ( i = 1,4 ). Cómức tiêu hao nguyên vật
    liệu, lợi nhuận đơn vị thu được và giới hạn dự trữ nhưsau: S1 S2
    S3 S4 S5 Dự trữ NVL1 2 5 6 8 4 1200 NVL2 3 1 5 6 1 800 NVL3 7
    5 4 5 2 2000 NVL4 8 5 7 9 1 1865 Lợi nhuận đơn vị 300 250 500
    150 320 Hãy xây dựng phương án sản xuất để nhà máy đạt được
    tổng lợi nhuậnlớn nhất. Bài giải: B1: Xây dựng bài toán Gọi xj với
    j=1,5 là sản lượng sản phẩm loại j sẽ sản xuất. (xj>=0) Nên phương
    án sản xuất của nhà máy là vectơ x = (x1, x2, x3 , x4, x5). Hàm mục
    tiêu: f(x) = 300x1 + 250x2 + 500x3 + 150x4 + 320x5 max Các ràng
    buộc: 2x1 + 5x2 + 6x3 + 8x4 + 4x5 <= 1200 3x1 + x2 + 5x3 + 6x4
    + x5 <= 800 7x1 + 5x2 + 4x3 + 5x4 + 2x5 <= 2000 8x1 + 5x2 + 7x3
    + 9x4 + x5 <= 1865 Bài toán được tổ chức trên bảng tính như sau:
    15


•           16. Hình 2.10 Lập bài toán trên bảng tính B2: Giải bài toán: -

    Chọn ô G8 rồi thực hiện lệnh Tools Solver, điền đầy đủ thông tin
    vàohộp thoại Solver Parameters như sau: Hình 2.11 Khai báo các
    thông số của bài toán - Nhấn Solver để thực hiện việc chạy
    Solvers. Trong bảng hộp thoại kếtquả Solver Results tích chọn
    mục Keep Solver Solution và chọn thêm báo cáoAnswer Report ta
    nhận được kết quả: 16


•           17. Phương án tối ưu (phương án cực biên) là x = (200, 0, 0,

    0, 200) vớif(x) max = 124 000. Hay phương án sản xuât tối ưu của
    nhà máy là sản xuất 200đơn vị sản phẩm 1 và 200 đơn vị sản
    phẩm 5 khi đ ó lợi nhuận tối ưu đạt được là124 000 đơn vị tiền tệ.
    Không có nguyên liệu nào bị lãng phí. 2.4.2 Bài toán vận tải Bài toán
    tổng quát: Có m kho hàng cùng chứa một loại hàng hoá, lượng hàng
có ở kho i là ai(i = 1, m). Có n địa điểm tiêu thụ loại hàng nói trên,
    với nhu cầu tiêu thụ ở điểm j làbj ( j = 1, n ) . 17


•            18. Biết cij là cước phí vận chuyển một đơn vị hàng hoá từ

    kho i đến điểm tiêuthụ j. Bài toán được mô tả theo bảng sau: D1 D2
    … Dj … Dn Dự trữ K1 c11 c12 … c1j … c1n a1 K2 c21 c22 … c2j
    … c2n a2 … … … … … … … … Ki ci1 ci2 … cij … cin ai … … …
    … … … … … Km cm1 cm2 … cmj … cmn am Nhu cầu tiêu thụ b1
    b2 … bj … bn Hãy lập kế hoạch vận chuyển hàng từ các kho đến
    các điểm tiêu thụ saocho tổng chi phí vận chuyển là nhỏ nhất. Bài
    giải: Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j
    nênxij ≥ 0, i = m, j = 1, n . Ta có: m n Tổng chi phí vận chuyển: ∑∑
    c i =1 j =1 ij xij n Lượng hàng vận chuyển khỏi kho i: ∑x j =1 ij m
    Lượng hàng vận chuyển đến điểm tiêu thụ j: ∑x i =1 ij Như vậy mô
    hình toán học của bài toán vận tải có thể viết dưới dạng bàitoán
    QHTT như sau: m n Hàm mục tiêu: f(x) = ∑∑ c i =1 j =1 ij xij → min
    n Các ràng buộc: ∑x j =1 ij ≤ ai 18


•            19. m ∑x i =1 ij = bj xij ≥ 0, i = 1, m, j = 1, n Ta thấy ngay

    được điều kiện cần và đủ để bài toán vận tải có phương ántối ưu là
    tổng tất cả các lượng hàng tiêu thụ bằng tổng tất cả các lượng hàng
    ở m ncác kho, nghĩa là: ∑ ai = ∑ b j i =1 j =1 Cũng giống như bài
    toán nguyên vật liệu để tiến hành giải bài toán trongExcel ta cần
    phải trải qua 2 bước là: xây dựng bài toán và tiến hành chạySolver.
    Xét ví dụ cụ thể sau: Ví dụ 2.3 Sử dụng công cụ Solver như đã
    trình bày ở trên hãy lập phương án vậnchuyển xăng tối ưu từ 4 kho
    đến 5 trạm xăng bán lẻ của một công ty kinh doanhxăng dầu khu
    vực V. Bài giải: B1: Xây dựng bài toán Gọi xij là lượng hàng vận
    chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = 1,4, j = 1,5 . Hàm
    mục tiêu: f(x) = 30x11 + 27x12 + 26x13 + 9x14 + 23x15 + 13x21 +
    4x22+ 22x23 + 3x24 + x25 + 3x31 + x32 + 5x33 + 4x34 + 24x35 +
    16x41 + 30x42 + 17x43 +10x44 + 16x45 min Các ràng buộc: x11 +
    x12 + x13 + x14 + x15 <= 4 x21 + x22 + x23 + x24 + x25 <= 6 x31
+ x32 + x33 + x34 + x35 <= 10 x41 + x42 + x43 + x44 + x45 <= 10
    x11 + x21 + x31 + x41 <= 7 x12 + x22 + x32 + x42 <= 7 19


•           20. x13 + x23 + x33 + x43 <= 7x14 + x24 + x34 + x44 <=

    7x15 + x25 + x35 + x45 <= 2Tổ chức dữ liệu trên bảng tính như
    sau: Hình 2.12 Tổ chức bài toán trên bảng tínhBước 2: Tiến hành
    giải bài toánChọn ô B16 rồi dùng lệnh ToolsSolver Hình 2.13 Khai
    báo các thông số của bài toán 20


•           21. Sau khi nhập đầy đủ thông tin vào bảng Solver

    Parameters ta chọnSolveKeep Solver Solution ,OK. Ta được bảng
    kết quả sau: Phân tích kết quả: Vậy phương án vận chuyển là: x =
    (0,0,0,4,0,0,4,0,0,2,7,3,0,0,0,0,0,7,3,0) Vì tổng lượng xăng dự trữ ở
    các kho bằng tổng nhu cầu xăng ở các trạm(30) nên phương án tìm
    được là phương án tối ưu. Chú ý 1: Nếu muốn có bảng kết quả chi
    tiết để phân tích thì trong bảngSolver Results ta chọn thêm mục
    Reports Answer (hoặcvà Sensitivity hoặcvàLimits) tuỳ thuộc vào
    mức độ chi tiết yêu cầu của bài. Chú ý 2: Đối với những bài toán
    chưa tìm được lời giải mong muốn ta cóthể thay đổi các thông số
    đầu vào của bài toán rồi chọn Tools Solver để tìm raphương án tối
    ưu. 2.5 ỨNG DỤNG EXCEL ĐỂ GIẢI HỆ PHƯƠNG TRÌNH
    TUYẾN T ÍNH 21


•           22. Dạng tổng quát của hệ phương trình tuyến tính là hệ m

    phương trình đạisố bậc nhất đối với n ẩn số: a11x1 + a12x2 +…
    +a1nxn = b1 a21x1 + a22x2 +… +a2nxn = b1 (*)
    …………………………… am1x1 + am2x2 +… +a1mxn = b1 với x1,
    x2,…, xn là các ẩn số; aij là hệ số ở phương trình thứ i của ẩn xj;
    bilà vế phải của phương trình. Khi m = n ta có hệ phương trình
    vuông với n phương trình n ẩn. Khi bi = 0 ta có một hệ thuần nhất.
    Toán học đã cung cấp cho chúng ta khá nhiều phương pháp để giải
    các hệphương trình tuyến tính như: phương pháp thế, phương pháp
    cộng đại số,phương pháp ma trận - định thức …Phần mềm Excel
    cũng cung cấp cho ta haicông cụ rất dễ dàng, nhanh chóng và
chính xác để tiến hành giải hệ phương trìnhtuyến tính là: sử dụng
    trình cài thêm Solver và sử dụng kết hợp hai hàmMINVERSE và
    MMULT. 2.5.1 Giải hệ phương trình bằng Solver Ngoài ứng dụng
    để giải các bài toán QHTT Solver còn có thể ứng dụng đểgiải các
    bài toán về hệ phương trình. Khi đ ó chỉ có các ràng buộc dạng
    phươngtrình và không có hàm mục tiêu. Các bước tiến hành giải hệ
    phương trình hoàntoàn tương như khi giải bài toán QHTT. Để hiểu
    hơn ta tiến hành xét ví dụ sau: Ví dụ 2.4: Giải hệ phương trình sau:
    2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Bước
    1: Tổ chức dữ liệu vào bảng tính Nhập các hệ số, vế phải của
    phương trình và cho giá trị khởi động cho cácbiến vào bảng tính như
    hình sau: 22


•           23. Hình 2.14 Lập bài toán trên bảng tính Bước 2: Giải hệ

    phương trình Chọn Tools Solver, OK. Rồi tiến hành điền đầy đủ
    thông tin vào hộpthoại Solver Paraments (bỏ trống mục Set Target
    Cell). Hình 2.15 Khai báo các thông số của bài toán Sau khi điền
    đầy đủ thông tin ta nhấp Solve. Trong bảng hộp thoại
    SolverResults ta kiểm vào Keep Solver Solution để lưu kết quả trên
    bảng tính. 23


•           24. Hình 2.16 Chọn loại báo cáo Chọn OK để hoàn tất quá

    trình chạy Solver. Ta được bảng kết quả nhưsau: Vậy nghiệm tìm
    được của hệ phương trình là: x = 1, y= -1, z = 2. Không chỉ sử
    dụng Solver để giải hệ phương trình phần mềm Excel còncung
    cấp thêm một công cụ nữa để giải hệ phương trình bằng phương
    pháp matrận là sử dụng hàm MINVERSE và MMULT 2.5.2 Giải hệ
    phương trình bằng hàm MINVERSE và hàm MMULT Khi hệ
    phương trình (*) có m = n thì nó trở thành hệ vuông gồm nphương
    trình n ẩn. Khi đ ó ma trận hệ số A , ma trận biến X sẽ là một ma
    trậnvuông cấp n và ma trận của vế phải hệ phương trình B là: a11
    a12 … a1n a11 a12 … a1n a21 a22 … a2n a21 a22 … a2n A=
    …………… X= …………… an1 an2 … ann an1 an2 … ann B = b1
b2 … bn Vậy hệ (*) được viết lại là: A * X = B (**) nên X = A-1 *B
    (***) 24


•              25. 2.5.1.1 Giới thiệu hàm MINVERSE và hàm MMULT

    Hàm MINVERSE Là hàm dùng để tìm ma trận nghịch đảo. Cú pháp:
    MINVERSE(array) array: là địa chỉ ma trận cần nghịch đảo. Ví dụ
    2.5 Hàm MMULT Là hàm dùng để nhân 2 ma trận. Cú pháp:
    MMULT(array1, array2) array1, array2: là địa chỉ của các ma trận
    cần nhân. Ví dụ 2.6 Chú ý: - Nhấn tổ hợp phím Ctrl + Shift + Enter
    sau khi nhập xong côngthức. - Chỉ khi là ma trận vuông nếu
    không khi sử dụng hàm này sẽ báolỗi #VALUE!. - Nếu có phần tử
    nào trong ma trận là rỗng hoặc là chữ thì báo lối#VALUE!. 2.5.2.2
    Giải hệ phương trình Quá trình giải hệ phương trình bằng phương
    pháp ma trận sử dụng haihàm MINVERSE và MMULT được tiến
    hành theo 3 bước sau: 25


•              26. Bước 1: Chuẩn bị bài toán: Nhập ma trận hệ số A, nhãn

    của ma trậnbiến X và ma trận số vế phải B của hệ phương trình.
    Bước 2: Tìm ma trận nghịch đảo của ma trận A: sử dụng
    hàmMINVERSE. Bước 3: Tìm nghiệm của hệ phương trình: sử
    dụng hàm MMULT. Để cụ thể hơn ta xét ví dụ 2.4 ở trên. Giải hệ
    phương trình: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 +
    7x3 = 7 Ta tiến hành giải như sau: Bước 1: Chuẩn bị bài toán: Ta
    tiến hành nhập ma trận hệ sốA, nhãn củama trận biến X và ma trận
    số vế phải B của hệ phương trình như hình sau: Bước 2: Tìm ma
    trận nghịch đảo của ma trận A Bước 3: Tìm nghiệm của hệ phương
    trình Vậy nghiệm của hệ phương trình là x =1, y =-1, z = 2. Nhận
    xét: Dù lựa chọn phương pháp giải nào cũng đều cho ta cùng
    mộtkết quả. 26
                           Search




•              Connect on LinkedIn
•              Follow us on Twitter
•              Find us on Facebook
•              Find us on Google+
•                   LEARN ABOUT US
•                   About
•                   Careers
•                   Our Blog
•                   Press
•                   Contact us
•                   Help & Support


•                   USING SLIDESHARE
•                   SlideShare 101
•                   Terms of Use
•                   Privacy Policy
•                   Copyright & DMCA
•                   Community Guidelines
•                   SlideShare on mobile


•                   PRO & MORE
•                   Go PRO
                              new



•                   Business Solutions
•                   Advertise on SlideShare


•                   DEVELOPERS & API
•                   Developers Section
•                   Developers Group
•                   Engineering Blog
•                   Blog Widgets


        © 2012 SlideShare Inc. All rights reserved.
        RSS Feed
•                 ENGLISH




          Connect your Facebook account to check out what your friends are sharing on SlideShare Connect×
        SlideShare

           Submit


•                   Upload
•                   Browse

    •               Go PRO
    •               Login
    •               Signup

    •               Email
•   Favorite



•   Save file



•   Flag



•   Embed
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
Lời nhạc 3
‹›
    1
              /26

•       Related


•       Upload your own




•                         Quy hoach tuyen tinh C H U O N G2




•                         Quy hoach tuyen tinh C1




•                         Quy hoach tuyen tinh C3




•                         Quy hoach tuyen tinh C4
•          Mot So Mo Hinh Trong DSS




•          PhầN I Va PhầN 2




•          Chuong 3




•          TANET - Bai giang ve luat ke toan va cac van ban huong dan thuc hien luat ke
    toa…




•          Chuong03




•          Core Java 3




•          ThiếT Kế Và đáNh Giá ThuậT ToáN




•          Bai giang kiem_toan
•   Giaoan Atbm




•   Ly thuyet kiem toan




•   T d que_lap_trinh_huong_doi_tuong




•   Báo cáo thực tập tốt nghiệp chuyên ngành kế toán




•   Cấu truc-dữ-liệu-va-thuật-giải-1




•   Bai 01 mot so kien thuc toan co ban




•   Bai01 mot so_kien_thuc_toan_co_ban




•   Kernel fisher discriminant

                  •
•

                                                    •              0
                                                         inShare




                                                    •

                                                •
                                            •            Wordpress




             + Follow
    Ứng dụng excel_de_giai_qhtt
    by luxubu2075 on Dec 28, 2010
                                                                       •   4,421views
                                                                               More…
•            No comments yet




         Subscribe to commentsPost Comment
•            3 Favorites




•                       thutranggt9 months ago



•                       Doan Dung at VNCC10 months ago




•                       huongphungpth10 months ago




    Ứng dụng excel_de_giai_qhtt — Document Transcript

•            1. ỨNG DỤNG EXCEL ĐỂ GIẢI BÀI TOÁN QUY HOẠCH

    TUYẾN T ÍNH Sự cạnh tranh khốc liệt trong hoạt động sản xuất
    kinh doanh luôn đ òi hỏicác nhà quản lý doanh nghiệp phải thường
xuyên lựa chọn phương án để đưa racác quyết định nhanh chóng,
    chính xác và kịp thời với những ràng buộc và hạnchế về các điều
    kiện liên quan tới tiềm năng của doanh nghiệp, điều kiện thịtrường,
    hoàn cảnh tự nhiên và xã hội. Việc lựa chọn phương án nào là tối
    ưutheo mục tiêu định trước là hết sức quan trọng. Nếu tất cả các
    yếu tố (biến số)liên quan đến khả năng, mục đích và quyết định lựa
    chọn đều có mối quan hệtuyến tính thì chúng ta hoàn toàn có thể
    sử dụng mô hình quy hoạch tuyến tính(QHTT) để mô tả, phân tích
    và tìm lời giải cho vấn đề lựa chọn tối ưu trongquản lý kinh tế.
    Trong môn học Toán kinh tế việc giải bài toán QHTT thực hiệnbằng
    thuật toán đơn hình . Trong phần mềm Excel sử dụng một công cụ
    càithêm là Solver có thể giải bài toán tối ưu nhanh chóng. 2.1
    NHẮC LẠI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.1.1 Bài toán
    QHTT dạng tổng quát Bài toán QHTT dạng tổng quát là bài toán tối
    ưu hoá hay bài toán tìm cựctrị (cực tiểu hoặc cực đại) của một hàm
    tuyến tính với điều kiện các biến số phảithoả mãn một hệ phương
    trình và (hoặc) bất phương trình tuyến tính. Mô hìnhtoán học của
    bài toán QHTT tổng quát có thể viết như sau: n Hàm mục tiêu: f ( x1
    ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 với các ràng buộc (điều


    kiện): n ∑a ij x j = bi , (i ∈ I1 ) (2.2) j =1 1




•            2. ∑a ij x j ≥ bi , (i ∈ I 2 ) (2.3) j =1 n ∑a ij x j ≤ bi , (i ∈ I 3 )



    (2.4) j =1 x j ≤ 0 hoặc x j ≥ 0 (2.5) trong đ ó: I1, I2, I3 là tập các chỉ


    số (I1, I2, I3 không giao nhau), ký hiệuI = I1 ∪ I 2 ∪ I 3 aij, bi, cj với




    i ∈ I , j = 1 ÷n là các hằng số (có thể là tham số), n là sốbiến số xj



    với j = 1 ÷n là các biến số (ẩn số) của bài toán, (2.5) được gọi là
cácràng buộc về dấu * Một số khái niệm và định nghĩa (1) Một
    nhóm ràng buộc có hệ véc tơ tương ứng độc lập tuyến tính
    đượcgọi là các ràng buộc độc lập tuyến tính. Các ràng buộc dấu
    luôn là độc lập tuyếntính. (2) Phương án: Một véc tơ x = (x1,x2,
    …,xn) thoả mãn hệ ràng buộc củabài toán gọi là một phương án của
    bài toán. Để phân biệt tính chất của các ràng buộc (cả ràng buộc
    dấu) đối với mộtphương án cụ thể, ta có các khái niệm ràng buộc:
    chặt và lỏng. + nếu đối với phương án x mà ràng buộc i thoả mãn
    với dấu đẳng thức(2.2) hoặc xi = 0 (nếu là ràng buộc dấu) thì ta
    nói phương án x thoả mãn chặtràng buộc i hay ràng buộc i là chặt
    đối với phương án x. + nếu đối với phương án x mà ràng buộc i thoả
    mãn với dấu bất đẳng thức(2.3), (2.4) hoặc xi > 0, xi < 0 (tuỳ thuộc
    ràng buộc loại gì) thì ta nói phương ánx thoả mãn lỏng ràng buộc i
    hay ràng buộc i là lỏng đối với phương án x. 2


•           3. Ràng buộc i có dạng phương trình thì nó sẽ là chặt với

    mọi phương án củabài toán, nếu có dạng bất phương trình thì nó
    có thể là chặt đối với phương ánnày và là lỏng đối với phương án
    kia. (3) Phương án tối ưu (phưong án tốt nhất): Một phương án mà
    tại đ ó trịsố hàm mục tiêu đạt cực tiểu (hoặc cực đại, tuỳ trường hợp
    cụ thể của f(x)) gọilà phương án tố ưu. (4) Phưong án tốt hơn: Xét
    bài toán có f(x) → min (max) và hai phươngán x1, x2 của nó.
    Phương án x1 gọi là tốt hơn phương án x2 nếu ( ) ( )f x 1 ≤ (≥ ) f x 2
    . Nếu có các dấu bất đẳng thức thực sự thì gọi là tốt hơn thực sự.
    Một bài toán có tồn tại phương án tối ưu gọi là bài toán giải được
    vàngược lại nếu không có phương án tối ưu gọi là bài toán không
    giải được. Bàitoán không giải được là do một trong hai nguyên nhân
    sau: + Bài toán không có phương án + Bài toán có phương án,
    nhưng hàm mục tiêu không bị chặn dưới nếuf(x) → min hoặc không
    bị chặn trên nếu f(x) → max trên tập phương án. (5) Phương án cực
    biên (PACB): Một phương án thoả mãn chặt n ràngbuộc độc lập
    tuyến tính được gọi là phương án cực biên. Một bài toán có số ràng
    buộc (kể cả ràng buộc dấu nếu có) ít hơn n thìchắc chắn sẽ không
có phương án cực biên dù nó có phương án. Phương án cực biên
    thoả mãn chặt đúng n ràng buộc gọi là phương án cựcbiên không
    suy biến, thoả mãn chặt hơn n ràng buộc gọi là phương án cực
    biênsuy biến. Nếu tất cả các phương án cực biên của bài toán đều
    không suy biến thìgọi là bài toán không suy biến, ngược lại là bài
    toán suy biến. Để thuận tiện cho việc trình bày các kết quả lý thuyết
    cũng như thuật toángiải QHTT, người ta thường sử dụng hai dạng
    đặc biệt của bài toán QHTT là bàitoán dạng chính tắc và bài toán
    dạng chuẩn. 2.1.2 Bài toán QHTT dạng chính tắc 3


•            4. Bài toán QHTT dạng chính tắc có dạng như sau: n Hàm

    mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng
    buộc: ∑a x j =1 ij j = bi , i = 1 ÷m (2.6) x j ≥ 0, j = 1 ÷n (2.7) Như
    vậy, bài toán QHTT dạng chính tắc gồm có 2 nhóm: nhóm các
    ràngbuộc dạng phương trình (2.6), nhóm ràng buộc dạng bất
    phương trình chỉ baogồm các ràng buộc về dấu (2.7). 2.1.3 Bài toán
    QHTT dạng chuẩn Bài toán QHTT dạng chuẩn có dạng như sau: n
    Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với
    các ràng buộc: ∑a x j =1 ij j ≥ bi , i = 1 ÷ m (2.8) x j ≥ 0, j = 1 ÷ n
    (2.7) Bài toán QHTT dạng chuẩn chỉ gồm 1 nhóm các ràng buộc
    dạng bấtphương trình bao gồm các ràng buộc về dấu là (2.8) và
    (2.7). 2.2 CÁC BƯỚC GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH
    TRONG EXCEL Để giải quyết các bài toán QHTT phần mềm Excel
    cung cấp cho chúng tamột công cụ khá hữu ích là Solver. Các bài
    toán QHTT dạng chính tắc và dạngchuẩn chỉ là các trường hợp riêng
    bài toán QHTT dạng tổng quát. Vì thế ở đây tasẽ xem xét cách giải
    quyết bài toán QHTT dạng tổng quát rồi từ đ ó áp dụngtương tự cho
    hai dạng còn lại. 2.2.1 Cài thêm công cụ Add-ins Solver Vào thực
    đơn Tools Solver. Nếu chưa thấy chức năng Solver trên thựcđơn
    Tools thì ta cần bổ sung chức năng này vào Excel. Các bước tiến
    hành: (1) Vào menu Tools Add-Ins, xuất hiện cửa sổ: 4


•            5. Hình 2.1 Hộp thoại Add-ins chứa các chức năng mở

    rộng của Excel (2) Chọn Solver Add-Ins và chọn OK. 2.2.2 Xây
dựng bài toán trong Excel Việc xây dựng bài toán trong Excel cũng
    tương tự như việc xây dựng bàitoán khi chúng ta tiến hành giải thủ
    công thông thường. Sau khi phân tích đầubài chúng ta cần viết
    được hàm mục tiêu và các ràng buộc của bài toán rồi tiếnhành tổ
    chức dữ liệu vào bảng tính. Ta xét ví dụ sau: Ví dụ 2.1: Cho bài
    toán QHTT sau: Hàm mục tiêu: f(x) = 2x1+8x2-5x3+15x4 → max với
    ràng buộc: 3x1-x2+x3+10x4=5 x1+2x2+x3+5x4 ≥ 9
    2x1+10x2+2x3-5x4 ≤ 26 x j ≥ 0, j = 1 ÷4 Tổ chức dữ liệu trên bảng
    tính: Biến quyết định: được nhập tại các ô B7:E7. Cho các giá trị
    khởi độnglà 0. Hàm mục tiêu f(x): có giá trị căn cứ vào giá trị khởi
    động của các biến.Công thức tại ô F8. 5


•           6. Các ràng buộc: nhập các hệ số của các quan hệ ràng

    buộc tại các ôB10:E12. Tính vế trái của các ràng buộc theo công
    thức tại các ô F10:F12.Nhập các giá trị vế phải của các ràng buộc tại
    các ô G10:G12. Theo bảng sau: Hình 2.2 Tổ chức bài toán trên
    bảng tính Sau khi nạp xong dữ liệu vào bảng tính ta tiến hành giải
    bài toán. 2.2.3 Tiến hành giải bài toán (1) Chọn ô F8 và chọn Tools
    Solver. Bảng hộp thoại Solver Parametersxuất hiện và gồm các
    thông số sau: Hình 2.3 Hộp thoại khai báo các thông số cho Solver
    Trong đ ó: 6


•           7. Set Tanget Cell: Nhập ô chứa địa chỉ tuyệt đối của hàm

    mục tiêu. Equal To: Xác định giới hạn cho hàm mục tiêu hoặc giá trị
    cần đạt đếncủa hàm mục tiêu: Max, Min hay Value of tuỳ thuộc vào
    yêu cầu của bài. By Changing Cells: Nhập địa chỉ tuyệt đối của các
    ô ghi các giá trị banđầu của biến. Subject to the Constraints: Nhập
    các ràng buộc của bài toán. Cách làm của Solver là thay đổi giá trị
    của các biến tại By ChangingCells cho đến lúc giá trị của hàm mục
    tiêu tại Set Tanget Cell đạt một giá trị quyđịnh tại Equal To và đồng
    thời thoả mãn tập các ràng buộc tại Subject to theConstraints. Với ví
    dụ 2.1 ta tiến hành khai báo các thông số cho Solver như sau: Địa
    chỉ của hàm mục tiêu F8 được đưa vào Set Target Cell Chọn Max
    tại Equal To để Solver tìm lời giải cực đại cho hàm mụctiêu. Nhập
địa chỉ của các biến quyết định B7:E7 tại By Changing Cells. Hình
    2.4 Khai báo hàm mục tiêu và các biến Thêm các ràng buộc vào
    Subject to the Contraints: Nhấp nút Add,bảng Add Constraint xuất
    hiện và gồm các thông số sau: 7


•           8. Hình 2.5 Hộp thoại thêm các ràng buộc Cell Reference: Ô

    hoặc vùng ô chứa công thức của các ràng buộc. Ô ấu: Cho phép
                                                   d
    ta lựa chọn dấu của các ràng buộc tương ứng. Constraint: Ô ứa giá
                                                              ch
    trị vế phải của các ràng buộc tương ứng (ta cũngcó thể nhập trực
    tiếp giá trị vế phải của ràng buộc tương ứng). Với ví dụ 2.1 các ràng
    buộc được nhập như sau: + Các ràng buộc về dấu: do x j ≥ 0, j = 1
    ÷ 4 (các ràng buộc đều có dạng≥ ) nên ta chọn vùng địa chỉ chứa
    biến B7:E7 vào Cell Reference, chọn dấu ≥và nhập 0 vào
    Constraint: Hình 2.6 Thêm các ràng buộc Chú ý: Nếu bài yêu cầu
    ràng buộc (xj) là nguyên thì trong ô dấu ta chọnint, nếu là kiểu nhị
    phân ta chọn bin. + Tiếp tục chọn Add để nhập tiếp các ràng buộc
    phương trình và bấtphương trình: Cell Reference Constraint F10 =
    G10 F11 >= G11 F12 <= G12 Chọn OK để kết thúc việc khai báo
    các ràng buộc. Tuy nhiên, muốn hiệuchỉnh ràng buộc ta chọn ràng
    buộc và chọn Change, xoá ràng buộc ta chọn ràngbuộc từ danh
    sách Subject to the Contraints và nhấp Delete. 8


•           9. Hình 2.7 Khai báo các thông số của bài toán Sau khi

    hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuấthiện
    và cho ta hai sự lựa chọn sau: Hình 2.8 Chọn kiểu báo cáo Keep
    Solver Solution: Giữ kết quả và in ra bảng tính. Restore Original
    Values: Huỷ kết quả vừa tìm được và trả các biến vềtình trạng ban
    đầu. Save Scenario: Lưu kết quả vừa tìm được thành một tình
    huống để có thểxem lại sau này. Ngoài ra có 3 loại báo cáo là
    Answer, Sensitivity và Limits. Ở ví dụ 2.1 ta chọn Keep Solver
    Solution, OK. Bảng kết quả nhận đượcnhư sau:


•           10. Như vậy phương án cực biên tìm được là X=(0,3,0,0.8)

    và giá trị cực đạicủa hàm mục tiêu f(x) là 36. 2.2.4 Giải thích thuật
ngữ Tuy nhiên để tiện cho việc phân tích kết quả thì trong bảng
    SolverResults ta chọn thêm mục Answer Reports khi đ ó bảng kết
    quả nhận được củaví dụ 2.1 như sau: Ta cần phải nắm vững một
    số thuật ngữ sau: Original Value: Giá trị ban đầu. Final Value: Giá trị
    cuối cùng. Formula: Công thức tính. Status: Trạng thái. Binding:
    Ràng buộc chặt. 10


•           11. Not Binding: Ràng buộc không chặt (ràng buộc lỏng).

    2.3 CÁC LỰA CHỌN KHI GIẢI BÀI TOÁN QUY HOẠCH TUYẾN
    T ÍNH 2.3.1 Các lựa chọn Để thiết lập các thuộc tính cho Solver thì
    trong bảng Solver Parametersta nhấp chuột vào Options hộp thoại
    Solver Options cho ta các lựa chọn sau: Hình 2.9 Thiết lập các
    thuộc tính cho Solver Max Time: Thời gian tối đa để giải bài toán là
    32.767 giây (mặc định là100 giây cho các bài toán đơn giản).
    Iterations: Số lần lặp tối đa để giải các bài toán là 32.767 lần(mặc
    định là100 lần). Precision: Độ chính xác của bài toán (từ 0 đến 1,
    mặc định là 0.000001,giá trị càng gần với 0 thì độ chính xác càng
    cao). Giá trị này điều chỉnh độ sai sốcho tập ràng buộc. Tolerance:
    Chỉ áp dụng đối với các bài toán có ràng buộc nguyên. Nhậpvào sai
    số có thể chấp nhận được. Sai số càng lớn thì tốc độ giải càng
    nhanh(mặc định là 5%) Convergence: Chỉ áp dụng đối với các bài
    toán không tuyến tính. Khi tỉsố của giá trị tính toán ban đầu của ô
    đích đến giá trị tính toán hiện hành ít hơngiá trị đồng quy Solver
    ngừng việc tìm kiếm dù có tìm thấy lời giải hay không. 11


•           12. Giá trị nằm trong khoảng từ 0 đến 1. Giá trị càng gần 0

    thì độ chính xác càngcao và cần nhiều thời gian hơn (mặc định là
    0.0001). Assume Linear Model: Khi tất cả quan hệ trong mô hình
    là tuyến tính thìchọn mục này để tăng tốc độ giải bài toán. Assume
    Non-Negative: Chọn tuỳ chọn này nếu muốn giả định tất cả cácbiến
    của bài toán đều không âm. Use Automatic Scaling: Chọn tuỳ chọn
    này khi ô đích và ô thay đổi có sựkhác nhau lớn. Solver sẽ tự
    động điều chỉnh các biến để tìm ra lời giải. Chẳnghạn như bài toán
    tối đa % lợi nhuận trên hàng triệu đồng vốn đầu tư. Show Iteration
Results: Chọn tuỳ chọn này nếu muốn Solver tạm dừnglại và hiển
    thị kết quả sau mỗi lần lặp. Ba tính năng nâng cao điều khiển cho
    Solver: Estimates: Chọn phương pháp cho Solver ước lượng các
    biến - Tangent: Sử dụng cách xấp xỉ tuyến tính bậc nhất. -
    Quandratic: Sử dụng cách xấp xỉ bậc bốn. Derivatives: Chọn cách
    để ước lượng hàm mục tiêu và các ràng buộc - Forward: Dùng khi giá
    trị của các ràng buộc biến đổi chậm (đượcdùng phổ biến). - Central:
    Dùng khi giá trị của các ràng buộc biến đổi nhanh và khiSolver báo
    không thể cải tiến kết quả thu được. Search: Quy định giải thuật
    tìm kiếm kết quả cho bài toán - Newton: là phương pháp mặc định,
    sử dụng nhiều bộ nhớ và có số lầnlặp ít. - Conjugate: cần ít bộ
    nhớ hơn phương pháp Newton nhưng số lần lặpthì nhiều hơn. Được
    sử dụng khi giải các bài toán phức tạp và bộ nhớ máy tínhcó giới
    hạn. Save Model: Chọn nơi lưu mô hình bài toán. Sử dụng khi
    muốn lưu nhiềumô hình trên một worksheet. Mô hình đầu tiên đã
    được lưu tự động. Load Model: Xác định vùng địa chỉ của mô hình
    bài toán cần nạp vào. 12


•           13. 2.3.2 Hạn chế khi giải bài toán quy hoạch tuyến tính

    trong Excel Hạn chế của bài trình cài thêm Solver là chỉ giải được
    các bài toán có tối dalà 16 biến số. Mặt khác số lần lặp tối đa để giải
    bài toán là 32767, thời gian tối đađể giải bài toán là 32767…nên bên
    cạnh đ ó nó còn tồn tại một số mặt hạn chếnhất định về quy mô
    của bài toán và khó khăn trong việc tìm miền tối ưu. Đối với những
    bài toán tối ưu có quy mô lớn ta có thể sử dụng phần mềmLindo
    đây là một phần mềm tin học rất mạnh trong lĩnh vực này. 2.4 MỞ
    RỘNG BÀI TOÁN Việc ứng dụng mô hình QHTT trong quản lý kinh
    tế và quản trị doanhnghiệp là rất phổ biến. Chúng ta thường bắt
    gặp mô hình này trong các bài toánnhư: bài toán lập kế hoạch sản
    xuất tối ưu cho doanh nghiệp, bài toán phân bổvốn đầu tư, bài toán
    dự trữ…Tuy nhiên trong phần này xin trình bày ra đây 2loại bài toán
    QHTT thông dụng nhất là: bài toán nguyên vật liệu và bài toán
    vậntải. 2.4.1 Bài toán nguyên vật liệu Bài toán tổng quát Một nhà máy
có khả năng sản xuất n loại sản phẩm. Để sản xuất các sảnphẩm
    này cần phải sử dụng m loại nguyên vật liệu. Biết rằng: aij là lượng
    nguyên vật liệu loại i cần thiết để sản xuất ra một đơn vị sảnphẩm
    loại j bi là dự trữ nguyên vật liệu loại i cj là lợi nhuận từ việc bán một
    đơn vị sản phẩm loại j với i = 1, m và j = 1, n Bài toán được mô tả
    theo bảng sau: S1 S2 … Sj … Sn Dự trữ NVL1 a11 a12 … a1j …
    a1n b1 NVL2 a21 a22 … a2j … a2n b2 … … … … … … … … 13


•            14. NVLi ai1 ai2 … aij … ain bi … … … … … … … …

    NVLm am1 am2 … amj … amn bm Lợi nhuận đơn vị c1 c2 … cj …
    cn Hãy tìm phương án sản xuất để tối đa hoá lợi nhuận. Bài giải: Gọi
    xj là lượng sản phẩm loại j mà nhà máy sẽ sản xuất nên x j ≥ 0 . Do
    đ ó phương án sản xuất của nhà máy là vectơ x=(x1, x2,…,xj,..,xn).
    Khi đ ó: n Tổng chi phí nguyên vật liệu loại i để sản xuất x là ∑a j
    =1 ij x j sẽ không vượt nquá dự trữ bi: ∑a j =1 ij x j ≤ bi n Tổng lợi
    nhuận thu được khi sản xuất x là ∑c x j =1 j j Vậy mô hình toán học
    của bài toán nguyên vật liệu có thể phát biểu theomô hình bài toán
    QHTT như sau: n Hàm mục tiêu: f(x)= ∑ c j x j → max j =1 n Các
    ràng buộc: ∑a j =1 ij x j ≤ bi , i = 1, m x j ≥ 0, j = 1, n Việc giải bài
    toán nguyên vật liệu trong Excel cũng bao gồm 2 bước: B1: Xây
    dựng bài toán (lập bài toán và tổ chức dữ liệu trên bảng tính). B2:
    Tiến hành giải bài toán bằng cách chạy Solver theo trình tự như trên.
    Ta xét một ví dụ cụ thể sau: Ví dụ 2.2 14


•            15. Một nhà máy dự định tiến hành sản xuất 5 loại sản

    phẩm Sj ( j = 1,5 ). Cả 5loại sản phẩm này đều sử dụng 4 loại
    nguyên vật liệu chính NVLi ( i = 1,4 ). Cómức tiêu hao nguyên vật
    liệu, lợi nhuận đơn vị thu được và giới hạn dự trữ nhưsau: S1 S2
    S3 S4 S5 Dự trữ NVL1 2 5 6 8 4 1200 NVL2 3 1 5 6 1 800 NVL3 7
    5 4 5 2 2000 NVL4 8 5 7 9 1 1865 Lợi nhuận đơn vị 300 250 500
    150 320 Hãy xây dựng phương án sản xuất để nhà máy đạt được
    tổng lợi nhuậnlớn nhất. Bài giải: B1: Xây dựng bài toán Gọi xj với
    j=1,5 là sản lượng sản phẩm loại j sẽ sản xuất. (xj>=0) Nên phương
    án sản xuất của nhà máy là vectơ x = (x1, x2, x3 , x4, x5). Hàm mục
tiêu: f(x) = 300x1 + 250x2 + 500x3 + 150x4 + 320x5 max Các ràng
    buộc: 2x1 + 5x2 + 6x3 + 8x4 + 4x5 <= 1200 3x1 + x2 + 5x3 + 6x4
    + x5 <= 800 7x1 + 5x2 + 4x3 + 5x4 + 2x5 <= 2000 8x1 + 5x2 + 7x3
    + 9x4 + x5 <= 1865 Bài toán được tổ chức trên bảng tính như sau:
    15


•            16. Hình 2.10 Lập bài toán trên bảng tính B2: Giải bài toán: -

    Chọn ô G8 rồi thực hiện lệnh Tools Solver, điền đầy đủ thông tin
    vàohộp thoại Solver Parameters như sau: Hình 2.11 Khai báo các
    thông số của bài toán - Nhấn Solver để thực hiện việc chạy
    Solvers. Trong bảng hộp thoại kếtquả Solver Results tích chọn
    mục Keep Solver Solution và chọn thêm báo cáoAnswer Report ta
    nhận được kết quả: 16


•            17. Phương án tối ưu (phương án cực biên) là x = (200, 0, 0,

    0, 200) vớif(x) max = 124 000. Hay phương án sản xuât tối ưu của
    nhà máy là sản xuất 200đơn vị sản phẩm 1 và 200 đơn vị sản
    phẩm 5 khi đ ó lợi nhuận tối ưu đạt được là124 000 đơn vị tiền tệ.
    Không có nguyên liệu nào bị lãng phí. 2.4.2 Bài toán vận tải Bài toán
    tổng quát: Có m kho hàng cùng chứa một loại hàng hoá, lượng hàng
    có ở kho i là ai(i = 1, m). Có n địa điểm tiêu thụ loại hàng nói trên,
    với nhu cầu tiêu thụ ở điểm j làbj ( j = 1, n ) . 17


•            18. Biết cij là cước phí vận chuyển một đơn vị hàng hoá từ

    kho i đến điểm tiêuthụ j. Bài toán được mô tả theo bảng sau: D1 D2
    … Dj … Dn Dự trữ K1 c11 c12 … c1j … c1n a1 K2 c21 c22 … c2j
    … c2n a2 … … … … … … … … Ki ci1 ci2 … cij … cin ai … … …
    … … … … … Km cm1 cm2 … cmj … cmn am Nhu cầu tiêu thụ b1
    b2 … bj … bn Hãy lập kế hoạch vận chuyển hàng từ các kho đến
    các điểm tiêu thụ saocho tổng chi phí vận chuyển là nhỏ nhất. Bài
    giải: Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j
    nênxij ≥ 0, i = m, j = 1, n . Ta có: m n Tổng chi phí vận chuyển: ∑∑
    c i =1 j =1 ij xij n Lượng hàng vận chuyển khỏi kho i: ∑x j =1 ij m
    Lượng hàng vận chuyển đến điểm tiêu thụ j: ∑x i =1 ij Như vậy mô
hình toán học của bài toán vận tải có thể viết dưới dạng bàitoán
    QHTT như sau: m n Hàm mục tiêu: f(x) = ∑∑ c i =1 j =1 ij xij → min
    n Các ràng buộc: ∑x j =1 ij ≤ ai 18


•           19. m ∑x i =1 ij = bj xij ≥ 0, i = 1, m, j = 1, n Ta thấy ngay

    được điều kiện cần và đủ để bài toán vận tải có phương ántối ưu là
    tổng tất cả các lượng hàng tiêu thụ bằng tổng tất cả các lượng hàng
    ở m ncác kho, nghĩa là: ∑ ai = ∑ b j i =1 j =1 Cũng giống như bài
    toán nguyên vật liệu để tiến hành giải bài toán trongExcel ta cần
    phải trải qua 2 bước là: xây dựng bài toán và tiến hành chạySolver.
    Xét ví dụ cụ thể sau: Ví dụ 2.3 Sử dụng công cụ Solver như đã
    trình bày ở trên hãy lập phương án vậnchuyển xăng tối ưu từ 4 kho
    đến 5 trạm xăng bán lẻ của một công ty kinh doanhxăng dầu khu
    vực V. Bài giải: B1: Xây dựng bài toán Gọi xij là lượng hàng vận
    chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = 1,4, j = 1,5 . Hàm
    mục tiêu: f(x) = 30x11 + 27x12 + 26x13 + 9x14 + 23x15 + 13x21 +
    4x22+ 22x23 + 3x24 + x25 + 3x31 + x32 + 5x33 + 4x34 + 24x35 +
    16x41 + 30x42 + 17x43 +10x44 + 16x45 min Các ràng buộc: x11 +
    x12 + x13 + x14 + x15 <= 4 x21 + x22 + x23 + x24 + x25 <= 6 x31
    + x32 + x33 + x34 + x35 <= 10 x41 + x42 + x43 + x44 + x45 <= 10
    x11 + x21 + x31 + x41 <= 7 x12 + x22 + x32 + x42 <= 7 19


•           20. x13 + x23 + x33 + x43 <= 7x14 + x24 + x34 + x44 <=

    7x15 + x25 + x35 + x45 <= 2Tổ chức dữ liệu trên bảng tính như
    sau: Hình 2.12 Tổ chức bài toán trên bảng tínhBước 2: Tiến hành
    giải bài toánChọn ô B16 rồi dùng lệnh ToolsSolver Hình 2.13 Khai
    báo các thông số của bài toán 20


•           21. Sau khi nhập đầy đủ thông tin vào bảng Solver

    Parameters ta chọnSolveKeep Solver Solution ,OK. Ta được bảng
    kết quả sau: Phân tích kết quả: Vậy phương án vận chuyển là: x =
    (0,0,0,4,0,0,4,0,0,2,7,3,0,0,0,0,0,7,3,0) Vì tổng lượng xăng dự trữ ở
    các kho bằng tổng nhu cầu xăng ở các trạm(30) nên phương án tìm
    được là phương án tối ưu. Chú ý 1: Nếu muốn có bảng kết quả chi
tiết để phân tích thì trong bảngSolver Results ta chọn thêm mục
    Reports Answer (hoặcvà Sensitivity hoặcvàLimits) tuỳ thuộc vào
    mức độ chi tiết yêu cầu của bài. Chú ý 2: Đối với những bài toán
    chưa tìm được lời giải mong muốn ta cóthể thay đổi các thông số
    đầu vào của bài toán rồi chọn Tools Solver để tìm raphương án tối
    ưu. 2.5 ỨNG DỤNG EXCEL ĐỂ GIẢI HỆ PHƯƠNG TRÌNH
    TUYẾN T ÍNH 21


•           22. Dạng tổng quát của hệ phương trình tuyến tính là hệ m

    phương trình đạisố bậc nhất đối với n ẩn số: a11x1 + a12x2 +…
    +a1nxn = b1 a21x1 + a22x2 +… +a2nxn = b1 (*)
    …………………………… am1x1 + am2x2 +… +a1mxn = b1 với x1,
    x2,…, xn là các ẩn số; aij là hệ số ở phương trình thứ i của ẩn xj;
    bilà vế phải của phương trình. Khi m = n ta có hệ phương trình
    vuông với n phương trình n ẩn. Khi bi = 0 ta có một hệ thuần nhất.
    Toán học đã cung cấp cho chúng ta khá nhiều phương pháp để giải
    các hệphương trình tuyến tính như: phương pháp thế, phương pháp
    cộng đại số,phương pháp ma trận - định thức …Phần mềm Excel
    cũng cung cấp cho ta haicông cụ rất dễ dàng, nhanh chóng và
    chính xác để tiến hành giải hệ phương trìnhtuyến tính là: sử dụng
    trình cài thêm Solver và sử dụng kết hợp hai hàmMINVERSE và
    MMULT. 2.5.1 Giải hệ phương trình bằng Solver Ngoài ứng dụng
    để giải các bài toán QHTT Solver còn có thể ứng dụng đểgiải các
    bài toán về hệ phương trình. Khi đ ó chỉ có các ràng buộc dạng
    phươngtrình và không có hàm mục tiêu. Các bước tiến hành giải hệ
    phương trình hoàntoàn tương như khi giải bài toán QHTT. Để hiểu
    hơn ta tiến hành xét ví dụ sau: Ví dụ 2.4: Giải hệ phương trình sau:
    2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Bước
    1: Tổ chức dữ liệu vào bảng tính Nhập các hệ số, vế phải của
    phương trình và cho giá trị khởi động cho cácbiến vào bảng tính như
    hình sau: 22


•           23. Hình 2.14 Lập bài toán trên bảng tính Bước 2: Giải hệ

    phương trình Chọn Tools Solver, OK. Rồi tiến hành điền đầy đủ
thông tin vào hộpthoại Solver Paraments (bỏ trống mục Set Target
    Cell). Hình 2.15 Khai báo các thông số của bài toán Sau khi điền
    đầy đủ thông tin ta nhấp Solve. Trong bảng hộp thoại
    SolverResults ta kiểm vào Keep Solver Solution để lưu kết quả trên
    bảng tính. 23


•              24. Hình 2.16 Chọn loại báo cáo Chọn OK để hoàn tất quá

    trình chạy Solver. Ta được bảng kết quả nhưsau: Vậy nghiệm tìm
    được của hệ phương trình là: x = 1, y= -1, z = 2. Không chỉ sử
    dụng Solver để giải hệ phương trình phần mềm Excel còncung
    cấp thêm một công cụ nữa để giải hệ phương trình bằng phương
    pháp matrận là sử dụng hàm MINVERSE và MMULT 2.5.2 Giải hệ
    phương trình bằng hàm MINVERSE và hàm MMULT Khi hệ
    phương trình (*) có m = n thì nó trở thành hệ vuông gồm nphương
    trình n ẩn. Khi đ ó ma trận hệ số A , ma trận biến X sẽ là một ma
    trậnvuông cấp n và ma trận của vế phải hệ phương trình B là: a11
    a12 … a1n a11 a12 … a1n a21 a22 … a2n a21 a22 … a2n A=
    …………… X= …………… an1 an2 … ann an1 an2 … ann B = b1
    b2 … bn Vậy hệ (*) được viết lại là: A * X = B (**) nên X = A-1 *B
    (***) 24


•              25. 2.5.1.1 Giới thiệu hàm MINVERSE và hàm MMULT

    Hàm MINVERSE Là hàm dùng để tìm ma trận nghịch đảo. Cú pháp:
    MINVERSE(array) array: là địa chỉ ma trận cần nghịch đảo. Ví dụ
    2.5 Hàm MMULT Là hàm dùng để nhân 2 ma trận. Cú pháp:
    MMULT(array1, array2) array1, array2: là địa chỉ của các ma trận
    cần nhân. Ví dụ 2.6 Chú ý: - Nhấn tổ hợp phím Ctrl + Shift + Enter
    sau khi nhập xong côngthức. - Chỉ khi là ma trận vuông nếu
    không khi sử dụng hàm này sẽ báolỗi #VALUE!. - Nếu có phần tử
    nào trong ma trận là rỗng hoặc là chữ thì báo lối#VALUE!. 2.5.2.2
    Giải hệ phương trình Quá trình giải hệ phương trình bằng phương
    pháp ma trận sử dụng haihàm MINVERSE và MMULT được tiến
    hành theo 3 bước sau: 25
•           26. Bước 1: Chuẩn bị bài toán: Nhập ma trận hệ số A, nhãn

    của ma trậnbiến X và ma trận số vế phải B của hệ phương trình.
    Bước 2: Tìm ma trận nghịch đảo của ma trận A: sử dụng
    hàmMINVERSE. Bước 3: Tìm nghiệm của hệ phương trình: sử
    dụng hàm MMULT. Để cụ thể hơn ta xét ví dụ 2.4 ở trên. Giải hệ
    phương trình: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 +
    7x3 = 7 Ta tiến hành giải như sau: Bước 1: Chuẩn bị bài toán: Ta
    tiến hành nhập ma trận hệ sốA, nhãn củama trận biến X và ma trận
    số vế phải B của hệ phương trình như hình sau: Bước 2: Tìm ma
    trận nghịch đảo của ma trận A Bước 3: Tìm nghiệm của hệ phương
    trình Vậy nghiệm của hệ phương trình là x =1, y =-1, z = 2. Nhận
    xét: Dù lựa chọn phương pháp giải nào cũng đều cho ta cùng
    mộtkết quả. 26
                            Search




•           Connect on LinkedIn
•           Follow us on Twitter
•           Find us on Facebook
•           Find us on Google+


•           LEARN ABOUT US
•           About
•           Careers
•           Our Blog
•           Press
•           Contact us
•           Help & Support


•           USING SLIDESHARE
•           SlideShare 101
•           Terms of Use
•           Privacy Policy
•           Copyright & DMCA
•           Community Guidelines
•           SlideShare on mobile


•           PRO & MORE
•           Go PRO
                      new



•           Business Solutions
•           Advertise on SlideShare
•             DEVELOPERS & API
•             Developers Section
•             Developers Group
•             Engineering Blog
•             Blog Widgets


    © 2012 SlideShare Inc. All rights reserved.
    RSS Feed
•             ENGLISH

Weitere ähnliche Inhalte

Was ist angesagt?

Bai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocBai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocLê Ngọc Huyền
 
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trình
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trìnhKĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trình
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trìnhFGMAsTeR94
 
Chuong 2 Tim Kiem N Sap Xep
Chuong 2   Tim Kiem N Sap XepChuong 2   Tim Kiem N Sap Xep
Chuong 2 Tim Kiem N Sap Xepquang
 
Bài toán đối ngẫu
 Bài toán đối ngẫu Bài toán đối ngẫu
Bài toán đối ngẫuVu Dat
 
38752877 quy-hoach-thuc-nghiem
38752877 quy-hoach-thuc-nghiem38752877 quy-hoach-thuc-nghiem
38752877 quy-hoach-thuc-nghiemminhdaovan
 
Bg qui hoach-hoa_thuc_nghiem-co_lien_
Bg qui hoach-hoa_thuc_nghiem-co_lien_Bg qui hoach-hoa_thuc_nghiem-co_lien_
Bg qui hoach-hoa_thuc_nghiem-co_lien_Trần Thanh Hảo
 
Cac bai-toan-pt-hpt-thi-hsg-2010-2011
Cac bai-toan-pt-hpt-thi-hsg-2010-2011Cac bai-toan-pt-hpt-thi-hsg-2010-2011
Cac bai-toan-pt-hpt-thi-hsg-2010-2011hannahisabellla
 
09 chien-tranquoc - pr09.nam+tram
09 chien-tranquoc - pr09.nam+tram09 chien-tranquoc - pr09.nam+tram
09 chien-tranquoc - pr09.nam+tramphanduyhoa
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Nguyễn Công Hoàng
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3Giáo trình Phân tích và thiết kế giải thuật - CHAP 3
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3Nguyễn Công Hoàng
 
Chuyên đề phương trình vô tỷ
Chuyên đề phương trình vô tỷChuyên đề phương trình vô tỷ
Chuyên đề phương trình vô tỷtuituhoc
 
Kĩ thuật giải các loại hệ phương trình
Kĩ thuật giải các loại hệ phương trìnhKĩ thuật giải các loại hệ phương trình
Kĩ thuật giải các loại hệ phương trìnhVan-Duyet Le
 
Toan kinh te
Toan kinh teToan kinh te
Toan kinh teHeo Gòm
 
Ky thuat giai he phuong trinh
Ky thuat giai he phuong trinhKy thuat giai he phuong trinh
Ky thuat giai he phuong trinhHuynh ICT
 

Was ist angesagt? (19)

Bai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocBai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hoc
 
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trình
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trìnhKĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trình
Kĩ thuật dự đoán nghiệm và đơn giản hoá cách giải phương trình
 
Chuong 2 Tim Kiem N Sap Xep
Chuong 2   Tim Kiem N Sap XepChuong 2   Tim Kiem N Sap Xep
Chuong 2 Tim Kiem N Sap Xep
 
Bài toán đối ngẫu
 Bài toán đối ngẫu Bài toán đối ngẫu
Bài toán đối ngẫu
 
38752877 quy-hoach-thuc-nghiem
38752877 quy-hoach-thuc-nghiem38752877 quy-hoach-thuc-nghiem
38752877 quy-hoach-thuc-nghiem
 
Bg qui hoach-hoa_thuc_nghiem-co_lien_
Bg qui hoach-hoa_thuc_nghiem-co_lien_Bg qui hoach-hoa_thuc_nghiem-co_lien_
Bg qui hoach-hoa_thuc_nghiem-co_lien_
 
Cac bai-toan-pt-hpt-thi-hsg-2010-2011
Cac bai-toan-pt-hpt-thi-hsg-2010-2011Cac bai-toan-pt-hpt-thi-hsg-2010-2011
Cac bai-toan-pt-hpt-thi-hsg-2010-2011
 
Đề tài: Nội lực và chuyển vị của dầm liên tục chịu tải trọng tĩnh
Đề tài: Nội lực và chuyển vị của dầm liên tục chịu tải trọng tĩnhĐề tài: Nội lực và chuyển vị của dầm liên tục chịu tải trọng tĩnh
Đề tài: Nội lực và chuyển vị của dầm liên tục chịu tải trọng tĩnh
 
09 chien-tranquoc - pr09.nam+tram
09 chien-tranquoc - pr09.nam+tram09 chien-tranquoc - pr09.nam+tram
09 chien-tranquoc - pr09.nam+tram
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
 
Chuyen de pt vo ti
Chuyen de pt vo tiChuyen de pt vo ti
Chuyen de pt vo ti
 
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đLuận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3Giáo trình Phân tích và thiết kế giải thuật - CHAP 3
Giáo trình Phân tích và thiết kế giải thuật - CHAP 3
 
Chuyên đề phương trình vô tỷ
Chuyên đề phương trình vô tỷChuyên đề phương trình vô tỷ
Chuyên đề phương trình vô tỷ
 
Quan2017
Quan2017Quan2017
Quan2017
 
Đề tài: Sử dụng phương pháp đặt ẩn phụ để giải phương trình vô tỉ
Đề tài: Sử dụng phương pháp đặt ẩn phụ để giải phương trình vô tỉĐề tài: Sử dụng phương pháp đặt ẩn phụ để giải phương trình vô tỉ
Đề tài: Sử dụng phương pháp đặt ẩn phụ để giải phương trình vô tỉ
 
Kĩ thuật giải các loại hệ phương trình
Kĩ thuật giải các loại hệ phương trìnhKĩ thuật giải các loại hệ phương trình
Kĩ thuật giải các loại hệ phương trình
 
Toan kinh te
Toan kinh teToan kinh te
Toan kinh te
 
Ky thuat giai he phuong trinh
Ky thuat giai he phuong trinhKy thuat giai he phuong trinh
Ky thuat giai he phuong trinh
 

Andere mochten auch

All hail the power of jesus' name
All hail the power of jesus' nameAll hail the power of jesus' name
All hail the power of jesus' nameemgeedee Dee
 
All my hope on god is founded
All my hope on god is foundedAll my hope on god is founded
All my hope on god is foundedemgeedee Dee
 
As we come to you in prayer
As we come to you in prayerAs we come to you in prayer
As we come to you in prayeremgeedee Dee
 
Sinner saved by grace
Sinner saved by graceSinner saved by grace
Sinner saved by graceemgeedee Dee
 
Genesis 21 30 bible quiz
Genesis 21 30 bible quizGenesis 21 30 bible quiz
Genesis 21 30 bible quizemgeedee Dee
 
Digital Image Correlation
Digital Image Correlation Digital Image Correlation
Digital Image Correlation Reza Aghl
 
Basics of cash management for financial management & reporting
Basics of cash management for financial management & reportingBasics of cash management for financial management & reporting
Basics of cash management for financial management & reportingSoaga Hameed Gbola
 

Andere mochten auch (16)

Sweet by and by
Sweet by and bySweet by and by
Sweet by and by
 
Blessed assurance
Blessed assuranceBlessed assurance
Blessed assurance
 
All the way
All the wayAll the way
All the way
 
All the way
All the wayAll the way
All the way
 
Sweet by and by
Sweet by and bySweet by and by
Sweet by and by
 
Lumapit sa kanya
Lumapit sa kanyaLumapit sa kanya
Lumapit sa kanya
 
Another six days
Another six daysAnother six days
Another six days
 
All hail the power of jesus' name
All hail the power of jesus' nameAll hail the power of jesus' name
All hail the power of jesus' name
 
A mighty fortress
A mighty fortressA mighty fortress
A mighty fortress
 
All my hope on god is founded
All my hope on god is foundedAll my hope on god is founded
All my hope on god is founded
 
Come thou fount
Come thou fountCome thou fount
Come thou fount
 
As we come to you in prayer
As we come to you in prayerAs we come to you in prayer
As we come to you in prayer
 
Sinner saved by grace
Sinner saved by graceSinner saved by grace
Sinner saved by grace
 
Genesis 21 30 bible quiz
Genesis 21 30 bible quizGenesis 21 30 bible quiz
Genesis 21 30 bible quiz
 
Digital Image Correlation
Digital Image Correlation Digital Image Correlation
Digital Image Correlation
 
Basics of cash management for financial management & reporting
Basics of cash management for financial management & reportingBasics of cash management for financial management & reporting
Basics of cash management for financial management & reporting
 

Ähnlich wie Lời nhạc 3

Excel giai bai toan qhtt
Excel giai bai toan qhttExcel giai bai toan qhtt
Excel giai bai toan qhttHieu Dinh
 
Bai 2 cong tru so huu ti
Bai 2 cong tru so huu tiBai 2 cong tru so huu ti
Bai 2 cong tru so huu timanggiaoduc
 
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdf
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdfphuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdf
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdfAnNguyen72983
 
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhTính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhChien Dang
 
Bgqht tmoi 1_xvesm
Bgqht tmoi 1_xvesmBgqht tmoi 1_xvesm
Bgqht tmoi 1_xvesmPhi Phi
 
06 acc201 bai 4_v1.0011103225
06 acc201 bai 4_v1.001110322506 acc201 bai 4_v1.0011103225
06 acc201 bai 4_v1.0011103225Yen Dang
 
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vn
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vnĐáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vn
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vnMegabook
 
07 acc201 bai 5_v1.0011103225
07 acc201 bai 5_v1.001110322507 acc201 bai 5_v1.0011103225
07 acc201 bai 5_v1.0011103225Yen Dang
 
08 acc201 bai 6_v1.0011103225
08 acc201 bai 6_v1.001110322508 acc201 bai 6_v1.0011103225
08 acc201 bai 6_v1.0011103225Yen Dang
 
Phongmath pp khu dang vo dinh
Phongmath   pp khu dang vo dinhPhongmath   pp khu dang vo dinh
Phongmath pp khu dang vo dinhphongmathbmt
 
Th kinh-te-luong1
Th kinh-te-luong1Th kinh-te-luong1
Th kinh-te-luong1Anh Đỗ
 
Cấu trúc dữ liệu cơ bản 1
Cấu trúc dữ liệu cơ bản 1Cấu trúc dữ liệu cơ bản 1
Cấu trúc dữ liệu cơ bản 1Hồ Lợi
 

Ähnlich wie Lời nhạc 3 (20)

Excel giai bai toan qhtt
Excel giai bai toan qhttExcel giai bai toan qhtt
Excel giai bai toan qhtt
 
Bai 2 cong tru so huu ti
Bai 2 cong tru so huu tiBai 2 cong tru so huu ti
Bai 2 cong tru so huu ti
 
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdf
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdfphuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdf
phuong_phap_giai_mot_so_bai_toan_tren_excel_8045.pdf
 
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhTính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
 
Bgqht tmoi 1_xvesm
Bgqht tmoi 1_xvesmBgqht tmoi 1_xvesm
Bgqht tmoi 1_xvesm
 
06 acc201 bai 4_v1.0011103225
06 acc201 bai 4_v1.001110322506 acc201 bai 4_v1.0011103225
06 acc201 bai 4_v1.0011103225
 
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vn
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vnĐáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vn
Đáp Án Siêu Chi Tiết Môn Toán Học THPT Quốc Gia 2016 - Megabook.vn
 
07 acc201 bai 5_v1.0011103225
07 acc201 bai 5_v1.001110322507 acc201 bai 5_v1.0011103225
07 acc201 bai 5_v1.0011103225
 
Baitapmaygiat
BaitapmaygiatBaitapmaygiat
Baitapmaygiat
 
Luận văn: Phương pháp giải bài toán cực trị và ứng dụng, HAY
Luận văn: Phương pháp giải bài toán cực trị và ứng dụng, HAYLuận văn: Phương pháp giải bài toán cực trị và ứng dụng, HAY
Luận văn: Phương pháp giải bài toán cực trị và ứng dụng, HAY
 
Luận văn: Phương pháp giải bài toán cực trị, HAY
Luận văn: Phương pháp giải bài toán cực trị, HAYLuận văn: Phương pháp giải bài toán cực trị, HAY
Luận văn: Phương pháp giải bài toán cực trị, HAY
 
08 acc201 bai 6_v1.0011103225
08 acc201 bai 6_v1.001110322508 acc201 bai 6_v1.0011103225
08 acc201 bai 6_v1.0011103225
 
Phongmath pp khu dang vo dinh
Phongmath   pp khu dang vo dinhPhongmath   pp khu dang vo dinh
Phongmath pp khu dang vo dinh
 
THPT hoang le kha 2013 -MVN
THPT hoang le kha 2013 -MVNTHPT hoang le kha 2013 -MVN
THPT hoang le kha 2013 -MVN
 
Th kinh-te-luong1
Th kinh-te-luong1Th kinh-te-luong1
Th kinh-te-luong1
 
Th kinh-te-luong1
Th kinh-te-luong1Th kinh-te-luong1
Th kinh-te-luong1
 
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đLuận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
 
Cấu trúc dữ liệu cơ bản 1
Cấu trúc dữ liệu cơ bản 1Cấu trúc dữ liệu cơ bản 1
Cấu trúc dữ liệu cơ bản 1
 
CHUYÊN ĐỀ: MŨ VÀ LOGARIT
CHUYÊN ĐỀ: MŨ VÀ LOGARITCHUYÊN ĐỀ: MŨ VÀ LOGARIT
CHUYÊN ĐỀ: MŨ VÀ LOGARIT
 
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trìnhĐề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
 

Lời nhạc 3

  • 11. ‹› • o Ứng dụng excel_de_giai_qhtt — Document Transcript • 1. ỨNG DỤNG EXCEL ĐỂ GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH Sự cạnh tranh khốc liệt trong hoạt động sản xuất kinh doanh luôn đ òi hỏicác nhà quản lý doanh nghiệp phải thường xuyên lựa chọn phương án để đưa racác quyết định nhanh chóng, chính xác và kịp thời với những ràng buộc và hạnchế về các điều kiện liên quan tới tiềm năng của doanh nghiệp, điều kiện thịtrường, hoàn cảnh tự nhiên và xã hội. Việc lựa chọn phương án nào là tối ưutheo mục tiêu định trước là hết sức quan trọng. Nếu tất cả các yếu tố (biến số)liên quan đến khả năng, mục đích và quyết định lựa chọn đều có mối quan hệtuyến tính thì chúng ta hoàn toàn có thể sử dụng mô hình quy hoạch tuyến tính(QHTT) để mô tả, phân tích và tìm lời giải cho vấn đề lựa chọn tối ưu trongquản lý kinh tế. Trong môn học Toán kinh tế việc giải bài toán QHTT thực hiệnbằng thuật toán đơn hình . Trong phần mềm Excel sử dụng một công cụ càithêm là Solver có thể giải bài toán tối ưu nhanh chóng. 2.1 NHẮC LẠI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.1.1 Bài toán QHTT dạng tổng quát Bài toán QHTT dạng tổng quát là bài toán tối ưu hoá hay bài toán tìm cựctrị (cực tiểu hoặc cực đại) của một hàm tuyến tính với điều kiện các biến số phảithoả mãn một hệ phương trình và (hoặc) bất phương trình tuyến tính. Mô hìnhtoán học của bài toán QHTT tổng quát có thể viết như sau: n Hàm mục tiêu: f ( x1 ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 với các ràng buộc (điều kiện): n ∑a ij x j = bi , (i ∈ I1 ) (2.2) j =1 1
  • 12. 2. ∑a ij x j ≥ bi , (i ∈ I 2 ) (2.3) j =1 n ∑a ij x j ≤ bi , (i ∈ I 3 ) (2.4) j =1 x j ≤ 0 hoặc x j ≥ 0 (2.5) trong đ ó: I1, I2, I3 là tập các chỉ số (I1, I2, I3 không giao nhau), ký hiệuI = I1 ∪ I 2 ∪ I 3 aij, bi, cj với i ∈ I , j = 1 ÷n là các hằng số (có thể là tham số), n là sốbiến số xj với j = 1 ÷n là các biến số (ẩn số) của bài toán, (2.5) được gọi là cácràng buộc về dấu * Một số khái niệm và định nghĩa (1) Một nhóm ràng buộc có hệ véc tơ tương ứng độc lập tuyến tính đượcgọi là các ràng buộc độc lập tuyến tính. Các ràng buộc dấu luôn là độc lập tuyếntính. (2) Phương án: Một véc tơ x = (x1,x2, …,xn) thoả mãn hệ ràng buộc củabài toán gọi là một phương án của bài toán. Để phân biệt tính chất của các ràng buộc (cả ràng buộc dấu) đối với mộtphương án cụ thể, ta có các khái niệm ràng buộc: chặt và lỏng. + nếu đối với phương án x mà ràng buộc i thoả mãn với dấu đẳng thức(2.2) hoặc xi = 0 (nếu là ràng buộc dấu) thì ta nói phương án x thoả mãn chặtràng buộc i hay ràng buộc i là chặt đối với phương án x. + nếu đối với phương án x mà ràng buộc i thoả mãn với dấu bất đẳng thức(2.3), (2.4) hoặc xi > 0, xi < 0 (tuỳ thuộc ràng buộc loại gì) thì ta nói phương ánx thoả mãn lỏng ràng buộc i hay ràng buộc i là lỏng đối với phương án x. 2 • 3. Ràng buộc i có dạng phương trình thì nó sẽ là chặt với mọi phương án củabài toán, nếu có dạng bất phương trình thì nó có thể là chặt đối với phương ánnày và là lỏng đối với phương án kia. (3) Phương án tối ưu (phưong án tốt nhất): Một phương án mà tại đ ó trịsố hàm mục tiêu đạt cực tiểu (hoặc cực đại, tuỳ trường hợp cụ thể của f(x)) gọilà phương án tố ưu. (4) Phưong án tốt hơn: Xét bài toán có f(x) → min (max) và hai phươngán x1, x2 của nó. Phương án x1 gọi là tốt hơn phương án x2 nếu ( ) ( )f x 1 ≤ (≥ ) f x 2
  • 13. . Nếu có các dấu bất đẳng thức thực sự thì gọi là tốt hơn thực sự. Một bài toán có tồn tại phương án tối ưu gọi là bài toán giải được vàngược lại nếu không có phương án tối ưu gọi là bài toán không giải được. Bàitoán không giải được là do một trong hai nguyên nhân sau: + Bài toán không có phương án + Bài toán có phương án, nhưng hàm mục tiêu không bị chặn dưới nếuf(x) → min hoặc không bị chặn trên nếu f(x) → max trên tập phương án. (5) Phương án cực biên (PACB): Một phương án thoả mãn chặt n ràngbuộc độc lập tuyến tính được gọi là phương án cực biên. Một bài toán có số ràng buộc (kể cả ràng buộc dấu nếu có) ít hơn n thìchắc chắn sẽ không có phương án cực biên dù nó có phương án. Phương án cực biên thoả mãn chặt đúng n ràng buộc gọi là phương án cựcbiên không suy biến, thoả mãn chặt hơn n ràng buộc gọi là phương án cực biênsuy biến. Nếu tất cả các phương án cực biên của bài toán đều không suy biến thìgọi là bài toán không suy biến, ngược lại là bài toán suy biến. Để thuận tiện cho việc trình bày các kết quả lý thuyết cũng như thuật toángiải QHTT, người ta thường sử dụng hai dạng đặc biệt của bài toán QHTT là bàitoán dạng chính tắc và bài toán dạng chuẩn. 2.1.2 Bài toán QHTT dạng chính tắc 3 • 4. Bài toán QHTT dạng chính tắc có dạng như sau: n Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng buộc: ∑a x j =1 ij j = bi , i = 1 ÷m (2.6) x j ≥ 0, j = 1 ÷n (2.7) Như vậy, bài toán QHTT dạng chính tắc gồm có 2 nhóm: nhóm các ràngbuộc dạng phương trình (2.6), nhóm ràng buộc dạng bất phương trình chỉ baogồm các ràng buộc về dấu (2.7). 2.1.3 Bài toán QHTT dạng chuẩn Bài toán QHTT dạng chuẩn có dạng như sau: n Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng buộc: ∑a x j =1 ij j ≥ bi , i = 1 ÷ m (2.8) x j ≥ 0, j = 1 ÷ n (2.7) Bài toán QHTT dạng chuẩn chỉ gồm 1 nhóm các ràng buộc dạng bấtphương trình bao gồm các ràng buộc về dấu là (2.8) và (2.7). 2.2 CÁC BƯỚC GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH TRONG EXCEL Để giải quyết các bài toán QHTT phần mềm Excel
  • 14. cung cấp cho chúng tamột công cụ khá hữu ích là Solver. Các bài toán QHTT dạng chính tắc và dạngchuẩn chỉ là các trường hợp riêng bài toán QHTT dạng tổng quát. Vì thế ở đây tasẽ xem xét cách giải quyết bài toán QHTT dạng tổng quát rồi từ đ ó áp dụngtương tự cho hai dạng còn lại. 2.2.1 Cài thêm công cụ Add-ins Solver Vào thực đơn Tools Solver. Nếu chưa thấy chức năng Solver trên thựcđơn Tools thì ta cần bổ sung chức năng này vào Excel. Các bước tiến hành: (1) Vào menu Tools Add-Ins, xuất hiện cửa sổ: 4 • 5. Hình 2.1 Hộp thoại Add-ins chứa các chức năng mở rộng của Excel (2) Chọn Solver Add-Ins và chọn OK. 2.2.2 Xây dựng bài toán trong Excel Việc xây dựng bài toán trong Excel cũng tương tự như việc xây dựng bàitoán khi chúng ta tiến hành giải thủ công thông thường. Sau khi phân tích đầubài chúng ta cần viết được hàm mục tiêu và các ràng buộc của bài toán rồi tiếnhành tổ chức dữ liệu vào bảng tính. Ta xét ví dụ sau: Ví dụ 2.1: Cho bài toán QHTT sau: Hàm mục tiêu: f(x) = 2x1+8x2-5x3+15x4 → max với ràng buộc: 3x1-x2+x3+10x4=5 x1+2x2+x3+5x4 ≥ 9 2x1+10x2+2x3-5x4 ≤ 26 x j ≥ 0, j = 1 ÷4 Tổ chức dữ liệu trên bảng tính: Biến quyết định: được nhập tại các ô B7:E7. Cho các giá trị khởi độnglà 0. Hàm mục tiêu f(x): có giá trị căn cứ vào giá trị khởi động của các biến.Công thức tại ô F8. 5 • 6. Các ràng buộc: nhập các hệ số của các quan hệ ràng buộc tại các ôB10:E12. Tính vế trái của các ràng buộc theo công thức tại các ô F10:F12.Nhập các giá trị vế phải của các ràng buộc tại các ô G10:G12. Theo bảng sau: Hình 2.2 Tổ chức bài toán trên bảng tính Sau khi nạp xong dữ liệu vào bảng tính ta tiến hành giải bài toán. 2.2.3 Tiến hành giải bài toán (1) Chọn ô F8 và chọn Tools Solver. Bảng hộp thoại Solver Parametersxuất hiện và gồm các thông số sau: Hình 2.3 Hộp thoại khai báo các thông số cho Solver Trong đ ó: 6
  • 15. 7. Set Tanget Cell: Nhập ô chứa địa chỉ tuyệt đối của hàm mục tiêu. Equal To: Xác định giới hạn cho hàm mục tiêu hoặc giá trị cần đạt đếncủa hàm mục tiêu: Max, Min hay Value of tuỳ thuộc vào yêu cầu của bài. By Changing Cells: Nhập địa chỉ tuyệt đối của các ô ghi các giá trị banđầu của biến. Subject to the Constraints: Nhập các ràng buộc của bài toán. Cách làm của Solver là thay đổi giá trị của các biến tại By ChangingCells cho đến lúc giá trị của hàm mục tiêu tại Set Tanget Cell đạt một giá trị quyđịnh tại Equal To và đồng thời thoả mãn tập các ràng buộc tại Subject to theConstraints. Với ví dụ 2.1 ta tiến hành khai báo các thông số cho Solver như sau: Địa chỉ của hàm mục tiêu F8 được đưa vào Set Target Cell Chọn Max tại Equal To để Solver tìm lời giải cực đại cho hàm mụctiêu. Nhập địa chỉ của các biến quyết định B7:E7 tại By Changing Cells. Hình 2.4 Khai báo hàm mục tiêu và các biến Thêm các ràng buộc vào Subject to the Contraints: Nhấp nút Add,bảng Add Constraint xuất hiện và gồm các thông số sau: 7 • 8. Hình 2.5 Hộp thoại thêm các ràng buộc Cell Reference: Ô hoặc vùng ô chứa công thức của các ràng buộc. Ô ấu: Cho phép d ta lựa chọn dấu của các ràng buộc tương ứng. Constraint: Ô ứa giá ch trị vế phải của các ràng buộc tương ứng (ta cũngcó thể nhập trực tiếp giá trị vế phải của ràng buộc tương ứng). Với ví dụ 2.1 các ràng buộc được nhập như sau: + Các ràng buộc về dấu: do x j ≥ 0, j = 1 ÷ 4 (các ràng buộc đều có dạng≥ ) nên ta chọn vùng địa chỉ chứa biến B7:E7 vào Cell Reference, chọn dấu ≥và nhập 0 vào Constraint: Hình 2.6 Thêm các ràng buộc Chú ý: Nếu bài yêu cầu ràng buộc (xj) là nguyên thì trong ô dấu ta chọnint, nếu là kiểu nhị phân ta chọn bin. + Tiếp tục chọn Add để nhập tiếp các ràng buộc phương trình và bấtphương trình: Cell Reference Constraint F10 = G10 F11 >= G11 F12 <= G12 Chọn OK để kết thúc việc khai báo các ràng buộc. Tuy nhiên, muốn hiệuchỉnh ràng buộc ta chọn ràng buộc và chọn Change, xoá ràng buộc ta chọn ràngbuộc từ danh sách Subject to the Contraints và nhấp Delete. 8
  • 16. 9. Hình 2.7 Khai báo các thông số của bài toán Sau khi hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuấthiện và cho ta hai sự lựa chọn sau: Hình 2.8 Chọn kiểu báo cáo Keep Solver Solution: Giữ kết quả và in ra bảng tính. Restore Original Values: Huỷ kết quả vừa tìm được và trả các biến vềtình trạng ban đầu. Save Scenario: Lưu kết quả vừa tìm được thành một tình huống để có thểxem lại sau này. Ngoài ra có 3 loại báo cáo là Answer, Sensitivity và Limits. Ở ví dụ 2.1 ta chọn Keep Solver Solution, OK. Bảng kết quả nhận đượcnhư sau: • 10. Như vậy phương án cực biên tìm được là X=(0,3,0,0.8) và giá trị cực đạicủa hàm mục tiêu f(x) là 36. 2.2.4 Giải thích thuật ngữ Tuy nhiên để tiện cho việc phân tích kết quả thì trong bảng SolverResults ta chọn thêm mục Answer Reports khi đ ó bảng kết quả nhận được củaví dụ 2.1 như sau: Ta cần phải nắm vững một số thuật ngữ sau: Original Value: Giá trị ban đầu. Final Value: Giá trị cuối cùng. Formula: Công thức tính. Status: Trạng thái. Binding: Ràng buộc chặt. 10 • 11. Not Binding: Ràng buộc không chặt (ràng buộc lỏng). 2.3 CÁC LỰA CHỌN KHI GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.3.1 Các lựa chọn Để thiết lập các thuộc tính cho Solver thì trong bảng Solver Parametersta nhấp chuột vào Options hộp thoại Solver Options cho ta các lựa chọn sau: Hình 2.9 Thiết lập các thuộc tính cho Solver Max Time: Thời gian tối đa để giải bài toán là 32.767 giây (mặc định là100 giây cho các bài toán đơn giản). Iterations: Số lần lặp tối đa để giải các bài toán là 32.767 lần(mặc định là100 lần). Precision: Độ chính xác của bài toán (từ 0 đến 1, mặc định là 0.000001,giá trị càng gần với 0 thì độ chính xác càng cao). Giá trị này điều chỉnh độ sai sốcho tập ràng buộc. Tolerance: Chỉ áp dụng đối với các bài toán có ràng buộc nguyên. Nhậpvào sai số có thể chấp nhận được. Sai số càng lớn thì tốc độ giải càng nhanh(mặc định là 5%) Convergence: Chỉ áp dụng đối với các bài toán không tuyến tính. Khi tỉsố của giá trị tính toán ban đầu của ô
  • 17. đích đến giá trị tính toán hiện hành ít hơngiá trị đồng quy Solver ngừng việc tìm kiếm dù có tìm thấy lời giải hay không. 11 • 12. Giá trị nằm trong khoảng từ 0 đến 1. Giá trị càng gần 0 thì độ chính xác càngcao và cần nhiều thời gian hơn (mặc định là 0.0001). Assume Linear Model: Khi tất cả quan hệ trong mô hình là tuyến tính thìchọn mục này để tăng tốc độ giải bài toán. Assume Non-Negative: Chọn tuỳ chọn này nếu muốn giả định tất cả cácbiến của bài toán đều không âm. Use Automatic Scaling: Chọn tuỳ chọn này khi ô đích và ô thay đổi có sựkhác nhau lớn. Solver sẽ tự động điều chỉnh các biến để tìm ra lời giải. Chẳnghạn như bài toán tối đa % lợi nhuận trên hàng triệu đồng vốn đầu tư. Show Iteration Results: Chọn tuỳ chọn này nếu muốn Solver tạm dừnglại và hiển thị kết quả sau mỗi lần lặp. Ba tính năng nâng cao điều khiển cho Solver: Estimates: Chọn phương pháp cho Solver ước lượng các biến - Tangent: Sử dụng cách xấp xỉ tuyến tính bậc nhất. - Quandratic: Sử dụng cách xấp xỉ bậc bốn. Derivatives: Chọn cách để ước lượng hàm mục tiêu và các ràng buộc - Forward: Dùng khi giá trị của các ràng buộc biến đổi chậm (đượcdùng phổ biến). - Central: Dùng khi giá trị của các ràng buộc biến đổi nhanh và khiSolver báo không thể cải tiến kết quả thu được. Search: Quy định giải thuật tìm kiếm kết quả cho bài toán - Newton: là phương pháp mặc định, sử dụng nhiều bộ nhớ và có số lầnlặp ít. - Conjugate: cần ít bộ nhớ hơn phương pháp Newton nhưng số lần lặpthì nhiều hơn. Được sử dụng khi giải các bài toán phức tạp và bộ nhớ máy tínhcó giới hạn. Save Model: Chọn nơi lưu mô hình bài toán. Sử dụng khi muốn lưu nhiềumô hình trên một worksheet. Mô hình đầu tiên đã được lưu tự động. Load Model: Xác định vùng địa chỉ của mô hình bài toán cần nạp vào. 12 • 13. 2.3.2 Hạn chế khi giải bài toán quy hoạch tuyến tính trong Excel Hạn chế của bài trình cài thêm Solver là chỉ giải được các bài toán có tối dalà 16 biến số. Mặt khác số lần lặp tối đa để giải bài toán là 32767, thời gian tối đađể giải bài toán là 32767…nên bên
  • 18. cạnh đ ó nó còn tồn tại một số mặt hạn chếnhất định về quy mô của bài toán và khó khăn trong việc tìm miền tối ưu. Đối với những bài toán tối ưu có quy mô lớn ta có thể sử dụng phần mềmLindo đây là một phần mềm tin học rất mạnh trong lĩnh vực này. 2.4 MỞ RỘNG BÀI TOÁN Việc ứng dụng mô hình QHTT trong quản lý kinh tế và quản trị doanhnghiệp là rất phổ biến. Chúng ta thường bắt gặp mô hình này trong các bài toánnhư: bài toán lập kế hoạch sản xuất tối ưu cho doanh nghiệp, bài toán phân bổvốn đầu tư, bài toán dự trữ…Tuy nhiên trong phần này xin trình bày ra đây 2loại bài toán QHTT thông dụng nhất là: bài toán nguyên vật liệu và bài toán vậntải. 2.4.1 Bài toán nguyên vật liệu Bài toán tổng quát Một nhà máy có khả năng sản xuất n loại sản phẩm. Để sản xuất các sảnphẩm này cần phải sử dụng m loại nguyên vật liệu. Biết rằng: aij là lượng nguyên vật liệu loại i cần thiết để sản xuất ra một đơn vị sảnphẩm loại j bi là dự trữ nguyên vật liệu loại i cj là lợi nhuận từ việc bán một đơn vị sản phẩm loại j với i = 1, m và j = 1, n Bài toán được mô tả theo bảng sau: S1 S2 … Sj … Sn Dự trữ NVL1 a11 a12 … a1j … a1n b1 NVL2 a21 a22 … a2j … a2n b2 … … … … … … … … 13 • 14. NVLi ai1 ai2 … aij … ain bi … … … … … … … … NVLm am1 am2 … amj … amn bm Lợi nhuận đơn vị c1 c2 … cj … cn Hãy tìm phương án sản xuất để tối đa hoá lợi nhuận. Bài giải: Gọi xj là lượng sản phẩm loại j mà nhà máy sẽ sản xuất nên x j ≥ 0 . Do đ ó phương án sản xuất của nhà máy là vectơ x=(x1, x2,…,xj,..,xn). Khi đ ó: n Tổng chi phí nguyên vật liệu loại i để sản xuất x là ∑a j =1 ij x j sẽ không vượt nquá dự trữ bi: ∑a j =1 ij x j ≤ bi n Tổng lợi nhuận thu được khi sản xuất x là ∑c x j =1 j j Vậy mô hình toán học của bài toán nguyên vật liệu có thể phát biểu theomô hình bài toán QHTT như sau: n Hàm mục tiêu: f(x)= ∑ c j x j → max j =1 n Các ràng buộc: ∑a j =1 ij x j ≤ bi , i = 1, m x j ≥ 0, j = 1, n Việc giải bài toán nguyên vật liệu trong Excel cũng bao gồm 2 bước: B1: Xây dựng bài toán (lập bài toán và tổ chức dữ liệu trên bảng tính). B2:
  • 19. Tiến hành giải bài toán bằng cách chạy Solver theo trình tự như trên. Ta xét một ví dụ cụ thể sau: Ví dụ 2.2 14 • 15. Một nhà máy dự định tiến hành sản xuất 5 loại sản phẩm Sj ( j = 1,5 ). Cả 5loại sản phẩm này đều sử dụng 4 loại nguyên vật liệu chính NVLi ( i = 1,4 ). Cómức tiêu hao nguyên vật liệu, lợi nhuận đơn vị thu được và giới hạn dự trữ nhưsau: S1 S2 S3 S4 S5 Dự trữ NVL1 2 5 6 8 4 1200 NVL2 3 1 5 6 1 800 NVL3 7 5 4 5 2 2000 NVL4 8 5 7 9 1 1865 Lợi nhuận đơn vị 300 250 500 150 320 Hãy xây dựng phương án sản xuất để nhà máy đạt được tổng lợi nhuậnlớn nhất. Bài giải: B1: Xây dựng bài toán Gọi xj với j=1,5 là sản lượng sản phẩm loại j sẽ sản xuất. (xj>=0) Nên phương án sản xuất của nhà máy là vectơ x = (x1, x2, x3 , x4, x5). Hàm mục tiêu: f(x) = 300x1 + 250x2 + 500x3 + 150x4 + 320x5 max Các ràng buộc: 2x1 + 5x2 + 6x3 + 8x4 + 4x5 <= 1200 3x1 + x2 + 5x3 + 6x4 + x5 <= 800 7x1 + 5x2 + 4x3 + 5x4 + 2x5 <= 2000 8x1 + 5x2 + 7x3 + 9x4 + x5 <= 1865 Bài toán được tổ chức trên bảng tính như sau: 15 • 16. Hình 2.10 Lập bài toán trên bảng tính B2: Giải bài toán: - Chọn ô G8 rồi thực hiện lệnh Tools Solver, điền đầy đủ thông tin vàohộp thoại Solver Parameters như sau: Hình 2.11 Khai báo các thông số của bài toán - Nhấn Solver để thực hiện việc chạy Solvers. Trong bảng hộp thoại kếtquả Solver Results tích chọn mục Keep Solver Solution và chọn thêm báo cáoAnswer Report ta nhận được kết quả: 16 • 17. Phương án tối ưu (phương án cực biên) là x = (200, 0, 0, 0, 200) vớif(x) max = 124 000. Hay phương án sản xuât tối ưu của nhà máy là sản xuất 200đơn vị sản phẩm 1 và 200 đơn vị sản phẩm 5 khi đ ó lợi nhuận tối ưu đạt được là124 000 đơn vị tiền tệ. Không có nguyên liệu nào bị lãng phí. 2.4.2 Bài toán vận tải Bài toán tổng quát: Có m kho hàng cùng chứa một loại hàng hoá, lượng hàng
  • 20. có ở kho i là ai(i = 1, m). Có n địa điểm tiêu thụ loại hàng nói trên, với nhu cầu tiêu thụ ở điểm j làbj ( j = 1, n ) . 17 • 18. Biết cij là cước phí vận chuyển một đơn vị hàng hoá từ kho i đến điểm tiêuthụ j. Bài toán được mô tả theo bảng sau: D1 D2 … Dj … Dn Dự trữ K1 c11 c12 … c1j … c1n a1 K2 c21 c22 … c2j … c2n a2 … … … … … … … … Ki ci1 ci2 … cij … cin ai … … … … … … … … Km cm1 cm2 … cmj … cmn am Nhu cầu tiêu thụ b1 b2 … bj … bn Hãy lập kế hoạch vận chuyển hàng từ các kho đến các điểm tiêu thụ saocho tổng chi phí vận chuyển là nhỏ nhất. Bài giải: Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = m, j = 1, n . Ta có: m n Tổng chi phí vận chuyển: ∑∑ c i =1 j =1 ij xij n Lượng hàng vận chuyển khỏi kho i: ∑x j =1 ij m Lượng hàng vận chuyển đến điểm tiêu thụ j: ∑x i =1 ij Như vậy mô hình toán học của bài toán vận tải có thể viết dưới dạng bàitoán QHTT như sau: m n Hàm mục tiêu: f(x) = ∑∑ c i =1 j =1 ij xij → min n Các ràng buộc: ∑x j =1 ij ≤ ai 18 • 19. m ∑x i =1 ij = bj xij ≥ 0, i = 1, m, j = 1, n Ta thấy ngay được điều kiện cần và đủ để bài toán vận tải có phương ántối ưu là tổng tất cả các lượng hàng tiêu thụ bằng tổng tất cả các lượng hàng ở m ncác kho, nghĩa là: ∑ ai = ∑ b j i =1 j =1 Cũng giống như bài toán nguyên vật liệu để tiến hành giải bài toán trongExcel ta cần phải trải qua 2 bước là: xây dựng bài toán và tiến hành chạySolver. Xét ví dụ cụ thể sau: Ví dụ 2.3 Sử dụng công cụ Solver như đã trình bày ở trên hãy lập phương án vậnchuyển xăng tối ưu từ 4 kho đến 5 trạm xăng bán lẻ của một công ty kinh doanhxăng dầu khu vực V. Bài giải: B1: Xây dựng bài toán Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = 1,4, j = 1,5 . Hàm mục tiêu: f(x) = 30x11 + 27x12 + 26x13 + 9x14 + 23x15 + 13x21 + 4x22+ 22x23 + 3x24 + x25 + 3x31 + x32 + 5x33 + 4x34 + 24x35 + 16x41 + 30x42 + 17x43 +10x44 + 16x45 min Các ràng buộc: x11 + x12 + x13 + x14 + x15 <= 4 x21 + x22 + x23 + x24 + x25 <= 6 x31
  • 21. + x32 + x33 + x34 + x35 <= 10 x41 + x42 + x43 + x44 + x45 <= 10 x11 + x21 + x31 + x41 <= 7 x12 + x22 + x32 + x42 <= 7 19 • 20. x13 + x23 + x33 + x43 <= 7x14 + x24 + x34 + x44 <= 7x15 + x25 + x35 + x45 <= 2Tổ chức dữ liệu trên bảng tính như sau: Hình 2.12 Tổ chức bài toán trên bảng tínhBước 2: Tiến hành giải bài toánChọn ô B16 rồi dùng lệnh ToolsSolver Hình 2.13 Khai báo các thông số của bài toán 20 • 21. Sau khi nhập đầy đủ thông tin vào bảng Solver Parameters ta chọnSolveKeep Solver Solution ,OK. Ta được bảng kết quả sau: Phân tích kết quả: Vậy phương án vận chuyển là: x = (0,0,0,4,0,0,4,0,0,2,7,3,0,0,0,0,0,7,3,0) Vì tổng lượng xăng dự trữ ở các kho bằng tổng nhu cầu xăng ở các trạm(30) nên phương án tìm được là phương án tối ưu. Chú ý 1: Nếu muốn có bảng kết quả chi tiết để phân tích thì trong bảngSolver Results ta chọn thêm mục Reports Answer (hoặcvà Sensitivity hoặcvàLimits) tuỳ thuộc vào mức độ chi tiết yêu cầu của bài. Chú ý 2: Đối với những bài toán chưa tìm được lời giải mong muốn ta cóthể thay đổi các thông số đầu vào của bài toán rồi chọn Tools Solver để tìm raphương án tối ưu. 2.5 ỨNG DỤNG EXCEL ĐỂ GIẢI HỆ PHƯƠNG TRÌNH TUYẾN T ÍNH 21 • 22. Dạng tổng quát của hệ phương trình tuyến tính là hệ m phương trình đạisố bậc nhất đối với n ẩn số: a11x1 + a12x2 +… +a1nxn = b1 a21x1 + a22x2 +… +a2nxn = b1 (*) …………………………… am1x1 + am2x2 +… +a1mxn = b1 với x1, x2,…, xn là các ẩn số; aij là hệ số ở phương trình thứ i của ẩn xj; bilà vế phải của phương trình. Khi m = n ta có hệ phương trình vuông với n phương trình n ẩn. Khi bi = 0 ta có một hệ thuần nhất. Toán học đã cung cấp cho chúng ta khá nhiều phương pháp để giải các hệphương trình tuyến tính như: phương pháp thế, phương pháp cộng đại số,phương pháp ma trận - định thức …Phần mềm Excel cũng cung cấp cho ta haicông cụ rất dễ dàng, nhanh chóng và
  • 22. chính xác để tiến hành giải hệ phương trìnhtuyến tính là: sử dụng trình cài thêm Solver và sử dụng kết hợp hai hàmMINVERSE và MMULT. 2.5.1 Giải hệ phương trình bằng Solver Ngoài ứng dụng để giải các bài toán QHTT Solver còn có thể ứng dụng đểgiải các bài toán về hệ phương trình. Khi đ ó chỉ có các ràng buộc dạng phươngtrình và không có hàm mục tiêu. Các bước tiến hành giải hệ phương trình hoàntoàn tương như khi giải bài toán QHTT. Để hiểu hơn ta tiến hành xét ví dụ sau: Ví dụ 2.4: Giải hệ phương trình sau: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Bước 1: Tổ chức dữ liệu vào bảng tính Nhập các hệ số, vế phải của phương trình và cho giá trị khởi động cho cácbiến vào bảng tính như hình sau: 22 • 23. Hình 2.14 Lập bài toán trên bảng tính Bước 2: Giải hệ phương trình Chọn Tools Solver, OK. Rồi tiến hành điền đầy đủ thông tin vào hộpthoại Solver Paraments (bỏ trống mục Set Target Cell). Hình 2.15 Khai báo các thông số của bài toán Sau khi điền đầy đủ thông tin ta nhấp Solve. Trong bảng hộp thoại SolverResults ta kiểm vào Keep Solver Solution để lưu kết quả trên bảng tính. 23 • 24. Hình 2.16 Chọn loại báo cáo Chọn OK để hoàn tất quá trình chạy Solver. Ta được bảng kết quả nhưsau: Vậy nghiệm tìm được của hệ phương trình là: x = 1, y= -1, z = 2. Không chỉ sử dụng Solver để giải hệ phương trình phần mềm Excel còncung cấp thêm một công cụ nữa để giải hệ phương trình bằng phương pháp matrận là sử dụng hàm MINVERSE và MMULT 2.5.2 Giải hệ phương trình bằng hàm MINVERSE và hàm MMULT Khi hệ phương trình (*) có m = n thì nó trở thành hệ vuông gồm nphương trình n ẩn. Khi đ ó ma trận hệ số A , ma trận biến X sẽ là một ma trậnvuông cấp n và ma trận của vế phải hệ phương trình B là: a11 a12 … a1n a11 a12 … a1n a21 a22 … a2n a21 a22 … a2n A= …………… X= …………… an1 an2 … ann an1 an2 … ann B = b1
  • 23. b2 … bn Vậy hệ (*) được viết lại là: A * X = B (**) nên X = A-1 *B (***) 24 • 25. 2.5.1.1 Giới thiệu hàm MINVERSE và hàm MMULT Hàm MINVERSE Là hàm dùng để tìm ma trận nghịch đảo. Cú pháp: MINVERSE(array) array: là địa chỉ ma trận cần nghịch đảo. Ví dụ 2.5 Hàm MMULT Là hàm dùng để nhân 2 ma trận. Cú pháp: MMULT(array1, array2) array1, array2: là địa chỉ của các ma trận cần nhân. Ví dụ 2.6 Chú ý: - Nhấn tổ hợp phím Ctrl + Shift + Enter sau khi nhập xong côngthức. - Chỉ khi là ma trận vuông nếu không khi sử dụng hàm này sẽ báolỗi #VALUE!. - Nếu có phần tử nào trong ma trận là rỗng hoặc là chữ thì báo lối#VALUE!. 2.5.2.2 Giải hệ phương trình Quá trình giải hệ phương trình bằng phương pháp ma trận sử dụng haihàm MINVERSE và MMULT được tiến hành theo 3 bước sau: 25 • 26. Bước 1: Chuẩn bị bài toán: Nhập ma trận hệ số A, nhãn của ma trậnbiến X và ma trận số vế phải B của hệ phương trình. Bước 2: Tìm ma trận nghịch đảo của ma trận A: sử dụng hàmMINVERSE. Bước 3: Tìm nghiệm của hệ phương trình: sử dụng hàm MMULT. Để cụ thể hơn ta xét ví dụ 2.4 ở trên. Giải hệ phương trình: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Ta tiến hành giải như sau: Bước 1: Chuẩn bị bài toán: Ta tiến hành nhập ma trận hệ sốA, nhãn củama trận biến X và ma trận số vế phải B của hệ phương trình như hình sau: Bước 2: Tìm ma trận nghịch đảo của ma trận A Bước 3: Tìm nghiệm của hệ phương trình Vậy nghiệm của hệ phương trình là x =1, y =-1, z = 2. Nhận xét: Dù lựa chọn phương pháp giải nào cũng đều cho ta cùng mộtkết quả. 26 Search • Connect on LinkedIn • Follow us on Twitter • Find us on Facebook • Find us on Google+
  • 24. LEARN ABOUT US • About • Careers • Our Blog • Press • Contact us • Help & Support • USING SLIDESHARE • SlideShare 101 • Terms of Use • Privacy Policy • Copyright & DMCA • Community Guidelines • SlideShare on mobile • PRO & MORE • Go PRO new • Business Solutions • Advertise on SlideShare • DEVELOPERS & API • Developers Section • Developers Group • Engineering Blog • Blog Widgets © 2012 SlideShare Inc. All rights reserved. RSS Feed • ENGLISH Connect your Facebook account to check out what your friends are sharing on SlideShare Connect× SlideShare Submit • Upload • Browse • Go PRO • Login • Signup • Email
  • 25. Favorite • Save file • Flag • Embed
  • 37. ‹› 1 /26 • Related • Upload your own • Quy hoach tuyen tinh C H U O N G2 • Quy hoach tuyen tinh C1 • Quy hoach tuyen tinh C3 • Quy hoach tuyen tinh C4
  • 38. Mot So Mo Hinh Trong DSS • PhầN I Va PhầN 2 • Chuong 3 • TANET - Bai giang ve luat ke toan va cac van ban huong dan thuc hien luat ke toa… • Chuong03 • Core Java 3 • ThiếT Kế Và đáNh Giá ThuậT ToáN • Bai giang kiem_toan
  • 39. Giaoan Atbm • Ly thuyet kiem toan • T d que_lap_trinh_huong_doi_tuong • Báo cáo thực tập tốt nghiệp chuyên ngành kế toán • Cấu truc-dữ-liệu-va-thuật-giải-1 • Bai 01 mot so kien thuc toan co ban • Bai01 mot so_kien_thuc_toan_co_ban • Kernel fisher discriminant •
  • 40. • 0 inShare • • • Wordpress + Follow Ứng dụng excel_de_giai_qhtt by luxubu2075 on Dec 28, 2010 • 4,421views More… • No comments yet Subscribe to commentsPost Comment • 3 Favorites • thutranggt9 months ago • Doan Dung at VNCC10 months ago • huongphungpth10 months ago Ứng dụng excel_de_giai_qhtt — Document Transcript • 1. ỨNG DỤNG EXCEL ĐỂ GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH Sự cạnh tranh khốc liệt trong hoạt động sản xuất kinh doanh luôn đ òi hỏicác nhà quản lý doanh nghiệp phải thường
  • 41. xuyên lựa chọn phương án để đưa racác quyết định nhanh chóng, chính xác và kịp thời với những ràng buộc và hạnchế về các điều kiện liên quan tới tiềm năng của doanh nghiệp, điều kiện thịtrường, hoàn cảnh tự nhiên và xã hội. Việc lựa chọn phương án nào là tối ưutheo mục tiêu định trước là hết sức quan trọng. Nếu tất cả các yếu tố (biến số)liên quan đến khả năng, mục đích và quyết định lựa chọn đều có mối quan hệtuyến tính thì chúng ta hoàn toàn có thể sử dụng mô hình quy hoạch tuyến tính(QHTT) để mô tả, phân tích và tìm lời giải cho vấn đề lựa chọn tối ưu trongquản lý kinh tế. Trong môn học Toán kinh tế việc giải bài toán QHTT thực hiệnbằng thuật toán đơn hình . Trong phần mềm Excel sử dụng một công cụ càithêm là Solver có thể giải bài toán tối ưu nhanh chóng. 2.1 NHẮC LẠI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.1.1 Bài toán QHTT dạng tổng quát Bài toán QHTT dạng tổng quát là bài toán tối ưu hoá hay bài toán tìm cựctrị (cực tiểu hoặc cực đại) của một hàm tuyến tính với điều kiện các biến số phảithoả mãn một hệ phương trình và (hoặc) bất phương trình tuyến tính. Mô hìnhtoán học của bài toán QHTT tổng quát có thể viết như sau: n Hàm mục tiêu: f ( x1 ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 với các ràng buộc (điều kiện): n ∑a ij x j = bi , (i ∈ I1 ) (2.2) j =1 1 • 2. ∑a ij x j ≥ bi , (i ∈ I 2 ) (2.3) j =1 n ∑a ij x j ≤ bi , (i ∈ I 3 ) (2.4) j =1 x j ≤ 0 hoặc x j ≥ 0 (2.5) trong đ ó: I1, I2, I3 là tập các chỉ số (I1, I2, I3 không giao nhau), ký hiệuI = I1 ∪ I 2 ∪ I 3 aij, bi, cj với i ∈ I , j = 1 ÷n là các hằng số (có thể là tham số), n là sốbiến số xj với j = 1 ÷n là các biến số (ẩn số) của bài toán, (2.5) được gọi là
  • 42. cácràng buộc về dấu * Một số khái niệm và định nghĩa (1) Một nhóm ràng buộc có hệ véc tơ tương ứng độc lập tuyến tính đượcgọi là các ràng buộc độc lập tuyến tính. Các ràng buộc dấu luôn là độc lập tuyếntính. (2) Phương án: Một véc tơ x = (x1,x2, …,xn) thoả mãn hệ ràng buộc củabài toán gọi là một phương án của bài toán. Để phân biệt tính chất của các ràng buộc (cả ràng buộc dấu) đối với mộtphương án cụ thể, ta có các khái niệm ràng buộc: chặt và lỏng. + nếu đối với phương án x mà ràng buộc i thoả mãn với dấu đẳng thức(2.2) hoặc xi = 0 (nếu là ràng buộc dấu) thì ta nói phương án x thoả mãn chặtràng buộc i hay ràng buộc i là chặt đối với phương án x. + nếu đối với phương án x mà ràng buộc i thoả mãn với dấu bất đẳng thức(2.3), (2.4) hoặc xi > 0, xi < 0 (tuỳ thuộc ràng buộc loại gì) thì ta nói phương ánx thoả mãn lỏng ràng buộc i hay ràng buộc i là lỏng đối với phương án x. 2 • 3. Ràng buộc i có dạng phương trình thì nó sẽ là chặt với mọi phương án củabài toán, nếu có dạng bất phương trình thì nó có thể là chặt đối với phương ánnày và là lỏng đối với phương án kia. (3) Phương án tối ưu (phưong án tốt nhất): Một phương án mà tại đ ó trịsố hàm mục tiêu đạt cực tiểu (hoặc cực đại, tuỳ trường hợp cụ thể của f(x)) gọilà phương án tố ưu. (4) Phưong án tốt hơn: Xét bài toán có f(x) → min (max) và hai phươngán x1, x2 của nó. Phương án x1 gọi là tốt hơn phương án x2 nếu ( ) ( )f x 1 ≤ (≥ ) f x 2 . Nếu có các dấu bất đẳng thức thực sự thì gọi là tốt hơn thực sự. Một bài toán có tồn tại phương án tối ưu gọi là bài toán giải được vàngược lại nếu không có phương án tối ưu gọi là bài toán không giải được. Bàitoán không giải được là do một trong hai nguyên nhân sau: + Bài toán không có phương án + Bài toán có phương án, nhưng hàm mục tiêu không bị chặn dưới nếuf(x) → min hoặc không bị chặn trên nếu f(x) → max trên tập phương án. (5) Phương án cực biên (PACB): Một phương án thoả mãn chặt n ràngbuộc độc lập tuyến tính được gọi là phương án cực biên. Một bài toán có số ràng buộc (kể cả ràng buộc dấu nếu có) ít hơn n thìchắc chắn sẽ không
  • 43. có phương án cực biên dù nó có phương án. Phương án cực biên thoả mãn chặt đúng n ràng buộc gọi là phương án cựcbiên không suy biến, thoả mãn chặt hơn n ràng buộc gọi là phương án cực biênsuy biến. Nếu tất cả các phương án cực biên của bài toán đều không suy biến thìgọi là bài toán không suy biến, ngược lại là bài toán suy biến. Để thuận tiện cho việc trình bày các kết quả lý thuyết cũng như thuật toángiải QHTT, người ta thường sử dụng hai dạng đặc biệt của bài toán QHTT là bàitoán dạng chính tắc và bài toán dạng chuẩn. 2.1.2 Bài toán QHTT dạng chính tắc 3 • 4. Bài toán QHTT dạng chính tắc có dạng như sau: n Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng buộc: ∑a x j =1 ij j = bi , i = 1 ÷m (2.6) x j ≥ 0, j = 1 ÷n (2.7) Như vậy, bài toán QHTT dạng chính tắc gồm có 2 nhóm: nhóm các ràngbuộc dạng phương trình (2.6), nhóm ràng buộc dạng bất phương trình chỉ baogồm các ràng buộc về dấu (2.7). 2.1.3 Bài toán QHTT dạng chuẩn Bài toán QHTT dạng chuẩn có dạng như sau: n Hàm mục tiêu: f ( x ,..., x2 ) = ∑ c j x j → max(min) (2.1) j =1 n với các ràng buộc: ∑a x j =1 ij j ≥ bi , i = 1 ÷ m (2.8) x j ≥ 0, j = 1 ÷ n (2.7) Bài toán QHTT dạng chuẩn chỉ gồm 1 nhóm các ràng buộc dạng bấtphương trình bao gồm các ràng buộc về dấu là (2.8) và (2.7). 2.2 CÁC BƯỚC GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH TRONG EXCEL Để giải quyết các bài toán QHTT phần mềm Excel cung cấp cho chúng tamột công cụ khá hữu ích là Solver. Các bài toán QHTT dạng chính tắc và dạngchuẩn chỉ là các trường hợp riêng bài toán QHTT dạng tổng quát. Vì thế ở đây tasẽ xem xét cách giải quyết bài toán QHTT dạng tổng quát rồi từ đ ó áp dụngtương tự cho hai dạng còn lại. 2.2.1 Cài thêm công cụ Add-ins Solver Vào thực đơn Tools Solver. Nếu chưa thấy chức năng Solver trên thựcđơn Tools thì ta cần bổ sung chức năng này vào Excel. Các bước tiến hành: (1) Vào menu Tools Add-Ins, xuất hiện cửa sổ: 4 • 5. Hình 2.1 Hộp thoại Add-ins chứa các chức năng mở rộng của Excel (2) Chọn Solver Add-Ins và chọn OK. 2.2.2 Xây
  • 44. dựng bài toán trong Excel Việc xây dựng bài toán trong Excel cũng tương tự như việc xây dựng bàitoán khi chúng ta tiến hành giải thủ công thông thường. Sau khi phân tích đầubài chúng ta cần viết được hàm mục tiêu và các ràng buộc của bài toán rồi tiếnhành tổ chức dữ liệu vào bảng tính. Ta xét ví dụ sau: Ví dụ 2.1: Cho bài toán QHTT sau: Hàm mục tiêu: f(x) = 2x1+8x2-5x3+15x4 → max với ràng buộc: 3x1-x2+x3+10x4=5 x1+2x2+x3+5x4 ≥ 9 2x1+10x2+2x3-5x4 ≤ 26 x j ≥ 0, j = 1 ÷4 Tổ chức dữ liệu trên bảng tính: Biến quyết định: được nhập tại các ô B7:E7. Cho các giá trị khởi độnglà 0. Hàm mục tiêu f(x): có giá trị căn cứ vào giá trị khởi động của các biến.Công thức tại ô F8. 5 • 6. Các ràng buộc: nhập các hệ số của các quan hệ ràng buộc tại các ôB10:E12. Tính vế trái của các ràng buộc theo công thức tại các ô F10:F12.Nhập các giá trị vế phải của các ràng buộc tại các ô G10:G12. Theo bảng sau: Hình 2.2 Tổ chức bài toán trên bảng tính Sau khi nạp xong dữ liệu vào bảng tính ta tiến hành giải bài toán. 2.2.3 Tiến hành giải bài toán (1) Chọn ô F8 và chọn Tools Solver. Bảng hộp thoại Solver Parametersxuất hiện và gồm các thông số sau: Hình 2.3 Hộp thoại khai báo các thông số cho Solver Trong đ ó: 6 • 7. Set Tanget Cell: Nhập ô chứa địa chỉ tuyệt đối của hàm mục tiêu. Equal To: Xác định giới hạn cho hàm mục tiêu hoặc giá trị cần đạt đếncủa hàm mục tiêu: Max, Min hay Value of tuỳ thuộc vào yêu cầu của bài. By Changing Cells: Nhập địa chỉ tuyệt đối của các ô ghi các giá trị banđầu của biến. Subject to the Constraints: Nhập các ràng buộc của bài toán. Cách làm của Solver là thay đổi giá trị của các biến tại By ChangingCells cho đến lúc giá trị của hàm mục tiêu tại Set Tanget Cell đạt một giá trị quyđịnh tại Equal To và đồng thời thoả mãn tập các ràng buộc tại Subject to theConstraints. Với ví dụ 2.1 ta tiến hành khai báo các thông số cho Solver như sau: Địa chỉ của hàm mục tiêu F8 được đưa vào Set Target Cell Chọn Max tại Equal To để Solver tìm lời giải cực đại cho hàm mụctiêu. Nhập
  • 45. địa chỉ của các biến quyết định B7:E7 tại By Changing Cells. Hình 2.4 Khai báo hàm mục tiêu và các biến Thêm các ràng buộc vào Subject to the Contraints: Nhấp nút Add,bảng Add Constraint xuất hiện và gồm các thông số sau: 7 • 8. Hình 2.5 Hộp thoại thêm các ràng buộc Cell Reference: Ô hoặc vùng ô chứa công thức của các ràng buộc. Ô ấu: Cho phép d ta lựa chọn dấu của các ràng buộc tương ứng. Constraint: Ô ứa giá ch trị vế phải của các ràng buộc tương ứng (ta cũngcó thể nhập trực tiếp giá trị vế phải của ràng buộc tương ứng). Với ví dụ 2.1 các ràng buộc được nhập như sau: + Các ràng buộc về dấu: do x j ≥ 0, j = 1 ÷ 4 (các ràng buộc đều có dạng≥ ) nên ta chọn vùng địa chỉ chứa biến B7:E7 vào Cell Reference, chọn dấu ≥và nhập 0 vào Constraint: Hình 2.6 Thêm các ràng buộc Chú ý: Nếu bài yêu cầu ràng buộc (xj) là nguyên thì trong ô dấu ta chọnint, nếu là kiểu nhị phân ta chọn bin. + Tiếp tục chọn Add để nhập tiếp các ràng buộc phương trình và bấtphương trình: Cell Reference Constraint F10 = G10 F11 >= G11 F12 <= G12 Chọn OK để kết thúc việc khai báo các ràng buộc. Tuy nhiên, muốn hiệuchỉnh ràng buộc ta chọn ràng buộc và chọn Change, xoá ràng buộc ta chọn ràngbuộc từ danh sách Subject to the Contraints và nhấp Delete. 8 • 9. Hình 2.7 Khai báo các thông số của bài toán Sau khi hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuấthiện và cho ta hai sự lựa chọn sau: Hình 2.8 Chọn kiểu báo cáo Keep Solver Solution: Giữ kết quả và in ra bảng tính. Restore Original Values: Huỷ kết quả vừa tìm được và trả các biến vềtình trạng ban đầu. Save Scenario: Lưu kết quả vừa tìm được thành một tình huống để có thểxem lại sau này. Ngoài ra có 3 loại báo cáo là Answer, Sensitivity và Limits. Ở ví dụ 2.1 ta chọn Keep Solver Solution, OK. Bảng kết quả nhận đượcnhư sau: • 10. Như vậy phương án cực biên tìm được là X=(0,3,0,0.8) và giá trị cực đạicủa hàm mục tiêu f(x) là 36. 2.2.4 Giải thích thuật
  • 46. ngữ Tuy nhiên để tiện cho việc phân tích kết quả thì trong bảng SolverResults ta chọn thêm mục Answer Reports khi đ ó bảng kết quả nhận được củaví dụ 2.1 như sau: Ta cần phải nắm vững một số thuật ngữ sau: Original Value: Giá trị ban đầu. Final Value: Giá trị cuối cùng. Formula: Công thức tính. Status: Trạng thái. Binding: Ràng buộc chặt. 10 • 11. Not Binding: Ràng buộc không chặt (ràng buộc lỏng). 2.3 CÁC LỰA CHỌN KHI GIẢI BÀI TOÁN QUY HOẠCH TUYẾN T ÍNH 2.3.1 Các lựa chọn Để thiết lập các thuộc tính cho Solver thì trong bảng Solver Parametersta nhấp chuột vào Options hộp thoại Solver Options cho ta các lựa chọn sau: Hình 2.9 Thiết lập các thuộc tính cho Solver Max Time: Thời gian tối đa để giải bài toán là 32.767 giây (mặc định là100 giây cho các bài toán đơn giản). Iterations: Số lần lặp tối đa để giải các bài toán là 32.767 lần(mặc định là100 lần). Precision: Độ chính xác của bài toán (từ 0 đến 1, mặc định là 0.000001,giá trị càng gần với 0 thì độ chính xác càng cao). Giá trị này điều chỉnh độ sai sốcho tập ràng buộc. Tolerance: Chỉ áp dụng đối với các bài toán có ràng buộc nguyên. Nhậpvào sai số có thể chấp nhận được. Sai số càng lớn thì tốc độ giải càng nhanh(mặc định là 5%) Convergence: Chỉ áp dụng đối với các bài toán không tuyến tính. Khi tỉsố của giá trị tính toán ban đầu của ô đích đến giá trị tính toán hiện hành ít hơngiá trị đồng quy Solver ngừng việc tìm kiếm dù có tìm thấy lời giải hay không. 11 • 12. Giá trị nằm trong khoảng từ 0 đến 1. Giá trị càng gần 0 thì độ chính xác càngcao và cần nhiều thời gian hơn (mặc định là 0.0001). Assume Linear Model: Khi tất cả quan hệ trong mô hình là tuyến tính thìchọn mục này để tăng tốc độ giải bài toán. Assume Non-Negative: Chọn tuỳ chọn này nếu muốn giả định tất cả cácbiến của bài toán đều không âm. Use Automatic Scaling: Chọn tuỳ chọn này khi ô đích và ô thay đổi có sựkhác nhau lớn. Solver sẽ tự động điều chỉnh các biến để tìm ra lời giải. Chẳnghạn như bài toán tối đa % lợi nhuận trên hàng triệu đồng vốn đầu tư. Show Iteration
  • 47. Results: Chọn tuỳ chọn này nếu muốn Solver tạm dừnglại và hiển thị kết quả sau mỗi lần lặp. Ba tính năng nâng cao điều khiển cho Solver: Estimates: Chọn phương pháp cho Solver ước lượng các biến - Tangent: Sử dụng cách xấp xỉ tuyến tính bậc nhất. - Quandratic: Sử dụng cách xấp xỉ bậc bốn. Derivatives: Chọn cách để ước lượng hàm mục tiêu và các ràng buộc - Forward: Dùng khi giá trị của các ràng buộc biến đổi chậm (đượcdùng phổ biến). - Central: Dùng khi giá trị của các ràng buộc biến đổi nhanh và khiSolver báo không thể cải tiến kết quả thu được. Search: Quy định giải thuật tìm kiếm kết quả cho bài toán - Newton: là phương pháp mặc định, sử dụng nhiều bộ nhớ và có số lầnlặp ít. - Conjugate: cần ít bộ nhớ hơn phương pháp Newton nhưng số lần lặpthì nhiều hơn. Được sử dụng khi giải các bài toán phức tạp và bộ nhớ máy tínhcó giới hạn. Save Model: Chọn nơi lưu mô hình bài toán. Sử dụng khi muốn lưu nhiềumô hình trên một worksheet. Mô hình đầu tiên đã được lưu tự động. Load Model: Xác định vùng địa chỉ của mô hình bài toán cần nạp vào. 12 • 13. 2.3.2 Hạn chế khi giải bài toán quy hoạch tuyến tính trong Excel Hạn chế của bài trình cài thêm Solver là chỉ giải được các bài toán có tối dalà 16 biến số. Mặt khác số lần lặp tối đa để giải bài toán là 32767, thời gian tối đađể giải bài toán là 32767…nên bên cạnh đ ó nó còn tồn tại một số mặt hạn chếnhất định về quy mô của bài toán và khó khăn trong việc tìm miền tối ưu. Đối với những bài toán tối ưu có quy mô lớn ta có thể sử dụng phần mềmLindo đây là một phần mềm tin học rất mạnh trong lĩnh vực này. 2.4 MỞ RỘNG BÀI TOÁN Việc ứng dụng mô hình QHTT trong quản lý kinh tế và quản trị doanhnghiệp là rất phổ biến. Chúng ta thường bắt gặp mô hình này trong các bài toánnhư: bài toán lập kế hoạch sản xuất tối ưu cho doanh nghiệp, bài toán phân bổvốn đầu tư, bài toán dự trữ…Tuy nhiên trong phần này xin trình bày ra đây 2loại bài toán QHTT thông dụng nhất là: bài toán nguyên vật liệu và bài toán vậntải. 2.4.1 Bài toán nguyên vật liệu Bài toán tổng quát Một nhà máy
  • 48. có khả năng sản xuất n loại sản phẩm. Để sản xuất các sảnphẩm này cần phải sử dụng m loại nguyên vật liệu. Biết rằng: aij là lượng nguyên vật liệu loại i cần thiết để sản xuất ra một đơn vị sảnphẩm loại j bi là dự trữ nguyên vật liệu loại i cj là lợi nhuận từ việc bán một đơn vị sản phẩm loại j với i = 1, m và j = 1, n Bài toán được mô tả theo bảng sau: S1 S2 … Sj … Sn Dự trữ NVL1 a11 a12 … a1j … a1n b1 NVL2 a21 a22 … a2j … a2n b2 … … … … … … … … 13 • 14. NVLi ai1 ai2 … aij … ain bi … … … … … … … … NVLm am1 am2 … amj … amn bm Lợi nhuận đơn vị c1 c2 … cj … cn Hãy tìm phương án sản xuất để tối đa hoá lợi nhuận. Bài giải: Gọi xj là lượng sản phẩm loại j mà nhà máy sẽ sản xuất nên x j ≥ 0 . Do đ ó phương án sản xuất của nhà máy là vectơ x=(x1, x2,…,xj,..,xn). Khi đ ó: n Tổng chi phí nguyên vật liệu loại i để sản xuất x là ∑a j =1 ij x j sẽ không vượt nquá dự trữ bi: ∑a j =1 ij x j ≤ bi n Tổng lợi nhuận thu được khi sản xuất x là ∑c x j =1 j j Vậy mô hình toán học của bài toán nguyên vật liệu có thể phát biểu theomô hình bài toán QHTT như sau: n Hàm mục tiêu: f(x)= ∑ c j x j → max j =1 n Các ràng buộc: ∑a j =1 ij x j ≤ bi , i = 1, m x j ≥ 0, j = 1, n Việc giải bài toán nguyên vật liệu trong Excel cũng bao gồm 2 bước: B1: Xây dựng bài toán (lập bài toán và tổ chức dữ liệu trên bảng tính). B2: Tiến hành giải bài toán bằng cách chạy Solver theo trình tự như trên. Ta xét một ví dụ cụ thể sau: Ví dụ 2.2 14 • 15. Một nhà máy dự định tiến hành sản xuất 5 loại sản phẩm Sj ( j = 1,5 ). Cả 5loại sản phẩm này đều sử dụng 4 loại nguyên vật liệu chính NVLi ( i = 1,4 ). Cómức tiêu hao nguyên vật liệu, lợi nhuận đơn vị thu được và giới hạn dự trữ nhưsau: S1 S2 S3 S4 S5 Dự trữ NVL1 2 5 6 8 4 1200 NVL2 3 1 5 6 1 800 NVL3 7 5 4 5 2 2000 NVL4 8 5 7 9 1 1865 Lợi nhuận đơn vị 300 250 500 150 320 Hãy xây dựng phương án sản xuất để nhà máy đạt được tổng lợi nhuậnlớn nhất. Bài giải: B1: Xây dựng bài toán Gọi xj với j=1,5 là sản lượng sản phẩm loại j sẽ sản xuất. (xj>=0) Nên phương án sản xuất của nhà máy là vectơ x = (x1, x2, x3 , x4, x5). Hàm mục
  • 49. tiêu: f(x) = 300x1 + 250x2 + 500x3 + 150x4 + 320x5 max Các ràng buộc: 2x1 + 5x2 + 6x3 + 8x4 + 4x5 <= 1200 3x1 + x2 + 5x3 + 6x4 + x5 <= 800 7x1 + 5x2 + 4x3 + 5x4 + 2x5 <= 2000 8x1 + 5x2 + 7x3 + 9x4 + x5 <= 1865 Bài toán được tổ chức trên bảng tính như sau: 15 • 16. Hình 2.10 Lập bài toán trên bảng tính B2: Giải bài toán: - Chọn ô G8 rồi thực hiện lệnh Tools Solver, điền đầy đủ thông tin vàohộp thoại Solver Parameters như sau: Hình 2.11 Khai báo các thông số của bài toán - Nhấn Solver để thực hiện việc chạy Solvers. Trong bảng hộp thoại kếtquả Solver Results tích chọn mục Keep Solver Solution và chọn thêm báo cáoAnswer Report ta nhận được kết quả: 16 • 17. Phương án tối ưu (phương án cực biên) là x = (200, 0, 0, 0, 200) vớif(x) max = 124 000. Hay phương án sản xuât tối ưu của nhà máy là sản xuất 200đơn vị sản phẩm 1 và 200 đơn vị sản phẩm 5 khi đ ó lợi nhuận tối ưu đạt được là124 000 đơn vị tiền tệ. Không có nguyên liệu nào bị lãng phí. 2.4.2 Bài toán vận tải Bài toán tổng quát: Có m kho hàng cùng chứa một loại hàng hoá, lượng hàng có ở kho i là ai(i = 1, m). Có n địa điểm tiêu thụ loại hàng nói trên, với nhu cầu tiêu thụ ở điểm j làbj ( j = 1, n ) . 17 • 18. Biết cij là cước phí vận chuyển một đơn vị hàng hoá từ kho i đến điểm tiêuthụ j. Bài toán được mô tả theo bảng sau: D1 D2 … Dj … Dn Dự trữ K1 c11 c12 … c1j … c1n a1 K2 c21 c22 … c2j … c2n a2 … … … … … … … … Ki ci1 ci2 … cij … cin ai … … … … … … … … Km cm1 cm2 … cmj … cmn am Nhu cầu tiêu thụ b1 b2 … bj … bn Hãy lập kế hoạch vận chuyển hàng từ các kho đến các điểm tiêu thụ saocho tổng chi phí vận chuyển là nhỏ nhất. Bài giải: Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = m, j = 1, n . Ta có: m n Tổng chi phí vận chuyển: ∑∑ c i =1 j =1 ij xij n Lượng hàng vận chuyển khỏi kho i: ∑x j =1 ij m Lượng hàng vận chuyển đến điểm tiêu thụ j: ∑x i =1 ij Như vậy mô
  • 50. hình toán học của bài toán vận tải có thể viết dưới dạng bàitoán QHTT như sau: m n Hàm mục tiêu: f(x) = ∑∑ c i =1 j =1 ij xij → min n Các ràng buộc: ∑x j =1 ij ≤ ai 18 • 19. m ∑x i =1 ij = bj xij ≥ 0, i = 1, m, j = 1, n Ta thấy ngay được điều kiện cần và đủ để bài toán vận tải có phương ántối ưu là tổng tất cả các lượng hàng tiêu thụ bằng tổng tất cả các lượng hàng ở m ncác kho, nghĩa là: ∑ ai = ∑ b j i =1 j =1 Cũng giống như bài toán nguyên vật liệu để tiến hành giải bài toán trongExcel ta cần phải trải qua 2 bước là: xây dựng bài toán và tiến hành chạySolver. Xét ví dụ cụ thể sau: Ví dụ 2.3 Sử dụng công cụ Solver như đã trình bày ở trên hãy lập phương án vậnchuyển xăng tối ưu từ 4 kho đến 5 trạm xăng bán lẻ của một công ty kinh doanhxăng dầu khu vực V. Bài giải: B1: Xây dựng bài toán Gọi xij là lượng hàng vận chuyển từ kho i đến điểm tiêu thụ j nênxij ≥ 0, i = 1,4, j = 1,5 . Hàm mục tiêu: f(x) = 30x11 + 27x12 + 26x13 + 9x14 + 23x15 + 13x21 + 4x22+ 22x23 + 3x24 + x25 + 3x31 + x32 + 5x33 + 4x34 + 24x35 + 16x41 + 30x42 + 17x43 +10x44 + 16x45 min Các ràng buộc: x11 + x12 + x13 + x14 + x15 <= 4 x21 + x22 + x23 + x24 + x25 <= 6 x31 + x32 + x33 + x34 + x35 <= 10 x41 + x42 + x43 + x44 + x45 <= 10 x11 + x21 + x31 + x41 <= 7 x12 + x22 + x32 + x42 <= 7 19 • 20. x13 + x23 + x33 + x43 <= 7x14 + x24 + x34 + x44 <= 7x15 + x25 + x35 + x45 <= 2Tổ chức dữ liệu trên bảng tính như sau: Hình 2.12 Tổ chức bài toán trên bảng tínhBước 2: Tiến hành giải bài toánChọn ô B16 rồi dùng lệnh ToolsSolver Hình 2.13 Khai báo các thông số của bài toán 20 • 21. Sau khi nhập đầy đủ thông tin vào bảng Solver Parameters ta chọnSolveKeep Solver Solution ,OK. Ta được bảng kết quả sau: Phân tích kết quả: Vậy phương án vận chuyển là: x = (0,0,0,4,0,0,4,0,0,2,7,3,0,0,0,0,0,7,3,0) Vì tổng lượng xăng dự trữ ở các kho bằng tổng nhu cầu xăng ở các trạm(30) nên phương án tìm được là phương án tối ưu. Chú ý 1: Nếu muốn có bảng kết quả chi
  • 51. tiết để phân tích thì trong bảngSolver Results ta chọn thêm mục Reports Answer (hoặcvà Sensitivity hoặcvàLimits) tuỳ thuộc vào mức độ chi tiết yêu cầu của bài. Chú ý 2: Đối với những bài toán chưa tìm được lời giải mong muốn ta cóthể thay đổi các thông số đầu vào của bài toán rồi chọn Tools Solver để tìm raphương án tối ưu. 2.5 ỨNG DỤNG EXCEL ĐỂ GIẢI HỆ PHƯƠNG TRÌNH TUYẾN T ÍNH 21 • 22. Dạng tổng quát của hệ phương trình tuyến tính là hệ m phương trình đạisố bậc nhất đối với n ẩn số: a11x1 + a12x2 +… +a1nxn = b1 a21x1 + a22x2 +… +a2nxn = b1 (*) …………………………… am1x1 + am2x2 +… +a1mxn = b1 với x1, x2,…, xn là các ẩn số; aij là hệ số ở phương trình thứ i của ẩn xj; bilà vế phải của phương trình. Khi m = n ta có hệ phương trình vuông với n phương trình n ẩn. Khi bi = 0 ta có một hệ thuần nhất. Toán học đã cung cấp cho chúng ta khá nhiều phương pháp để giải các hệphương trình tuyến tính như: phương pháp thế, phương pháp cộng đại số,phương pháp ma trận - định thức …Phần mềm Excel cũng cung cấp cho ta haicông cụ rất dễ dàng, nhanh chóng và chính xác để tiến hành giải hệ phương trìnhtuyến tính là: sử dụng trình cài thêm Solver và sử dụng kết hợp hai hàmMINVERSE và MMULT. 2.5.1 Giải hệ phương trình bằng Solver Ngoài ứng dụng để giải các bài toán QHTT Solver còn có thể ứng dụng đểgiải các bài toán về hệ phương trình. Khi đ ó chỉ có các ràng buộc dạng phươngtrình và không có hàm mục tiêu. Các bước tiến hành giải hệ phương trình hoàntoàn tương như khi giải bài toán QHTT. Để hiểu hơn ta tiến hành xét ví dụ sau: Ví dụ 2.4: Giải hệ phương trình sau: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Bước 1: Tổ chức dữ liệu vào bảng tính Nhập các hệ số, vế phải của phương trình và cho giá trị khởi động cho cácbiến vào bảng tính như hình sau: 22 • 23. Hình 2.14 Lập bài toán trên bảng tính Bước 2: Giải hệ phương trình Chọn Tools Solver, OK. Rồi tiến hành điền đầy đủ
  • 52. thông tin vào hộpthoại Solver Paraments (bỏ trống mục Set Target Cell). Hình 2.15 Khai báo các thông số của bài toán Sau khi điền đầy đủ thông tin ta nhấp Solve. Trong bảng hộp thoại SolverResults ta kiểm vào Keep Solver Solution để lưu kết quả trên bảng tính. 23 • 24. Hình 2.16 Chọn loại báo cáo Chọn OK để hoàn tất quá trình chạy Solver. Ta được bảng kết quả nhưsau: Vậy nghiệm tìm được của hệ phương trình là: x = 1, y= -1, z = 2. Không chỉ sử dụng Solver để giải hệ phương trình phần mềm Excel còncung cấp thêm một công cụ nữa để giải hệ phương trình bằng phương pháp matrận là sử dụng hàm MINVERSE và MMULT 2.5.2 Giải hệ phương trình bằng hàm MINVERSE và hàm MMULT Khi hệ phương trình (*) có m = n thì nó trở thành hệ vuông gồm nphương trình n ẩn. Khi đ ó ma trận hệ số A , ma trận biến X sẽ là một ma trậnvuông cấp n và ma trận của vế phải hệ phương trình B là: a11 a12 … a1n a11 a12 … a1n a21 a22 … a2n a21 a22 … a2n A= …………… X= …………… an1 an2 … ann an1 an2 … ann B = b1 b2 … bn Vậy hệ (*) được viết lại là: A * X = B (**) nên X = A-1 *B (***) 24 • 25. 2.5.1.1 Giới thiệu hàm MINVERSE và hàm MMULT Hàm MINVERSE Là hàm dùng để tìm ma trận nghịch đảo. Cú pháp: MINVERSE(array) array: là địa chỉ ma trận cần nghịch đảo. Ví dụ 2.5 Hàm MMULT Là hàm dùng để nhân 2 ma trận. Cú pháp: MMULT(array1, array2) array1, array2: là địa chỉ của các ma trận cần nhân. Ví dụ 2.6 Chú ý: - Nhấn tổ hợp phím Ctrl + Shift + Enter sau khi nhập xong côngthức. - Chỉ khi là ma trận vuông nếu không khi sử dụng hàm này sẽ báolỗi #VALUE!. - Nếu có phần tử nào trong ma trận là rỗng hoặc là chữ thì báo lối#VALUE!. 2.5.2.2 Giải hệ phương trình Quá trình giải hệ phương trình bằng phương pháp ma trận sử dụng haihàm MINVERSE và MMULT được tiến hành theo 3 bước sau: 25
  • 53. 26. Bước 1: Chuẩn bị bài toán: Nhập ma trận hệ số A, nhãn của ma trậnbiến X và ma trận số vế phải B của hệ phương trình. Bước 2: Tìm ma trận nghịch đảo của ma trận A: sử dụng hàmMINVERSE. Bước 3: Tìm nghiệm của hệ phương trình: sử dụng hàm MMULT. Để cụ thể hơn ta xét ví dụ 2.4 ở trên. Giải hệ phương trình: 2x1+ 4x2 + 3x3 = 4 3x1+ x2 - 2x3 = -2 4x1+ 11x2 + 7x3 = 7 Ta tiến hành giải như sau: Bước 1: Chuẩn bị bài toán: Ta tiến hành nhập ma trận hệ sốA, nhãn củama trận biến X và ma trận số vế phải B của hệ phương trình như hình sau: Bước 2: Tìm ma trận nghịch đảo của ma trận A Bước 3: Tìm nghiệm của hệ phương trình Vậy nghiệm của hệ phương trình là x =1, y =-1, z = 2. Nhận xét: Dù lựa chọn phương pháp giải nào cũng đều cho ta cùng mộtkết quả. 26 Search • Connect on LinkedIn • Follow us on Twitter • Find us on Facebook • Find us on Google+ • LEARN ABOUT US • About • Careers • Our Blog • Press • Contact us • Help & Support • USING SLIDESHARE • SlideShare 101 • Terms of Use • Privacy Policy • Copyright & DMCA • Community Guidelines • SlideShare on mobile • PRO & MORE • Go PRO new • Business Solutions • Advertise on SlideShare
  • 54. DEVELOPERS & API • Developers Section • Developers Group • Engineering Blog • Blog Widgets © 2012 SlideShare Inc. All rights reserved. RSS Feed • ENGLISH