我一直無法將這個問題匹配到一些規範的問題,我想要一些指南來構建/使用算法並解決它。描述如下:建模組合優化?問題
我們有一些人想要早餐。每個人都可以訂購任意數量的咖啡,果汁和吐司。我們積累了所有組的訂單。
InitialOrder = { C1, J1, T1 } with C1, J1, T1 being integer non-negative numbers.
每個組件都有一個給定的價格,因此初始順序的總價格是
InitialPrice = C1 * Pc + J1 * Pj + T1 * Pt with Pc, Pj, Pt being rational positive numbers
咖啡館也具有「早餐菜單」包括在標準項目組合
full breakfast = coffee + juice + toast normal breakfast = coffee + toast bread breakfast = 2 toast
選擇這些菜單比單獨選擇每個組件便宜,所以我們ve
Pf < Pc + Pj + Pt Pn < Pc + Pt Pb < 2 * Pt with Pf, Pn, Pb being rational positive numbers
人們希望將初始訂單分組到菜單中以最小化花費總額。然後
FinalOrder = { C2, J2, T2, F, N, B } with C2, J2, T2, F, N, B integer non-negative numbers
,我們將有一個FinalPrice < = InitialPrice作爲
FinalPrice = C2 * Pc + J2 * Pj + T2 * Pt + F * Pf + N * Pn + B * Pb with Pc, Pj, Pt, Pf, Pn, Pb as rational positive numbers
所有價格(PC,PJ,PT,PF Pn和鉛)是預先知道。
請問,你知道我應該遵循哪種方法來構建一個算法,以最小化給定的InitialOrder的FinalPrice?隨時問任何你需要的更多細節。
預先感謝您。
對不起,如果我錯了,但我認爲六個最終變量不是獨立的(菜單由項目組成)。是否可以將此限制建模爲LIP? – fglez 2010-08-10 18:30:47
@antispam:是的,這些都是我說的約束。我將編輯答案使其更加清晰。 – 2010-08-10 18:34:32
我會嘗試按照這個方向,並用我的發現更新問題。謝謝! – fglez 2010-08-10 18:43:44