1. Giới thiệu 1.1. Bài toán thù bên xuất bản 1.2. Bài toán canh tác 1.3. Bài toán đóng thùng 2. Nhắc lại bài toán thù buổi tối ưu 3. Bài toán tối ưu lồi 4. Linear Programming 5. Quadratic Programming 6. Geometric Programming

Quý Khách được khuyến nghị phát âm Bài 16 trước khi phát âm bài này. Nội dung trong nội dung bài viết này đa số được dịch tự Cmùi hương 4 của cuốn nắn Convex Optimization vào phần Tài liệu tìm hiểu thêm.Quý khách hàng vẫn xem: Linear programming là gì.

Bạn đang xem: Linear programming là gì

Bài này cũng có tương đối nhiều có mang new và những lý thuyết yêu cầu có thể ko thu hút như những bài xích không giống. Tuy nhiên, tôi cần thiết bỏ lỡ do không thích chúng ta hoàn toàn mất phương hướng lúc gọi những bài xích sau.

quý khách gọi rất có thể coi phiên bản pdf trên đây.

1. Giới thiệu

Tôi xin bước đầu bài viết này bằng ba bài bác tân oán khá ngay sát cùng với thực tế:

1.1. Bài toán nhà xuất bản

Bài toán

Một đơn vị xuấn bản (NXB) nhận ra giao dịch 600 phiên bản của cuốn “Machine Learning cơ bản” tới Thái Bình cùng 400 phiên bản cho tới Hải Phòng Đất Cảng. NXB kia gồm 800 cuốn ở kho Nam Định với 700 cuốn làm việc kho Hải Dương. Giá đưa phạt một cuốn sách từ bỏ Tỉnh Nam Định cho tới Tỉnh Thái Bình là 50,000 VND (50k), tới Hải Phòng Đất Cảng là 100k. Giá đưa phân phát một cuốn nắn từ bỏ Hải Dương tới Tỉnh Thái Bình là 150k, trong khi tới TPhường. Hải Phòng chỉ nên 40k. Hỏi để tốn không nhiều ngân sách đưa phát nhất, cửa hàng kia yêu cầu phân phối hận từng kho đưa bao nhiêu cuốn nắn tới mỗi địa điểm?

Phân tích

Để mang lại dễ dàng, ta xây dừng bảng con số đưa sách từ bỏ mối cung cấp tới đích nlỗi sau:

Nguồn Đích Đơn giá bán ((imes)10k) Số lượng
Nam Định Thái Bình 5 (x)
Nam Định Hải Phỏng 10 (y)
Hải Dương Thái Bình 15 (z)
Hải Dương Hải Phòng 4 (t)

Tổng chi phí (objective function) vẫn là (f(x, y, z, t) = 5x + 10y + 15z + 4t). Các ĐK buộc ràng (constraints) viết dưới dạng biểu thức toán thù học là:

Chuyển 600 cuốn nắn cho tới Thái Bình: (x + z = 600).

Chuyển 400 cuốn tới Hải Phòng: (y + t = 400).

Lấy từ bỏ kho Nam Định không quá 800: (x + y leq 800).

Lấy tự kho Hải Dương không quá 700: (z + t leq 700).

(x, y, z, t) là các số tự nhiên và thoải mái. Ràng buộc là số thoải mái và tự nhiên sẽ khiến cho bài xích tân oán rất khó giải nếu như con số phát triển thành là không hề nhỏ. Với bài toán này, ta mang sử rằng (x, y, z, t) là các số thực dương. Khi kiếm được nghiệm, giả dụ bọn chúng chưa phải là số tự nhiên và thoải mái, ta đã đem những quý hiếm tự nhiên và thoải mái gần nhất.

Vậy ta yêu cầu giải bài toán về tối ưu sau đây:

Bài toán thù NXB:

Nhận thấy rằng hàm kim chỉ nam (objective sầu function) là 1 trong hàm tuyến đường tính của những đổi mới (x, y, z, t). Các ĐK buộc ràng đều phải sở hữu dạng hyperplanes hoặc haflspaces, đa số là những buộc ràng tuyến đường tính (linear constraints). Bài toán thù tối ưu đối với cả objective sầu function cùng constraints hầu như là linear được gọi là Linear Programming (LP). Dạng tổng thể cùng cách thức lập trình sẵn để giải một bài toán thù nằm trong nhiều loại này sẽ được cho vào phần sau của bài viết này.

