Wire Routing and Satisfiability Planning

  • Esra Erdem
  • Vladimir Lifschitz
  • Martin D. F. Wong
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1861)


Wire routing is the problem of determining the physical locations of all the wires interconnecting the circuit components on a chip. Since the wires cannot intersect with each other, they are competing for limited spaces, thus making routing a difficult combinatorial optimization problem. We present a new approach to wire routing that uses action languages and satisfiability planning. Its idea is to think of each path as the trajectory of a robot, and to understand a routing problem as the problem of planning the actions of several robots whose paths are required to be disjoint. The new method differs from the algorithms implemented in the existing routing systems in that it always correctly determines whether a given problem is solvable, and it produces a solution whenever one exists.


Very Large Scale Integrate Action Language Default Theory Plan Fact Circuit Component 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Roberto Bayardo and Robert Schrag. Using CSP look-back techniques to solve real-world SAT instances. In Proc. IJCAI-97, pages 203–208, 1997.Google Scholar
  2. 2.
    Hector Geffner. Causal theories for nonmonotonic reasoning. In Proc. AAAI-90, pages 524–530. AAAI Press, 1990.Google Scholar
  3. 3.
    Michael Gelfond and Vladimir Lifschitz. Action languages. Electronic Transactions on AI, 3, 1998.
  4. 4.
    Enrico Giunchiglia and Vladimir Lifschitz. An action language based on causal explanation: Preliminary report. In Proc. AAAI-98, pages 623–630. AAAI Press, 1998.Google Scholar
  5. 5.
    Henry Kautz and Bart Selman. Planning as satisfiability. In Proc. ECAI-92, pages 359–363, 1992.Google Scholar
  6. 6.
    C. Y. Lee. An algorithm for path connections and its application. IRE Transactions on Electronic Computers, EC-10:346–365, 1961.CrossRefGoogle Scholar
  7. 7.
    T. Lengauer. Combinatorial Algorithms for Integrated Circuit Design. John Wiley & Sons, 1990.Google Scholar
  8. 8.
    Vladimir Lifschitz. Missionaries and cannibals in the causal calculator. In Principles of Knowledge Representation and Reasoning: Proc. Seventh Int’l Conf., pages 85–96, 2000.Google Scholar
  9. 9.
    Norman McCain and Hudson Turner. Causal theories of action and change. In Proc. AAAI-97, pages 460–465, 1997.Google Scholar
  10. 10.
    John McCarthy. Elaboration tolerance. In progress, 1999.
  11. 11.
    T. Ohtsuki. Maze-running and line-search algorithms. In T. Ohtsuki, editor, Layout Design and Verification, chapter 3. Elsevier Science Publishers, 1986.Google Scholar
  12. 12.
    Raymond Reiter. A logic for default reasoning. Artificial Intelligence, 13:81–132, 1980.zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Semiconductor Industry Association. The national roadmap for semiconductors, 1997.Google Scholar
  14. 14.
    T. G. Szymanski. Dogleg channel routing is NP-complete. IEEE Transactions on Computer-Aided Design, 4(1):31–41, 1985.CrossRefGoogle Scholar
  15. 15.
    Hudson Turner. Representing actions in logic programs and default theories: a situation calculus approach. Journal of Logic Programming, 31:245–298, 1997.zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Hantao Zhang. An efficient propositional prover. In Proc. CADE-97, 1997.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Esra Erdem
    • 1
  • Vladimir Lifschitz
    • 1
  • Martin D. F. Wong
    • 1
  1. 1.Department of Computer SciencesUniversity of Texas at AustinAustinUSA

Personalised recommendations