Xây dựng ma trận của bài toán tối ƣu trên Excel

Một phần của tài liệu đồ án tốt nghiệp tổng quan nhà máy nghi sơn (Trang 55)

3.3.1 Cấu trúc ma trận của bài toán thƣờng gặp

Cấu trúc ma trận của một bài toán tối ưu thường gặp được mô tả trong bảng 3.1 như sau:

SVTH: Nguyễn Quốc Khải 40 Công nghệ kĩ thuật hóa học Cấu trúc biến Giá trị biến Dấu RHS Cân bằng sản phẩm và bán sản phẩm Ràng buộc khống chế chất lượng Các ràng buộc đặc biệt

Ràng buộc về khả năng sản xuất, lưu trữ HÀM KINH TẾ (MỤC TIÊU)

Cấu trúc biến và giá trị biến đặt theo các cột khác nhau, mỗi cột tương ứng với một biến với giá trị tương ứng nằm ngay ở hàng ên dưới mỗi cột.

Các hàng ên dưới liên quan đến ràng buộc: ràng buộc bán sản phẩm, sản phẩm nội bộ, ràng buộc liên quan đến chất lượng sản phẩm, ràng buộc đặc biệt liên quan đến tiêu thụ năng lượng của từng phân xưởng cũng như ràng uộc về khả năng sản xuất, lưu trữ.

Hàng cuối cùng là hàm mục tiêu.

Dấu và giá trị RHS (Right hand side) được đặt ở cột cuối cùng sau khi đã xác định hết tất cả các biến.

Cột “dấu” sẽ nhận giá trị “=”, “≤”, “≥” tương ứng với từng ràng buộc khác nhau, cũng như tương ứng với giá trị RHS của mỗi ràng buộc. Cụ thể là:

Đối với ràng buộc bán sản phẩm: “dấu” sẽ nhận giá trị “=” và “RHS” nhận giá trị tương ứng với nhu cầu của mỗi sản phẩm.

Đối với các ràng buộc liên quan đến tiêu chuẩn chất lượng sản phẩm cần lưu ý đến bài toán phối liệu theo phương pháp cộng tính. Mỗi tiêu chuẩn có một công

SVTH: Nguyễn Quốc Khải 41 Công nghệ kĩ thuật hóa học

thức phối trộn cộng tính khác nhau, có thể là cộng tính thể tích (RON, tỷ trọng, hàm lượng aromatic), cộng tính khối lượng (hàm lượng lưu huỳnh, khối lượng phân tử) hay cộng tính phần mol (áp suất hơi Reid RVP).

3.3.2 Xác định biến và ràng buộc cho bảng ma trận.

 Biến phân tách: CDU.

 Biến chuyển hóa: LPGRU, NHT, KHDS, GOHDS, RHDS, RFCC, Penex, InAlk, CCR, BTX, GASPA, SRU , PSA, H2 Plant, PPU, RFG, LOSSES.

 Biến phối trộn:

 LPG: C3LPG, C4LPG.

 Gasoline 95: C4MG95, Isomerate95, Lt GSL - RFCC95, Hvy GSL - RFCC95, BTX-NA95, Alkylate95.

 Gasoline 92: C4MG92,Isomerate92, Lt GSL - RFCC92, Hvy GSL - RFCC92, BTX-NA92, Alkylate92.

 AU – DO: KEHDSAUDO, DOHDSAUDO, DORHDSAUDO.

 IN – DO: KEHDSINDO, LCOINDO, DOHDSINDO, DORHDSINDO.

 FO: KEHDSFO, DOHDSFO, DORHDSFO, LCOFO, HvyAroFO, CLOFO .

 JET A1: KeroJET.

 Paraxylene: Paraxylene.

 Benzen: Benzen.

 Poly-propylene: Poly-propylene.

 Sulfur: Sulfur.

 Ràng buộc bán sản phẩm: CDU-naph, CDU-Kero, CDU-GO, CDU-RA, LPGRU-Naph, LPGRU-LPG, LPGRU-Sour FG, NHT-LNA, NHT-HNA, NHT-offgas, KHDS-Kero, KHDS-offgas, GOHDS-DO, GOHDS-naph, GOHDS-offgas, RHDS-DO, RHDS-RE, RHDS-naph, RHDS-offgas, RFCC- LCO, RFCC-CLO, RFCC-LNA, RFCC-HNA, RFCC-C3, RFCC-C4, RFCC- H2S, Isomerate, Alkylat, C4, CCR-Reformate, CCR-H2RG, H2 tong, H2-

SVTH: Nguyễn Quốc Khải 42 Công nghệ kĩ thuật hóa học

