4 ms·
As much as I'm philosophically uncomfortable building software for ill-defined problems like time stretching, audio source separation, and image recognition, I
by nyanpasu64 4y ago
As much as I'm philosophically uncomfortable building software for ill-defined problems like time stretching, audio source separation, and image recognition, I wonder if AI can be used to produce a autorouter with better performance. I've seen some companies already working on that.
- exmadscientist 4y agoAs someone who scoffs at "AI" and a professional EE who detests autorouters (they take more time to set up than it takes to do the job), I honestly think this is the future. They're a good match for each other, since routing has clear success and failure conditions, a lot of leeway to achieve them (actually too much; this is what usually sinks autorouters, with them painting themselves into dumb corners), no expectation of or need for perfection, and the default presence of a human in the loop (to add the logos if nothing else). But the real payoff will be in automatic component placement, since that's 85% of the work anyway. And I think the same trends apply there too, it will just take longer.
- amelius 4y ago> But the real payoff will be in automatic component placement, since that's 85% of the work anyway. I wonder how much separable the problems of placement and routing are. That said, I'd love to see a function in KiCad that does auto-placement (more than I want auto-routing).
- rcxdude 4y agoIn terms of fully optimising the final result, they aren't separable. If you want routing to be likely to succeed, you need to give extra space between components, but this will waste some of it. Getting a good result means the placer needs to have at least some knowledge of the routing. This tradeoff also exists with manual placement and routing to some extent, especially since the tooling it still not very good at push-and-shove for a whole component, especially one with many pins. Also in practice in the design process there's quite often no requirement for an optimal result in terms of space used: before the PCB is designed there's a negotiation with the mechanical design as to how much space is allocated and so long as you're under that you're OK, and there's little bonus points for coming under (since it would require reworking the mechanical design to take advantage of it).
- kramerger 4y agoI think you mean is to use deep learning. Many current autorouters already use "AI" (often genetic programming).
- delfinom 4y agoThere are companies that pitch that as a service. My understanding is that it sounds great but the one magical part about the EE domain is we have an absurd selection of ICs being made every day by companies that are tailor made for every application under the sun. It's the best way to cut physical hardware costs down by every penny possible for volume manufacturing and it's trivial for a human to design schematics and board layouts tailored to the chip in the grand scheme of things. The problem then becomes that the AI would need to be constantly trained on newer and newer human designed samples for each new chip to keep up.