I researched the topic a bit and also concluded that interactive auto-routing tools should be the most useful ones for practice. There is a nice article about that topic:
Some example how the Sketch Router works for example:
I did some literature research, and it seems there are two main domains where active research in this direction is done: escape routing and length-matching routing. Basically the escape router ensures that there are no crossings of wires, and the length-matching router ensures that the two components are connected (without track crossing) and signal-delays are enforced.
I found already some literature. Be warned, many of those links are behind a paywall (unless you are at a university)
Some general literature
- A Study of Routing Algorithms for PCB Design
- A method for gridless routing of printed circuit boards
- Advances in PCB Routing
- Comparing of systems of PCB routers
- Algorithmic studies on PCB routing
- New strategies for PCB routing
- New strategies for electronic design automation problems
Specific algorithms
this is the interesting part, to gather a number of recent algorithms and look which of them are easy to implement / powerful / fast,…
Escape Routing
- B-escape: a simultaneous escape routing algorithm based on boundary routing, (Presentation slides)
- Algorithms for simultaneous escape routing and Layer assignment of dense PCBs
- Length-constrained escape routing of differential pairs
- Ordered escape routing based on Boolean satisfiability
- Simultaneous escape routing and layer assignment for dense PCBs
- Simultaneous Escape Routing using Network Flow Optimization
- One-Sided Net Untangling With Internal Detours for Bus Routing
Length-matching Router
- BSG-Route: a length-matching router for general topology
- A length matching routing method for disordered pins in PCB design
- Obstacle-aware length-matching bus routing
Layer assignment
- New optimal layer assignment for bus-oriented escape routing
- Layer Assignment of Escape Buses with Consecutive Constraints in PCB Designs
- Layer Assignment of Buses and Nets With Via-Count Constraint in High-Speed PCB Designs
- Optimal bus sequencing for escape routing in dense PCBs
Bus-Planner
Net ordering
- Mobility based Net Ordering for SimultaneousEscape Routing
- Simultaneous escape routing based on routability-driven net ordering
Topological Router
- Topologically-geometric routing
- Escaped Boundary Pins Routing for High-Speed Boards
- Topological routing in SURF: Generating a rubber-band sketch
- Rubber-band based topological router
Personally, I would like to see some bigger literature research and a classification of those algorithm, to find out which of them could be useful for inclusion when someone steps in implementing an “autorouter”.