Kyle Miller: When AI Meets PCB Design

<h1>Kyle Miller: When AI Meets PCB Design</h1> post thumbnail image

Kyle Miller, Research Development and Product Manager at Zuken, sat down with us during PCB West to discuss his fascinating work on AI for better PCB design.

Kyle Miller – The Interview

What is your role at Zuken?

I’ll give a little bit of background about what Zuken has been doing for the past two years. So I set up a team. We knew we wanted to look at AI and I set up a team two years ago to start to do this, and we’re still building the team up so the team is still growing.

My background is in electronics and now I moved into software, but I have a Ph.D. in artificial intelligence. So for 20 years or so, I’ve been working for Zuken, I’ve always been thinking, can I bring AI into the software somehow?

As I said, two years ago, we set up this team and started looking at it and so far, we’ve focused on PCB design. So our goal really is to try to emulate as much of the thought process of a PCB design engineer as much as possible. So can we take away a lot of the sort of mundane work? Can we do a lot of that with AI? And that’s what we’ve been working on for say two years now. And the first part of the software is just to get into the sort of demo stage where we can demo it. So that’s what we’ve been doing for that length of time.

What main tasks a PCB designer can count on AI to take over?

So in Zuken, we’ve always had traditional auto-routing tools and for years, I’ve presented about the auto-router and said what it can do and what it can’t do. And typically, what happens is you show an auto-routing result to somebody and they just say, “Well, that’s not how I would’ve done it,” or 95% of the work is done by the auto-router and the last 5% takes so long that actually, they might have done it manually in the first place. It would’ve been just as quick. I get that feedback quite a lot. Some people care, some people don’t. So it just depends on the person.

So what we are trying to do is create an automatic tool using AI that mimics the decision process that a layout engineer would go through that results in routing patterns that are similar to hand routed basically. So that’s the difference that we’re aiming for. And so some of our initial tests, that means shorter track lens, reduction in the number of vias, more aesthetically pleasing designs, which seems to be important to some people, just easier to rework because the channels are better, everything is just laid out in a better way than a sort of a traditional auto-router.

How complex are the designs you’ve tried to create?

In terms of complexity, the designs we’ve looked at are I guess reasonably modern. We have some examples of DDR3, DDR4 technology, PCI Express, that kind of thing. So there’s no point in trying to tackle problems that are old technology, old designs. We are looking at sort of modern besting technologies and things like that. So that’s certainly been a focus that we’ve had.

Do you still need a PCB designer?

The point of it is it’ll learn from example. So if you take a number of known good designs and you feed those into the system, then it’ll use that and extract as much information from those designs as possible and look at typical styles in that design and then, extract that information out so that it can try to replicate that same style on a different design. So that’s what it’s trying to do.

The other thing that we’ve been doing is taking feedback from user interactions with the software. So getting it to learn from changes that the user does to remember those things so that next time it comes up with sort of a design plan that is more similar to what the user has changed it to.

What other input do you use in your AI algorithm?

I’m sort of underselling the complexity of the AI system there because there’s a lot of work that’s gone into … If you think about a PCB design, just even just taking the design data, how do you extract from that final design what the intention of the PCB designer was? So we’ve spent a lot of time trying to get that information out and we’ve collaborated with some academics, some local universities who are really interested in human decision processes. So how do they make decisions about doing something one way or doing something another way? And so there’s a lot of complexity in the system itself. Actually, all the user sees is you take some design data and feed it into the system and it extracts loads and loads of information out of that.

Is this all powered on the desktop?

It’s a server-client model, but the server can be local, so that can be local or it can be on the internet or it can be more remote than that. So it’s pretty flexible, the model at the moment. We haven’t needed significant amounts of power, but obviously, as the designs maybe increase in complexity and we build more complexity into the system, we will probably start looking at cloud computing or some other methods.

What are the new problems you run in trying to implement AI in the design?

New problems are, as I said, extracting information from the data. If you take just even a relatively simple design, trying to work out again what the intention was of the designer. The problem isn’t … of course, you can easily replicate that same design, but that’s not what we’re trying to do. You want to extract information from that design and then when you’re given a different design or maybe a similar technology design, you want to somehow apply those things you’ve learned from that first design and put them into the second design. So that’s the difficult bit, making it general enough that it can tackle multiple different PCBs, and it’s not just going to give you the same patterns over and over again. It’s going to adapt the design for the different layout and the different component placements and things like that.

This whole thing is part of a wider process, which is from the schematic part when the schematic is complete, the process we’re tackling is from the initial board. So we start with just a board shape and some component, they’ve come from the schematic and then, placement of those components using AI, design planning, final routing, right through to hopefully getting pretty close to production. That’s the whole process we are trying to tackle. For the first stage, all we’ve concentrated on though is the routing part of it just to see if we can do that.

