| FORUM

FEDEVEL
Platform forum

pcb placement with RL

anwerammar , 02-26-2023, 07:54 AM
i m working on some project related to electronique design automation and artifical intellignece , i dont have konwdlge for pcb design . but i m planing to start phd thesis in this field using reinforcment learning .
the subject of my phd is "component placement on a PCB using machine learning". I understand that proper component placement is crucial for achieving optimal performance, reliability, and manufacturability of a PCB design, but I am not sure if it is a significant challenge in the design process and can be solved with agnostic algorithme . comonent placcment can be related to other constraint only desinger can know.

robertferanec , 02-28-2023, 12:28 AM
I have been thinking about using machine learning for placement and layout and I have not found a way (yet) how this can be done. There are multiple problems. Hypothetically, even if it would be possible to teach AI based on existing designs, there may not be enough free designs with high quality placement and layout. Most designs and the best designs will be under NDA and are IP properties of companies, with no access to them.

On the other side, it looks like it should be possible somehow teach AI the rules and ask it to do placement and layout based on these rules, however I am not sure if this would be a way for machine learning. Also, if it would be somehow possible, the biggest companies would already have it - however we still do not have any good autoroutes or placement engines. And the big companies have tried to do it. Even as simple think as deleting 5 tracks from a complex board and asking autorouter to put it back is still not possible.

I have seen a keyonote from Cadence at DesignCon. Rather than doing this fully automatically, they are suggesting machine learning + human interaction together. That looks it may work somehow. You ask it to do something and then you correct it or ask it to fix the wrong parts of the design.

Tricky part about placement is, you need to think about routing. So to make a good placement you need to already know how you would like to do the layout.

I think it is very hard to solve this properly. I am very curious to see how this will be done.
Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?