For a while I’ve had the cached thought that robotics are bottlenecked on hardware, but then someone at a rationalist meetup recently claimed that they were bottlenecked on software, and I ended up realizing that I don’t really know the answer.
[Question] Are robotics bottlenecked on hardware or software?
How can it be hardware? Or do you mean that robots need better sensors?
My understanding was that affordable robot hardware is fragile/high-maintenance, slow, rigid, etc.. It’s hard for that to compete with human bodies, which have been fine-tuned by evolution.
Neither. Robots are bottlenecked on ROI, and the fact that humans remain massively cheaper than robots for many jobs, both on average and on the current margins.
Software has a pretty short ramp to profitability—even when it’s not obvious exactly how it’ll pay off, there are so many applications that simply couldn’t be done before that something is going to work.
Hardware has a longer ramp, and needs more clarity of payback before starting.
Also, software benefits from generality much more than hardware does. The tradeoffs in complexity and maintenance for software get overwhelmed by more use cases. Those same tradeoffs in hardware make it vulnerable on all fronts to purpose-built machinery that does fewer jobs, but does them much more cheaply or reliably.
This sounds like you are describing robotics being bottlenecked on hardware to me.
Yeah, I am. But more bottlenecked on cost and flexibility (ability to shift from use case to use case) than directly on capability.
I don’t think these are independent. If you had perfect software to control it, you could deploy relatively cheap hardware to do all sorts of tasks very well. But since we don’t have that, we need things like higher performing sensors to increase data quality, soft or custom manipulators to protect what the robot interacts with, and controlled operating environments to reduce errors and protect nearby humans.
I think robotics was (and still is) mostly bottlenecked on the algorithms side of things. It’s not too expensive to build a robot, and the software is good enough that a hobbyist could hack something together easily enough in a day or two. The issue is that it’s really hard to make a robot do what you want it to do. Even if you have a robot that can stand up, run around, and do back flips, how do you make it go rescue people from burning buildings? Most of the tasks robots could be useful for are messy, complicated things, and robots don’t yet know how to do that.
Modern machine learning is solving this problem, but still not all the way there. I think one promising area of research is using large language models to plan out actions and this will be the way of the future.
That’s a rather bold statement.
I’d appreciate more details on which you base your conclusions...
I think the major bottleneck is not on the side of robotics per se, but on the side of insufficient compartmentalization. What prevents a greater use of robots is that we insist to bundle simple tasks into complex, anthropocentric “jobs” for social, cultural and inertia-based reasons.
A simple, often used example are Janitors. It is extremely hard to make a robotic Janitor, that could do all the janitorial jobs. General Purpose Robotic Janitor is an order of magnitude harder to create than a robot Lawyer or a robot Driver. But the problem lies not in software or hardware, but our refusal to break down “janitor” into 100 different and simple tasks that a fleet of dumb robots could do. We already have robots that can mop the floor, and drones that could change light bulbs, and bots that could stack chairs, and bots that could unclog toilets etc, but it would be fiendishly hard to make one that can do all of those tasks, and be a “true Janitor”.
The issue is not hardware, or software, its irrationality.