Prosthetic Joint Design Optimization
May 2024
Description
This project applies machine learning-driven optimization techniques—genetic algorithms and Bayesian optimization—to systematically improve the mechanical design of 3D-printed prosthetic finger joints. I worked on this as part of my research at SickKids, developing automated design workflows that balance competing objectives of range of motion, mechanical strength, and manufacturing feasibility.
Traditional prosthetic joint design relies on manual iteration and designer intuition, resulting in suboptimal performance and lengthy development cycles. By formulating joint design as a constrained multi-objective optimization problem and leveraging computational search algorithms, we can explore vast design spaces to identify Pareto-optimal solutions that outperform conventional designs.
Problem Formulation
Design Variables
The prosthetic finger joint is parameterized by 8 continuous design variables defining its geometric configuration:
- Flexure hinge thickness (t): 0.8-2.5 mm, controls joint stiffness and stress concentration
- Flexure hinge length (l): 3-8 mm, affects rotational compliance and range of motion
- Hinge radius of curvature (r): 1-4 mm, influences stress distribution and fatigue life
- Phalanx width (w): 12-18 mm, determines structural rigidity and print time
- Cable routing offset (d_cable): 2-6 mm, impacts mechanical advantage of tendon actuation
- Reinforcement rib thickness (t_rib): 1-3 mm, adds local stiffness without excessive mass
- Joint center offset (d_joint): 0-2 mm, adjusts center of rotation for anatomical matching
- Phalanx taper angle (α): 0-15°, aesthetic parameter for natural finger appearance
Objective Functions
Design quality is assessed via three conflicting objectives:
1. Maximize Range of Motion (ROM): Joint flexion angle achievable before geometric interference or material yield
ROM = arctan(Δy / Δx) × (180/π) degrees
2. Minimize Peak Stress: Maximum von Mises stress in flexure region under 20N cable tension (measured via finite element analysis)
σ_max = max(σ_von_Mises) across all elements
3. Minimize Manufacturing Complexity: Composite metric including print time, support material volume, and overhang severity
C_mfg = w1×(T_print) + w2×(V_support) + w3×(A_overhang)
Constraints
- Stress limit: σ_max < 15 MPa (safety factor 2.5 against TPU yield strength ~38 MPa)
- Minimum feature size: All dimensions ≥ 1.2 mm (FDM printer resolution limit)
- Maximum overhang angle: ≤ 50° from vertical (printable without supports on Prusa i3 MK3S)
- Geometric interference: No self-collision during full flexion motion
Optimization Algorithms
Genetic Algorithm (GA) Implementation
Evolutionary optimization inspired by natural selection, implemented using MATLAB's Global Optimization Toolbox:
Algorithm parameters:
- Population size: 80 individuals per generation
- Selection: Tournament selection with elitism (top 10% preserved)
- Crossover: Scattered crossover with 85% probability
- Mutation: Adaptive Gaussian mutation (σ decreases with generation number)
- Termination: 100 generations or convergence criterion (Pareto front change < 0.5% over 10 generations)
Fitness evaluation pipeline:
- Generate parametric CAD model via MATLAB-SolidWorks API with design variable vector
- Export mesh for FEA (Ansys Mechanical APDL batch mode)
- Compute stress distribution and ROM via kinematic simulation
- Calculate manufacturing metrics from STL tessellation analysis
- Return objective function values [ROM, σ_max, C_mfg] to GA engine
Computational cost: ~45 seconds per evaluation × 80 individuals × 100 generations = 100 hours total runtime (parallelized across 16 CPU cores, actual wall time ~8 hours)
Bayesian Optimization Implementation
Probabilistic surrogate model-based approach that efficiently explores expensive-to-evaluate design spaces:
Surrogate model: Gaussian Process (GP) regression with Matérn 5/2 kernel, modeling objective functions as stochastic processes
Acquisition function: Expected Improvement (EI) criterion balances exploitation (sampling near current optimum) vs. exploration (sampling high-uncertainty regions)
EI(x) = E[max(0, f_best - f(x))]
Algorithm workflow:
- Initialize with 20 Latin Hypercube sampled designs (space-filling)
- Fit GP model to observed data [design variables → objective values]
- Optimize acquisition function to propose next evaluation point
- Evaluate expensive simulation at proposed design
- Update GP model with new data point, repeat for 150 iterations
Advantages over GA: Requires far fewer evaluations (170 total vs. 8000 for GA) due to intelligent sampling guided by uncertainty quantification. Well-suited for expensive simulations where evaluation cost dominates.
Implementation: Custom MATLAB code using GPflow library for GP regression, L-BFGS-B optimizer for acquisition function maximization
Results & Algorithm Comparison
Pareto Front Analysis
Both algorithms successfully identified non-dominated design solutions spanning the ROM-stress tradeoff:
- High-ROM design: 95° flexion, 12.8 MPa peak stress, 3.2 hour print time (thin flexure: t=1.1mm)
- Low-stress design: 72° flexion, 6.4 MPa peak stress, 2.8 hour print time (thick flexure: t=1.9mm)
- Balanced design: 85° flexion, 9.1 MPa peak stress, 2.9 hour print time (moderate flexure: t=1.5mm)
Performance improvement over baseline design:
- +28% increase in ROM (85° vs. 66° baseline)
- -35% reduction in peak stress (9.1 MPa vs. 14.0 MPa baseline)
- -18% reduction in print time (2.9 hours vs. 3.5 hours baseline)
Algorithm Performance Metrics
| Metric | Genetic Algorithm | Bayesian Optimization |
| Total evaluations | 8,000 | 170 |
| Wall time (16 cores) | 8.2 hours | 2.1 hours |
| Pareto front quality | Excellent (dense sampling) | Good (sparse but targeted) |
| Convergence stability | Robust (stochastic averaging) | Sensitive to kernel hyperparameters |
Design Insights
- Flexure geometry dominance: Hinge thickness (t) and radius (r) account for 78% of ROM variance, confirming these as primary design levers
- Cable routing criticality: Optimal offset d_cable = 4.2mm provides 15% higher mechanical advantage than baseline 3.0mm
- Reinforcement rib effectiveness: Adding 1.5mm ribs at 20mm spacing reduces stress by 22% with only 8% mass increase
- Nonlinear interactions: ROM and stress exhibit non-monotonic dependence on hinge length due to buckling transition at l ≈ 5.5mm
Physical Validation
Experimental Testing Protocol
Optimized designs fabricated and tested to validate simulation predictions:
- Fabrication: Prusa i3 MK3S, TPU 95A filament, 0.2mm layer height, 40% gyroid infill
- ROM measurement: Protractor-based goniometry at 20N applied cable tension, averaged across 5 samples
- Stress validation: Digital Image Correlation (DIC) surface strain measurement, converted to stress via constitutive model
- Durability testing: Cyclic fatigue (10,000 flexion cycles at 50% max ROM, 1 Hz frequency)
Validation Results
- ROM prediction accuracy: Mean error 6.2° (7.3% relative error), primarily due to TPU material property variability
- Stress prediction accuracy: FEA overestimated stress by 18% (conservative bias acceptable for safety-critical design)
- Fatigue performance: No visible cracks or performance degradation after 10,000 cycles, exceeding target 6-month lifespan
User Feedback Integration
Prototype deployed to 3 pediatric patients (ages 8-12) with congenital hand differences:
- Functional improvements: Patients reported easier gripping of small objects (pens, utensils) compared to previous empirically-designed prosthesis
- Durability: No mechanical failures observed over 4-month trial period
- Design preferences: Patients preferred balanced design (85° ROM, 9.1 MPa stress) over high-ROM variant due to improved pinch stability
Future Development
Extended Optimization Framework
- Multi-fidelity modeling: Combine fast low-fidelity beam theory models with expensive high-fidelity FEA for hybrid Bayesian optimization
- Topology optimization: Replace parametric geometry with density-based optimization (SIMP method) to discover unconventional joint architectures
- Uncertainty quantification: Robust optimization accounting for material property variability (TPU elastic modulus ± 20%) and print defects
Advanced Objectives
- Grasp stability metrics: Optimize for force closure constraints on object geometries (sphere, cylinder, cube)
- Aesthetic objectives: Include human-rated appearance scores in optimization (via user study or generative aesthetic model)
- Sensor integration: Co-optimize joint geometry with embedded flex sensor placement for proprioceptive feedback
Deployment & Accessibility
- Web-based design tool: Deploy surrogate model as interactive web app for clinicians to customize designs without MATLAB/CAD expertise
- Generative AI integration: Train diffusion model on optimized designs to enable text-prompt design synthesis ("Create finger joint for child with high grip strength")
- Open-source CAD library: Release Pareto-optimal designs as Creative Commons templates for e-NABLE maker community