My latest project: a helpful robot friend

 My latest project is a big one, that I've fantasized about since I was a kid. It's a helper and companion robot. Their name is Bellamy Crashbot (although I call them Crashy). More info is available on Hackaday.

The appeal of a general purpose robot should be obvious. Who doesn't want a cool, scrappy robot friend to help with chores around the home or lab? But more specifically the goal of the project is -- like most of my projects -- to learn where the field is and try to contribute to it with my own entry. It's a tricky one in this case, since this project is so big.


When in doubt, I start with the big picture: robots are becoming more ubiquitous, and I wanted to make one that moves around interacts with people. I think different people envision different things when they imagine what constitutes an android like those we see in science fiction, but my bar is frankly not that high. Humans will form emotional relationships with obviously inanimate things if you just put googly eyes on something, and most of us agree that companion animals possess some degree of sentience, and I've known some pretty dim dogs.

Carlisle's sentience was a subject of legitimate debate

Since college, I've had a notion that a fairly personable robot could be devised by giving them enough factual awareness of conditions in the world and then relating these things using a relational database and then passing input and output through a natural language layer using some chatbot-like text processing. The idea goes like this: start by making an AI responsible for monitoring the thermostat, then expand its awareness from what the temperature is and what it should be to what different people like it to be; what time these people come in; how much they care about what the temperature is; how they feel about the thermostat AI; add some personal cost-scoring on how to resolve conflicting assignments, and now you've got the underpinnings of a robot that can recognize that two people are set to arrive with divergent preferences which likely can't both be met, which requires the robot to make several decisions. Should they seek compromise? Or favor one person due to a personal preference? Maybe they know that one of the two users is more popular among all the users, and will seek to align themself with that consensus in order to protect their own popularity. It all depends on how the decision making process is coded.

All of this could be tested with a disembodied AI, as in the case of the sentient thermostat in my example. But I think that a fundamental part of this equation is purpose. No one has that much reason to interact with the thermostat, so it'd essentially default to an annoyingly chatty smart home speaker. Most of us have heard the advice that if you want to make friends, join a club. So I think that this robot needs a body and a reason for people to interact with them: Bellamy, are there any events today? Hey Bellamy, I liked that picture you shared in Instagram. What's that, Bellamy? David called? When?

So that's the inspiration for Crashy. I don't know if or when I'll actually get to apply most of these ideas. The challenge of building a body is enough that it may be the extent of the project in the near-term. But this is the kind or project that is as much a foray into a field as its own creation. Hopefully, if I live long enough this might just be the first of many robots. And the off-the-shelf AI/ML tools available just keep going up and up and up, so it's not hard for me to imagine that I'll continue to explore ways to build a cool robot friend for years to come. As of now, though, that just looks like a junk-yard WALL-E bumping into walls. But a mad scientist has to start somewhere.