Rich Gas, CCR-LPG, BTX-NA, BTX-HyARO, BTX-Raffinate, BTX-Benz, BTX-Para, Fuel gas, C3, PSA-OG, Sulfur, Polypro, TAILGAS, .LOSSES. (adsbygoogle = window.adsbygoogle || []).push({});

 Ràng buộc về sản phẩm : LPG, Gasoline RON 95, Gasoline RON 92, Jet A1, Auto Diesel, Industial Diesel, FO, Benzen, Sulfur, Paraxylene, Polypropylene.

 Ràng buộc max: d15MG92-MAX, d15MG95-MAX, d15JETA1-MAX, d15AUDO-MAX, d15INDO-MAX, d15FO-MAX, RVP-LPGMAX, RVP- MG92MAX, RVP-MG95MAX, SLPGMAX, SMG92MAX, SMG95MAX, SJETA1MAX, SAUDOMAX, SINDOMAX, SFOMAX, AroMG92MAX, AroMG95MAX, PPI-AUDOMAX, PPI-INDOMAX, PPI-FOMAX, FPI- JETA1MAX, FPI-AUDOMAX, FPI-INDOMAX,FPI-FOMAX, CDU-MAX.

 Ràng buộc min: d15JETA1-MIN, d15AUDO-MIN, d15INDO-MIN, RONMG92MIN, RONMG95MIN, RVPMG92MIN, RVPMG95MIN, CDUMIN.

3.4. Phƣơng pháp khai báo và liên kết dữ liệu với Excel

Sau khi hoàn thành ma trận của bài toán trên bảng tính excel ta tiến hành khai báo trên phần mềm Lingo và liên kết dữ liệu với excel.

Thuật toán khai áo trên Lingo được viết như sau:

MODEL: SETS: BAN_SP : ZERO; SP_NB : NHU_CAU; RB_MAX : GT_MAX; RB_MIN: GT_MIN; TEN_BIEN :GT_BIEN,CHI_PHI; LINKS1(BAN_SP,TEN_BIEN) :VOLUME1; LINKS2(SP_NB,TEN_BIEN) :VOLUME2;

SVTH: Nguyễn Quốc Khải 43 Công nghệ kĩ thuật hóa học

LINKS3(RB_MAX,TEN_BIEN) :VOLUME3; LINKS4(RB_MIN,TEN_BIEN) :VOLUME4;

ENDSETS

Min=@SUM(TEN_BIEN(J):GT_BIEN(J)*CHI_PHI(J));

@FOR(BAN_SP(I): @SUM(TEN_BIEN(J): VOLUME1(I,J)*GT_BIEN(J))=ZERO(I)); @FOR(SP_NB(K): @SUM(TEN_BIEN(J): VOLUME2(K,J)*GT_BIEN(J))=NHU_CAU(K)); @FOR(RB_MAX(L): @SUM(TEN_BIEN(J): VOLUME3(L,J)*GT_BIEN(J))<=GT_MAX(L)); @FOR(RB_MIN(M): @SUM(TEN_BIEN(J): VOLUME4(M,J)*GT_BIEN(J))>=GT_MIN(M)); DATA: BAN_SP,ZERO,SP_NB,NHU_CAU,RB_MAX,GT_MAX,RB_MIN,GT_MIN,TE N_BIEN,CHI_PHI,VOLUME1,VOLUME2,VOLUME3,VOLUME4

=@OLE("D:\STUDY\khai\KHAI LAM\MAX GASOINLINE 98\MG 92-

95-

98.xlsx",'BAN_SP','ZERO','SP_NB','NHU_CAU','RB_MAX','GT_ MAX','RB_MIN','GT_MIN','TEN_BIEN',

'CHI_PHI','VOLUME1','VOLUME2','VOLUME3','VOLUME4');