Nghiệm mang lại bài xích toán thù này rất có thể nhận thấy ngay là (x = 600, y = 0, z = 0, t = 400). Nếu buộc ràng nhiều hơn thế cùng số trở thành nhiều hơn thế nữa, chúng ta cần một lời giải rất có thể tính được bằng phương pháp thiết kế.

1.2. Bài tân oán canh tác

Bài toán

Một anh dân cày bao gồm tổng số 10ha (10 hecta) khu đất canh tác. Anh dự tính trồng cà phê và hồ tiêu bên trên số khu đất này với tổng chi phí mang lại Việc trồng này là không thực sự 16T (triệu đồng). Ngân sách chi tiêu để tdragon cà phê là 2T mang đến 1ha, nhằm trồng hồ tiêu là 1T/ha/. Thời gian tLong coffe là 1 ngày/ha và hồ tiêu là 4 ngày/ha; trong những lúc anh chỉ có thời gian tổng cộng là 32 ngày. Sau lúc trừ toàn bộ các chi phí (bao gồm ngân sách tLong cây), từng ha cà phê mang lại lợi nhuận 5T, mỗi ha hồ tiêu đưa về ROI 3T. Hỏi anh yêu cầu trồng ra làm sao để buổi tối đa lợi nhuận? (Các số liệu có thể vô lý bởi vì bọn chúng đã có được lựa chọn để bài tân oán ra nghiệm đẹp)

Phân tích

điện thoại tư vấn (x) cùng (y) thứu tự là số ha coffe và hồ tiêu mà anh dân cày cần trồng. Lợi nhuận anh ấy chiếm được là (f(x, y) = 5x + 3y) (triệu đồng).

Các ràng buộc vào bài xích tân oán này là:

Tổng diện tích S trồng không vượt thừa 10: (x + y leq 10).

Tổng ngân sách tdragon không vượt quá 16T: (2x + y leq 16).

Tổng thời gian tLong không vượt quá 32 ngày: (x + 4y leq 32).

Diện tích coffe và hồ nước tiêu là những số ko âm: (x, y geq 0).

Vậy ta bao gồm bài xích toán về tối ưu sau đây:

Bài toán canh tác:

Bài tân oán này tương đối không giống một chút là ta buộc phải về tối đa hàm mục tiêu cầm cố bởi vì về tối thiểu nó. Việc gửi bài bác toán thù này về bài toán về tối thiểu có thể được triển khai dễ dàng bằng cách thay đổi lốt hàm phương châm. Lúc kia hàm phương châm vẫn luôn là linear, những ràng buộc vẫn là các linear constraints, ta lại sở hữu một bài bác toán thù Linear Programming (LP) nữa.

quý khách cũng hoàn toàn có thể phụ thuộc vào hình minch hoạ tiếp sau đây nhằm suy ra nghiệm của bài bác toán:


*

Vùng color xám bao gồm dạng polyhedron (trong trường đúng theo này là đa giác) đó là tập đúng theo những điểm hợp ý những ràng buộc từ (8)) mang lại ((11)). Các con đường đường nét đứt có màu sắc chính là các mặt đường đồng nấc của hàm mục tiêu (5x + 3y), từng mặt đường ứng với một quý giá không giống nhau cùng với mặt đường càng đỏ ứng với giá trị càng tốt. Một cách trực quan lại, nghiệm của bài toán rất có thể kiếm được bằng cách di chuyển đường đường nét đứt màu xanh về phía bên buộc phải (phía tạo nên quý hiếm của hàm mục tiêu béo hơn) cho đến lúc nó không hề điểm thông thường cùng với các giác color xám nữa.

cũng có thể nhận thấy nghiệm của bài bác toán đó là điểm blue color là giao điểm của hai đường trực tiếp (x + y = 10) và (2x + y = 16). Giải hệ phương trình này ta có (x^* = 6) với (y^* = 4). Tức anh dân cày cần tdragon 6ha coffe cùng 4ha hồ tiêu. Lúc kia lợi tức đầu tư nhận được là (5x^* + 3y^* = 42 ) triệu đồng, trong lúc anh chỉ mất thời hạn là 22 ngày. (Chịu đựng tính tân oán dòng là khác ngay, có tác dụng ít, hưởng nhiều).

Đây chính là bí quyết giải trong sách toán thù lớp 10 (ngày tôi học lớp 10).

Với những biến hơn cùng nhiều buộc ràng hơn, chúng ta liệu hoàn toàn có thể vẽ được hình như vậy này để xem ra nghiệm hay không? Câu trả lời của tớ là bắt buộc search một cơ chế để với tương đối nhiều đổi mới rộng và cùng với các ràng buộc không giống nhau, chúng ta có thể tìm thấy nghiệm gần như ngay lập tức.

