Compliant Mechanisms that LEARN! - Mechanical Neural Network Architected Materials
![Compliant Mechanisms that LEARN! - Mechanical Neural Network Architected Materials Compliant Mechanisms that LEARN! - Mechanical Neural Network Architected Materials](/pic/compliant_mechanisms_that_learn_-_mechanical_neural_network_architected_materials/X0N3VXV5TjZOVEU_.jpeg)
[Music] this is a compliant machine called a mechanical neural network it's the first of its kind to successfully demonstrate the mysterious ability to learn similar to biological brains inspired by the mathematics of artificial neural networks which enable most artificial intelligent machine learning Technologies today this mechanical neural network paves the way for a new kind of material that can physically learn its mechanical behaviors and properties whereas the properties of most materials remain largely fixed and are a function of their composition and microstructure this new kind of learning material could get better and better at exhibiting desired mechanical properties and behaviors such as the shape morphing behavior when exposed to ever increasing amounts of loading experiences and if such materials are ever damaged or cut to form new shapes or sizes they they could not only relearn their original behaviors but they could also learn new behaviors as desired the applications of such learning materials are endless imagine training the wings of an aircraft so that learn to optimally warp their airfoil shape when subjected to unanticipated and changing wind loading conditions so that the aircraft improves its fuel efficiency and maneuverability with every flight or imagine training the structural members of a building by shaking them in different ways so that the building learns to remain stationary regardless of the kind of seismic waves induced by an actual earthquake when it strikes or imagine training body armor by repeatedly shooting it at different locations and from different orientations so that the Armor gets better and better at redirecting any projectiles impacting shock waves away from vital organs instead of expending the immense amount of time and cost it currently takes to develop a new material that achieves specific combinations of desired properties which are currently not possible such Learning Materials could simply be deployed without human understanding and the material would autonomously learn to achieve those properties while also acquiring that understanding for future designers to learn from so how would this kind of learning material work well it's important to first understand the source of its inspiration the idea for a mechanical neural network was inspired by a physical version of an artificial neural network the mathematics underlying artificial neural networks are diagrammed using interconnected lines that represent scalar weight values which are multiplied by input numbers that are fed into multiple layers of neurons these neurons consist of activation functions that ultimately produce output numbers if the artificial neural network is provided with a set of known input and output numbers the network can be trained by tuning its weights over time so that it accurately predicts previously unknown output numbers the result for any input numbers here different shades of blue represent different scalar weight values in this way artificial neural networks can mathematically learn to model complex systems that map many inputs to many outputs similarly mechanical neural network Works possess physical interconnected tunable beams shown here as blue lines which are mechanical analogs to the weight Lines within artificial neural network diagrams the beams connected nodes shown as white circles outlined black which are analogous to the neurons within artificial neural networks whereas artificial neural networks tune their weights to match input numbers to Output numbers the mechanical neural network proposed here Tunes the axial stiffness values of its beams to match input loads to desired output behaviors to demonstrate how the envisioned mechanical learning would work suppose a shape morphing behavior is desired for the following eight layer deep triangular lattice consisting of eight input nodes and eight output nodes note that the black bars along the top and bottom edges of this lattice represent a grounded body in which the nodes that touch it or pin suppose that when the input nodes along the left side are loaded by equivalent horizontal forces it is desired that the output nodes along the right side respond by displacing to Target locations along the Contour of an undulating sinusoidal shape shown as the red curve to learn the shape morpheme Behavior each tunable beam in the lattice would start the learning process by setting their axial stiffness to a random value depicted here as a specific shade of blue according to this color scale when the input nodes on the left side of the lattice are loaded with the horizontal input forces of the desired Behavior there is resulting displacements of the output nodes would then be measured and a mean squared error iemse would be calculated by finding the average of the scalar difference between the target output node displacements and these measured output node displacements I.E their final location error e i for all n nodes on the right side of the lattice squared for this lattice n equals eight output nodes the tunable beam elements would then change their axial stiffness values according to an optimization algorithm such that when the process of loading measuring and calculating the mean squared error is repeated the mean squared error would be minimized until a working combination of beam stiffness values is identified that achieves the desired Behavior one possible combination of beam stiffness values that enabled this mechanical neural network to achieve the desired sinusoidal shape morpheme behavior is shown here suppose it is desired that the neural network then learns another new behavior in addition to the first Behavior specifically suppose it is desired that in addition to the lattice's output nodes displacing to this sinusoidal shape in response to its input nodes being loaded with equivalent horizontal forces the same lattice as output nodes also displace to an inverted sinusoidal shape in response to its input nodes being loaded by equivalent vertical in input forces instead to learn the new behavior shown green while maintaining the ability to simultaneously achieve the first behavior shown red the lattice of tunable beam elements could either start with another random combination of stiffness values as shown here or they could start with the same combination of stiffness values that were found to successfully achieve the first behavior only parenthetically the latter Choice becomes increasingly favorable as the mechanical neural network acquires more and more behaviors because the working combination of beam stiffness values acts as a sort of muscle memory for previously learned behaviors regardless of what starting combination of beam stiffness values are selected however the input nodes would then be loaded with both the horizontal and then vertical forces of the first and second behaviors respectively and a single mean squared error would be calculated that simultaneously considers the square of the output node final location errors of both floating scenarios average together the tunable beam elements would then change their axial stiffness values according to the same optimization algorithm such that when the process of loading measuring and calculating the cumulative mean squared error of both behaviors is repeated this new mean squared error would be minimized until a working combination of beam stiffness values is identified that successfully achieves the first and second behaviors simultaneously note that the tunable beams all remain the same shade of blue regardless of whether the lattice is actuated with the loads of the first or the second behaviors because the same combination of beam stiffness values successfully achieves both behaviors it's also important to recognize that mechanical neural networks can achieve the same desired set of behaviors using many different combinations of beam stiffness values note for instance that although this second solution exhibits the same desired behaviors as our first solution it does so with an entirely different combination of beam stiffness values the fact that many different combinations of beam stiffness values can achieve the same behaviors allows mechanical neural networks to learn more more and more new behaviors while retaining memory of previously learned behaviors finally it's also worth noting that mechanical neural networks are not limited to learning shape morphing behaviors only but can learn almost any combination of quasi-static thermal and even Dynamic mechanical behaviors including the control of wave propagation within their lattice to experimentally demonstrate the concept of a mechanical neural network it was important to first design a tunable beam that could achieve adjustable stiffness along its axis after comparing multiple Concepts we settled on this compliant design it consists of two parallel blade flexors that deform to guide the translational extension and contraction of the beam along its axis while rigidly constraining all other directions a bracket is attached to the beam's housing in part to provide a hard stop so that the parallel blade flexors are not allowed to deform to a point where they would yield I.E be permanently damaged beyond their elastic limit the bracket is also attached to the magnet end of a voice coil actuator which is aligned with the beam Central axis the actuator's other mating end which consists of a coil of copper wire wrapped around a drum is attached to another bracket that is attached to the other side of the beam's housing depending on the direction and magnitude of the current flowing through the wrapped wire a magnetic field can be induced by the coil that pushes or pulls on The Voice coil's magnet and thus actuating the beam along its axis in either direction two strain gauge sensors are mounted on either side of one of the parallel blade flexors at its base to accurately measure the resulting displacement of the beam along its axis by transforming the flexor's deformation strain into a proportional voltage signal in this way closed loop control can be applied to actively tune the beam's axial stiffness to achieve any value between an upper and a lower limit you could imagine that the highest axial stiffness would be achieved if when the beam is loaded the voice coil responds by resisting the load with the largest actuated Force possible in the opposite direction as the applied load likewise the lowest axial stiffness would be achieved if when the beam is loaded the voice coil responds by assisting the load with the largest actuated Force possible along the same direction as the applied load in this way the tunable beams could be made to achieve zero or even negative stiffness the beam's housing and flexors were cut from an aluminum sheet using wire EDM and its brackets were machined from aluminum L brackets we applied proportional and derivative closed loop control as detailed by this diagram to achieve the desired stiffness control of the tunable beams and instron testing machine was used to individually calibrate each Beam by generating these four plots to inform the controller as shown if this function is set to EK in the control Loop and the proportional gain KP is set to a desired value the resulting Force displacement response of the actively controlled beam will be linear and will possess an unchanging slope I.E stiffness that is equal to the proportional gain KP value set this plot measured using an instant testing machine shows the linear Force displacement responses of a tunable beam being controlled with different KP values to achieve correspond running positive and negative axial stiffness values the maximum and minimum stiffness values that the beam could be controlled to achieve without becoming unstable was measured to be 2.3 Newtons per millimeter and negative 2 Newtons per millimeter respectively with a working tunable beam that could be controlled to achieve any desired axial stiffness between its maximum and minimum stiffness values 21 such tunable beams were fabricated and assembled within a triangular configuration as shown by these blue lines to demonstrate learning within a mechanical neural network four additional voice coil actuators were used in conjunction with decoupling fractures to drive the two input nodes on the left side of the lattice with forces that can be made to point in any in-plane direction desired two cameras mounted on a frame directly measure the displacement of pins inserted at the center of both output nodes and black felt is used to contrast the white color of the pin heads so that they stand out this colored computer-generated image helps clarify other important features within the mechanical neural network note the purple colored rotational fractures centered around each of the Network's nodes these fractures passively deform to accommodate the expansions and contraction of the tunable beams as the network is loaded during learning also note the green colored flexors that decouple the input actuators due to their cleverly stacked Arrangement hard stops are built around all the flexors in the system to prevent them from yielding although the machine's two mounted cameras can directly measure the lattice's output node displacements note that the strain gauge sensors on each beam can directly measure the beam's extension and contraction and that information can be used to indirectly calculate the displacements of all the nodes in the mechanical neural network including the displacements of its output nodes this strain gauge approach to indirectly sensing the output node displacements can predict the displacements with a much higher sampling rate compared to the frame rate of the cameras these plots show how accurately The Strain gauge approach tracked the camera's measured output node displacements when the lattice was loaded with a random combination of axial stiffness values uploaded to each tunable beam in the lattice this strain gauge approach is also important to the functionality of mechanical neural networks because without the approach such networks cannot learn without being placed in a testing rig which is not practical for most applications that require in-field learning moreover the ability to accurately measure the displacements of all the nodes in the network when it is subjected to unanticipated and changing ambient loading scenarios is necessary for mechanical neural networks to be able to identify when those loads correspond to the input forces of their desired behaviors being learned so that the network can then calculate its mean squared error and minimize it as described previously note that the input node forces can be indirectly calculated at any given time using the current combination of beam stiffness values uploaded to the network at that time and the corresponding strain gauge measured displacements of all the Network's nodes that resulted from these loading forces our 21b mechanical neural network first demonstrated its ability to learn turn by learning two behaviors simultaneously using the approach described previously for the first behavior shown exaggerated in red here output Node 1 should displace outward 0.5 millimeters while output node 2 should displace inward 0.5
millimeters when the input nodes are loaded with one newton horizontal forces for the second behavior shown exaggerated in green here the output Node 1 should displace inward 0.5 millimeters while output node 2 should displace outward 0.5 millimeters when the input nodes are loaded with one newton vertical forces the first optimization algorithm that we use to determine what combination of axial stiffness values should be uploaded to each tunable beam in the lattice during each step of the learning approach was a genetic algorithm the algorithm samples 1000 random beam stiffness combinations it then identifies and plots the combination that achieved the lowest resulting output node displacement mean squared error a new more promising group of 1 and beam stiffness combinations is then generated by crossing the most successful combinations attempted in the previous group the process is repeated until the mean squared error calculated stops changing from one group to the next a plot showing how the algorithm reduce the mean squared error over time is shown here along with a video showing the mechanical neural network learning in real time this animation shows how both output nodes displaced progressively closer to their Target locations has improved beam stiffness combinations were identified from one group to the next the initial starting and ending locations of those output nodes are shown here without the visual clutter of the path taken you can see that their Final locations are almost directly on top of the Target locations once learning was successfully demonstrated in this way using the genetic algorithm described previously we then conducted a study to compare the performance of five other optimization algorithms to determine which algorithm is best suited for mechanical neural network learning in general the five additional algorithms studied were full pattern search partial pattern search interior Point sequential quadratic programming and Elder made we compared how low the final mean squared error could be made using each algorithm I.E how accurately the mechanical neural network could successfully learn its behaviors and how many iterations the algorithm required to achieve that final mean squared error I.E how fast the mechanical neural network could learn its behaviors it was determined that nelder Mead was the best suited algorithm for mechanical neural networks due to the algorithm's Practical learning speed impressive learning accuracy and its insensitivity to system noise the details of that study were published in the Journal of mechanical design and a link to the paper is provided in the description below we were also interested to use the mechanical neural network to determine whether beams that are tuned to exhibit non-linear stiffness I.E stiffness that changes as the beams to form are favorable for learning compared to beams that are tuned to exhibit linear stiffness our closed loop controller was designed to test this hypothesis if this F of e k function is changed from Ek to a different function like tangent EK then the resulting Force displacement plot exhibited by the actively controlled beam would be a non-linear tangent function this plot shows the tunable beams Force displacement response measured using an instant testing machine with Alpha V K equaling EK and tangent EK for different proportional gain values I.E a KP of 1 0
and negative 1. we then trained the mechanical neural network to learn random shape morphing behaviors using both linear and non-linear tangent Force displacement responses and compared their mean squared error versus time plots as shown here much to our surprise the plots suggest that tunable beams that achieve linear stiffness can learn behaviors with greater accuracy I.E lower mean squared error than tunable beams that achieve non-linear stiffness we then created a computational tool to simulate the behavior of our mechanical neural network design so that we could use the tool to predict how well larger versions of the same design would learn if we had the time and resources to build and incorporate many more tunable beams within its lattice as depicted by this photoshopped image of a much larger lattice our computational tool models the tunable beams as linear beams which are depicted as blue lines and their lengths are set to be the length of the beams in our fabricated mechanical neural network I.E six inches from node
to node we restricted each beam in our simulation to only achieve axial stiffness values between the maximum and minimum stiffness values measured from our fabricated beam IE 2.3 Newtons per millimeter and negative 2 Newtons per millimeter respectively and we set their passive non-axial stiffness values equal to the values calculated using finite element analysis as shown here we also restricted the simulated beams from extending or Contracting more than less than minus 2.5 millimeters which is the limit of our fabricated beams as governed by their hard stops finite element analysis was used to validate the computational Tool's accuracy by loading a 21 beam version of the design in its passive State IE without any closed loop stiffness control activated with 25 random Force combinations imparted on its two input nodes the X and Y components of the lattice's resulting output node displacements calculated using both finite element analysis and our computational tool are plotted here showing good correspondence between each of the 25 Force combinations once configured to mimic our fabricated mechanical neural network the computational tool was then used to simulate the effect that the number of layers would have on the ability for a triangularly configured mechanical neural network consisting of eight input and output nodes to learn different numbers of random shape morpheme behaviors the results of the study indicate one that mechanical learning improves with more layers likely because there are more tunable beams with which to learn and two the more random behaviors that are required to be learned the less accurately all the behaviors can be learned simultaneously this plot was similarly generated but for only two four and eight layers and for both triangular and square lattice configurations shown green and red respectively it is clear from these results that triangular lattice configurations can in general learn different numbers of shape morphine behaviors more effectively than Square lattice configurations the reason is likely because triangular lattices have more beams for the same number of layers and they can propagate displacements in all directions rather than just a long orthogonal directions as is the case with square lattices to learn the effect that the number of layers and output nodes have on mechanical learning we used our computational tool to generate the following plot for triangular lattices that learn the two sinusoidal behaviors described previously the plot indicates that once the lattice possesses two or more layers the number of output nodes does not seem to matter it's true that the more output nodes a lattice has the more output node displacement requirements the output nodes must satisfy but it's also true that the more output nodes Alanis has the more beams the lattice can employ to satisfy those requirements during learning so both effects seem to negate each other if you'd like to learn more about the details presented in this video I encourage you to read our first public Journal article on the topic of mechanical neural networks in science robotics where our work was featured on the journal's front cover a link to the paper is provided in the description below along with a link to my thingiverse account where you can download the part files necessary to fabricate our mechanical neural network finally I want to thank my students Ryan Lee who built and tested the mechanical neural network Erwin Mulder who developed our computational tool Pietro sanagi who helped perform the optimization algorithm comparison study and all the other students who contributed in smaller ways to the success of this project I am especially grateful to my afosr program manager Leslie for making this research possible through his continued funding and generous support of my group if you'd like to support my channel I've provided instructions in the description below thanks for watching the facts of mechanical design [Music] thank you [Music]
2023-07-18 00:03