Difference between “robot”, “machine”, and “automaton” [closed]

What is the difference in meaning between a robot, a machine, and an automaton? I was inspired to ask this because I really can’t understand the subtle (or not so subtle) difference in meaning here.

  • I believe that robot is something that can operate on its own with AI (artificial intelligence).
  • An automaton is something like a black box: if we enter A, we know we will receive B (although we have no idea why).
  • Machine is everything mechanical.

What brings all this to my attention, and that maybe my understanding about the meanings of these three words is wrong, is this question.


Solution 1:

This is going to be a tricky question to answer, because all three words can be used in a wide range of contexts.

A robot is something mechanical that does something useful. In science fiction, robots often take on humanlike qualities, but robots can in fact be much simpler than that (e.g., a vacuuming robot).

An automaton is something that performs some task in accordance with some preset instructions. Some dictionaries describe automata as a synonym for robot, but the term is also used in a more abstract sense in a branch of mathematics. The emphasis is, once built, the automaton can keep doing what it's supposed to be doing without further intervention.

A machine is something mechanical that makes some task easier (e.g., a sewing machine, a washing machine). Usually, emphasis is on something mechanical, although, like automaton, this word is applied to more abstract machines as well.

So, your description is correct: there is much overlap between the words, so much so that they can often be used interchangeably.

Solution 2:

Even though it has been greatly responded, it's a very interesting question to me and I would like to bring some few more elements.

In short, I would say that there is a very strict hierarchical order between the three terms. Robots are specific types of automata, automata are specific types of machines (which are a specific types of systems).

Machines

Nowadays, a machine is an invented system (by humans, as far as I know), with an intended behavior (more or less definite, with various degrees of freedom), given by a set of mechanisms that determine some actions (changeovers between states). One can trigger some actions, toggling states, by interacting with the machine, using it's mechanisms (well, the interfaces to its mechanisms actually, but whatever).

It's very general, and ontologically, I would oppose it as natural systems* ("natural" in the common sense). I would almost say that in a regard, a machine is a prescriptive system, while others are descriptive systems, since our knowledge about the latter as systems only comes from what we can detect and describe about the actual phenomena, while the behaviors of the former are (or should be almost) completely ruled by some inventors.

Machines can be physical*, or theoretical.

some examples: the nervous system, the water cycle, even the financial system (which is not that "natural", but it still is pretty much a self-organizing system), or the way ants find the shortest route up to some resources, are natural systems*.

Traditional sewing machines (non electrically powered), boilers, combustion motors, windmills or automatized machines like washing machine or industrial robots, etc., are physical machines*.

Abstract machines (lambda-calculus, Turing's machine, regular expressions, etc.), programming languages, or some theoretical systems in some formal sciences (e.g. natural deduction) are theoretical machines. They are invented systems that provide rules and axioms, mechanisms that allow to do things, just as well as physical machines*.

some related words: device, apparatus, machination, mechanism, machinery

Automata

An automaton is a machine that has some automatic behavior, a self-operating machine. Basically, it takes in input an input sequence (a program) and do things according to its internal design mechanically, like any other machine, and automatically, according to the program in it's intput. In this regard, it's a machine that has been restricted to be able to self-act following a sequence of instructions.

Really, it's nothing more than an automatic machine. As for machine, it can be physical (washing machine), or theoretical (Turing Machine, Finite State Acceptors, Transducers, and so on, and so forth). Even though automata are way more common since the digital era, there were mechanical automata.

Regarding the theoretical automata, note that what we call Turing Machine is acutally an automata, an universal abstract machine (even though Turing himself described it as an "automatic discrete machine") that takes in its input a (infinite) tape with symbols that constitutes it's sequence of instructions. Finite State Machine (accessors, transducers, and so on) are also theoretical automata.

Robots

Now, probably the most controversial, probably because the most recent.

As well as automata, robots ARE machines, because they are systems that have been invented by humans.

Also, robots ARE automata as well, because they are, basically, automatic machines.

But in order to consider robots as automata, we ne to grasp the idea of higher order functions. Because robots are those specific higher-order automata. They are functional automata.

Whether the robots be autonomous or not (remote controlled for instance, or supervised, for virtual robots), we do not say to robots: "switch from this state to this state". What we say to robots is much more something like "do that". And from here, they are self-deciding, whereas automata are just self-acting. We don't say to robots "how to do things". We say them "what to do". This is where "artificial intelligence" comes into the game. We tell them what to do, and they are sophisticated enough to "decide" by themselves how to do actually the things, they choose the best way of changing their internal states regarding the context.

Note that the term itself robot gives a good idea of that. It comes from the Czech robotnik which means slave. Because we dont pilot them step-by-step, we just say them what to do.

Conclusion

That why we do not refer to robots as "cool stuffs with advanced functionalities", as we do with automata, but much more as agents with roles.

In a washing machine, which is an automaton, we put some dirty clothes (parameters), we set a program (input sequence), and it runs the program. At the end, we get some clean clothes (output).

To the Big Dog, we say "follow me", and it figures out by itself how to follow you, whatever be the terrain. But it still is an automaton. A specific higher-order, functional_ automaton.

To an industrial robot (which is controlled by several Programmable Automation Controllers, which get data from various sensors, do the relevant complex computation regarding its internal states, and transmit commands to motors, which convert logical commands to mechanical power), we say "Make a door curtain", and it will takes a new sheet metal, will cut it, bend it, sand it, braze it, control it, and so on. If we say it's an automaton, we are not wrong, we just are under-specified. The same if we say it is a machine.

Automaton is considered as a tool. A cool, sometimes painless tool. Robot is a higher-order tool, intended to make low-level decisions by itself, that's why we say they are agents, not just tools anymore.

Finally, as well as machines and automata, a robot may be non-physical. In the case of robots, we do not say theoretical nor abstract, though, since they always are applied to concrete cases, so we say virtual. Chatterbots, or Web Crawler are virtual robots, also called bots.

*

If you have some better words for natural system, physical machine, or any suggestion, please don't hesitate to report them because I'm not very happy with that.