The goal of the optimisation is for the model (with the arm support, if necessary) to successfully complete a series of movement simulations.
The movements are able-bodied movements from our database. The model is one of the virtual patients. Given a set of muscles under sFES, the simulation tries to find the required activation patterns for muscles under voluntary control, and sFES patterns for muscles under stimulation that will produce the desired motion as well as possible. The simulation has the option of adding an arm support, in which case it also optimises the positioning and assistance level of the support. The process is repeated for all desired motions, and all candidate sFES muscle sets, until the optimal set is identified.
Find set of desired movements
Change model parameters to match one of the virtual patients
We will use the simulation data for the optimal sFES muscle set to optimise the controller for the stimulation.
We will train an artificial neural network (ANN) to predict the sFES patterns from voluntary muscle activations that we can record using surface electromyography. If injury level is such that certain motions can be done independently (e.g. paralysis at the elbow and distally, but not at the shoulder), recorded kinematics will also be used as inputs to the ANN.
Separate voluntary muscle activations from sFES patterns
We want to test our methodology and FES controller in the presence of noise, as well as under ideal conditions. The noise could be errors in clinical/biomechanical measurements that mean our model patient is different from the actual patient, or sensor errors so that the arm position is not fed back to the FES controller correctly.
Add uncertainty to the system optimisation and retrain the FES controller