Finding Total Unimodularity in Optimization Problems Solved by Linear Programs

  • Christoph Dürr
  • Mathilde Hurand
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4168)


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 [3]. 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.

Unable to display preview. Download preview PDF.


  1. 1.
    Ahuja, R.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms and Applications. Prentice-Hall, Englewood Cliffs (1993)Google Scholar
  2. 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. 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
  4. 4.
    Baptiste, P., Schieber, B.: A note on scheduling tall/small multiprocessor tasks with unit processing time to minimize maximum tardiness. Journal of Scheduling 6(4), 395–404 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 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. 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
  7. 7.
    Orlin, J.B.: A faster strongly polynomial algorithm for the minimum cost flow problem. Operations Research 41, 338–350 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 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
  9. 9.
    Simons, B., Warmuth, M.: A fast algorithm for multiprocessor scheduling of unit-length jobs. SIAM Journal on Computing 18(4), 690–710 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    van Leeuwen, J.: HandBook of Theoretical Computer Science. Algorithms and Complexity, vol. A. Elsevier, Amsterdam (1990)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Christoph Dürr
    • 1
  • Mathilde Hurand
    • 1
  1. 1.Laboratoire de Recherche en Informatique de l’Ecole Polytechnique (LIX), CNRS UMRPalaiseauFrance

Personalised recommendations