Materials Science + Mechanical Engineering + Theoretical Computer Science to the Rescue

Scaling the process isn’t just a matter of building a more precise, more expensive printer (although that is necessary). It’s a matter of choosing the right type of sugar, understanding the physical behavior of the sugar as it is printed and of telling the printing robot how to move. The problem spans materials science, mechanical engineering and theoretical computer science; it contained more than enough material for a PhD thesis, and the cells aren’t even in there yet. The materials and mechanical engineering aspects are laid out in a recent publication in Additive Manufacturing; the planning algorithm is described in a recent manuscript still under review.

Instead of conventional sugars, this printer uses isomalt, the same low-calorie sugar substitute they use to make throat lozenges. Isomalt works better than conventional sugar, mostly because it doesn’t burn like sugar does. The printer melts the isomalt and pushes it out of a tiny nozzle under pressure. Like a pen, the nozzle is used to “write” thin isomalt filaments, but in 3D. Printing speed, temperature and pressure are critical to achieving precise filaments. Right now the diameters of the filaments can be anywhere from 50 to 500 micrometers; to give some context, a human hair is about 10 micrometers thick. However, the researchers say it’s entirely possible to go bigger or smaller.

At that point it might seem like you’re done. But when you want to print a network comprising thousands of filaments, you encounter an interesting problem. You need to choose an order in which to print them. The printing process is freeform; you can move the nozzle anywhere you want. That means if you’re not careful, you can hit your sugar construct with your nozzle and destroy it.

Avoid Collisions AND Don’t Melt

Collision avoidance is a pretty common problem in robotics, so that part isn’t too hard to deal with. However, there is an additional wrinkle that is very specific to this problem. It has to do with the fact that every time you go to an existing filament and draw a new branch, you melt the material at the joint. Imagine you’re building a bridge, but every time you weld a new beam on, all the existing welds around it melt. This makes the problem a lot harder.

Without this constraint, the problem of choosing a sequence is analogous to finding your way out of the maze on the right. There are dead ends, but you can see them. You won’t get lost in them; you’ll immediately turn around. But with this particular constraint, choosing a sequence is like finding your way out of the maze on the right. The maze is big; for long sequences, it becomes, for all practical purposes, infinite.

The best you can do in this case is make an educated guess at every fork. For example, if you had a compass that pointed towards the exit, you might take the path that most nearly coincides with the direction of the needle. In some cases, there is no feasible printing sequence; the maze has no exit. More strangely still, you can’t know, at least with our current understanding of computer science, if you should give up. You know the exit exists if, and only if, you actually find it.