Тёмный

EEVblog 1535 - DeepPCB AI AutoRouting FAIL! 

EEVblog
Подписаться 948 тыс.
Просмотров 80 тыс.
50% 1

Опубликовано:

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 474   
@cidercreekranch
@cidercreekranch Год назад
Welcome to Non-Polynomial algorithms! It difficult to infer priorities based on examples of already routed boards. Without hints and priorities, these types of algorithms can go off the rails and never comeback. I suspect that is what happened. The iterations are likely cause due to backtracking when an iteration yields a non-optimal solution. E.g. it got TRONed into a corner.
@dalemosdeliverers9050
@dalemosdeliverers9050 Год назад
Moreover, I can't see how a machine-learning system is going to be better than simulated annealing or some other heuristic algorithm designed to try and address NP-complete problems (I bet this is one such problem) such as track layout. I wonder if a machine learning system might do better than humans with placement eventually, with a good algorithm or three to solve the track layout problem.
@toine512fr
@toine512fr Год назад
@@dalemosdeliverers9050 I have same interrogations as usual algorithms are already really not bad for FPGA implementation. (And these converge much faster than this tool.)
@frankwales
@frankwales Год назад
It seems to me that PCB layout is a whole load of interrelated travelling salesman problems stuffed into the knapsack problem, so I'm not really surprised that it's hard for a machine to find a good solution.
@dalemosdeliverers9050
@dalemosdeliverers9050 Год назад
@@frankwales Exactly (well the other way around, but yes). I think placement might be done as a neural network learning thingymabob.
@untrust2033
@untrust2033 Год назад
Very fun watching the easyeda router do this LOL
@joj.
@joj. Год назад
Dave, you're missing the main point of the "AI" here! Adding "AI" to any random system automatically construes a 4000% boost to the number of clueless venture capitalists who'll throw money at you hoping for ROI, regardless of if it actually benefits the user.
@EEVblog
@EEVblog Год назад
Funny because it's true.
@Lucien86
@Lucien86 Год назад
The weird thing is that they're all totally uninterested in anything that's real AI. (Strong AI) Tell them about the 20 year lead time and they run a mile. 🙃
@8BitNaptime
@8BitNaptime Год назад
Would you like to invest in my AI blockchain solar roadway bitcoin generator?
@tedmich
@tedmich Год назад
precisely! See Adam Conover's recent breakdown!
@aviramiancovici93
@aviramiancovici93 Год назад
I use it like sort of like your car's cruise control - it takes the heavy repetitive lifting but I manually do the crucial parts
@Bluelagoonstudios
@Bluelagoonstudios Год назад
Maybe that's the reason it's free, it has to learn and you have to start somewhere to get the thing going with input. It looks to me, they don't have a big pool of creators.
@rolfdieterklein
@rolfdieterklein Год назад
Very nice video. I use Altium for many years and all other kind of CADs years before starting with the very first CAD systems, I do manually routing many dense multi layers , and I gave up using any autorouter decades ago. Interesting it didnt get better since then. Also far away doing any RF Design I assume. AI is a nice approach, interesting it cannot do any better than the std. autorouters. But this is a challenging work, also for humans you need experience. I saw beginners which do the same as autorouters for their first steps.
@PutItAway101
@PutItAway101 Год назад
Common sense seems to be the hardest thing to teach an AI!
@nameredacted1242
@nameredacted1242 Год назад
What IS common sense?
@neil2742
@neil2742 Год назад
I would not give a board to a layout engineer without specifying creepage, clearance, impedance, high frequency nodes and high current traces. It saves time, money and hassle in the longer term. I have had too many boards from layout engineers who couldn't identify a SMPS or knew it needed careful layout for the switching nodes (shoutout to the engineer that routed the switching node over half of my PCB). I would expect an AI to need similar guidance
@b0rd3n
@b0rd3n Год назад
The only 'advantage' would be for some level of obfuscation. Don't know how useful that could be but hey
@drcyb3r
@drcyb3r Год назад
Sadly I have never tried to create my own PCB layouts. I don't have the time and knowledge to do it myself. I'm a guy that builds smaller stuff where it is enough to run loose wires or use those yellow pre-manufactured PCBs with hundreds of holes in it and create some traces on the bottom. I would like to try creating my own PCBs, but ordering them from china is something, I wouldn't want to do.
@vejymonsta3006
@vejymonsta3006 Год назад
I imagine a good implementation of a deep learning pcb router wouldn't go point by point like this. Doesn't make sense. If you train it on tons of layouts it wouldn't route like that at all. Regardless you probably would have to give some constraints to the AI no matter what. Or it would be a feedback process, like here's a solution based on your constraints. Now change this section, ok here's a new solution with the changes. Etc. Based on the footprint it could potentially reason what the application of the connecting component is used for based on trained data. Ultimately if the data set to train the AI is crap, then the result will also be crap. Midjourney is capable of understanding abstract concepts from a text prompt to generated high detail images. Routing a pcb should be easier to pull off if someone actually gave it the attention.
@redsquirrelftw
@redsquirrelftw Год назад
Seems to me PCB layout is not really a good use of AI anyway. Layout can pretty much be done with some advanced if/else logic in faster time. AI could play a role if it was smart enough to know what the components do and then lay it out accordingly, but clearly it has a long way to go! Maybe it will eventually get there.
@SimonJackson13
@SimonJackson13 Год назад
This is funny. Like first it should place parts in a circle (in not placed), and work out a connected distance ordering of close. Then onto orientation for best or least rat-nest crossing, then route the power before signal in (after stopping for placement sanity), close least crossed signals first. Then there's vias :D
@johndododoe1411
@johndododoe1411 Год назад
Power first or last is always a problem in choosing a strategy.
@bgdexter
@bgdexter Год назад
"I succeded!" "No, you didn't do all connections" "Yes, I did!" "No you didn't, see, it's only 196 of 238" "I'm the autorouter, I know better than you I've connected everything! I've been a good autorouter! You've been a bad user!"
@davidkclayton
@davidkclayton Год назад
Guess that's why they call it PCB artwork
@yeet1337
@yeet1337 Год назад
Lmao they'll need some blockchain to fix this 🤣
@L4b3n
@L4b3n Год назад
Is this AI only trained on absolute beginner layouts? ... what a bad day to have eyes!
@zebedie2
@zebedie2 Год назад
I would laugh if it was actually just some guy in india and he was leaning across to his freind to ask what the best way to do it was.
@gasun1274
@gasun1274 Год назад
that autorouter is doomed to fail from the start. how do you even expect a good result when it doesnt have the schematic and other information. it just doesnt know what to optimize for, and the people behind it arent training it so that it knows what compromises it should make and when to make them.
@TheMrTape
@TheMrTape Год назад
So you gave it one single try, a task possibly significantly bigger than the amount of data permitted to it's inputs at this stage, and proclaim it a FAIL? IT failed? You sure, you didn't fail it? Is it that you don't want to allow it to outdo you, Dave? :)
@cadthunkin
@cadthunkin Год назад
I made an AI that makes a mess in the kitchen. It does an incredible job, you cannot tell if it was a machine or human. lol
@johnwest7993
@johnwest7993 Год назад
I use a quantum super computer, neural network, fuzzy logic, intelligence driven, self-organizing, self optimizing, multi-sensory input PCB layout entity called ME. It works rather well. At least it does on its good days.
@EEVblog
@EEVblog Год назад
Sounds dodgy.
@chitlitlah
@chitlitlah Год назад
Is that related to Windows Me? I don't trust it.
@Graham_Wideman
@Graham_Wideman Год назад
I use that same sort of layout engine. Works pretty well once it gets going. It's getting it started that's the problem!
@nameredacted1242
@nameredacted1242 Год назад
@@EEVblog Sounds underpaid.
@congchuatocmay4837
@congchuatocmay4837 Год назад
Gary Numan, ahead of the times as always.
@hippie-io7225
@hippie-io7225 Год назад
After 40+ years of doing PCB layout, I still do routes manually. Auto routing can be useful for fine tuning component placement and as a sanity check. A point to point one-net-at-a-time auto route could be useful. In the mid-nineties, we used a $25,000 auto router that required incredible amounts of setup work to get routes. Then lots of work to clean up those routes for final gerber output.
@EEVblog
@EEVblog Год назад
Interactive autorouting is the most useful feature these days. It takes away a ton of the tedious fine detail work.
@nalinux
@nalinux Год назад
I did it a lot in the 90's. With practice, it was not so difficult. Nowaday, I would suffer and thanks Kicad, easier to use than an pencil eraser :)
@nikthefix8918
@nikthefix8918 Год назад
Yes and some modern motherboards are works of art you could hang on your wall. Yet no designer would put form over function so I suspect that 'pleasing to the eye' form can assist function - but I'm not sure why. Perhaps it's to do with geometrical reductionism, which we humans tend to find comfortable and 'correct' so maybe electrons do too. I think the Romans would have made nice PCBs.
@EdgarsLS
@EdgarsLS Год назад
Yeah, when I started off, I quickly found that auto-routing just wasn't that good. I just route the most important traces first, leave the most tricky traces for last. But I haven't routed complex digital circuits so maybe autorouting starts to shine there.
@p_mouse8676
@p_mouse8676 Год назад
Same here. Sure, some auto-routers may work for some details (bga routing issues etc). But for a mixed signal Pcb they are all garbage. Which is weird and ironic why some software developers (eg KiCad but definitely also others) put so much effort in something that most professionals barely use.
@BenHeckHacks
@BenHeckHacks Год назад
This is the part I always wanted to see in a Terminator movie. Robots making robots :)
@EEVblog
@EEVblog Год назад
In this case they are devolving.
Год назад
The robots will get stuck now being able to complete a simple routing. Then they'll just enslave human designers to do it for them and the humans will leave in backdoors that we can use to disable all robots. Seems like a solved case to me...
@KonradTheWizzard
@KonradTheWizzard Год назад
That would be a rather short movie! (Imagine a deep background voice as the camera pans over a dimly lit waste dump...) "In the year 2023 robots began to design new robots and they quickly evolved into monstrosities with PCBs sticking out their backs! A year later John Connor united mankind in the final battle against the robots when he found out that a piece of polyester creates enough static electricity to bring down an entire army of robots! ..." (camera pans over the scarred remains of something looking vaguely like Arnold Schwarzenegger) "I'll be ... ba...zzzztkrrk!" (roll end credits)
@MrDjada80
@MrDjada80 Год назад
that's "I, Robot". but then frankenstein, dracula, my ass. all the same.
@topduk
@topduk Год назад
Real lesson here is don't use Altium or other subscription based software.
@nameredacted1242
@nameredacted1242 Год назад
If nobody uses them, they will go bankrupt though!
@RapiBurrito
@RapiBurrito Год назад
Altium has so many cool things, things you just can't do on other software, do you have any recommendation for options?
@nameredacted1242
@nameredacted1242 Год назад
@@RapiBurrito I use OrCAD myself. I waste up to 20% of my time fighting with its bugs and stupidities, but it is the "enemy I know"... I wish I could learn Altium, but I spend so much effort on OrCAD that for lack of time I will just stick with it for now...
@EEVblog
@EEVblog Год назад
@@RapiBurrito It's basically high priced Altium Designer vs free KiCAD these days. Not much middle ground market left.
@nalinux
@nalinux Год назад
@@EEVblog did you make a comparaison of Kicad vs commercial softwares ? I love the last versions 6 **. . So many improvements compared to v5 !
@nameredacted1242
@nameredacted1242 Год назад
Dave, there can't possibly EVER be a good autorouter until at schematic entry level we specify a LOT MORE properties for every net and for every component. Like voltage rating and current rating for every segment of a trace, and so on! I won't go into more detail as of now, but I think it is very obvious what I mean. As I am trying to pursue that route myself. Will see how it comes out!
@EEVblog
@EEVblog Год назад
Yes, but even ignoring that stuff it still does a crap job!
@nameredacted1242
@nameredacted1242 Год назад
@@EEVblog Agree there, but I think "planning for AI to overtake our engineering jobs" we are going to start marking up every net line-segment on the schematic with what voltages and currents are associated with it, what its purpose is, etc. A computer can't comprehend a schematic, yet it can comprehend the "set of rules" that you already mentioned in the video. But I think drawing up a schematic, then simplifying it to a netlist, and then feeding that into a router is an impossible task, don't you think??? Because any visual information discernible from a human from a schematic level drawing is LOST when converting that info into a very plain and dumb netlist... I think we need a next-generation "netlist" with a crapload more "properties and rules" for every net SEGMENT and every component before a computer can ever take over our jobs of trying to lay out a PCB that actually can even try to follow the schematic and the intent of the schematic drawer...
@Motorman2112
@Motorman2112 Год назад
@@nameredacted1242 If you combine this with electronics simulation software I'd expect it to be able to figure out what voltages and currents will be present by itself. You'd still need to feed it accurate information about the components and the nature of any external inputs of course.
@KeritechElectronics
@KeritechElectronics Год назад
@@Motorman2112 yeah, what if we combine schematic/initial layout, SPICE, DRC and datasheet analysis?
@Basement-Science
@Basement-Science Год назад
@@ayaya-ayaya A proper AI could generate a report of what it did when it's done, or even ask you some questions where things are not obvious. Then the result would be easy to evaluate.
@SomeMorganSomewhere
@SomeMorganSomewhere Год назад
Just based on the output, I'd guess that the engine is routing per CONNECTION not per NET which seems kind of insane...
@mrcomment5544
@mrcomment5544 Год назад
My guess is that this is project of a web-dev/marketing type that hired some people that are PCB/AI adjacent where the project eventually fizzled out a few years ago.
@jan.tichavsky
@jan.tichavsky Год назад
@@mrcomment5544 My guess is this is project of someone who designed it in chatGPT 😄
@KeritechElectronics
@KeritechElectronics Год назад
No matter if it's modern "AI" based solutions or 1980s Autotrax, the conclusion is the same: NEVER trust the autorouter!
@nameredacted1242
@nameredacted1242 Год назад
Yeah, I have been told for 50 years that the new software I need to pay money for has an autorouter, and except for fanout, I still have to lay all traces manually...
@pietheijn-vo1gt
@pietheijn-vo1gt Год назад
What if you could explain what the board is supposed to do, give a set of constraints and provide a drawing of what the end result is supposed to look like? I think AI works much better in the right context. So a language model with auto routing capabilities might be able to do a much better job.
@mrcomment5544
@mrcomment5544 Год назад
@@pietheijn-vo1gt I agreed with you when I thought you were being sarcastic but then I saw you were being serious and had to roll my eyes.
@KeritechElectronics
@KeritechElectronics Год назад
@@pietheijn-vo1gt with automatic laying out components and all that stuff? I bet the result would be even more miserable. As for constraints, we've got design rules and DRC already, so why not treat that as a requirement and feedback source for every iteration of routing? There's one thing that the bot could do, even better than humans: combining multiple inputs from initial design, datasheet analysis, SPICE simulation and DRC. Like, tell it to design a board based on the schematic and layout you provided (initial input) based on chip manufacturer's design recommendations in datasheets, figuring out the signals, voltages, impedances and all that at every point (SPICE), routing the traces and then verifying the work (DRC), re-iterating until it gets it all good.
@pietheijn-vo1gt
@pietheijn-vo1gt Год назад
@@mrcomment5544 Do you have any actual argument?
@MSP_TechLab
@MSP_TechLab Год назад
For this PCB it is very, very slow. Built in autorouter in any pcb software can produce the same bad result ~50 times faster.
@lilstubthumb
@lilstubthumb Год назад
Well now I'm curious to see a video on proper auto routing constraints.
@nameredacted1242
@nameredacted1242 Год назад
Start with trace width (current-carrying capability) and trace separation (manufacturability and voltage isolation). Add manufacturability (DFM) constrains. Add special traces like controlled impedance. That's about it to start manual layout with auto fanout.
@fabianfeilcke7220
@fabianfeilcke7220 Год назад
In my experience auto-routers really struggle with 2 layer boards. They do much better on 4 or 6 layer boards. With a defined ground layer and two layers where you can go unimpeded left/right or up/down the altium router basically always finishes the board. Especially for early prototypes it is not worth the effort to route them by hand if it can be done good enough automatically.
@jardel_lucca
@jardel_lucca Год назад
Here we are... Cheering up for the thing to fail so our jobs are not threatened too soon 😂😂😂
@MomoCoder
@MomoCoder Год назад
Could you try it with EasyEDA? I have been auto-routing for few of my PCB boards (not too complex). They have turned out acceptable in my opinion. At least not too many obvious funny jobs like the DeepPCB did in this video.
@lucoot
@lucoot Год назад
PCB Layout is 80% placement, 20% routing.
@SianaGearz
@SianaGearz Год назад
But placement is a solved problem in any autorouter test; where you have a board that is already routed, and you rip it up. By all reason, a GOOD algorithm should be able to at least solve that board, maybe not the prettiest way, but successfully and ideally even with some optimisation like making the paths minimal in total. It's neither a fully solved problem nor a fully unsolved one, as ones that approach this ideal better than pure trial-and-error do exist.
@CarlBugeja
@CarlBugeja Год назад
Companies are just using the word 'ai' to make everything look more fancy. Clearly this is not trained on anything.. selecting the best from the worst is not learning. I think future autorouters have to be divided into two parts: one for priority nets (which may be still altered by humans) and once that is done, the rest of the tracks can be autorouted. I think the fun really starts when automation is added into thing like outline generation, component package alternation and compact placement. All this would make it easier to miniaturize and select right option for your application
@Micetticat
@Micetticat Год назад
This is my hypothesis. The company probably expects the users to submit smaller designs. Then by letting the customers chose the best implementation out of many they might be using the information to implement RLHF. Even the information that one of the routings might be 0.1% better than the others could be amplified during reinforcement learning.
@EEVblog
@EEVblog Год назад
Only problem is all of the options suck!
@Micetticat
@Micetticat Год назад
@@EEVblog 🤣. By the way since I'm here let me send you my compliments for your fantastic channel! Always entertaining and educative!
@adamrak7560
@adamrak7560 Год назад
They should have done regular RL, with some heuristics learned from human routed design. And only do the RLHF as a fine tuning of an already working system.
@Darkknight512
@Darkknight512 Год назад
The truth is, auto routers can be good, they are the lifeblood of the ASIC industry. In the PCB industry, the money just isn't there when compared to the ASIC industry. There was an article on chiplet designs where they mentioned they use PCB design tools to do most of the work for connecting chiplets together but really have to create custom automated tooling because the pin count is getting too high. The likes of Synopsys and Cadence has all the know how to do PCB automation tooling, it just doesn't make sense for them to.
@userPrehistoricman
@userPrehistoricman Год назад
Are you sure? I think ASIC place and route is solving a slightly different problem since the tooling has full control over the placement and rotation of the elements. Also, the elements typically have far fewer connections than PCB components.
@theondono
@theondono Год назад
Except ASIC routing is in terms of computing a very different task. The hard part of PCB routing isn’t laying the tracks, but making the right compromises. Those compromises are basically non existent on digital ASIC routing. It should also be mentioned that as Dave said, PCB auto routers can solve digital non-critical layouts alright. That’s what ASIC designers do, analog ASICs are still routed manually.
@0LoneTech
@0LoneTech Год назад
I've only worked a little bit on the ASIC side of things, but most of it is standard cell, with similar properties to FPGA design: power and clocks get dedicated passes, then congestion driven routing handles signals, and you check if the result satisfies timing. Bigger components are hopefully in hard blocks (e.g. RAMs, DSPs, PLLs), known as macros in ASIC design. So there's just a touch more grouping information available. It does an okay job at routing, but not that great at placement; just tolerable compared to the enormity of the entire project. Working more with hierarchies could improve it immensely; compare something like Xilinx Lava where placement is driven by design, routing is near instant, and the results by far outperform the automatic systems. That wasn't quite ideal either; the guided placement approach left gaps, but that could be tweaked by tension similar to how LiquidPCB operates. Another thing that would be lovely would be learning such as Dave imagined would be going on here, similar to profile driven optimization in software compilers. If the design can build groupings based on patterns, e.g. connecting the nixie tube segments in a row to the south side, it could have that work prepared for later passes. It's that sort of overview that can help avoid painting yourself into a corner. The "AI" fixation of today is moving the task of programming to a similar level; designs too massive and jumbled to understand, grown instead of designed. It always produces results - just rarely good ones, and occasionally catastrophic. The vendor shrugs and points at "the algorithm". "What went wrong" becomes unanswerable, if you're lucky "do this better" goes into the next training set.
@sampirat
@sampirat Год назад
But on a typical ASIC you have much more copper layers, 10layers is not uncommon and you can go up to 15+ That makes the job much easyer
@dem0n1k
@dem0n1k Год назад
Interesting to see that the 'AI' autorouter is no better than the Altium autorouter. It actually looks worse than the Altium autorouter! Great video Dave!
@EEVblog
@EEVblog Год назад
Yep, worse, and only an 82% completion rate with obvious routing paths left. It's hopeless.
@katrinabryce
@katrinabryce Год назад
A lot worse, because presumably if you sent the Altium one to manufacturing, it would actually work, whereas the AI would not because 18% of the connections were missing.
@rameshd5563
@rameshd5563 Год назад
In 1988, I routed a 8 layer board with a software called AutoPCB, and it had done much better. The Free EasyEDA does a lot lot better. DeepPCB is just bluff.
@SidewaysCytlan
@SidewaysCytlan Год назад
I had a project where I had to route a 144 QFP to a PCIe connector on a 2-layer board. It was a challenge, I spent several days routing it, but I managed to do it. Keyword is "grouping". Bring related traces together and route them together as a group. It's a lot easier dealing with 8 groups of 8 similar connections than 64 individual traces that you assume has nothing in common.
@crusaderanimation6967
@crusaderanimation6967 Год назад
Well seems like "free is fair price" for this one
@electronash
@electronash Год назад
I think this is very advanced AI, it's just it's training model was Stevie Wonder.
@zxborg9681
@zxborg9681 Год назад
LOL I started reading through your video section names and burst out laughing. I guess I'll put the dream back on the shelf for another few years then.
@EEVblog
@EEVblog Год назад
Yeah, don't bother.
@nameredacted1242
@nameredacted1242 Год назад
I heard it for 50 year now.
@properjob2311
@properjob2311 Год назад
AI is just the new marketing buzzword - anything without "AI" functionality will not sell.
@dgo4490
@dgo4490 Год назад
This looks like you hired gov bureaucrats to do your routing. Can't wait for AI government!
@dyershov
@dyershov Год назад
Dave raves about AI in adjacent fields, but in his field it's a "NO!" I actually see it a lot when folks are impressed with what AI does in the area they lack expertise (or even basics).
@EEVblog
@EEVblog Год назад
It is demonstrably amazing in many other fields, no need to be a domain expert to see that.
@redsmith9953
@redsmith9953 Год назад
Well doing that my self for many years also, i understand what is the AI problem, first of all if understands how to route is a big advance, taking in account the pin-outs of every IC and display, but of course to solve that mess is using a messy approach, so yeah, in every aspect AI is using the apprentice approach, in chat or in this case, that is not a problem, the problem will be if never can solve that kind of things due of lack of data or perhaps, the IA is not the solution for that kind of things... time will tell. But is clear is using the recursive approach this is why missed the connection between paths, that is not real AI, that is the common approach like from 20 years ago.
@matijacizmek9196
@matijacizmek9196 Год назад
This is exactly how I, as a professional software developer, felt about you trying to use AI to do software development ☺️
@gjsmo
@gjsmo Год назад
Big difference though, since ChatGPT is actually capable of producing useful output for certain problems. Perhaps not the neatest but certainly functional. I've found it can be useful as a starting point for some infrastructure maintenance scripts, for instance. It seems that DeepPCB can't even manage that though - the layout it came up with is less useful than not having any traces at all.
@anvz6
@anvz6 Год назад
​@@gjsmo and I'm sure this "IA auto router" can produce useful results in some cases. It's like programming. You have to know how to program to use chatgpt for programming. It can replace googling for info, but don't replace the knowledge of a programmer.
@Quast
@Quast Год назад
Just as a curious outsider to software developement. Did you see something that was so out there ineffiecient that haven't even seen in your starter days of software developement?
@lolaa2200
@lolaa2200 Год назад
@@gjsmo well actually i have to disagree on your view of chatGPT. It produce output that looks like useful, that is what it's been trained to do, please people in a casual chat. 99% of time when you look closer it is not actually useful. The thing is most people when chating are not very demanding at all. Engineering on the other hand is about making thing that actually works, not just looks like. Devil is in the details as we like to say. That being said, AI/ML/NN are legit tools that can be useful to solve some classes of problems, but P&R is not one of those problems. Graph optimisation algorithme are just better tool for that particular job. A good, well trained software engineer that actually master his craft should know that. But where i have to give you a point is that lot of the software we use on daily basis are actually not engineered, they are pieces or craps merely half working with an overhead so big you can see it from space designed by lazy people that we somehow convinced they can be called "engineers" without having any clue for mathematics, physics and any other from of serious science. So to do that kind of crap, yeah maybe you are right, AI can produce just as crappy job as "human" do. But you are comparing state of the art AI that cost billion dollars and use ginormous amount of energy with the worst of the human here. The state of the art human software engineer can do much much better, only cost you few 100$ a day and only consume about 2000kCal /day. That actually gives us an interesting thought, maybe AI is a good thing to finally put some pressure on crappy software dev to raise their standards.
@anvz6
@anvz6 Год назад
@@Quast No. In general chatgpt creates good programs. May be sometimes produces some instructions that shows it does not really "understands" the problem. And it does not look "creative". It's something you could do by googling from examples. It can save you some time but you must check the code to see if it did what you needed. In one case we told chatgpt to translate a program from php to javascript. After one hour of trying we was unable to make it work. Chatgpt used external libraries that we could not find or unavailable versions, or called functions that does not exists and it was unable to implement by itself. I've seen the same effect when you ask it to make a cooking recipe and then you ask it to include an ingredient that does not exist at all: it invents the ingredient like it existed. You can't trust the results. You must check and fix it.
@AleksyGrabovski
@AleksyGrabovski Год назад
Actually a problem of finding optimal routing by itself counts as an AI problem, so technically speaking, all autorouters are "AI" ;) They just use different AI approaches.
@ghlscitel6714
@ghlscitel6714 Год назад
Obviously AI without I. I use autorouting only if there is e.g. a dumb connector having to be connected to simple 3.3V/5V TTL or DC with the autofinish function.
@Agent24Electronics
@Agent24Electronics Год назад
So the answer is just route it yourself using Actual Intelligence...
@monad_tcp
@monad_tcp Год назад
How do they route an Intel Core i9 with billions transistors in the CMOS ? sure its not manual, right ? (if it is, no wonder that thing cost billions to make)
@SianaGearz
@SianaGearz Год назад
I'd love to see someone try TopoR on this board. It avoids a lot of stupid. To begin with any space unpopulated by components or anything else nailed in is represented contiguously so it knows how many traces fit in that bit of empty space, so it runs connections in groups and doesn't have to rip up random wires to make another wire fit.
@jankas6734
@jankas6734 Год назад
Its the PCBizer.... I bet it´s also Solar powered!!! Hail Elon! :D
@TheMrKeksLp
@TheMrKeksLp Год назад
Imagine paying for 24 hours of cloud AI compute time. They must be absolutely losing their shirt! (or rather their venture capitalist's shirts lol)
@lolaa2200
@lolaa2200 Год назад
Two silly things here : 1 auto-routing never work, 2 using AI/NN for it. If it's called "deep"XX and claim to be AI i guess that mean it use some kind of neural network. That's a silly idea by itself. But here is the thing, you use auto-routing every-time you use an FPGA, place an route is one of the most critical part of FPGA design software suite. And yes they always goes together hand in hand, just like Dave said placement is a big part of routing. And it works very well actually, so it's a problem that is very well studied. It is actually a constrained graph optimisation problem. It is NP-complet that mean you can not have a guaranteed optimal algorithme to solve it (if you can prove the opposite you can win $1M). AI or ML or ANN or whatever other thing that are just algorithme like any others won't change that point. So how it's done in FPGA ? It's actually pretty close to what Dave say here, it's a combination or grouping (local, vs global routing lanes) and then you have vertical lanes and horizontal lane. At first based on your design (can be a schematics just like here) the software identify critical path (just like Dave says, prioritizing important signals). And then they use an heuristic called simulated annealing. What it is is you start with a random solution and try to refine it using simple gradient descends, but sometimes you get a new random solution and compair it to your curent solution, just to be sure you don't fall in a local minimum. On FPGA interconnect occupies 5-10x the space of the actual functional components. But remember it is fully programmable. Here you can do that then eliminate everything unused and all the programmable switches and the associated memory. So the figure would probably more be like 2-3x and note i talk about space not area. What that mean is you need to give enough routing space around or under component, e.g. : more separated components or more layers. As if human can do better, i think story of compiler vs ASM programming answered the question : only a very good human and only on relatively simple cases. Thing is on modern electronics all is structured so that most of the complexity is dealt with inside the chips so the PCB routing is generally not that complexe it result that doing it by hand still makes sens. Just to conclude, totally agree on most of what Dave says, the good routing software follow exactly his guidelines. But don't throw the baby with the bath water please, what you see here is bad place and route software made by software engineers that haven't done their homework, not the state of the art of the discipline.
@Basement-Science
@Basement-Science Год назад
I'm calling BS on this actually being AI-based. If it is, this is the worst AI result I've seen in a long time. I think PCB layout is one of the easier problems for a REAL, modern AI to solve and will probably happen within the next 2 years.
@timturner7609
@timturner7609 Год назад
The thing that kills me is that it took over 2 hours to fail to route this extremely simple board. Auto router is supposed to be significantly faster than me. Otherwise whats the point
@EEVblog
@EEVblog Год назад
Yeah, it's slow, and only got to 82%.
@nameredacted1242
@nameredacted1242 Год назад
$$$
@nalinux
@nalinux Год назад
I remember routing in the 90's, even double side, with just a paper, a pen and an eraser :) Practice help, I'd had difficulties today.
@BustedJunkStudio
@BustedJunkStudio Год назад
Have you ever done real "rip up and reroute"? ya know, rubylith, black crape, register pin, scaled transparancies? Did tons of that for U.S. aerospace companies... those were the days... before auto route... before PCB software... for that matter, even before computers.
@EEVblog
@EEVblog Год назад
Yup!
@nameredacted1242
@nameredacted1242 Год назад
Laminated sheet on the floor PCB layout.
@FrankDrebin
@FrankDrebin Год назад
To produce better results model would consume way more computing resources than would cost to hire someone to route board manually, but maybe someday, in a galaxy far away..
@EdgarsLS
@EdgarsLS Год назад
I still route my PCB traces by hand, if you route the most important traces first it's not that bad.
@Back_In_Five_Minutes
@Back_In_Five_Minutes Год назад
The auto router didn't even write its own name using copper tracks! Amatuer.
@deadmanwalking6342
@deadmanwalking6342 Год назад
Muriel! Its terribruell!
@WereCatf
@WereCatf Год назад
I am *absolutely fricking terrible* at routing PCBs and I totally need someone to really hand-hold me through the process and teach me and yet.......even I can do better than that DeepPCB.
@Dreamlgider
@Dreamlgider Год назад
I remeber that episode well. 👍
@jardel_lucca
@jardel_lucca Год назад
Wait... so David's Altium license expired? LOL sorry KiCad fan boys go craze now. Let's switch to it outright!
@ZacksLab
@ZacksLab Год назад
for an AI to get sufficient training it would need data from the latest and greatest PCB designs in industry, this is more than just the gerbers, you'd need the EEs and layout engineers to label the data, this is not something you can just pay someone off the street $20/hr to tag. so I see two problems: 1. companies won't willfully give their IP 2. no one available to tag data and lastly, there are an infinite amount of constraints (mech outline, mounting, thermals, SI, PI, EMC, cost) that go into each PCB which make it both a hard science and an art form. routing a modern PCB is orders of magnitude harder than the self driving problem.
@michaelbell6602
@michaelbell6602 Год назад
It would be interesting to see some of the training data. What do the programmers tell it was a good pcb?
@nameredacted1242
@nameredacted1242 Год назад
A GREEN one...
@autarchex
@autarchex Год назад
A little learn-to-solder Christmas tree shaped board full of blinking red LEDs
@markg735
@markg735 Год назад
@@nameredacted1242 LOL! I think you mean more green corrosion than solder mask! That was really bad - I've seen auto routers from years ago do better.
@DanielSMatthews
@DanielSMatthews Год назад
AI really stands for *"artificial imagination",* it can cook up something for you to think about but *it is in no way "intelligent"* therefore it is up to you to take that *inspiration* that it provides and evaluate if it has any value before implementing a working version of it.
@LJR_LIMITED
@LJR_LIMITED Год назад
Exactly. Unless the machine can think, and reason like a human, lets stop calling it intelligence.
@PutItAway101
@PutItAway101 Год назад
Or maybe "artificial ideas" but it's got no sense of whether the ideas are good or bad
@DanielSMatthews
@DanielSMatthews Год назад
@@PutItAway101 Yes, or Artificial Idiocy. 😆
@SianaGearz
@SianaGearz Год назад
I say this a lot but Artificial Intelligence is fundamentally a misnomer: it's a field of computer science which collects algorithms known or expected to be of use to implement autonomous agents. Computer science is in turn not a science, it's a field of engineering, and it's not about computers, but about processing information, data, so a double misnomer. The field of engineering that does computers is computer engineering, a branch of electrical engineering. In turn autonomous agents are systems which exhibit useful, robust behaviours in the face of incomplete or partially incorrect data, which... well i guess you can see that but also it's far from intuitive naming. You shouldn't be surprised that in a young field family like that, everything is named wrong and weird. You can spend entirely too much breath getting hung up on that, or just disregard and focus on the problem at hand. Apropos problem at hand, formulating a set of pertinent inputs and outputs and incentives for a machine learning system makes all the difference. Trial and error autorouting is known as a horrible approach, so enhancing it with some sort of machine learning approach without showing how you want machine learning to improve on its particular deficiencies is going to be absolutely futile. If you started with a better model, like topological routing, you'd have a much harder problem to formulate regarding trying to improve it, but you'd also have a more solid foundation, where the algorithm is actually aware of space.
@DanielSMatthews
@DanielSMatthews Год назад
@@SianaGearz Did you get ChatGPT to write that gibberish for you? It isn't even a young field. The earliest successful AI program was written in 1951 by Christopher Strachey, later director of the Programming Research Group at the University of Oxford. Strachey's checkers (draughts) program ran on the Ferranti Mark I computer at the University of Manchester, England.
@Null_Experis
@Null_Experis Год назад
My preferred primary routing software is Common Sense 2023.
@nameredacted1242
@nameredacted1242 Год назад
What's common sense?
@Null_Experis
@Null_Experis Год назад
@@nameredacted1242 If you have to ask, you'll never know.
@KingNast
@KingNast Год назад
Try asking ChatGPT to create a schematic for a simple LCR circuit or something.. it's pretty funny
@treelineresearch3387
@treelineresearch3387 Год назад
It's clear that AI models of any sort don't actually have any sort of understanding of a problem domain, they just make structures vaguely similar to things they've "seen" before. Useful tool for certain tasks like machine vision and marketing wanktext generation, but hardly an "intelligence".
@SianaGearz
@SianaGearz Год назад
Understanding of problem domain has been achieved and demonstrated in many fields. And yet in many we aren't any closer than decades ago.
@treelineresearch3387
@treelineresearch3387 Год назад
@@SianaGearz >Understanding of problem domain has been achieved and demonstrated in many fields. By ML models? I see no evidence of this. CV models can be broken with simple structured noise, text models can do adequate summarization and transformation but generate grammatically passable nonsense text (or minimally transformed training data) when given abstract prompts, art generators produce basic anatomical flaws and nonsensical architecture, ML applied to code vulnerability analysis can detect pattern-based flaws but have no concept of even the simplest architectural flaws, etc. All of this indicates the models have no actual understanding of the domain they're operating in, they're just matching or generating data that looks similar to what they've seen before.
@blackIce504
@blackIce504 Год назад
Hi Dave i think its very narrow minded and small of Altium to want your money instead of giving you a license after all you have advertised there software on many occasions with giving it praise in many of the video's, it just shows Altium is not interested in individuals owning there software they just want the big corps or small business, as well they are not interested in people learning there software or Unistudents getting in the industry. To me this makes me want to further my self from Altium. I hope someone at Altium is watching especially the management morons on 100k
@EEVblog
@EEVblog Год назад
Seems like a marketing no-brainer, but they ghosted me.
@miceuz
@miceuz Год назад
KiCAD 7 will open Altium files (almost) flawlessly and will export DSN files. Just saying.
@Gengh13
@Gengh13 Год назад
@@EEVblog I noticed that once kicad became popular a lot of "influencers" on this field were given sponsorships by Altium.
@nameredacted1242
@nameredacted1242 Год назад
Damnit, the ONLY use for AI I have is not to make money like all of my coworkers seemingly on the side, but so that after 50 years of promises that computers can automate PCB layout, I can finally have an "automatically" laid out PCB board that performs well with EMI, SI, physics, current distribution, interference, cross-talk, and noise!!!!!!!!!!!!!!!!!!!!!!!!!!
@HM-Projects
@HM-Projects Год назад
tl;dr garbage in garbage out. I'm pretty sure the models DeepAI use are over hyped and poorly curated. Most of the chatgpt style systems incorporate massive datasets to learn and would be able to generate the optimal design based on the learning dataset used. Routing is no different at the higher level to forming coherent sentences within bounds of the required semantics - this one's a poor example of what state of the art AI is capable of.
@jort93z
@jort93z Год назад
"tl;dr garbage in garbage out" Bullshit, dave was a professional PCB designer for quite some time. He already optimized the placement of the components on the board for easier routing. This is just "Proper PCB in, Garbage out"
@HM-Projects
@HM-Projects Год назад
@@jort93z haha I meant to say garbage training data for DeepAI models 😂
@jort93z
@jort93z Год назад
@@HM-Projects I mean, I gotta assume they used proper pcb's for training too?
@HM-Projects
@HM-Projects Год назад
@@jort93z 🤷‍♂️ we don't know what dataset they trained the system on. It needs to learn the rules that people learn by reading through design principles (constraints) and best practices (examples) - overfitting is big problem, which is why complex systems like chatgpt are trained on massive datasets with additional fine tuning of constraints (weights) based on human guided heuristics.
@PhilfreezeCH
@PhilfreezeCH Год назад
What I really don‘t understand is why these autorouters seemingly don‘t use the schematic data to help them. You can infer quite a bit of decent placement and routing just from the schematic (if it is decent at least).
@Lyallsmail
@Lyallsmail Год назад
I'd love to see what happens if you ran it again. Would it then 'learn' from your previous ~49 failed solutions, and stumble across some better ones?
@Mr.Unacceptable
@Mr.Unacceptable Год назад
Why can't you set up AI with all the rules and standards and then tell it the circuits you want and it's purpose and have it create basic PCB's? Then work on more complicated boards then wait for it to fail and add the new rule or configure until it gets it right. Then make it more difficult till it fails add new rules and keep going until the AI understands any EE problem. Eventually creating its own projects and rules component uses you would never think of. Creating new and amazing circuits. humans would never think of doing and uses for components people would never think of. If not now I can see it happening soon.
@yummyzoot
@yummyzoot Год назад
I have been designing PCB'S up to 6 layer for 30 years with Orcad and more recently with Altium and never used auto router especially with Altium.
@brokenicry
@brokenicry Год назад
Up to 6 layers for 30 years? Damn I am on my 3rd year and I am already on 14 layers.
@orrbifold
@orrbifold Год назад
How could Autorouting and MaxSAT / MaxCut be better? Are there similar instances to this where it fails?
@NielsHeusinkveld
@NielsHeusinkveld Год назад
I think we're falling into the trap of thinking AI is amazing because it can talk the talk, but I very much doubt it can walk the walk for a lot of things any time soon.. or ever.
@fabimre
@fabimre Год назад
It is clear that for now we, human designers of electronic boards, won't be replaced (replaceable) for many years coming. As it seems AI gets better and better for Software Engineering, that doesn't mean AI can replace us in Hardware Engineering. Nothing weighs up to insight and experience!
@halimfusianto225
@halimfusianto225 Год назад
I studied AI in the 90's and at that time people started saying AI would die because it doesn't reflect how our brain works. Today, it's all AI logos and I say that all lie. It's just a computer algorithm. I prefer to enter what they said 'AI' to signal processing or signal and system. The last from me whether an AI is intelligent or not depends on the intelligence of the algorithm maker.
@oesjo
@oesjo Год назад
I sometimes use TopoR, it breeds very well if you set all the rules, without AI.
@Dmittry
@Dmittry Год назад
At least robots can't create new type of robots. For now...
@IanScottJohnston
@IanScottJohnston Год назад
Tried autorouting in all of the EDA's over the years, only ever worked for mass digital logic after hand routing the important stuff. Saying that I think it could be done but will need serious dedication, some serious modern AI folks to lock heads with PCB layout guys and eventually it will happen. Problem is the AI folks have bigger interests elsewhere........that's how I see it anyways.
@tahustvedt
@tahustvedt Год назад
Sometimes AI stands for Amazing Incompetence.
@PeetHobby
@PeetHobby Год назад
I always route everything by hand, tried autoroute function of eagle couple of times but never gave good results.
@gregreynolds5686
@gregreynolds5686 Год назад
Really interesting video - thanks Dave! I've built a few solvers for various combinatorial/mixed optimisation problems like this (notably register placement for hardware synthesis and node choice for network routing). In these applications, I found that the best way to get to a good solution is to write down all the heuristics that a human would use to make the choice and then try and embed them in the solver. This has two benefits: it makes the development easier to debug and it often reveals new rules that you might not have thought of (often as addendums to existing rules). The problem with starting from a computer science theoretical point of view is that it is often hard to embed heuristic rules afterwards. It is often much easier to accept a sub-optimal (in some-sense) solution from a heuristic based system than a result from an algorithm that can take hours to converge.
@mauricelovelock6861
@mauricelovelock6861 Год назад
Maybe you need to add your input to the AI algorithm! Some of the things missed would seem fairly easy to correct.
@lua-nya
@lua-nya Год назад
Seeing that Altium doesn't intend to give you an educational licence, will you be giving KiCAD a try?
@NixKanal528
@NixKanal528 Год назад
The best part is that this "AI" spent 2 hours of GPU computing time on a result worse than traditional autorouting.
@thomasives7560
@thomasives7560 Год назад
AI makes everything better, unless it doesn't. Great video, cheers!
@nameredacted1242
@nameredacted1242 Год назад
It is very good at deleting our comments for no freaking reason, for example...
@simontay4851
@simontay4851 Год назад
Makes it worse.
@CallousCoder
@CallousCoder Год назад
This is an argument I’ve been putting for against AI, especially since ChatGPT came in and is used by some for software engineering. I say that I don’t trust AI, because it doesn’t have contextual knowledge and multi domain knowledge, and it can’t unless you specifically add it. Us humans see a Nixie tube and go like: “high voltage high current wider trace”. These are the same net so try to make it “human readable by touring it similarly looking”. And component placement is both functionally important (and an AI doesn’t know how humans interact with an abstract thing like a clock) so it probably will choose a solution to reduce trace lengths over functional usability, which comes first for us humans. So AI it’s fun but it’s now even a useful tool now. I tested it in code generation and it’s flakey at best.
@darkguardian1314
@darkguardian1314 Год назад
14:20 People tend to micromanage and supervise things. When it comes to computers, I’ve learned to just let it work and do something else. It’s not going to goof off or take a coffee break when my back is turned.😂
@Lifeless11111
@Lifeless11111 Год назад
This might be a dumb thing to ask , but how does it know where to rout if it doesnt know the schematics or how it should work? thats what i find strange about autorouting ai's ... if you gonna rout something then you must know where to hook it up???
@johnsonlam
@johnsonlam Год назад
I guess it can only handle really really simple circuit, just for those absolute know nothing.
@LJR_LIMITED
@LJR_LIMITED Год назад
AI is lame
@pietheijn-vo1gt
@pietheijn-vo1gt Год назад
AI is the future
@treelineresearch3387
@treelineresearch3387 Год назад
@@pietheijn-vo1gt That's what marketing departments are saying so it must be true.
@LJR_LIMITED
@LJR_LIMITED Год назад
@@pietheijn-vo1gt if thats the future, we're all doomed
@pietheijn-vo1gt
@pietheijn-vo1gt Год назад
@@LJR_LIMITED maybe you are. The rest of us will be happier
@pietheijn-vo1gt
@pietheijn-vo1gt Год назад
@@treelineresearch3387 I am an EE and I am saying the future with AI is looking very bright.
@theelmonk
@theelmonk Год назад
I'm torn between thinking we look for a solution that appeals to aesthetics, which perhaps shouldn't influence the process, and appreciating the improvements certain aesthetics encourage such as short routes, reduced vias. etc. I wonder how many of these are simply that the router doesn't weight those features usefully and 'prefer' them over individual short-look-ahead solutions.
@therealjammit
@therealjammit Год назад
I'd like to see it try again but see if it can make every trace equal length. I want to see that fluster cluck.
@jamesblackwell5141
@jamesblackwell5141 Год назад
Dave, you are like my University Professor grading my calculus work! Seems like the AI needs experience and guidance. Instead of working with in rules and constraints, it keeps writing something down until something that passes for correct, gets excepted by the end user. (or at least that what it appears to be doing.
Далее
EEVblog 1537 - NEW PROJECT Enclosure Search FAIL
18:08
Watermelon magic box! #shorts by Leisi Crazy
00:20
Просмотров 18 млн
I tried using AI. It scared me.
15:49
Просмотров 7 млн
GAME OVER!? - A.I. Designs New ELECTRIC Motor
6:03
Просмотров 1,1 млн
EEVblog 1524 - The 10 CENT RISC V Processor! CH32V003
19:55
How AI 'Understands' Images (CLIP) - Computerphile
18:05
CrowdStrike IT Outage Explained by a Windows Developer
13:40