Category Archives: Evolutionary Robotics

John Rieffel’s Evolutionary Robotics Group

Tensegrity’s Next Step: Detecting Direction

One of the current major limitations of the tensegrity is that it does its distance calculations using only a start position and an end position. Although that does lead to some very useful results, the data is crude and has its limitations. For example, at the moment there is no way for our evolutionary algorithms to evolve for turning. This is because we can only tell changes in position, not changes in directions. To solve this problem, we will begin implementing calculating direction of the tensegrity.

Continue reading Tensegrity’s Next Step: Detecting Direction

Evolutionary Fabrication: Recently

EvoFab started here a few years ago as Dave Sayles’s senior project, advised by John Rieffel. Since then a lot has changed about its outer and inner workings, but the overall goal has stayed the same: get a 3D printer to design objects on its own. Sayles’s tried to get his printer to make letters, and the researchers after him (Tim Kuehn and Emily Houlihan) moved on to having it design arches.

I took over the project this past Spring and so far I’ve not done any evolving yet, but instead have been implementing an important change to the machine. The original way to extrude the gel was by twisting the top on the syringe, which was inconsistent enough to warrant a change. We built a pneumatic system using two solenoids and an arduino which tells the solenoids to open or close their valves. Originally this system couldn’t run for more than a few seconds, because when the relays were left open the solenoid went through a radical voltage change. This would reset the arduino, changing its USB port I.D. Because we depended on that I.D. staying the same, we put in diodes across each of the solenoids. To prove that this got rid of our problem and the system can run again, I wrote a python program that simulates real extruding by telling the solenoids to open and close in realistic time intervals, and after running this multiple times, trying faster or slower resetting times, we didn’t see the failure we had seen before. Still, it extrudes too slowly to collect good data with. We’re going to spend the next good portion of the summer experimenting with different air pressures and with materials of different viscosities to try to get the system back to evolving.

Tensegrities in Bullet Physics

What are tensegrities?

Tensegrities are structures which are very lightweight and have very strong structural properties. They are created by connecting rigid bars with tensile elements. Below is an example of a standard 3-bar tensegrity with the green being rigid bars and the red representing some tensile element. In the real world, this could be something like rods of hard plastic connected by rubber bands or springs.

Because tensegrities are connected by tensile elements, they have some interesting properties. Tensegrities are stable by definition but they can wobble and resonate, which is the property that Union’s physical tensegrity is examining most closely. They can also be deformed by shortening and lengthening their tensile elements. Real world tensegrity robots have been made such that the tensile elements can change their lengths to move, so this has been proven to work. Continue reading Tensegrities in Bullet Physics