1.3. Bài toán đóng thùng

Bài toán

Một cửa hàng yêu cầu chuyển 400 (m^3) cát cho tới vị trí desgin sinh hoạt bên kia sông bằng cách mướn một dòng xà lan. Ngoài chi phí chuyển vận một lượt trở về là 100k của cái xà lan, đơn vị đó yêu cầu xây đắp một thùng hình vỏ hộp chữ nhật đặt lên xà lan nhằm đựng cát. Chiếc thùng này sẽ không đề nghị nắp, ngân sách cho các mặt bao bọc là 1T/(m^2), đến dưới đáy là 2T/(m^2). Hỏi kích thước của loại thùng đó như thế nào nhằm tổng ngân sách chuyển vận là nhỏ tuổi duy nhất. Để mang lại đơn giản, giả sử mèo chỉ được đổ ngang hoặc tốt hơn cùng với phần bên trên của thành thùng, không có ngọn gàng. Giả sử thêm rằng xà lan rộng vô hạn và cất được sức nặng trĩu vô hạn, mang sử này khiến bài bác toán dễ giải rộng.

Phân tích

Giả sử mẫu thùng đề xuất làm bao gồm chiều dài là (x) ((m)), chiều rộng lớn là (y) và độ cao là (z). Thể tích của thùng là (xyz) (đơn vị chức năng là (m^3)). Có hai nhiều loại ngân sách là:

Chi phí mướn xà lan: số chuyến xà lan yêu cầu thuê là (frac400xyz) (ta hãy tạm giả sử rằng đó là một số trong những tự nhiên và thoải mái, việc làm cho tròn này sẽ không biến đổi công dụng đáng chú ý vị ngân sách vận chuyển một chuyến là nhỏ dại so với chi phí làm cho thùng). Số tiền bắt buộc trả mang lại xà lan đã là (0.1frac400xyz = frac40xyz).

Ngân sách chi tiêu có tác dụng thùng: Diện tích bao bọc của thùng là (2 (x + y)z ). Diện tích đáy là (xy). Vậy tổng chi phí làm cho thùng là (2(x +y)z + 2xy = 2(xy + yz + zx)).

Tổng toàn thể ngân sách là (f(x, y, z) = 40x^-1y^-1z^-1 + 2(xy + yz + zx)). Điều kiện ràng buộc nhất là form size thùng đề xuất là các số dương. Vậy ta bao gồm bài tân oán tối ưu sau:

Bài toán thù vận chuyển: 0 ~~~~ (14)endeqnarray>

Nhận thấy rằng bài bác này trọn vẹn hoàn toàn có thể sử dụng bất đẳng thức Cauchy để giải được, nhưng tôi vẫn muốn một giải thuật cho bài xích toán thù tổng quát làm thế nào để cho rất có thể xây dựng được.

Xem thêm: Chứng Chỉ Tiếng Anh: Toeic, Ielts, Cefr Level Là Gì ? TiếNg Anh K12

(Lời giải:3200endeqnarray>vết bởi xảy ra khi và chỉ Lúc (x = y = z = sqrt10). Bài này chắc rằng hợp với những kỳ thi vì chưng dữ kiện quá đẹp nhất. Cá nhân tôi thích các đề bài xích ra kiểu dáng này rộng là đề xuất đi tìm cực hiếm nhỏ tuổi độc nhất của một biểu thức buốn chán, các học viên cho rằng chần chừ học tập bất đẳng thức để làm gì!)

Nếu có những ràng buộc về kích thước của thùng và trọng lượng nhưng mà xà lan sở hữu được thì có thể tìm được giải thuật đơn giản và dễ dàng như thế này không?

Những bài xích toán thù bên trên trên đây số đông là các bài bác toán buổi tối ưu. Chính xác không chỉ có thế, bọn chúng các là những bài tân oán về tối ưu lồi (convex optimization problems) nlỗi các bạn sẽ thấy ở đoạn sau. Và việc tìm và đào bới giải mã có thể không mấy trở ngại, thậm chí giải thủ công cũng rất có thể ra hiệu quả. Tuy nhiên, mục tiêu của bài viết này chưa hẳn là phía dẫn các bạn giải những bài bác toán thù bên trên bởi tay, mà là phương pháp thừa nhận diện các bài bác toán thù cùng chuyển chúng về các dạng cơ mà những toolboxes sẵn tất cả hoàn toàn có thể giúp bọn họ. Trên thực tiễn, lượng dữ kiện cùng số vươn lên là cần buổi tối ưu to hơn những, họ chẳng thể giải những bài xích toán thù trên bởi tay được.

