裝填問題(packing problem)是一類典型的組合最佳化問題。設I={v1,v2,…,vm}是一個有限集,E={E1,E2,…,En}為I的子集所形成的一個集簇,若E的一個子族E′={Ej1,…,Ejs}使得I中的每個元素包含在E′的至多一個元素之中,則稱E′為I的一個裝填,求I的一個裝填E′使得所含的元素數為最多就是所謂裝填問題。一般地,賦E中每個元素以一個權,而將E中的元素最多改為其中元素的權和為最大,當每個元素的權均為1時,即這裡所說的裝填問題,若將E′中的每個元素視為一個車廂,這時的裝填問題也被稱為裝箱問題,若E′使得I中的每個元素包含在E′的至少一個元素之中,則稱E′為I的一個覆蓋,求I的一個覆蓋E′使得E′含E中的元素最小就是所謂覆蓋問題,也可以將它推廣到帶權的情形,若E′使得I中的每個元素包含在E′的恰好一個元素之中,則稱E′為I的一個劃分,求I的一個劃分E′使得E′中含的元素數為最少就是劃分問題,同樣可以有帶權情形下之推廣,這裡所述的裝填問題、覆蓋問題,以及劃分問題均是NP完全問題,因此,要想用好的算法解這些問題是不現實的。
基本介紹
- 中文名:裝填問題
- 外文名:packing problem
- 所屬學科:數學
- 所屬問題:組合學(組合最最佳化)
- 簡介:一類典型的組合最佳化問題