To aid the reader, a summary of the approach is given here before the details are presented. To begin with we have a design for a part as shown below with the final geometry, the primitives, the Boolean expression that describes it, and some equivalent representations.
First the reader is asked to look at the equation (1.1), and notice that certain equation forms suggest certain operations. If we look at the ‘~C’ term ANDed with the other primitives, this tends to suggest machining out of some internal feature such as the a drilling operation. In this case the two other primitives that are ANDed suggest that one is a piece of stock and the other primitive defines some external features to be machined off (as well as other operations). The following steps show how a simple planner would use this approach.
A previous criticism of trying a method like this is non-uniqueness, but this has been used to advantage. For example, if we take the previous design equation (1.2), and rearrange it using the Laws of Boolean Algebra, we can get the equivalent expression (1.3).
describes the molding cavity (everything around the part ‘A & B & ~C’ is solid, and the space for the part is now the only void location), and the second negation indicates an injection of material into the void location. We can also observe that the primitives ‘A’ and ‘B’ would generally enlarge the cavity volume, whereas ‘~C’ would create an obstruction when milling the cavities. It is these sort of clues that make this method well suited to the abstract nature of Artificial Intelligence (AI) planning. A similar example to this sort of reasoning can be seen in Shpitalni, et. al. .