在線算法
由於掌握的信息是不完全的,即使算法不是多項式時間的,也幾乎不可能總給出實例的最優解.我們把這樣的問題稱為在線問題(online problem),對應地,信息事先完全已知的問題稱為離線問題(offline problem).
很多問題可以同時定義其在線形式和離線形式.
由於在線問題具有這樣的特點,求解在線問題的算法也只能利用也有的信息,而不能利用未知的信息,這樣的算法稱為在線算法(online algorithm).
下界
下界是在線算的固有屬性,與它的某個具體算法無關,在線問題存在下界的主要原因是實例信息的不完全性.
一般地,若某在線問題的任何在線算法競爭比至少為ρ,則稱該問題的(競爭比)下界為ρ.
存在(或已找到)非平凡下界的離線問題只有一部分,而在線問題的下界是普遍存在的.
若證明了某在線問題的下界為ρ,同時又得到了競爭比也為ρ的算法,此時稱該算法為問題的最好算法.這里所說的“最好”是在競爭比意義上的,並不表明該算法的所有性能都是不可改進的.
研究一在線問題的最終目標是找到最好的算法,但要實現這一目標單靠設計算法是不夠的,同時還需證明問題的下界.問題的下界越大,離最好算法的競爭比也越靠近.
在線算法研究
- 一方面不斷改進算法使其競爭比越來越小
- 一方面不斷改進問題下界使其越來越大
- 上述過程持續進行,直到找到最好算法
新課題
- 資源增廣(resource augmentation)
- 隨機算法(randomized algorithm)
- 半在線(semi-online)