Trước không còn, bọn họ bắt buộc phát âm những quan niệm về convex optimization problems cùng vì sao convex lại quan trọng đặc biệt. (quý khách hiểu hoàn toàn có thể hiểu tới phần 4 còn nếu không ao ước biết các khái niệm với định lý toán vào phần 2 với 3.)

2. Nhắc lại bài xích tân oán buổi tối ưu

2.1. Các có mang cơ bản

Tôi xin nhắc lại bài xích tân oán tối ưu ở dạng tổng quát:

Phát biểu bởi lời: Tìm quý giá của trở thành (mathbfx) để về tối thiểu hàm (f_0(mathbfx)) trong những những quý hiếm của (mathbfx) ưng ý những điệu hiện nay ràng buộc. Ta gồm bảng những tên gọi giờ Anh và tiếng Việt như sau:

Ký hiệu Tiếng Anh Tiếng Việt
(mathbfx in mathbbR^n) optimization variable phát triển thành tối ưu
(f_0: mathbbR^n ightarrow mathbbR) objective/los/cost function hàm mục tiêu
(f_i(mathbfx) leq 0 ) inechất lượng constraints bất đẳng thức ràng buộc
(f_i: mathbbR^n ightarrow mathbbR) inechất lượng constraint functions -
(h_j(mathbfx) = 0 ) echất lượng constraints đẳng thức ràng buộc
(h_j: mathbbR^n ightarrow mathbbR) echất lượng constraint functions -
(mathcalD = igcap_i=0^m extdomf_i cap igcap_pj=1^p extdomh_i ) domain tập xác định

Ngoài ra:

Lúc (m = p = 0), bài xích toán thù ((15)) được Gọi là unconstrained optimization problem (bài toán thù buổi tối ưu không ràng buộc).

(mathcalD) chỉ cần tập khẳng định, tức giao của tất cả những tập xác minh của rất nhiều hàm số xuất hiện thêm vào bài bác toán thù. Tập hòa hợp các điểm hợp ý đầy đủ ĐK ràng buộc, thông thường, là 1 trong tập bé của (mathcalD) được gọi là feasible set hoặc constraint set. lúc feasible set là một trong tập trống rỗng thì ta nói bài toán về tối ưu ((15)) là infeasible. Nếu một điểm nằm trong feasible set, ta hotline điểm này là feasible.

2.2. Optimal & locally optimal points

Một điểm (mathbfx^*) được hotline là 1 điểm optimal point (điểm buổi tối ưu), Hay là nghiệm của bài bác toán thù ((15)) trường hợp (mathbfx^*) là feasible và (f_0(mathbfx^*) = p^*). Tất thích hợp tất cả những optimal points được Hotline là optimal set.

Nếu optimal set là một tập không rỗng, ta nói bài toán thù ((15)) là solvable (giải được). trái lại, trường hợp optimal set là một trong tập trống rỗng, ta nói optimal valuequan yếu đạt được (not attained/ not achieved).

Ví dụ: xét hàm phương châm (f(x) = 1/x) cùng với buộc ràng (x > 0). Optimal value của bài bác toán thù này là (p^* = 0) tuy nhiên optimal set là một trong tập trống rỗng vì chưng không tồn tại cực hiếm như thế nào của (x) để hàm phương châm đạt cực hiếm 0. Trong thời điểm này ta nói quý hiếm về tối ưuko đạt được.

Với hàm một biến hóa, một điểm là rất tiểu của một hàm số giả dụ tại kia, hàm số đạt quý hiếm bé dại tuyệt nhất trong một bên cạnh (với bên cạnh này nằm trong tập khẳng định của hàm số). Trong không khí 1 chiều, lạm cận được phát âm là trị tuyệt về tối của hiệu 2 điểm nhỏ rộng một quý hiếm nào đó.

Trong tân oán buổi tối ưu (thường xuyên là không khí nhiều chiều), ta Gọi một điểm (mathbfx) là locally optimal (cực tiểu) giả dụ sống thọ một giá trị (thường được điện thoại tư vấn là bán kinh) (R) sao cho:

