Finding Total Unimodularity in Optimization Problems Solved by Linear Programs
A popular approach in combinatorial optimization is to model problems as integer linear programs. Ideally, the relaxed linear program would have only integer solutions, which happens for instance when the constraint matrix is totally unimodular. Still, sometimes it is possible to build an integer solution with same cost from the fractional solution. Examples are two scheduling problems [4,5] and the single disk prefetching /caching problem . We show that problems such as the three previously mentioned can be separated into two subproblems: (1) finding an optimal feasible set of slots, and (2) assigning the jobs or pages to the slots. It is straigthforward to show that the latter can be solved greedily. We are able to solve the former with a totally unimodular linear program, from which we obtain simple combinatorial algorithms with improved worst case running time.
Unable to display preview. Download preview PDF.
- 1.Ahuja, R.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms and Applications. Prentice-Hall, Englewood Cliffs (1993)Google Scholar
- 2.Albers, S., Büttner, M.: Integrated prefetching and caching in single and parallel disk systems. Information and Computation (198), 24–39 (2005)Google Scholar
- 3.Albers, S., Garg, N., Leonardi, S.: Minimizing stall time in single and parallel disk systems. Journal of the ACM (47), 969–986 (2000)Google Scholar
- 5.Brucker, P., Kravchenko, S.: Scheduling jobs with equal processing times and time windows on identical parallel machines. Osnabrücker Schriften zur Mathematik H 257, Universität Osnabrück. Fachbereich Mathematik/Informatik. Journal of Scheduling (to appear, 2005)Google Scholar
- 6.Cao, P., Felten, E.W., Karlin, A.R., Li, K.: Implementation and performance of integrated application-controlled caching, prefetching and disk scheduling. ACM Transaction of Computer Systems, 188–196 (1995)Google Scholar
- 8.Simons, B.: A fast algorithm for single processor scheduling. In: Proceedings IEEE 19th Annual Symposium on Foundations of Computer Science (FOCS 1978), pp. 246–252 (1978)Google Scholar
- 10.van Leeuwen, J.: HandBook of Theoretical Computer Science. Algorithms and Complexity, vol. A. Elsevier, Amsterdam (1990)Google Scholar