# The Application of Generative Algorithms in Human-Centered Product Development
## 4 Application to Product Development Process
### Embodiment Stage: Macro-Level SBF Solutions  
With the intention of making the controller design highly attuned to ergonomics, our workflow incorporates the use of 3D scanners in order to acquire data on user anatomy. This is a direct input that differentiates this methodology as human-centered, drawing directly from discrete ergonomic properties to inform the design. Where this example utilizes ergonomic data, other forms of inputs could be used in replacement or as a complement.  
Making use of 3D scanning and derived knowledge about the location of the user's joints, we can then map the abstract SBF graph onto a spatial arrangement around the user's arm. Figure 5 shows some hypothetical arrangements informed by the abstract class structure previously shown in Figure 4. Once in place, we can use this spatially embedded graph to partition the space around the user's arm and allocate the space available to each element or sub-assembly. Crucially, the degrees of freedom, spatial bounds, and mechanical performance required of any deformable, compliant elements will be specified at this stage. Supplementary information such as the user's weight, age, and gender can be used to complement the ergonomic information and help to fill in any unknown information. For the purposes of this research, a standard arm mesh available for Rhino was utilized in order to demonstrate the approach.  
Figure 4: Diagrammatic relationship between the abstract volumes and surfaces of the controller housing class.  
Figure 5: Form generations developed from abstract class definitions and ergonomic inputs.  
We can then anchor the abstract graph structure to its relevant points on the user's arm utilizing scan mesh data. The initial results are shown in Figure 6 (left), where each node in the graph is given a bounding sphere of the same radius. In this way, a physical structure to the product system that is valid in its adjacency and connectivity of functional components can emerge from this form-finding process, regardless of the particular anthropometry of the individual intended user. Whilst this spatial embedding of the structure may still seem abstract, the connectivity of the elements to the bone structure of the arm and its manifold mesh surface allows for the generation of CAD geometry through a variety of means by manifesting multiple points of reference.  
The next step here is to take the scan data as an input and integrate it with the data structure representing the joints and orientation of the user's bones. By filtering the named nodes in the abstract graph representation, the number and connectivity of features which contact the user's limb can be extracted and used to drive the component placement step. Knowing the location for the custom elements that will interact directly with the user, their relationship to the user's anthropometry, the biomechanics, and the context for these elements within the product assembly, CAD models can be generated with respect to this human-factors data. The interactive physics engine \"Kangaroo\" inside Grasshopper was utilized to undertake a series of form-finding processes to arrive at a layout geometry for the bespoke features, taking the form of straps that can wrap around a specific user's forearm and wrist, presented as a series of surfaces with unique dimensions (Figure 7). Another script is used to \"unroll\" the surfaces from around the scan mesh. The output of this stage of the algorithmic approach is a series of straps composed of planar facets. The face angle between each facet and its neighbors will also be unique with respect to the ergonomic profile.  
Figure 6: (**Left**) The structure graph network. (**Right**) Network loaded directly into the CAD environment adjacent to the arm mesh. The structure graph is arranged around the arm mesh.