4
$\begingroup$

Platonic solids are regular, convex, and equilateral polyhedrons with congruent faces and a congruent number of edges meeting at the vertices.

We can see them in toys; the six faces of the cube introduces most children to platonic solids as building blocks, without ever telling them that their blocks are cubes or platonic solids.

We can see them as plastic calendars; the dodecahedron has twelve faces, one for each month.

We don't see them in nuclear detonation designs, at least not most of us; the twenty faces of the icosahedron can correspond to the wave fronts of the twenty simultaneous detonations that must converge to a point to force the purified U, Pu, or H across the threshold of the density-temperature surface to self-sustain its reaction.

The tetrahedron and octahedron, although interesting, are not seen much, since they do not work as cleanly in CAD/CAM scenarios.

enter image description here

Applying this geometric abstraction to robotics, one of the most nimble and efficient walkers and workers in 3-D space are spiders2, and the freedom of motion in their legs are not fully in the platonic paradigm, but could be as follows.

Sun Loving Platonic Robots

Imagine an octahedral robot with photovoltaic (PV) cells centered on each of its eight faces and a leg at each of its six vertices. The six legs have hip joints with robotic control over bend and rotation. (Bend is the angle between the direction the vertex points and the direction of the base of the leg.)

There is a knee part of the way down each leg, the angle of which can be controlled. At the end of each leg is a wheel with a break and rubber tire. There is no reason two power the wheel because the robot can run with the breaks on and then roll with them off and the wheels positioned in the direction of momentum. Alternatively, the entire robot can roll like a ball in a spherical wave fashion. Its platonic symmetry facilitates simulation of a ball that has a moving bump positioned to use gravitational force to produce the desired mobility accelerations.

The robot's only interest is maximally sustaining its electrical charge. All the systems and the AI that drives them are designed to learn one thing: Find light and stay in it to sustain charge. If it discharges to much too often, its Li battery will eventually not hold a charge, it becomes decrepit, and dies, until someone replaces its battery at which time it is reborn with all the knowledge of its previous life.

This is a really awesome robot in many ways.

  • Mathematical symmetry
  • Walking, rolling, coasting, and climbing possibilities
  • Energy thrift
  • Potential extension of the design to produce utility
  • The PV power levels comprise eight-pixel omnidirectional vision
  • Simplicity of purpose: to maximally sustain its electrical charge
  • Potential for locking legs with others of its kind

This last one allows the robots to discover that collaborative behavior can be used to stack and make larger machines to open doors and get outside when the sun is out. That's important because these really awesome robots likes the sun, for obvious reasons. In fact, increasing photovoltaic energy and the prospect of it is the only personal value of each robot and potentially the only social one.

enter image description here

Possible extensions of the design to produce utility might include providing a power connection so that if the battery is charged and the risk of discharge is low, the robot can offload some of its energy to charge other devices. With a sufficient robot population, they can significantly feed a power grid.

This is also a great AI research platform. The symmetry reduces the cost of manufacture since many parts are in common between the eight faces and many others are in common between the six legs. The symmetry also reduces the complexity of control system hardware and software and therefore the AI system complexity.

The single mindedness, the self sufficiency, the potential for social collaboration and specialization, and other features lend themselves to a plethora of AI research objectives that have both commercial and scientific value.

AI Design

We have eight pixels that also provide power, so their light detection and their charge potential are coincident. We have six legs, each of which have four freedoms of motion.

  • Hip bend
  • Hip rotation
  • Knee bend
  • Break pressure

Radial and linear control is through sequences of cubic splines of the form

$$ \lambda = \lambda_{\emptyset} + v_i t + a_i t^2 + b_i t^3 \\ s_i \leq t_i < u_i \; \text{,}$$

where $i$ is the spline index in the stream of splines and $s$ and $u$ are the limits of time for each. The coefficients must be calculated so that the concatenation of any two adjacent splines in the sequence produce both continuity and smoothness at the intersection.

Two hyper-parameters, maximum absolute velocity and maximum absolute acceleration, for each of the four freedoms of motion cannot be exceeded. The motor control system handles the execution of the sequences from a queue, so the AI merely has to work to keep the queue from running to empty.

In addition to the eight light intensity inputs measured at the photovoltaic cells, there are the battery condition indicators, which consists of voltage and inferred internal resistance. There is also indication of the time before the queue empties reported back from each motor control interface, along with a positioning fault indication for each.

This means there are 6 x 4 x 4 = 96 numerical outputs and 8 + 2 + 2 x 96 = 202 numerical inputs, but there is so much symmetry, there may be many valid ways to exploit symmetry as AlphaZero did with Go, such that learning and continuous control is resource thrifty.

What's the AI design that goes in between to produce the walking, energy acquisition planning, and coasting to conserve energy, and what would the reward function look like? 1


Footnotes

[1] If these questions were answered, future enhancements to the design may lead to collaborative behavior, climbing, and secondary goals like helping others of its kind to avoid discharge or providing extra energy to other systems or robot species.

[2] A picture of a web showing the nimble mid-air construction capabilities of spiders.

enter image description here

$\endgroup$
  • 2
    $\begingroup$ Looks like an interesting project, but you are asking six separate questions that could each require a long detailed answer. The introduction to octahedrons via general information on platonic solids, plus paragraph on spiders (which have 8 legs whilst your robot has 6) could probably be dropped or be only part of the the first question in a series. $\endgroup$ – Neil Slater Jan 27 '19 at 15:17
  • 1
    $\begingroup$ The edit has improved things a lot, thank you. This is not a problem of being specific (if anything the question has too much text and detail), it is that as originally written it would require an extremely long answer to cover the six different areas that you want to explore. The first question itself could be taken as too broad on its own, but here is where the specificity helps - an answer does not need to cover general AI design, but can offer advice that matches the details of the robot. $\endgroup$ – Neil Slater Jan 27 '19 at 15:50
  • 1
    $\begingroup$ I personally love this question but it feels more like a blog than a stack question. I think it's a great proposal, and one of the best titles ever, but the underlying question, though complex, would be better reduced to it's essence, because wouldn't it apply to any AI design that has to handle a set of competing, interdependent goals? If this was an abstract question it might be stronger, so possibly the details could be offloaded to a blog, and referenced, in more broadly applicable theoretical query? $\endgroup$ – DukeZhou Mar 1 '19 at 4:01
0
$\begingroup$

To build a social spider robot the problem has to be divided into creation of a game and building the AI for that game. The game simulates the environment of the robot which is a 3d space, the sun as energy source, other robots who are forming a swarm and the robot itself who contains of six legs. Building such a game is not that hard. Unity3d works fine for that job, and most game designers have experience which simulated environments.

The second part of the project is to construct ontop of the game engine the AI controller. That is a software which can control the robot autonomously. In the literature such a software is called Game AI and can be realized as a solver in the game tree. The robot has different possible actions similar to a figure in a chessgame and has to choose this one who maximizes the outcome. The creation of an AI controller is a much harder task than the game engine itself. It is has to do with Artificial Intelligence. Possible techniques are described in the Russel/Norvig AIMA book. An easy to start implementation for a prototype is a random generator which lets the robot move without complicated software. If the simulation runs long enough, a pattern will be the result.

A more advanced technique in describing the robot's movements is a Lindenmayer-System which is a formalized random generator based on grammars. This allows to model the behaviors of an ant colony under a mathematical perspective.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.