AI-designed chips are so weird that 'humans cannot understand them'
livescience.com
livescience.com
The final generation of the circuit was more compact than anything a human engineer would ever come up with (reducible to a mere 37 logic gates), and utilized all kinds of physical nuances specific to the chip it evolved on - including feedback loops, EMI effects between unconnected logic units, and (if I recall) operating transistors outside their saturation region.
Article: https://www.damninteresting.com/on-the-origin-of-circuits/
Paper: https://www.researchgate.net/publication/2737441_An_Evolved_...
Reddit: https://www.reddit.com/r/MachineLearning/comments/2t5ozk/wha...
The origin of circuits (2007) - https://news.ycombinator.com/item?id=18099226 - Sept 2018 (25 comments)
On the Origin of Circuits: GA Exploits FPGA Batch to Solve Problem - https://news.ycombinator.com/item?id=17134600 - May 2018 (1 comment)
On the Origin of Circuits (2007) - https://news.ycombinator.com/item?id=9885558 - July 2015 (12 comments)
An evolved circuit, intrinsic in silicon, entwined with physics (1996) - https://news.ycombinator.com/item?id=8923902 - Jan 2015 (1 comment)
On the Origin of Circuits (2007) - https://news.ycombinator.com/item?id=8890167 - Jan 2015 (1 comment)
That's not a lot of discussion—we should have another thread about this sometime. If you want to submit it in (say) a week or two, email hn@ycombinator.com and we'll put it in the second-chance pool (https://news.ycombinator.com/pool, explained at https://news.ycombinator.com/item?id=26998308), so it will get a random placement on HN's front page.
Other alternative is the image of pale guy with laptop on some beautiful beach or climbing some crazy peak. Same passion, just concentrated in 1 body.
The relativized timestamps are an artifact of the re-upping system. There are past explanations here: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que....
Sorry for the confusion! I know it's weird but the alternative turns out to be even more confusing and we've never figured out how to square that circle.
There is a comment here by me which says “2 hours ago”, I swear I wrote it longer ago than that - indeed, my threads page still says I wrote it 20 hours ago, so it is like part of the code knows when I really wrote it, another part now thinks I wrote it 18 hours later than I did…
Edit: I checked the code and the actual list is:
'(news item reply show ask active best over classic).Operating transistors outside the linear region (the saturated "on") on a billion+ scale is something that we as engineers and physicists haven't quite figured out, and I am hoping that this changes in future, especially with the advent of analog neuromorphic computing. The quadratic region (before the "on") is far more energy efficient and the non-linearity could actually help with computing, not unlike the activation function in an NN.
Of course, the modeling the nonlinear behavior is difficult. My prof would say for every coefficient in SPICE's transistor models, someone dedicated his entire PhD (and there are a lot of these coefficients!).
I haven't been in touch with the field since I moved up the stack (numerical analysis/ML) I would love to learn more if there has been recent progress in this field.
That is a common problem with fully free form machine learning solutions: They can stumble upon something that technically works in their training set, but any human who understood the full system would never actually use due to the other problems associated with it.
> The quadratic region (before the "on") is far more energy efficient
Take a look at the structure of something like CMOS and you’ll see why running transistors in anything other than “on” or “off” is definitely not energy efficient. In fact, the transitions are where the energy usage largely goes. We try to get through that transition period as rapidly as possible because minimal current flows when the transistors reach the on or off state.
There are other logic arrangements, but I don’t understand what you’re getting at by suggesting circuits would be more efficient. Are you referring to the reduced gate charge?
Sounds like you might be thinking of power electronic circuits rather than CMOS. In a CMOS logic circuit, current does not flow from Vdd to ground as long as either the p-type or the n-type transistor is fully switched off. The circuit under discussion was operated in subthreshold mode, in which one transistor in a complementary pair is partially switched on and the other is fully switched off. So it still only uses power during transitions, and the energy consumed in each transition is lower than in the normal mode because less voltage is switched at the transistor gate.
Right, but how do you get the transistor fully switched off? Think about what happens during the time when it’s transitioning between on and off.
You can run the transistors from the previous stage in a different part of the curve, but that’s not an isolated effect. Everything that impacts switching speed and reduces the current flowing to turn the next gate on or off will also impact power consumption.
There might be some theoretical optimization where the transistors are driven differently, but at what cost of extra silicon and how delicate is the balance between squeezing a little more efficiency and operating too close to the point where minor manufacturing changes can become outsized problems?
The behavior could change from one manufacturing run to another. The behavior could disappear altogether in a future revision of the chip.
The behavior could even disappear if you change some other part of the design that then relocated the logic to a different set of cells on the chip. This was noted in the experiment where certain behavior depended on logic being placed in a specific location, generating certain timings.
If you rely on anything other than the behavior defined by the specifications, you’re at risk of it breaking. This is a problem with arriving at empirical solutions via guess and check, too.
Ideally you’d do everything in simulation rather than on-chip where possible. The simulator would only function in ways supported by the specifications of the chip without allowing undefined behavior.
That's the overfitting they were referring to. Relying on the individual behaviour is the overfit. Running on multiple chips (at learning time) reduces the benefit of using an improvement that is specific to one chip.
You are correct that simulation is the better solution, but you have to do more than just limit to the operating range of the components, you have to introduce variances similar to the specified production precision. If the simulator made assumptions that the behaviour of two similar components was absolutely identical to each other then within tolerance manufacturing errors could be magnified.
There is also problems with chips aging, related circuitry (filtering capacitors age too, and the power gets worse over time), operating temperature, faster degradation from unusual conditions...
As long as all you look at is inputs and outputs, it is impossible to not to overfit. For a robust system, you need to look at the official, published spec, because that's what the manufacturer guarantees and tests for - and AI cannot do this.
Why not? All you have to do is run it in a simulator.
Such circuits are useful for something powered by a battery that must have a lifetime measured in years, but they cannot operate at high speeds.
Do fuzz pedals count?
To be fair, we know they work and basically how they work, but the sonic nuances can be very hard to predict from a schematic.
The whole point of switching transistors is that we _only_ operate them in the fully saturated on or totally off IV-curve region?
Subthreshold circuits are commercially available, just unpopular since all the tools are designed for regular circuits. And the overlap between people who understand semiconductors and people who can make computational tools is very limited, or it's just cheaper to throw people+process shrinks at the problem.
Closest I've found to the old list I used to go to is this: https://heystacks.com/doc/186/specification-gaming-examples-...
After fixing those bugs, I mostly struggled with it taunting me. Like building a wheel with all the spokes going from the hub and straight up to the rim. It of course would break down when rolling, but on the objective of "how much load can it handle on the bike" it again out-competed every other wheel, and thus was at the pareto-front of that objective and kept showing up through all my tests. Hated that guy, heh. I later changed it to test all wheels in at least 4 orientations, it would then still taunt me with wheels like (c) in this figure[1], exploiting that.
[0]: https://news.ycombinator.com/item?id=10410813 [1]: https://imgur.com/a/LsONTGc
And yes you can fix the bug but the bike wheel guy shows you there will always be another bug. We need a paper/proof that invents a process that can put an AI-supported (non human intervention) finite cap or limiter or something on the possible bug surface
Conglomerate developed an AI and vision system that you could hook up to your Anti-aircraft systems to eliminate any chance of friendly fire. DARPA and the Pentagon went wild, pushing the system through test so they could get to the live demonstration.
They hook up a live and load up dummy rounds system, fly a few friendly planes over and everything looks good however when they fly a captured Mig-21 over the system fails to respond. The Brass is upset and the engineers are all scratching their heads trying to figure out what is going on but as the sun sets the system lights up, trying to shoot down anything in the sky.
They quickly shut down the system and do a postmortem, in the review they find that all the training data for friendly planes are perfect weather, blue sky overflights and all the training data for the enemy are nighttime/ low light pictures. The AI determined that anything fling during the day is friendly and anything at night is terminate with extreme prejudiced.
like they're just not that many pictures of this stuff. we needed hundreds, ideally thousands, and had, maybe, a dozen or so.
okay, so we'll get a couple of talented picture / design guys from the UI teams to come out and do a little photoshop of the images. take some of the existing ones, play with photoshop, make a couple of similar-but-not-quite-the-same ones, and then hack those in a few ways. load those into the ML and tell em they're targets and to flag on those, etc. etc.
took a week or two, no dramas, early results were promising. then it just started failing.
turns out we ran into issues with two (2) pixels, black pixels against a background of darker black shades, that the human eye basically didn't see or notice; these were artifacts from photoshopping, and then re-using parts of a previous image multiple times. the ML started determining that 51% or more of the photos had those 2 pixels in there, and that photos lacking those -- even when painfully obvious to the naked eye -- were fails.
like, zooming in at it directly you're like yea, okay, those pixels might be different, but otherwise you'd never see it. thankfully output highlighting flagged it reasonably quickly but still took 2-3 weeks to nail down the issue.
If anything, AI could help by "understanding" the real objective, so we don't have to code these simplified goals that ML models end up gaming no?
I feel that a good first step would be to introduce some kind of random jitter into the simulation. Like, in case of the wheels, introduce road bumps, and perhaps start each run by simulating dropping the wheel from a short distance. This should quickly weed out "too clever" solutions - as long as the jitter is random enough, so RL won't pick up on it and start to exploit its non-randomness.
Speaking of road bumps: there is no such thing in reality as a perfectly flat road; if the wheel simulator is just rolling wheels on mathematically perfect roads, that's a big deviation from reality - precisely the kind that allows for "hacky" solutions that are not possible in the real world.
We do understand the "real objectives", and our inability to communicate this understanding to hill-climbing algorithms is a sign of the depth of our understanding. There's no reason to believe that anything we yet call "AI" is capable of translating our understanding into a form that, magically, makes the hill-climbing algorithm output the correct answer.
Feels halting problem-esque.
So to the OP's example "optimise a bike wheel", technically an AI should be able to understand whether a proposed wheel is good or not, in a similar way to a human.
Yes, I have an intuition that this is NP hard though
If you're using a typical PC (or $deity forbid, a phone) with a typical consumer OS, there's several sources of variability between your controller and the visual feedback you receive from the game, each of which could randomly introduce delays on the order of milliseconds or more. That "randomly" here is the key phrase - lag itself is not a problem, the variability is.
It turned out to have learned to keep the car spinning on its nose for stability, and timing inputs to upset the spinning balance at the right moment to touch the ground with the tire to shoot off in a desired direction.
I think the overall lesson is that, to make useful machine learning, we must break our problems down into pieces small enough that an algorithm can truly "build up skills" and learn naturally, under the correct guidance.
It's a neat toy (not really "useful" nor too much of a "game") for generating interest in how neural nets work.
This was some old website. A coworker sent it to me on Hipchat at my previous job about 10 years ago. And finding anything online older than like 5 years is nearly impossible unless you have the exact URL on hand.
If you think about it, even using the term "perverse" is a result of us antropomorphizing any object in the universe that does anything we believe is on the realm of things humans do.
Of course we do use perverse strategies and glitches in adversarial multiplayer all the time.
Case in point chainsaw glitch, tumblebuffs, early hits and perfect blocks in Elden Ring
The interesting thing to me now is... that research is very much a product of the right time. The specific Xilinx FPGA he was using was incredibly simple by today's standards and this is actually what allowed it to work so well. It was 5v, and from what I remember, the binary bitstream to program it was either completely documented, or he was able to easily generate the bitstreams by studying the output of the Xilinx router- in that era Xilinx had a manual PnR tool where you could physically draw how the blocks connected by hand if you wanted. All the blocks were the same and laid out physically how you'd expect. And the important part is that you couldn't brick the chip with an invalid binary bitstream programming. So if a generation made something wonky, it still configured the chip and ran it, no harm.
Most all, if not all modern FPGAs just cannot be programmed like this anymore. Just randomly mutating a bitstream would, at best, make an invalid binary that the chip just won't burn. Or, at worst, brick it.
The science is no longer cutting edge (some are over twenty years old) but the deeper principles hold and Discworld makes for an excellent foil to our own Roundworld, just as Sir Pratchett intended.
Indeed, the series says more about us as humans and our relationship to the universe than the universe itself and xe love that.
There is actually a whole lot of variance between individual silicon chips, even two chips right next to each other on the wafer will preform slightly differently. They will all meet the spec on the datasheet, but datasheets always specify ranges, not exact values.
That said, it seems like it would be very doable to first evolve a chip with the functionality you need in a single environment, then slowly vary parameters to evolve it to be more robust.
Or vice versa begin evolving the algorithm using a fitness function that is the average performance across 5 very different chips to ensure some robustness is built in from the beginning.
Injecting noise and other constraints (like forcing it place circuits in different parts of the device) are totally valid when it needs to evolve in-place.
For the most part, I think it would be better to run in a simulator where it can evolve against an abstract model, then it couldn't overfit to the specific device and environment. This doesn't work if the best simulator of the system is the system itself.
https://en.wikipedia.org/wiki/Robust_optimization
https://www2.isye.gatech.edu/~nemirovs/FullBookDec11.pdf
Robust Optimization https://www.youtube.com/watch?v=-tagu4Zy9Nk
That's was truly interesting about it to me.
There were also a bunch of cells that had inputs, but no outputs. When you disconnected them... the circuit stopped working. Shades of "magic" and "more magic".
I've never worked with it, but I've had a fascination with GA/GP ever since this paper/the Tierra paper. I do wonder why it's such an attractive technique - simulated annealing or hill climbing just don't have the same appeal. It's the biological metaphor, I think.
But mistakes aside, what would it be if the chips from the factory could learn / fine-tune how to work (better) , on the run..
Or maybe you were getting a leak from the audio signal before modulation, e.g. via power lines or something.
The part that I always remember is that if they changed the temperature in the room by a couple degrees the chip would stop working.
The one thing you generally want for circuits is reproducibility.
Now, you can impose additional constraints to the problem if you want to keep it using transistors properly or to not use EM side effects, etc.
This headline is mostly engagement bait as it is first nothing new and second, it is actually fully controllable.
https://en.wikipedia.org/wiki/Hazard_(logic)
Yes you can go even more abstract and ignore time flow completely and have pure boolean logic, but then it can't be practically implemented at all.
Not sure that's working out well for democracy
Basically brute force + gradient descent.
It's even more convoluted when also re-interpreted into C language.
Designs nobody would ever come up with, but equivalent and even with compiler tricks we'd not have known.
I think I'm going to simply climb up a tree and wait this one out.
What if it invented a new kind of human, or a different kind of running over?
Large Language Vulture Model?
https://en.wikipedia.org/wiki/LLVM
Released approx 20 years before ASGSI (Artificial Super General Super Intelligence)
Isn't ASGSI just a marketing term, while ASSGSI is the one as smart as a human?
On a very high level, the role of deep learning here seems similar to AlphaGo (which is also the combination of a less novel generic optimization algorithm, Monte Carlo tree search, with deep learning-provided predictions). I don't think anyone would debate that AlphaGo is fundamentally an AI system. Maybe if we are to be really precise, both of these systems are optimization guided by heuristics provided by deep learning.
At least, that used to be the case before the current AI summer and hype.
But I'm skeptical of calling most optimizers AI.
Perhaps one day we'll understand what goes on in our brains to the same extent.
I would not say the bar is moving along with "things computers can do".
Which one? Fuzzy logic, ANNs, symbol processing, expert systems, ...?
It's always entertaining to watch the hype cycles. Hopefully this one will have a net positive impact on society.
Marvin Minsky -- father of classical AI -- pointed out that intelligence is a "suitcase word" [1] which can be stuffed with many different meanings.
Basically, we call things AI, that we are too stupid to understand.
It probably uses a relatively simple hill climbing algorithm, but I would agree that it could still be classified as machine learning. AI is just the new, hip term for ML.
(Note - I may have misunderstood your meaning btw, if so apologies!)
https://www.cnbc.com/2017/12/21/long-island-iced-tea-micro-c...
Now they start being called AI, because AI is artificial human thought and those things are that.
What changed? Our perception of the meaning of "thought".
A fairly simple set of if statements is AI (an "expert system" specifically).
AI is _not_ just talking movie robots.
And you have to be doing something rather specific with a pile of if statements for it to count as an expert system.
Clippy was an AI but he wasn't an AI.
For some of us, your objection sounds as silly as if we were to tell some student they didn't use algebra, because what they wrote down isn't "an algebra".
This is "just" an optimizer being used in conjunction with a simulation, which we've been doing for a long, long time. It's cool, but it's not AI.
Optimization is a branch of mathematics concerned with optimization techniques, and the analysis and quality of possible solutions. An optimizer is an algorithm concerned with finding optima of functions. You don't get to rewrite decades of mathematical literature because it gives you AI vibes.
Yeah, you need an optimizer to train AI, but it's not the AI part. Most people would refer to and understand AI as being the thing they interact with. You can't interact with an optimizer, but you can interact with the function that is being optimized.
I'm honestly stunned that this is even a controversial position.
The CS literature has used AI to refer to nearly any advanced search algorithm, e.g. during the prior AI boom and bust cycle around symbolic AI. In this literature, it is idiomatic that AI techniques are the broad category of search and optimization techniques. There wasn't necessarily any "training" involved, as machine learning was considered part of the AI topic area but not its entirety.
It's always been acknowledged that various disciplines had significant crossover, e.g. ML and operations research, but I've never seen anyone claim that optimization is AI until recently.
Ian Goodfellow's book is, what, 10 years old at this point? The fundamentals in that book cover all of ML from classical to deep learning, and pretty clearly enumerate the different components necessary to do ML, and there's no doubt that optimization is one of them. But to say that it is AI in the way that most people would probably understand it? It's a stretch, and hinges on whether you're using AI to refer to the collection of techniques or the discipline, as opposed to the output (i.e. the "intelligence"). I, and I'd argue most people, use AI to refer to the latter, but I guess the distinction between the discipline and the product is vague enough for media hype.
And to be clear, I'm not trying to take away from the authors. Optimization is one of the tools I like to throw around, both in my own projects and professionally. I love seeing cool applications of optimization, and this definitely qualifies. I just don't agree that everything that uses optimization is AI, because it's an unnecessary blurring of boundaries.
I'm actually getting old and grumpy. And I'm talking about common usage since I was an undergraduate taking AI courses 30+ years ago and surveying CS literature, some of which predated my courses by another 10-30 years... I recall one visiting professor who was an "AI researcher" at NASA, and his work was planners and optimizers for spacecraft operations.
But getting back to the basic point: there is a semantic difference of having a grammatical article, which for others here carries more significance than you seem to admit. "Artificial intelligence" vs "An artificial intelligence".
AI as a term was invented to describe exactly this. Any usage of the term AI which does not include this is a misunderstanding of the term. You don't get to rewrite decades of computer science literature because it fails to give you AI vibes.
> Most people would refer to and understand AI as being the thing they interact with. You can't interact with an optimizer, but you can interact with the function that is being optimized.
I have no idea what you mean by "interact with" in this context. You can use a non AI optimizer to train an AI. You can also create an AI that serves the function of an optimizer. Optimization is a task, artificial intelligence is an approach to tasks. A neural network trained to optimize chip design is exactly as much an AI as a neural network trained to predict protein folding or translate speech.
> "The AI effect" refers to a phenomenon where either the definition of AI or the concept of intelligence is adjusted to exclude capabilities that AI systems have mastered. This often manifests as tasks that AI can now perform successfully no longer being considered part of AI, or as the notion of intelligence itself being redefined to exclude AI achievements.[4][2][1] Edward Geist credits John McCarthy for coining the term "AI effect" to describe this phenomenon.[4]
> McCorduck calls it an "odd paradox" that "practical AI successes, computational programs that actually achieved intelligent behavior were soon assimilated into whatever application domain they were found to be useful in, and became silent partners alongside other problem-solving approaches, which left AI researchers to deal only with the 'failures', the tough nuts that couldn't yet be cracked."[5] It is an example of moving the goalposts.[6]
> Tesler's Theorem is:
> AI is whatever hasn't been done yet.
> — Larry Tesler
since 2021/whenever LLM applications got popular everyone has been mentioning AI. this happened before during the previous mini-hype cycle around 2016-ish where everyone was claiming neural networks were “AI”. even though, historically, they were still referred to by academics as machine learning.
no-one serious, who actually works on these things; isn’t interested in making hoardes of $$$ or getting popular on social media, calls this stuff AI. so if there were a wikipedia link one might want to include on this thread, I’d say it would be this one — https://en.m.wikipedia.org/wiki/Advertising
because, let’s face it, advertising/marketing teams selling products using linear regression as “AI” are the ones shifting the definition into utter meaninglessness.
so it’s no surprise people on HN, some of whom actually know stuff about things, would be frustrated and annoyed and get tetchy about calling things “AI” (when it isn’t) after 3 sodding years of this hype cycle. i was sick of it after a month. imagine how i feel!
- edit, removed line breaks.
The reason why the "AI" goalposts always seem to shift -- is not because people suddenly decide to change the definition, but because the definition gets watered down by advertising people etc. Most people who know anything call this stuff deep learning/machine learning to avoid that specific problem.
Personally, I can't wait for people who work in advertising to get put on the same spaceship as the marketers and telephone sanitizers. (It's not just people in advertising. i just don't like advertising people in particular).
--
I'd argue machine learning is actually a sub-field within statistics. but then we're gonna get into splitting hairs about whether Serena Williams is an athlete, or a professional sports player. which wasn't really the point I was making and isn't actually that important. (also, it can be a sub-field of both, so then neither of us is wrong, or right. isn't language fun!).
On the contrary. The "AI effect" is an example of attempting to hold others to goalposts that they never agreed to in the first place.
Instead of saying "this is AI and if you don't agree then you're shifting the goalposts" instead try asking others "what future developments would you consider to be AI" and see what sort of answers you get.
Meanwhile I do not consider gradient descent (or biased random walk, or any number of other algorithms) to be AI.
The exact line is fuzzy. I don't feel like most simple image classifiers qualify, whereas style transfer GANs do feel like a very weak form of AI to me. But obviously it's becoming quite subjective at that point.
As to my own goalposts, those haven't changed in quite some time. If I did happen to disagree with you though, well, someone disagreeing with you does not on its own imply that they've recently moved their own goalposts.
You seem to be assuming that there's some universally accepted definition that's been changing over time but that doesn't seem to be the case to me. What I see is a continual stream of bogus and overhyped claims that get rebuked.
If anything it's the people trumpeting AI this and AI that who are trying very hard to shift the goalposts for their own benefit.
The original goalpost was AI. You moved the goal post to general/strong AI. No one was claiming to be working on that back in the day even if they hoped their efforts would be along the path to that eventually. If you asked someone even just a few years ago when general AI would become possible, I think most people would have said a date after 2050 if they thought it was possible at all.
> You seem to be assuming that there's some universally accepted definition that's been changing over time but that doesn't seem to be the case to me
I can guarantee you that if you asked someone what AI meant in 1995 it would be radically different than what someone would answer in 2025. Obviously at both periods of time the boundaries of the definition were fuzzy, but the entire fuzzy blob has undeniably shifted radically.
> What I see is a continual stream of bogus and overhyped claims that get rebuked. If anything it's the people trumpeting AI this and AI that who are trying very hard to shift the goalposts for their own benefit.
People claiming AI is more capable than it really is moves the goal posts further away. If I falsely claim I have an AI that can out-litigate the best lawyers in the world, that certainly makes a real AI that can get a passing grade in an introductory law school class a lot less impressive. No one makes any money from claiming their product will underdeliver compared to what people expect.
Even if we happened to disagree about that clarification (although we appear to agree?) that would not on its own imply that any shifting of goalposts had occurred. The "original goalpost" of which you speak is not attributed to me. To imply that I once held a particular view is to straw man me. If you want to know what I thought in the past then just ask!
I'd also like to point out that a change in the common usage of a term is not the same thing as the shifting of goalposts. I don't believe that happened here but it bears pointing out nonetheless.
> asked someone what AI meant in 1995
Who is the someone? I wouldn't expect a layman, either then or now, to have an even remotely rigorous working definition. This is important because if you are going to claim that goalposts have shifted then you're going to need to be clear about whose goalposts and what exactly they were.
> the boundaries of the definition were fuzzy, but the entire fuzzy blob has undeniably shifted radically
It seems we have a fundamental disagreement then. From my perspective the term "AI" in popular culture brought to mind an expert system conversing proficiently in natural language in both the 90s and today. That is to say, a strong and general AI. I think that most laymen today would classify something like chatgpt as AI, but if pressed with examples of some of its more egregious logical failures would probably become confused about the precise definition of the term.
Meanwhile the technical definition has always been much more nuanced and similarly appears to me to have remained largely unchanged. If anything I think the surprising revelation has been that you can have such extensive and refined natural language processing capabilities without the ability to reason logically.
You consider the example listed to be AI, but not general AI. You believe that the pop culture definition of AI is general AI. Thus you don't believe those things meet the pop culture definition of AI. The discrepancy between your definition of AI and the pop culture definition of AI proves that somebody moved the goalposts.
I disagree with your assumption that the association of natural language processing with AI means that this has always been exclusively what AI referred to. However, working with that assumption, you still acknowledge that when presented with a system that does exactly that, people feel their definition needs to change to exclude it.
Realistically though, I think pop culture largely thought of AI the way it was presented in scifi stories - a cold, calculating thing that analyzed data and came to decidedly non-human conclusions based on it. Skynet's probably the canonical example. The idea that an AI needs to understand information in the same way we do was definitely not always the case.
Now I’m imagining antennas breeding and producing cute little baby antennas that (provided they’re healthy enough) survive to go on to produce more baby antennas with similar characteristics, and so on…
It’s a weird feeling to look at that NASA spacecraft antenna, knowing that it’s the product of an evolutionary process in the genuine, usual sense. It’s the closest we can get to looking at an alien. For now.
J. R. Koza, F. H Bennett, D. Andre, M. A. Keane, and F. Dunlap, “Automated synthesis of analog electrical circuits by means of genetic programming,” IEEE Trans. Evol. Comput., vol. 1, pp. 109–128, July 1997. https://dl.acm.org/doi/10.1109/4235.687879
These are highly complicated pieces of equipment almost as complicated as living organisms.
ln some cases, they've been designed by other computers.
We don't know exactly how they work.
Westworld, 1973That is, people have worked with aspects of physics and horticulture to use long before understanding the science. Also, with varying success.
Could LLM-generated AI artifacts be thought of in similar lines?
IIRC this was also tried at NASA, they used some "classic" genetic algorithm to create the "perfect" antenna for some applications, and it looked unlike anything previously designed by engineers, but it outperformed the "normal" shapes. Cool to see deep learning applied to chip design as well.
What I found absolutely amazing when reading about this, is that this is exactly how I always imagined things in nature evolving.
Biology is mostly just messy physics where everything happens at the same time across many levels of time and space, and a complex system that has evolved naturally appears to always contain these super weird specific cross-functional hacks that somehow end up working super well towards some goal
It's mentioned in a sister comment: https://www.damninteresting.com/on-the-origin-of-circuits/
They had to redo the experiment on simulated chips.
https://scholar.google.com/citations?user=5UOUU7MAAAAJ&hl=en
> "Not only did the chip designs prove more efficient, the AI took a radically different approach — one that a human circuit designer would have been highly unlikely to devise."
> That is simply not true... more likely, a human circuit designer would not be allowed to present a radical new design paradigm to his/her superiors and other lead engineers. (a la Edison, Westinghouse, Tesla, Da Vinci, et-al.)
Let's see how well that chip does if made by the fab. (I doubt they'd actually make it, likely there are a thousand design rule checks it would fail)
If you paid them to over-ride the rules at make it anyway, I'd like to see if it turned out to be anything other than a short-circuit from Power to Ground.
I'm skeptical that these pixelated structures are going to turn out anything better than the canonical shapes. They look cool but may just be "weird EM tricks", deconstructing what doesn't really need to be. Anyone remember the craze for fractal antennas?
I always imagined if you could have some super mind build an entire complex system, it would find better solutions that got around limitations introduced by the need to make engineering accessible to humans.
I am sure there are analogous problems in the digital simulation domain. Without thorough oversight and testing through multiple power cycles, it's difficult to predict how well the circuit will function, and how incorporating feedback into the program will affect its direction, if not careful, causing the aforementioned strange problems.
Although the article mentions corrections to the designs, what may be truly needed is more constraints. The better we define these constraints, the more likely correctness will emerge on its own.
This problem may have a relatively simple fix: have two FPGAs – from different manufacturing lots, maybe even different models or brands – each in a different physical location, maybe even on different continents. If the AI or evolutionary algorithm has to evolve something that works on both FPGAs, it will naturally avoid purely local stuff which works on one and not the other, and produce a much more general solution.
The problems just have to be uncorrelated.
I can see it already: cloud provider offers orbital FPGAs for testing your AI hardware designs
For a system you completely don't understand, especially when the prior work on such systems suggests a propensity for extremely hairy bugs, spot-checking the edge cases doesn't suffice.
And, IMO, bugs are usually much worse the lower down in the stack they appear. A bug in the UI layer of some webapp has an impact and time to fix in proportion to that bug and only that bug. Issues in your database driver are insidious, resulting in an unstable system that's hard to understand and potentially resulting in countless hours fixing or working around that bug (if you ever find it). Bugs in the raw silicon that, e.g., only affect 1 pair of 32-bit inputs (in, say, addition) are even worse. They'll be hit in the real world eventually, and they're not going to be easy to handle, but it's simultaneously not usually practical to sweep a 64-bit input space (certainly not for every chip, if the bug is from analog mistakes in the chip's EM properties).
(forgive me, my fellow HNers...)
I think this is an example of mystifying-for-marketing as used in academia, like portraying this research as some breakthrough at a level that exceeds human understanding. IMHO practitioners of science should be expected to do better than this.
And of course, Netflix released audio descriptions post haste once the headlines hit…turns out it was trivial all along.
The moral of the story is, if you want it in the press, make it outrageous first.
I also wrote programs that simulated classic game shows like the 3 doors, where you either stay with one door or change door. After running the simulation one million time it ended up with 66% chance of winning if you changed door. The teacher of course didn't believe me as it was too hard a problem for a highscooler to solve, but many years later I got it confirmed by a math professor that prooved it.
Computers are so fast that you don't really need AI learning to iterate, just run a simulation randomly and you will eventually end up with something very good.
I think this might be a use case for quantum computers, so if you have a quantum computer I'm interested to work with you.
"The surprising creativity of digital evolution: A collection of anecdotes from the evolutionary computation and artificial life research communities"
It's religion that claims reality is beyond human understanding, it's not something scientists should be doing.
When I got it, one part of it was a single Perl file with about 5k lines of code, with 20+ variables visible in the whole file, with 10+ levels of nested loops, basically all of them with seemingly random "next LABEL" and "last LABEL" statements, which are basically slightly-constrained GOTOs. Oh, and the variable names very mostly meaningless to me (one or two letters).
This was only a small part of my job, over the years I've managed to reduce this mess, broke out some parts into smaller functions, reduced the scope of some variables etc. but a core remains that I still don't really understand. There's some mental model deep in the original programmer's mind that I simply cannot seem to grasp and that the code structure is based on.
(We're now replacing this whole thing by cleaner re-implementation, with unit tests, a less idiosyncratic structure, and more maintainers).
Now imagine what it must feel like if the original programmer wasn't human, but some alien mind that we're even further from understanding.
If you want the highest chance of success, use a reasoning model (o3-mini high, o1 pro, r1, grok 3 thinking mode) to create a detailed outline of how to implement the feature you want, then copy paste that into composer.
It one shots a lot of greenfield stuff.
If you get stuck in a loop on an issue, this prompt I got from twitter tends to work quite well to get you unstuck: "Reflect on 5-7 different possible sources of the problem, distill those down to 1-2 most likely sources, and then add logs to validate your assumptions before we move onto implementing the actual code fix."
Just doing the above gets me through 95% of stuff I try, and then occasionally hopping back out to a reasoning model with the current state of the code, errors, and logs gets me through the last 5%.
But please: would you prefer something else?
Just last night I took a similar approach to arriving a number of paths to take when I shared my desired output with a knowledge graph that I had populated and asked the AI to fill in the blank about the activities that would lead a user to my desired output. it worked! I got a few none-corralative gaps that came up as well and after some fine tuning, got included in the graph to enrich the contentious output.
I feel this is a similar approach and it's our job to populate and understand the gaps in between if we are trying to understand how these relationships came to existence. a visual mind map of the nodes and the entire network is a big help for a visual learner like myself to see the context of LLMs better.
anyway, the tool I used is InfraNodus and am curious if this community is aware of it, I may have even discovered it on HN actually.
Our vision for a Utopian state run by autonomous AI's included building a web browser. So we did so. It barely works.
Today's write-up: https://medium.com/@rviragh/our-new-ai-generated-browser-bar...
https://www.genetic-programming.com/jkpdf/gecco2000antenna.p...
there should be a word for this process of making components efficiently work together, like 'optimization' for example
--The last question by Isaac Asimov
On a lark, I asked Deep Seek to implement the relevant functions yesterday, and it spat them out. Not only were they correct, they came with a very good low level description of what the code was doing, and why -- i.e. all of the stuff my head was against the desk for while I was figuring it out.
If I wanted to implement, say, an EKF tomorrow, I have zero doubts that I could do it on my own if I had to, but I'm also 99% sure Deep Seek could just spit it out and I'd only have to check it and test it. It's not a substitute for understanding, and knowing the right questions to ask, but it is tremendously powerful. For the stuff I'm usually doing, which is typically mathematically demanding, and for which implementation can often be harder than checking an existing implementation is correct, it's a tremendous productivity gain.
Its great at implementing functions.
But NOT great at implementing non-toy programs according to a complex spec.
it's definitely a productivity enhancer but I think it's the equivalent of a power tool to a carpenter.
it's a good productivity enhancer but doesnt replace their job
:-|
ship it
So? Nothing.
Has anyone considered debug? Of course the bot will do that too, right?