@OLE("D:\STUDY\khai\KHAI LAM\MAX GASOINLINE 98\MG 92-95-

98.xlsx",'GT_BIEN')=GT_BIEN;

ENDDATA END

SVTH: Nguyễn Quốc Khải 44 Công nghệ kĩ thuật hóa học

3.5 Giải tối ƣu bằng Lingo và trao đổi kết quả

Sau khi chạy phần mềm Lingo, phần mềm sẽ tìm ra một giá trị tối ưu kèm theo các thông số khác giúp ta phân tích các kết quả tìm được, đồng thời phần mềm cũng sẽ trao đổi kết quả với bảng tính Excel cho ta các hệ số tại các ô giá trị biến và giá trị của hàm mục tiêu.

Các chỉ tiêu kinh tế của sự nâng cao giá trị sản phẩm.

Mục đích:

 Đánh giá và so sánh nhanh vào thời điểm hiệu quả kinh tế của các phương án hoạt động khác nhau của một nhà máy lọc dầu.

 Tối đa lợi nhuận của thời điểm khảo sát.

Ngu n tắc:

 Dựa trên mức độ hoạt động cơ sở.

 Chi phí cố định được trang trải đủ ở mức hoạt động cơ sở.

 Giá trị của các phương án hoạt động khác nhau được tính từ mức độ hoạt động cơ sở và chỉ xét các chi phí iến đổi đi kèm. (adsbygoogle = window.adsbygoogle || []).push({});

Phương ph p tiếp cận:

 Xác định trường hợp cơ sở.

 Liệt kê các phương án hoạt động có thể có ằng cách sử dụng khả năng uyển chuyển của nhà máy và các ràng uộc.

 Đánh giá hiệu quả kinh tế của các phương án khác nhau:

 Cân ằng vật chất và các sự thay đổi đi kèm với sản phẩm xem xét.

 Chi phí iến đổi đi kèm.

 Giá trị của sản phẩm theo cơ chế tái cân ằng của nhà máy lọc dầu.

SVTH: Nguyễn Quốc Khải 45 Công nghệ kĩ thuật hóa học

CHƢƠNG 4: KẾT QUẢ TÍNH TOÁN TỪ LINGO – PHÂN TÍCH VÀ NHẬN XÉT

4.1 Ý nghĩa các giá trị hiển thị từ phần mêm Lingo

4.1.1 Ý nghĩa các giá trị “Variable, Value, Reduce Cost”

Global optimal solution found at step: 38 Objective value: 0.1907981E+08

Export Summary Report ---

Transfer Method: OLE BASED

Spreadsheet: D:\STUDY\khai\KHAI LAM\MAX GASOINLINE 95\MG92- 95.xlsx

Ranges Specified: 1 GT_BIEN

Ranges Found: 1 Range Size Mismatches: 0 Values Transferred: 83

Variable Value Reduced Cost ZERO( CDU_NAPH) 0.0000000 0.0000000 ZERO( CDU_KERO) 0.0000000 0.0000000 ZERO( CDU_GO) 0.0000000 0.0000000

Hình phụ lục 1: Bảng Reduced Cost

Variable: Tên biến.

Value: Giá trị biến.

Reduced Cost: Trong báo cáo kết quả của bảng tính Lingo ta sẽ thấy một

con số Reduced Cost ứng với mỗi biến số. Giá trị này có 2 ý nghĩa tương đương như sau:

 Thứ nhất có thể hiểu Reduced Cost như là số lượng mà hệ số hàm mục tiêu của biến số phải cải thiện trước khi nó trở nên có lợi cho biến số đang đề cập một giá trị dương trong kết quả tối ưu. Ví dụ: Nếu một biến có giá trị Reduced Cost là 10, thì hệ số hàm mục tiêu của biến số đó cần tăng lên 10 đơn vị trong trường hợp bài toán Max, và cần phải giảm 10 đơn vị trong ài toán Min để biến số đó trở thành một lựa chọn hấp dẫn để đi tới giải pháp.

SVTH: Nguyễn Quốc Khải 46 Công nghệ kĩ thuật hóa học

 Thứ hai, có thể hiểu Reduced Costlà số tiền phạt cần phải trả để đưa một đơn vị của biến số này đi đến giải pháp. Ví dụ, nếu giá trị Reduced Cost là 10, có nghĩa là cần phải trả tiền phạt là 10 đơn vị để đưa iến số đến giải pháp. Nói cách khác giá trị của hàm mục tiêu sẽ giảm 10 đơn vị trong bài toán Max và sẽ tăng 10 đơn vị trong bài toán Min.

Một biến số đạt được giá trị trong giải pháp tối ưu, như trong trường hợp STANDARD hoặc TURBO, sẽ tự động có giá trị Reduced Cost bằng 0. Reduced Cost chỉ có giá trị trong một phạm vi nhất định.

4.1.2 Slack or Surplus

Row Slack or Surplus Dual Price 1 0.1907981E+08 1.000000 2 0.0000000 -979.7611 3 0.0000000 -995.6679 4 0.0000000 -894.8080 5 0.0000000 -847.8875 6 0.0000000 -1172.815 7 0.0000000 -856.9505 8 0.0000000 -61.42458 9 0.0000000 -977.8272

Hình phụ lục 2: Bảng Slack or Surplus, Dual Price (adsbygoogle = window.adsbygoogle || []).push({});

Cột Slack or Sulplus trong bảng báo cáo kết quả của Lingo cho biết bạn đã gần đáp ứng các ràng buộc về tính cân bằng như thế nào. Nếu giá trị này nhỏ hơn hoặc bằng (≤) các ràng uộc thì ta gọi là slack, còn nếu giá trị này lớn hơn hoặc bằng (≥) các ràng buộc thì gọi là surplus.

Nếu một ràng buộc thõa mãn chính xác về tính cân bằng thì giá trị slack or surphus sẽ bằng không. Nếu ràng buộc này bị vi phạm, được hiểu như giải pháp bất khả thi, thì giá trị slack or surphus sẽ âm. Hiểu được điều này có thể giúp bạn tìm ra những ràng buộc vi phạm trong mô hình không thể giải được, trong mô hình này không tồn tại một tập hợp giá trị biến số mà những biến số này đồng thời thỏa mãn

SVTH: Nguyễn Quốc Khải 47 Công nghệ kĩ thuật hóa học

tất cả các ràng buộc. Những ràng buộc Nonbinding (những ràng buộc với giá trị slack or surplus lớn hơn 0) sẽ có giá trị dương, khác không trong cột này.

4.1.3 Dual price

Trong bản báo cáo kết quả của Lingo cũng đưa ra một giá trị dual price với mỗi ràng buộc. Bạn có thể hiểu dual price như là số lượng mà hàm mục tiêu cần phải thay đổi khi giá trị RHS (Right Hand Side) của ràng buộc bị tăng thêm một đơn vị.

Chú ý rằng “thay đổi” là một khái niệm tương đối. Trong ài toán Max, thay đổi nghĩa là giá trị của hàm mục tiêu sẽ tăng, trong ài toán Min, giá trị của hàm mục tiêu sẽ giảm nếu bạn tăng RHS của ràng buộc với một dual price dương.

Dual price đôi khi được gọi là shadow prices, bởi vì nó cho bạn biết bạn cần trả thêm ao nhiêu đơn vị.

4.1.4 Lingo/Range

Ranges in which the basis is unchanged: Objective Coefficient Ranges

Current Allowable Allowable Variable Coefficient Increase Decrease GT_BIEN( KW_CR) 697.0000 183.9132 INFINITY GT_BIEN( CDU_NAPH) 0.0 972.0569 INFINITY GT_BIEN( NHT_OFFGAS) 0.0 97335.68 120435.5 GT_BIEN( KHDS_OFFGAS) 0.0 465940.7 INFINITY GT_BIEN( GOHDS_NAPH) 0.0 29941.66 4215.485 GT_BIEN( GOHDS_OFFGAS) 0.0 8882.215 1250.527 GT_BIEN( RHDS_NAPH) 0.0 14594.52 INFINITY GT_BIEN( RHDS_OFFGAS) 0.0 6345.443 INFINITY

Hình phụ lục 3: Bảng Range Report.

Sử dụng câu lệnh Range để xuất hiện bảng Range Report, bảng báo cáo này thể hiện phạm vi bạn có thể:

 Thay đổi một hệ số trong hàm mục tiêu mà không gây ra thay đổi của bất kỳ giá trị tối ưu của biến số quyết định.

 Thay đổi hệ số của RHS mà không gây ra thay đổi của bất kỳ giá trị tối ưu của Dual Price hoặc Reduced Cost.

SVTH: Nguyễn Quốc Khải 48 Công nghệ kĩ thuật hóa học

Trong phần đầu tiên của bảng áo cáo là tiêu đề « Objective Coefficient Ranges », trong đó:

 Cột đầu tiên là tên biến (Variable);

 Cột tiếp theo « Current Coefficient », liệt kê các hệ số hiện tại của biến số trong hàng mục tiêu.

 Cột tiếp theo « Allowable Increase », liệt kê khoảng cho phép mà chúng ta có thể tăng hệ số của hàm mục tiêu mà không thay đổi những giá trị tối ưu của biến số.

 Cột cuối cùng, Allowable Decrease, liệt kê khoảng cho phép mà hệ số hàm mục tiêu của biến số có thể giảm trước khi giá trị tối ưu của các biến số thay đổi.

Phần thứ hai của bản áo cáo có tiêu đề Righthand Side Ranges, trong đó:

 Cột đầu tiên « Row », liệt kê tên của tất cả các hàng tối ưu, hoặc các ràng buộc, trong mô hình.

 Cột thứ hai, « Current RHS », là giá trị hiện tại ở cột RHS cho mỗi hàng.

 Cột tiếp theo « Allowable Increase » và « Allowable Decrease », cho chúng ta biết chúng ta có thể tăng hoặc giảm giá trị RHS một lượng ao nhiêu mà hoàn toàn không làm thay đổi những giá trị tối ưu của Dual Price và Reduced.

4.2 Phân tích kết quả

SVTH: Nguyễn Quốc Khải 49 Công nghệ kĩ thuật hóa học

Hình 4.1 : Kết quả chạy tối ƣu trƣờng hợp Max gasoline phối trộn tạo MG92/95

Khi chạy được kết quả tối ưu, phần mềm Lingo sẽ áo “Glo al Opt”. Còn khi không tìm ra phương án tối ưu, phần mềm sẽ áo “ Undetermined”.

Ngoài kết quả về giá trị tối thiểu của hàm kinh tế, trong bản báo cáo kết quả của Lingo cũng đưa ra một giá trị dual price với mỗi ràng buộc, phân tích kết quả ta thấy rằng: (adsbygoogle = window.adsbygoogle || []).push({});

Global optimal solution found.

Objective value: 19.079.810

Tức là chi phí tối thiểu để nhà máy sản xuất ra các sản phẩm LPG, Xăng MG92/95, JETA1, AU.DO, IN.DO, FO, Benzene, Paraxylene, Poly-propylene, Sulphur đáp ứng tất cả các ràng buộc của bài toán là 19,079,810 USD/ngày.

Khi nhu cầu tăng th m một tấn LPG/ngày

Row Slack or Surplus Dual Price 49 LPG 0.0000000 -903.6800

Ta thấy rằng nếu nhu cầu tăng thêm một tấn LPG/ngày thì hàm kinh tế sẽ tăng lên 903.68 USD, hay nói cách khác chi phí tối thiểu cần phải trả thêm của hàm

SVTH: Nguyễn Quốc Khải 50 Công nghệ kĩ thuật hóa học

mục tiêu để sản xuất thêm 1 tấn LPG/ngày là 903.68 USD. Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.710

Khi nhu cầu cần tăng th m một tấn xăng MG95/ngày

Row Slack or Surplus Dual Price 50 MG95 0.0000000 -998.9900

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.810

Khi nhu cầu cần tăng th m một tấn xăng MG92/ngày

Row Slack or Surplus Dual Price 51 MG92 0.0000000 -999.0051

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.810

Khi nhu cầu tăng th m một tấn JetA1/ngà

Row Slack or Surplus Dual Price 52 JETA1 0.0000000 -1007.815

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.830

SVTH: Nguyễn Quốc Khải 51 Công nghệ kĩ thuật hóa học

Row Slack or Surplus Dual Price 53 AU-DO 0.0000000 -921.3300

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.730 (adsbygoogle = window.adsbygoogle || []).push({});

Khi nhu cầu cần tăng th m một tấn IN.DO/ngày

Row Slack or Surplus Dual Price 54 IN-DO 0.0000000 -919.7226

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.730

 Khi nhu cầu tăng th m một tấn FO/ngày

Row Slack or Surplus Dual Price 55 FO 0.0000000 -572.2130

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.080.380

Khi nhu cầu cần tăng th m một tấn Benzene/ngày

Row Slack or Surplus Dual Price 56 BENZEN 0.0000000 -1318.455

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

SVTH: Nguyễn Quốc Khải 52 Công nghệ kĩ thuật hóa học

Khi nhu cầu cần tăng th m một tấn Sulphur/ngày

Row Slack or Surplus Dual Price

57 SULPHUR 0.0000000 -65.30500

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.079.870

Khi nhu cầu cần tăng th m một tấn Paraxylene/ngày

Row Slack or Surplus Dual Price 58 PARAXYLENE 0.0000000 -1572.615

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found.

Objective value: 19.081.380

Khi nhu cầu cần tăng th m một tấn Polypropylene/ngày

Row Slack or Surplus Dual Price 59 POLY.PRO 0.0000000 -1810.890

Chạy lại kết quả tối ưu cho ta thấy rõ điều đó:

Global optimal solution found. (adsbygoogle = window.adsbygoogle || []).push({});

Objective value: 19.081.620

4.2.1.1 Phạm vi thay đổi giá trị các hệ số của hàm mục tiêu mà không làm thay đổi bất kì giá trị tối ưu của biến số quyết định

- Phạm vi thay đổi giá của dầu thô Kuwait:

Ranges in which the basis is unchanged: Objective Coefficient Ranges

Một phần của tài liệu đồ án tốt nghiệp tổng quan nhà máy nghi sơn (Trang 55)