Nếu một điểm feasible (mathbfx) ưng ý (f_i(mathbfx) = 0), ta nói rằng bất đẳng thức buộc ràng lắp thêm (i: f_i(mathbfx) = 0) là active. Nếu (f_i(mathbfx)

2.3. Một vài ba lưu giữ ý

Mặc mặc dù trong quan niệm bài tân oán tối ưu ((15)) là mang lại bài tân oán tối thiểu hàm mục tiêu cùng với những ràng buộc đống ý các điều kiện nhỏ dại rộng hoặc bằng 0, các bài toán thù tối ưu với về tối nhiều hàm mục tiêu với điều kiện ràng buộc ngơi nghỉ dạng khác đều rất có thể mang đến được dạng này:

(max f_0(mathbfx) Leftrightarrowmin -f_0(mathbfx) ).

(f_i(mathbfx) leq g(mathbfx) Leftrightarrow f_i(mathbfx) - g(mathbfx) leq 0).

(f_i(mathbfx) geq 0 Leftrightarrow -f_i(mathbfx) leq 0 ).

(a leq f_i(mathbfx) leq b Leftrightarrow f_i(mathbfx) -b leq 0) và (a - f_i(mathbfx) leq 0).

(f_i(mathbfx) leq 0 Leftrightarrow f_i(mathbfx) + s_i = 0 ) với (s_i geq 0). (s_i) được Hotline là slachồng variable. Phxay biến đổi đơn giản dễ dàng này trong vô số nhiều trường hợp lại tỏ ra kết quả bởi bất đẳng thức (s_i geq 0) thường dễ giải quyết và xử lý rộng là (f_i(mathbfx) leq 0).

3. Bài tân oán về tối ưu lồi

Trong toán thù buổi tối ưu, chúng ta quan trọng quan tâm cho tới đa số bài xích tân oán nhưng hàm kim chỉ nam là 1 trong những hàm lồi, với feasible set cũng là 1 trong những tập lồi.

3.1. Định nghĩa

Một bài xích toán thù tối ưu lồi (convex optimization problem) là một trong bài xích toán thù tối ưu bao gồm dạng:trong đó (f_0, f_1, dots, f_m) là các hàm lồi.

So với bài bác tân oán buổi tối ưu ((15)), bài bác tân oán tối ưu lồi ((16)) tất cả thêm ba ĐK nữa:

Hàm mục tiêu là 1 hàm lồi.

Các hàm bất đẳng thức buộc ràng (f_i) là những hàm lồi.

Hàm đẳng thức buộc ràng (h_j) là affine (hàm linear cùng với một hẳng số nữa được Gọi là affine).

Một vài ba thừa nhận xét:

Tập vừa lòng những điểm đồng tình (h_j(mathbfx) = 0) là một tập lồi vị nó tất cả dạng một hyperplane.

Vậy, trong một bài bác toán tối ưu lồi, ta tối thiểu một hàm kim chỉ nam lồi trên một tập lồi.

3.2. Cực tiểu của bài toán tối ưu lồi đó là điểm buổi tối ưu.

TÍnh hóa học đặc biệt quan trọng tuyệt nhất của bài toán thù tối ưu lồi chính là ngẫu nhiên locally optimal point chính là một điểm (globally) optimal point.

Tính chất đặc biệt này có thể chứng minh bởi phản chứng như sau. Điện thoại tư vấn (mathbfx_0) là 1 trong những điểm locally optimal, tức:

cùng với (R > 0) làm sao kia. Giả sử (mathbfx_0) không hẳn là globally optimal point, tức lâu dài một feasible point (mathbfy) làm sao để cho (f(mathbfy) &leq& (1 - heta)f_0(mathbfx_0) + heta f_0(mathbfy) và &=& f_0(mathbfx_0)endeqnarray>

điều này mâu thuẫn cùng với đưa thiết (mathbfx_0) là 1 trong những điểm cực tè. Vậy trả sử sai, tức (mathbfx_0) đó là globally optimal point và ta bao gồm điều nên chứng minh.

3.3. Điều kiện về tối ưu mang lại hàm mục tiêu khả vi

Nếu hàm phương châm (f_0) là khả vi (differentiable), theo first-order condition, với đa số (mathbfx, mathbfy in extdomf_0), ta có:

Đặt (mathcalX) là feasible set. Điều khiếu nại buộc phải và đủ nhằm một điểm (mathbfx_0 in mathcalX) là optimal point là:Tôi xin được bỏ qua mất vấn đề chứng tỏ ĐK nên cùng đầy đủ này, bạn đọc hoàn toàn có thể tra cứu trong trang 139-140 của cuốn nắn Convex Optimization trong Tài liệu tìm hiểu thêm.

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *