Tensegrity Simulation on a Desktop PC
Roger S. Tobie
Ronald Brown
Ronald Brown
1. Problem: To implement an interactive desktop design and learning tool to do real-time computer simulation, modeling, and visualization of large scale tensegrity complexes. By complex is meant a structure composed of many interconnected individual 2, 3, 4, 5, or n-stick tensegrity substructures that combined together make an integral whole. A tensegrity sphere or a column are examples of such structures. Such "molecular" complexes can always be analyzed in terms of and reduced to such elementary
"atomic" substructures.
2. Solution: Based on geometric principles developed in my Master’s Thesis entitled A Report on The Existence, Formation, and Representation of Tensile Structures submitted to the Department of Industrial Design at Pratt Institute in June 1967, to implement an interactive simulation and visualization system for large scale tensegrities. This would make use of recently announced and/or currently available massively parallel desktop super computer systems.
a. Either the just announced NVIDIA CUDA (Compute Unified Device Architecture). NVIDIA makes high performance graphics cards for PCs and the CUDA is an outgrowth of that technology.
b. Or the currently available IBM CBEA (Cell Broadband Engine Architecture). This system is currently used in the Sony Playstation 3.
Both these systems are so called massively parallel processing systems supported by SDKs (Software Development Kits) available from their respective manufacturers. Of the two systems, the NVIDIA CUDA appears to offer the most power and potential for the price.
Basis of Solution: As proposed the basic geometric principle involved in modeling tensegrities is that once overall equilibrium is established between all the linear structural elements, sticks and strings, struts and cables, that compose a tensegrity of any overall shape, then each individual stick lies at the intersection of two, and only two, “planes of force”. These planes of force hold the sticks and strings in position and constrain them from moving beyond certain limits. The arrangement of intersecting planes completely determines the overall form and all the internal angles of the structure. All tensegrities composed of single stick compression elements can be analyzed this way. This leads to a straight forward application of the descriptive geometry of intersecting planes which can in turn be axiomatically reduced to pure projective or incidence geometry. This kind of geometry is, or was, commonly taught and well understood by most classically trained engineering draftsman and many representational artists. In principle, if you know how to do perspective drawings and/or isometric projections, then you know how to draw tensegrities, and with suitable plan and side view projections, you can graphically calculate all their angles and component lengths.
But tensegrities, as has often been observed, have a curious overall property. Because all the tensional elements lie in multiply interconnected closed loops squeezing against internal floating compression elements, tensegrities are inherently holistic and respond globally to locally applied forces, loads, and deformations. Their response is often completely counterintuitive in terms of our common sense expectations based on everyday experience. Tensegrities are inherently non-linear in their behavior. They are, in a very real sense, greater than the sum of their parts.
The NVDIA CUDA, which has just become available for Personal Computers, is an enabling technology that can potentially allow thousands of computational threads to run in parallel and to simultaneously communicate and interact with each other just as all the sticks and physical “threads”of a tensegrity simultaneously interact and communicate with each other when you squash or otherwise deform it. Each computational thread can represent a separate component stick or string communicating with all its neighbors. Current PC based systems currently allow a very limited number of simultaneous parallel computational threads. The analogy between computational threads and the strings or cables of a tensegrity is exact. This is not just a figure of speech.
PC resident Java implementations for simulating individual, relatively small, tensegrity structures do exist. One such system is based on “elastic interval geometry” developed by the Dutch programmer Gerald Dejong and programmed in Java. See for instance http://springie.com, which is derived from Dejong’s work. But these are essentially multi-stage, semi-batch systems. That is, while their final output can be and is animated, the process of creating the output is a multi-step process with halts and delays in between the steps for computation, rendering, and display. It is not a continuous interactive loop with immediate visual feedback. To the best of my knowledge, no systems exist for real time interactive modeling and visualization of large scale collections of many interconnected “individual” tensegrity structures, or other sorts of “springy” structures for that matter. There is no tool for quickly sketching and trying out tensegrities in real time. This is certainly the sort of tool that is required for the design of large scale tensegrity based domes, arches, or other compound architectural structures. Building large complex physical models of tensegirities by hand is an extremely tedious, time consuming, and error prone process. It is basically cut and try, that is, trial and error. Thus, it is currently very difficult, if not impossible, to design such structures on a regular basis, unless, of course, you happen to be Kenneth Snelson.
Providing such a tool (via the Internet) to the world wide design community would be the equivalent of providing a designer’s “trim-tab”, an intelligence and design amplifier. It would be enabling technology.
I anticipate that a publishable book should result from this project. This would not be just a user’s manual, but would be a full exposition, copiously illustrated, of the geometry of tensegrities. The book would also contain directions for building physical models based on measurements derived from the interactive software. The big problem with tensegrities is figuring out the component dimensions ahead of time before you actually build the model. This way tensegrity models could be physically verified and replicated. They could be proved. My whole idea for such a system is that a simulator should connect you with the real physical world and enable you to build real physical models based on its results. It should not serve as a substitute for the physical world, divorcing you from it. A copy of the complete programming system should be included on a CD ROM in the back of such a book.
Note 1. To verify the existence of my thesis, and one of its major results, the so called “twist-angle formula”, see the Appendix to Chapter 1 (starting at page 8) of Hugh Kenner’s Geodesic Math and How to Use It, 2nd paperback edition 2003, Univ. California Press. See especially the footnote on page 8.
See also “twist-angle formula” in Robert Burkhardt’s report “The Application of Nonlinear Programming to the Design and Validation of Tensegrity Structures with Special Attention to Skew Prisms” at http://www.trip.net/~bobwb/ts/skew/skew.xml Or simply Google "twist-angle formula". Include the double quotes.
Finance: 1st Year: Buy two high performance PC work stations and software development kits, etc. Install one at my home and one at the team member's house. Budget $20,000 for software and hardware and $30,000 for salaries and expenses in the first year. I am currently retired and living on social security and a small pension so require minimal salary. The team member would be paid hourly as a consultant. We would communicate our results to each other mostly via the internet.
2nd Year: Release and support the software as shareware via the internet. There are various ways to do this. For instance, work out a relationship with SourceForge.net or a similar open source organization. In any event, develop plug-ins for various internet browsers such as MS Internet Explorer and Mozilla Firefox using something like the Java "servelet" model. Make the software open source and attract a community of developers as has been done, for instance, with the Firefox Web browser and Ubuntu Linux. This stage would be very much influenced by the responses of the design community. They would begin to lead the way.
Qualifications: I am a graduate in Industrial Design from Pratt Institute who has worked as a consultant in package engineering. After switching in the mid 1960s from working as a commercial graphic artist to programming computers, I spent more than 35 years as a programmer specializing in graphics, computerized typesetting, and text processing. In the period of the late 1970s to early 1980s I designed and directed the implementation of an interactive typographic composition system that used Tektronix storage tubes as "soft" proofing devices and output final copy to an ultra high precision cathode ray tube photo typsetter called a Videocomp. The system ran on Data General mini-computers under their Real Time Disk Operating System and was programmed in assembly language. This was for a major text processing and typesetting service bureau in Fort Washington, PA. I also implemented a computerized proofing system for structural chemical formulas for the same service bureau.
Team member, Ronald Brown, as well as being a professional computer programmer with many years experience in embedded systems, is also a "mathematical artist" with a degree and teaching certificate in mathematics.
2. Solution: Based on geometric principles developed in my Master’s Thesis entitled A Report on The Existence, Formation, and Representation of Tensile Structures submitted to the Department of Industrial Design at Pratt Institute in June 1967, to implement an interactive simulation and visualization system for large scale tensegrities. This would make use of recently announced and/or currently available massively parallel desktop super computer systems.
a. Either the just announced NVIDIA CUDA (Compute Unified Device Architecture). NVIDIA makes high performance graphics cards for PCs and the CUDA is an outgrowth of that technology.
b. Or the currently available IBM CBEA (Cell Broadband Engine Architecture). This system is currently used in the Sony Playstation 3.
Both these systems are so called massively parallel processing systems supported by SDKs (Software Development Kits) available from their respective manufacturers. Of the two systems, the NVIDIA CUDA appears to offer the most power and potential for the price.
Basis of Solution: As proposed the basic geometric principle involved in modeling tensegrities is that once overall equilibrium is established between all the linear structural elements, sticks and strings, struts and cables, that compose a tensegrity of any overall shape, then each individual stick lies at the intersection of two, and only two, “planes of force”. These planes of force hold the sticks and strings in position and constrain them from moving beyond certain limits. The arrangement of intersecting planes completely determines the overall form and all the internal angles of the structure. All tensegrities composed of single stick compression elements can be analyzed this way. This leads to a straight forward application of the descriptive geometry of intersecting planes which can in turn be axiomatically reduced to pure projective or incidence geometry. This kind of geometry is, or was, commonly taught and well understood by most classically trained engineering draftsman and many representational artists. In principle, if you know how to do perspective drawings and/or isometric projections, then you know how to draw tensegrities, and with suitable plan and side view projections, you can graphically calculate all their angles and component lengths.
But tensegrities, as has often been observed, have a curious overall property. Because all the tensional elements lie in multiply interconnected closed loops squeezing against internal floating compression elements, tensegrities are inherently holistic and respond globally to locally applied forces, loads, and deformations. Their response is often completely counterintuitive in terms of our common sense expectations based on everyday experience. Tensegrities are inherently non-linear in their behavior. They are, in a very real sense, greater than the sum of their parts.
The NVDIA CUDA, which has just become available for Personal Computers, is an enabling technology that can potentially allow thousands of computational threads to run in parallel and to simultaneously communicate and interact with each other just as all the sticks and physical “threads”of a tensegrity simultaneously interact and communicate with each other when you squash or otherwise deform it. Each computational thread can represent a separate component stick or string communicating with all its neighbors. Current PC based systems currently allow a very limited number of simultaneous parallel computational threads. The analogy between computational threads and the strings or cables of a tensegrity is exact. This is not just a figure of speech.
PC resident Java implementations for simulating individual, relatively small, tensegrity structures do exist. One such system is based on “elastic interval geometry” developed by the Dutch programmer Gerald Dejong and programmed in Java. See for instance http://springie.com, which is derived from Dejong’s work. But these are essentially multi-stage, semi-batch systems. That is, while their final output can be and is animated, the process of creating the output is a multi-step process with halts and delays in between the steps for computation, rendering, and display. It is not a continuous interactive loop with immediate visual feedback. To the best of my knowledge, no systems exist for real time interactive modeling and visualization of large scale collections of many interconnected “individual” tensegrity structures, or other sorts of “springy” structures for that matter. There is no tool for quickly sketching and trying out tensegrities in real time. This is certainly the sort of tool that is required for the design of large scale tensegrity based domes, arches, or other compound architectural structures. Building large complex physical models of tensegirities by hand is an extremely tedious, time consuming, and error prone process. It is basically cut and try, that is, trial and error. Thus, it is currently very difficult, if not impossible, to design such structures on a regular basis, unless, of course, you happen to be Kenneth Snelson.
Providing such a tool (via the Internet) to the world wide design community would be the equivalent of providing a designer’s “trim-tab”, an intelligence and design amplifier. It would be enabling technology.
I anticipate that a publishable book should result from this project. This would not be just a user’s manual, but would be a full exposition, copiously illustrated, of the geometry of tensegrities. The book would also contain directions for building physical models based on measurements derived from the interactive software. The big problem with tensegrities is figuring out the component dimensions ahead of time before you actually build the model. This way tensegrity models could be physically verified and replicated. They could be proved. My whole idea for such a system is that a simulator should connect you with the real physical world and enable you to build real physical models based on its results. It should not serve as a substitute for the physical world, divorcing you from it. A copy of the complete programming system should be included on a CD ROM in the back of such a book.
Note 1. To verify the existence of my thesis, and one of its major results, the so called “twist-angle formula”, see the Appendix to Chapter 1 (starting at page 8) of Hugh Kenner’s Geodesic Math and How to Use It, 2nd paperback edition 2003, Univ. California Press. See especially the footnote on page 8.
See also “twist-angle formula” in Robert Burkhardt’s report “The Application of Nonlinear Programming to the Design and Validation of Tensegrity Structures with Special Attention to Skew Prisms” at http://www.trip.net/~bobwb/ts/skew/skew.xml Or simply Google "twist-angle formula". Include the double quotes.
Finance: 1st Year: Buy two high performance PC work stations and software development kits, etc. Install one at my home and one at the team member's house. Budget $20,000 for software and hardware and $30,000 for salaries and expenses in the first year. I am currently retired and living on social security and a small pension so require minimal salary. The team member would be paid hourly as a consultant. We would communicate our results to each other mostly via the internet.
2nd Year: Release and support the software as shareware via the internet. There are various ways to do this. For instance, work out a relationship with SourceForge.net or a similar open source organization. In any event, develop plug-ins for various internet browsers such as MS Internet Explorer and Mozilla Firefox using something like the Java "servelet" model. Make the software open source and attract a community of developers as has been done, for instance, with the Firefox Web browser and Ubuntu Linux. This stage would be very much influenced by the responses of the design community. They would begin to lead the way.
Qualifications: I am a graduate in Industrial Design from Pratt Institute who has worked as a consultant in package engineering. After switching in the mid 1960s from working as a commercial graphic artist to programming computers, I spent more than 35 years as a programmer specializing in graphics, computerized typesetting, and text processing. In the period of the late 1970s to early 1980s I designed and directed the implementation of an interactive typographic composition system that used Tektronix storage tubes as "soft" proofing devices and output final copy to an ultra high precision cathode ray tube photo typsetter called a Videocomp. The system ran on Data General mini-computers under their Real Time Disk Operating System and was programmed in assembly language. This was for a major text processing and typesetting service bureau in Fort Washington, PA. I also implemented a computerized proofing system for structural chemical formulas for the same service bureau.
Team member, Ronald Brown, as well as being a professional computer programmer with many years experience in embedded systems, is also a "mathematical artist" with a degree and teaching certificate in mathematics.
Login to add/view comments
