Una cosa que no está considerando es que un esquema no contiene suficiente información para diseñar un tablero correctamente .
Básicamente, el diseño de PCB requiere consideración y adaptación para unas pocas docenas de requisitos de diseño por parte , ninguno de los cuales está codificado en el esquema. Considere solo los condensadores de derivación. Para que un sistema automatizado coloque correctamente el condensador de derivación para cada componente, necesitaría tener algunas directivas adicionales en el esquema que dicten al enrutador automático que la traza entre los dos nodos debe estar por debajo de cierta longitud.
Presumiblemente, necesitaría más directivas para codificar la prioridad de minimización de longitud para varias redes, algo para dictar pares diferenciales / impedancia controlada, trazas de protección (si es necesario), etc.
Básicamente, hay muchas variables adicionales que impulsan la ubicación que generalmente no están codificadas en absoluto en documentos esquemáticos / ratsnest.
Además, incluso si asume que tiene todas las restricciones de diseño anteriores, el tamaño del espacio del problema para un diseño común es enorme . Es el equivalente a tratar de resolver una ecuación con miles de entradas, donde cada entrada tiene un efecto no lineal diferente en todas las demás. Efectivamente, el problema es completamente intratable desde una perspectiva de fuerza bruta. Por lo tanto, cualquier solución debe involucrar algún tipo de mecanismo heurístico, que tiene sus propias complejidades.
Siendo realistas, la razón principal por la que no hay al menos mejores rutas automáticas es que simplemente no hay mercado. El mercado de EDA es comparativamente pequeño en comparación con muchos otros mercados de software de nicho y de propósito especial, e incluso el mejor enrutador automático nunca se acercará a un diseño real por un humano real.
Cuando estoy en medio de un diseño particularmente aburrido, por lo general tengo algunas fantasías de tratar de diseñar mi propia ruta automática, haciendo algo con campos vectoriales y recocido simulado, pero incluso eso solo se acercaría a un diseño óptimo local, en lugar de un diseño óptimo general.