I am developing a modular architectural system based on three main components: structural nodes, linear elements (bars), and tensioned surfaces. The nodes serve as connectors between the linear elements and allow specific angular configurations (0°, 45°, 90°, 135°, and 180°). Attached are some examples of these nodes. They are modeled in 3D and can be distributed along a three-dimensional axis.
The linear elements are circular-section bars with five different lengths but always the same diameter. The tensioned surfaces act as functional elements that define specific spatial roles (e.g., shading, enclosure, support) by being strategically placed between the bars.
I currently have a set of approximately 40 designed nodes. My goal is to develop a system that maximizes the number of spatial configurations using the minimum number of unique nodes. I aim to create a Grasshopper script that analyzes and optimizes which nodes are the most efficient for generating the maximum number of configurations with the smallest set of components.
Each node can be repeated as many times as necessary, and some components might remain unused in certain configurations. However, the priority is to ensure the system remains flexible and efficient, working consistently with the same set of basic pieces.
Any guidance, ideas, or resources for achieving this in Grasshopper would be greatly appreciated!