[HN Gopher] THAT: A brand new analog computer
       ___________________________________________________________________
        
       THAT: A brand new analog computer
        
       Author : CharlesW
       Score  : 202 points
       Date   : 2023-12-28 20:57 UTC (2 days ago)
        
 (HTM) web link (spectrum.ieee.org)
 (TXT) w3m dump (spectrum.ieee.org)
        
       | aappleby wrote:
       | My partner got me one for Christmas after I had oooed and aaaahed
       | over a prototype I saw once.
       | 
       | It is a fun and well-made toy, and it feels brain-stretchy in a
       | good way to try and understand how the examples work.
        
       | sgu999 wrote:
       | Is this showing up here because of a comment made about analog
       | computers on that USB-C charger post? [1] Spending a bit too much
       | time here, I keep on seeing what seems like logical connections
       | in-between comments and posts over a few days. But I guess I may
       | have overlooked this if I didn't read about it a couple days ago.
       | 
       | Anyway, I'm now intrigued enough to consider buying one.
       | 
       | [1] https://news.ycombinator.com/item?id=38778943
        
         | codezero wrote:
         | It's a common karma harvesting technique but also a good way to
         | get good content onto the front page. I often submit links I
         | see in comments and they tend to get a lot of upvotes because
         | others who think it's interesting submit the link too, and the
         | first submission gets an automatic upvote when others submit
         | it.
        
         | pests wrote:
         | My first thought too, and most likely. I wouldn't say there is
         | anything ill-intent about it, just people finding
         | subdiscussions interesting themselves.
        
         | CharlesW wrote:
         | Submitter here! I hadn't seen the post you linked to. This one
         | originally disappeared immediately, but moderators thought it
         | was interesting enough to pluck from the second chance pool.
         | https://news.ycombinator.com/item?id=26998308
        
       | jamesmurdza wrote:
       | Cool. I've been reading about analog computers recently, and
       | here's a little history:
       | 
       | 1936: Water integrator, used in USSR until the '80s:
       | https://en.wikipedia.org/wiki/Water_integrator
       | 
       | 1940s: Torpedo Data Computer:
       | https://en.wikipedia.org/wiki/Torpedo_Data_Computer
       | 
       | 1949: MONIAC, another water integrator:
       | https://en.wikipedia.org/wiki/Phillips_Machine
       | 
       | 1960s: Scanimate, of which there are still a couple in use:
       | https://en.wikipedia.org/wiki/Scanimate
       | 
       | Modern day: Slime molds, other biocomputers, and domino computer:
       | https://youtu.be/OpLU__bhu2w
       | 
       | And of course, quantum computers.
        
         | pkaye wrote:
         | US Navy Mechanical Computer training film from 1953.
         | 
         | https://www.youtube.com/watch?v=s1i-dnAH9Y4
        
           | bee_rider wrote:
           | I love the care that goes into the presentation in these old
           | videos.
           | 
           | Slow, with plenty of breaks to let your brain catch up,
           | usually filled with a nice graphical example to keep your
           | bring churning. Plenty of "why" explanation, in the
           | beginning. Authoritative, but not condescending. Just the
           | right amount of jargon.
        
         | alexott wrote:
         | There are also pneumatic computers. Here is the recent article:
         | https://cacm.acm.org/news/275366-pneumatic-computing-
         | gains-a..., but I remember (around 30 years ago) mentions of
         | them in the field of nuclear reactors...
        
         | acidburnNSA wrote:
         | Here's one from the 1960s used to determine the power
         | coefficient of reactivity for a sodium-cooled graphite
         | moderated reactor in Nebraska.
         | 
         | https://babel.hathitrust.org/cgi/pt?id=mdp.39015095040682&vi...
        
         | bjelkeman-again wrote:
         | A very nice and funny demonstration of the Moniac.
         | https://youtu.be/gkNaZJmii28?si=7SHd3R3xBFxc86HS
        
         | corethree wrote:
         | Quantum computing isn't an analog computer. It's not digital
         | either but it's definitely not analog. It has this thing called
         | qubits.
        
           | AlexErrant wrote:
           | Analog and digital quantum computing are distinct things
           | https://www.quera.com/glossary/analog-quantum-computing
        
         | zer00eyz wrote:
         | Tides!
         | 
         | https://en.wikipedia.org/wiki/Tide-predicting_machine
        
         | snowpid wrote:
         | anabrid, the computer behind THAT was funded by the German
         | govt's DARPA:
         | 
         | https://www.sprind.org/en/projects/ulmann/
        
       | tibbon wrote:
       | Can I connect this to my eurorack? Only kinda joking
        
         | kgwxd wrote:
         | Look Mum Analog Computer
        
         | aappleby wrote:
         | Yes
        
         | ano-ther wrote:
         | > Internally, the THAT represents quantities using a range
         | between -10 and +10 volts.
         | 
         | So it looks like you only need to attenuate that a bit to get
         | to Eurorack voltages.
        
           | atoav wrote:
           | Nope that should be fine. Most eurorack modules run on +-12V
           | rails, but the convention for output signals in the maximum
           | +-10V range (with trigger signals at 10V).
        
         | buescher wrote:
         | Sure. You can think of a modular synthesizer as a domain-
         | specific analog computer for audio signals.
        
       | crazygringo wrote:
       | Not knowing anything about the field, are there any practical
       | uses left for analog computation? Is there anything they can do
       | that isn't done just as effectively digitally by now?
        
         | d_silin wrote:
         | You can approximate low-precision digital operations with
         | analog at better energy efficiency. https://mythic.ai/ is
         | trying.
        
         | einpoklum wrote:
         | Potentially, lots! Whenever your computation allows for some
         | small error, or is performed on fractional values (e.g.
         | floating-point) - you could instead imagine doing it
         | analogically. Think of the possibilities of zero-cost atomic
         | addition in parallel, for example. Think about having "semi-
         | real" neuronal responses instead of simulating neural network
         | layers via precise binary computations. And then you can go
         | into more exotic things like computing by wave interference
         | patterns and such.
        
           | bee_rider wrote:
           | Is an analog computer more like a floating point operation,
           | or more like a fixed-point operation (that is; not
           | necessarily one without any decimal place, but maybe one
           | without an exponent field)?
           | 
           | IMO it is surprising fixed-point values don't come up more
           | often... I think we've accidentally translated a hardware
           | detail into our software. Floats are only necessary if we
           | have huge dynamic range.
        
             | einpoklum wrote:
             | > more like a floating point ... or more like a fixed-point
             | ... ?
             | 
             | It really depends on what kind of analog hardware you use.
             | Not exactly like either. You would different causes for
             | error: Thermal, inherent indeterminism of interactions,
             | decay/drift of value over time, boundary breaches with
             | values near extrema, etc.
             | 
             | > IMO it is surprising fixed-point values don't come up
             | more often
             | 
             | The C++ standard committee has seen a paper on adding those
             | to the language, as a library feature: https://www.open-
             | std.org/jtc1/sc22/wg21/docs/papers/2019/p00...
             | 
             | There's a kind-of-popular fixed-point-math library for the
             | language:
             | 
             | https://github.com/MikeLankamp/fpm
             | 
             | and I'm sure they have received some attention in other
             | languages.
        
         | atoav wrote:
         | Adding to the other positives listed here another one is low
         | latency. If you absolutely need to do it fast, analog computers
         | are hard to beat.
        
         | corethree wrote:
         | No there are no practical uses other than speed and energy
         | efficiency as analog computers can be fully simulated by
         | digital computers today. There's no clock speed in analog
         | computation. You feed in raw voltage into the inputs and you
         | get the resulting voltage from the outputs. So it's literally
         | the fastest possible result achievable with our current
         | electrical technology.
         | 
         | Analog computation is essentially functional programming.
         | 
         | You have inputs and outputs and for your results have to think
         | in terms of piping analog data through different compositions
         | of functional primitives to achieve your desired output.
         | 
         | There's no concept of "calling a function either" thus
         | recursion is replaced with what we term as "feedback loops".
         | 
         | Additionally all forms of computational state (aka memory)
         | other then initial values will essentially be replaced by
         | feedback loops. There's no discrete step to access a
         | computational result in an analog computer thus in order to
         | access a previous computational result the only way is to
         | literally feed output back into the input. At least in typical
         | functional programming you have a stack where you can store and
         | access previous state. With analog computing the "purity" goes
         | to the next level.
         | 
         | Likely from this description you will see the obvious solution
         | to this problem is some sort of hybrid machine that executes
         | procedures but also stores and produces analog results. It
         | doesn't exist yet but I feel it will look like an fpga. Maybe
         | be call it an fpoa. Field programmable op amps.
        
           | uticus wrote:
           | As pointed out in another comment on this post [0], it would
           | be an "FPAA," [1] and it has been manufactured.
           | 
           | [0] https://news.ycombinator.com/item?id=38812160
           | 
           | [1] https://en.m.wikipedia.org/wiki/Field-
           | programmable_analog_ar...
        
             | corethree wrote:
             | Oh didn't know this.
        
           | dahart wrote:
           | Don't speed and efficiency make up the entire set of
           | practical uses for digital computing? I don't know what it
           | means to say "No there are no practical uses other than
           | speed". That sounds like the answer summary is "Yes". ;)
           | 
           | > There's no concept of "calling a function either"
           | 
           | This is true for the THAT machine in the article, but your
           | comment seems to be making a lot of assumptions about analog
           | that aren't necessarily true. Digital computing is an
           | abstraction over analog circuits, and it can be done at a
           | higher level than, say, CMOS logic gates. We definitely do
           | know how to build analog computers that have function calls.
        
             | analog31 wrote:
             | >>> Don't speed and efficiency make up the entire set of
             | practical uses for digital computing?
             | 
             | A couple more uses: First is "noise immunity:" The fact
             | that you can perform a computation twice and get the same
             | answer, and chain multiple processing steps together with
             | no degradation. Though to be fair this includes digital
             | computation by pencil and paper.
             | 
             | Second, complex operations that simply can't be
             | conceptualized in the analog domain.
        
               | dahart wrote:
               | You're totally right about chaining and repeated
               | computations, however I think it's possible to do this
               | with analog machines as well by factoring in threshold in
               | and precision tolerances. Digital floating point has
               | precision limits too, they're just a different kind (I'm
               | referring to rounding, for example). I know that's not at
               | all what you meant about noise, I'm just saying the
               | bigger picture is that both digital and analog
               | computation has limited precision, and both can have
               | increased precision and can meet specific tolerances by
               | adding more wires. Typical fp32 and especially fp64 has
               | way higher precision than a typical single analog signal,
               | but that doesn't mean that very high precision with
               | analog isn't possible, it just means we don't often do
               | it. The fundamental differences might be less black and
               | white than you or the gp imagine.
        
               | corethree wrote:
               | >I think it's possible to do this with analog machines as
               | well by factoring in threshold in and precision
               | tolerances.
               | 
               | With enough compositions even the smallest tolerances
               | will add up. This presents a scaling problem in analog
               | electronics. With the miniaturization of electronics into
               | nano scale components this noise is even more prevalent.
               | 
               | Additionally the way a transistor works it's just easier
               | to use these things in saturation mode.
               | 
               | And one more thing. Yes precision can be "equivalent" but
               | exactness is not. An analog computer cannot represent the
               | value 1 consistently. It essentially can never be
               | precise. There will always be noise on the voltage. A
               | digital computer has finite precision but it has exact
               | finite precision.. so it can represent the exact integer
               | 1. And you can increase precision arbitrarily by using
               | more bytes up to the point where you use up all available
               | bytes in memory. You don't technically have to use the
               | default floating point values which have limited size.
               | With an analog computer you cannot do this at all.
        
               | dahart wrote:
               | > With enough compositions even the smallest tolerances
               | will add up.
               | 
               | This is true of digital floating point too, chained
               | compositions lose precision.
               | 
               | > A digital computer has finite precision but it has
               | exact finite precision.. so it can represent the exact
               | integer 1.
               | 
               | I'm not sure what you mean here exactly. Most real
               | numbers cannot be represented exactly, and the idea of an
               | exact number in digital integers and/or floating point
               | still comes with a tolerance range. It's only possible to
               | have an exact number by construction or a-priori
               | knowledge, but not in general and especially not when
               | processing input data. It is possible to have an "exact"
               | analog number within a tolerance range.
               | 
               | > With an analog computer you cannot do this at all.
               | 
               | That's incorrect. It's true a single analog signal has
               | noise and not incredible precision / resolution. That's
               | not a limitation of analog computing in general, it's a
               | limitation of choosing to use a single signal. _You don't
               | have to use only a single signal._ If you used, say, one
               | analog signal per decimal digit, you can have as much
               | practical precision as you can afford digits /signals.
               | Then it becomes a bit more "digital" but the math doesn't
               | need to be implemented using gate logic. Digital lines
               | also have analog noise, we just threshold and abstract it
               | away. The line between digital and analog is always there
               | but you can move it.
               | 
               | It is possible with analog circuitry to quantize a signal
               | and/or interpret and have an analog 'repeater' that will
               | rectify the signal into the interpreted value, correcting
               | for line noise. This way it's possible to do some amount
               | of integer math without introducing noise into the
               | result. This isn't common or particularly practical, but
               | it does help clarify what analog and digital really mean.
               | 
               | Hey you're right about these being common issues, and
               | about the typical advantages of digital logic, you're
               | just overstating the limitations and fundamental
               | differences between digital and analog, and making
               | assumptions about where that line is being drawn without
               | considering all possibilities.
        
             | buescher wrote:
             | Analog circuits still have finite bandwidth and
             | rise/response times. The engineering trade-offs are more
             | complicated than the gp presents.
             | 
             | The big but mixed advantage of an analog control loop or
             | signal processing chain is "no software".
             | 
             | There's no real reason to do simulations on an analog
             | computer today, though I think using one for model-in-the-
             | loop would be fun, and somebody is probably doing it
             | somewhere.
        
               | dahart wrote:
               | Some people are building analog chip startups today
               | because there are reasons to do analog computation. Among
               | the applications are low-precision high-speed parallel
               | math, neural networks, and image and audio processing.
        
               | buescher wrote:
               | Nothing new, really - from 1989:
               | 
               | http://www.carvermead.caltech.edu/documents/Neural_Networ
               | k_A...
               | 
               | Synaptics and Foveon turned out OK.
        
             | corethree wrote:
             | > That sounds like the answer summary is "Yes". ;)
             | 
             | Practically speaking digital computers are so fast that the
             | simulation of analog is more or less the same. In gaming we
             | run entire physics simulations and they are so fast they
             | appear as analog. And these are for real time simulations.
             | We can run simulations slower and at resolution beyond
             | what's possible with analog.
             | 
             | First analog would be limited by noise. So there's a limit
             | with resolution here. Digital offers virtually unlimited
             | resolution by using symbols to represent numbers. The
             | advantage of analog here is that at the highest resolution
             | of simulation possible with analog it will be faster than
             | digital. That's all.
             | 
             | >We definitely do know how to build analog computers that
             | have function calls.
             | 
             | No. A function call involves a stack and saving context
             | onto that stack. An analog computer is a function in
             | itself. There is no "call". I neglected to mention the
             | "delay" from input to output as one replyer mentioned but
             | that's just details. That would be the closest thing to
             | memory since the delay means your accessing a result from
             | the past.
        
               | dahart wrote:
               | A function "call" is a software abstraction. What you're
               | calling a function call by defining it as stack based is
               | a pure software abstraction. A stack is one way to
               | implement functions, but not the only way.
               | 
               | Capacitors can provide analog immediate access memory.
               | Analog delay lines and feedback circuits can provide
               | conceptually recursive functions, and those are common in
               | analog circuits today.
               | 
               | It's true that analog has limited precision, though no
               | reason you can't represent higher precision via multiple
               | analog signals, just like how digital requires more bits.
               | All the rest of it still looks to me like you're making
               | some incorrect assumptions about what's possible with
               | analog circuitry.
        
               | corethree wrote:
               | A function call is indeed a software abstraction. Outside
               | of software nobody "calls" functions at all. That was my
               | entire point.
               | 
               | In mathematics you have function application which is
               | close to the idea of the function call. And this idea
               | also doesn't exist in analog computing. Ironically,
               | Mathematics does model what's going on in an analog
               | computer on a field called signal processing. In signal
               | processing it's called a transform.
               | 
               | >It's true that analog has limited precision, though no
               | reason you can't represent higher precision via multiple
               | analog signals,
               | 
               | You can't. The only way to do this with multiple signals
               | is to make each signal represent a digit or a portion of
               | digits of the final value. But if you did this you'd be
               | going digital. You likely won't be doing binary but it's
               | still digital.
        
               | dahart wrote:
               | > You can't
               | 
               | Speak for yourself. ;) Depends on how you define
               | "digital". Digital is typically defined as being based on
               | logic gates, not necessarily anything to do with your
               | representation of numbers. I say if your adder is built
               | with op-amps and multiple lines, it's doing analog
               | computation on digits, and it stays analog for longer
               | than if you build it with CMOS gates.
               | 
               | This distinction is important when you start making
               | signal integrators or matrix multipliers or do other
               | computations with analog components, for example.
        
       | dimal wrote:
       | This looks like so much fun. I'm into eurorack, too, and there's
       | something about patching music that feels so much more conducive
       | to creativity than making music with a computer. I have ideas
       | that I'd never have any other way. And there's something about
       | manually cobbling together an algorithm with your hands that is
       | satisfying in a way that coding isn't. Gonna have to try this.
        
       | alexb_ wrote:
       | Looks interesting but - $520?? Five Hundred and Twenty
       | Dollars????
        
         | beezle wrote:
         | I was just looking at the pricing... EUR 499 including vat and
         | shipping.. but $520 to US, not including shipping?
        
           | slim wrote:
           | if you convert 499 euro you get 551 dollars. what's strange
           | about it ?
        
             | beezle wrote:
             | Because I should not have to pay VAT
        
           | szszrk wrote:
           | Doesn't sound that weird at all, standard currency rate
           | difference plus maybe some shipping difference.
           | 
           | It's 515 EUR now for me.
        
         | atoav wrote:
         | Maybe you got no relation, but yep that is what the promised
         | functionality would costs if you built it in analog and wanted
         | to sell it with a markup that does not ruin you. If anything
         | this is actually quite affordable.
         | 
         | On first glance this product contains eight potentiometers and
         | two encoders, knobs, 170+ connectors, patch cables, a display,
         | various discrete summers, integrators and differentiators and
         | verly likely power rail managment that is clean enough to do
         | actual calculations with it.
         | 
         | Maybe as a reality check try finding the cheapest price for 170
         | connectors and 8 potentiometers with knobs ; )
        
           | corethree wrote:
           | The cost for one unit looks less then 100. Way less than 50
           | even. Is it truly non profit?
        
             | buescher wrote:
             | I didn't see that they said it was non-profit, and besides,
             | non-profit does not mean "no one gets paid". Compare the
             | sale price of any modular synthesizer with a comparable
             | number of gozintas and gozoutas to this and it looks only a
             | little expensive. I'd guess Behringer could make one and
             | sell it for about $300 give or take, but they have a lot
             | more experience in product engineering, and buy in much
             | higher volumes than I would expect these guys to.
             | 
             | You could build a lot of hardwired op-amp circuits dead-bug
             | style for $500, though, and have money left over for a base
             | model Rigol scope and a no-name linear bench supply.
        
       | klysm wrote:
       | Is there an analog of an FPGA for analog computers? Or is that
       | like what an analog computer is
        
         | _kulang wrote:
         | Differential analysers often had components which you would
         | connect to model ODEs. I suppose it is like an FPGA but they
         | weren't programmable
         | 
         | It would be cool if analog computers could be miniaturised as
         | digital computers were. Then maybe they could also be
         | programmed, and you would have your answer
        
         | klyrs wrote:
         | Yes, and they're called FPAAs
         | 
         | https://en.m.wikipedia.org/wiki/Field-programmable_analog_ar...
        
           | klysm wrote:
           | Cool! I feel like these could have nifty signal processing
           | applications for hard real time systems.
        
       | zoklet-enjoyer wrote:
       | I'll wait for the Behringer clone
        
         | kgwxd wrote:
         | HA! OT but, did you see today's AudioPilz (Bad Gear) episode?
        
           | zoklet-enjoyer wrote:
           | I saw the notification from YouTube but haven't watched it
           | yet. I got the TD-03 and RD-6 for my birthday present to
           | myself last year. They're really fun!
        
       | TaylorAlexander wrote:
       | Actual photo of the device is here: https://the-analog-thing.org/
        
       | shrubble wrote:
       | Not sure if this would count as an analog simulation or not.https
       | ://en.m.wikipedia.org/wiki/Mississippi_River_Basin_Mode.... It
       | was more accurate than many digital computer models for quite
       | some time...
        
       | jiveturkey wrote:
       | the article is new. the product dates to 2021
        
       | anigbrowl wrote:
       | Actually posted here 2 years ago, but inexplicably overlooked at
       | the time. I had forgotten about this but am glad of the reminder,
       | since in the meantime I've gotten into embedded systems and
       | microcomputing thanks to the ESP32; this suddenly looks a lot
       | more useful for prototyping. Their pro offering seems very
       | expensive in an age of very affordable modular synth tools, but I
       | guess you're paying for the linearity and calibration, which
       | aren't always a priority in devices aimed at the musical market.
        
       | internetter wrote:
       | Interesting pitch from the company behind this here:
       | https://analogparadigm.com/
       | 
       | The company itself is working on making an analog chip, which is
       | fascinating to me.
        
       | jcpst wrote:
       | We figured this out with guitar pedals. Analog circuits sound
       | awesome. Taking one of these analog processors and layering a
       | digital interface on top provides the best of both worlds. You
       | can save presets, program the parameters using MIDI, etc.
        
         | shermantanktop wrote:
         | Analog data plane, digital control plane. Yeah, it's great for
         | some circuits. Digital pots and other bridging tech doesn't
         | always work well for some especially funky analog circuits,
         | e.g. the Fuzz Face. OTOH, those circuits usually have one good
         | setting anyway.
        
       | ausbah wrote:
       | i wonder how it will take for someone to chain these together and
       | implement a neural network
        
       | atoav wrote:
       | Anybody into analog things might be tempted to think this is by
       | THAT Corporation, a company that is loved both for its analog
       | audio ICs and its application notes.
       | 
       | But I could not find any link to rhe corporation.
        
         | buescher wrote:
         | Doesn't appear to be. Wait for the cease-and-desist I guess.
         | The company is https://www.anabrid.com and they also have a
         | very aesthetically appealing "professional" analog computer for
         | teaching and "research", sort of like the old Comdyna units.
        
       | corethree wrote:
       | How safe is this? If I link two nodes that are wrong can I short
       | something?
       | 
       | From my experience with circuits you can break shit fast and I'm
       | curious how easy it is to tinker without being careful like you
       | can when programming.
        
         | pringk02 wrote:
         | small signal ins and outs like this should be perfectly safe.
         | It's when you hook up power supplies without impedence to
         | inputs that you have issues. You won't have access to that part
         | of the circuit on the front panel
        
       | uticus wrote:
       | Related, with 130 comments: "The Analog Thing: an open source,
       | educational, low-cost modern analog computer (the-analog-
       | thing.org)"
       | 
       | https://news.ycombinator.com/item?id=36165513
        
       ___________________________________________________________________
       (page generated 2023-12-30 23:01 UTC)