When do you think you will have the final product ready?

What we’re trying to do is release it in stages. So if we can get something initially useful out of it in the routing part, then we’ll do that. Then we’ll move on to maybe placement or maybe something else, some constraints or some other thing. So we’re going to release it in stages. The whole project, I don’t know, five years maybe before we get something that does that whole start to finish production line.

Are you only working with Zuken?

This is mostly just within Zuken. Fortunately, there’s enough expertise in Zuken to be able to do this. And as I said, created this new team and I’ve got a lot of doctorates in it so people have come in, national competition winners and things like that. So we’ve managed to just be lucky and get a lot of talent in the new team. That means that we can just tackle this internally.

We’ve worked with universities and we’ve gone to the universities and said things like “How do we solve these particular problems?” And actually, they’ve said, “We don’t know. This is completely new.” So we are so breaking new ground and having to invent techniques as we’re going along. And we follow all the latest research, we look at things that Google is doing, we look at things that other people are doing. And again, often, we have to go beyond the papers they’ve written to try to extend it to apply to our domain because actually, nobody’s done this before in the PCB space. So it’s something completely new. And it’s very interesting and very exciting work for us.

Do you have PCB designers in your team to help you implement the AI?

In terms of getting real PCB designer input, we certainly have done that internally and we’ve talked to a few different customers about what we’re doing, but so far, because until we get to the point where we can demo something, then obviously, we’ll get some real feedback and try to see how we can improve it. At the moment, we’re trying to get some of the basics sorted out and we’re pretty close. As I said, we’re pretty close to getting something out that we can show as to how it works.

But there’s a lot of knowledge of PCBs inside Zuken already. We have application engineers who have done PCB layout for years and years, and they’ve given us a lot of feedback and we’ve demoed to them. And again, getting the human element, getting the thought process is one of the key things, is one of the key things for us.

How do you make sure your AI doesn’t go off the rails?

What we’re trying to do is give the PCB designer the ability to control the software from a high level. So if you start with say this as we are at the moment, start with a placed board and you’ve got some idea of placement, one of the tools that we’ve got that uses some of the AI techniques gives you a quality score for that placement. So it very quickly analyzes the board, works out where the relative paths are, not for individual tracks, but for collections of tracks and will give you a score for how good it thinks that plan is, and that enables you to change the placement or do something else with the planning that you can use to improve that score. So the idea is certainly initially for the interaction this has with the PCB designer is to use it as a planning tool.

So the high-speed aspect of it, so if you think about getting track lens right or sort of matching differential pair halves or something like that, that’s handled by a different system. So that’s initially, anyway, that’s handled by a more traditional way of doing it. It’s more about getting the AI to work out the plan of what’s happening in the design.

And I’ve used the phrase before, we’re currently in the stage where we’re doing human taught AI so that the PCB designer is teaching, helping the AI to learn how to do these things. Eventually, we’ll get to the stage where we will have human supervised AI, which is, probably the end goal because I don’t think we’ll ever really … We’re not going to completely replace the PCB engineer in all this, but hopefully, what we can do is make it so that the PCB engineer doesn’t have to worry about the sort of details and everything else that’s going on in the design. They just worry about the plan. They have the AI to assist them in doing the planning.

I’ve seen that our competitors are doing similar things, but they’re tackling different problems from us. We really are trying to build the human element into this, trying to extract the way the human does it. From the results we’ve seen, certainly internally, the reaction we’ve got from some of the PCB guys is yes, it looks very impressive. When this becomes more mature, we’ll really see, the proof of the pudding as it were. So as time goes on, hopefully, we’ll get more and more feedback.

The thing we’re really short of actually is data. We can get plenty of opinions of designers, but getting data … Obviously, there’s an issue with IP, getting data out of companies is quite difficult. But as you know, probably from AI, what you really need is data in order to train these systems. We’ve got a version of it running in Design Force, which is obviously, it’s a Zuken product and you can just take the PCB straight away and run this tool in it.

What is the end goal?

From initial tests, we’ve got things like shortened track lens and fewer vias and a neater looking design. It’s certainly easier to rework if you look at the results that we’re getting so I think there’s certainly going to be some benefit there. Even initially as time goes on and this system develops, who knows what it’ll end up doing. Maybe it’ll get more advanced features in there.

Why do you come to PCB West?

I’ve been coming to PCB West for seven years and as I said, since I’ve been coming here, even though my background was originally in electronics and I thought I had a pretty good understanding, there are so many experts here that do these advanced courses and really good quality of teaching that I have learned so much, and I try to take that information back with me. And every time I come, I learn something new. Even though I thought maybe I was an expert before, I clearly wasn’t. And, hopefully, I will continue to learn as I keep coming back here.

Leave a Reply

Your email address will not be published.