Paper · 2024-12-10 · cs.RO, cs.LG
Optimizing Locomotor Task Sets in Biological Joint Moment Estimation for Hip Exoskeleton Applications
Clusters 20 locomotor tasks by PCA and k-means on hip kinematics and moments, then picks 8 representative tasks by a task-weight score. A small FCNN trained on those 8 tasks estimates hip joint moment with leave-one-subject-out RMSE 0.30 ± 0.05 Nm/kg, close to all tasks (0.28) and better than cyclic tasks only (0.38). Author-reported, 11 healthy subjects.
k-means clusteringDimensionality reductionMulti-layer perceptron (MLP)Dropoutexoskeletonbiomechanicstask-selectiondata-efficiency
AI-compiled by claude-haiku-5-5 on 2026-10-25, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.
In plain words
A hip exoskeleton works better if it knows how hard the wearer's hip is pushing at each moment. That push can be estimated from sensors worn on the body, but the estimator learns from motion-capture recordings of people doing many activities, and collecting those recordings is slow and expensive.
The authors asked whether many of the activities are really alike. They grouped the recorded activities by how similar their joint movement patterns are, then kept one representative activity from each group. A small neural network trained on those representatives predicted the hip push about as well as one trained on every recording, and clearly better than one trained only on walking-style activities. The idea is a way to decide which recordings are worth collecting.
TL;DR
- Joint angle, velocity and moment profiles of 20 locomotor tasks (11 subjects) are reduced with PCA and grouped into 8 clusters with k-means §II.B.
- One representative task per cluster is chosen by a task-weight score R §II.B, eq. 1.
- A 3-hidden-layer FCNN trained on the 8 optimized tasks reaches RMSE 0.30 ± 0.05 Nm/kg, versus 0.28 ± 0.05 for all tasks and 0.38 ± 0.08 for cyclic tasks only §III.B.
- Only the author-reported numbers exist. There is no official code, and the study is healthy young adults only.
Problem
Deep-learning estimators of biological hip joint moment need data from many subjects and many activities §I. Earlier work found reduced task sets that perform as well, but chose them by forward selection on model performance, which does not explain why certain tasks matter §I. The authors want a selection rule based on the biomechanical features of the tasks §I.
Method
The pipeline has four stages fig. 1.
- Data. Public dataset of 12 healthy adults (7 male, 5 female) doing 10 cyclic and 17 non-cyclic tasks, with kinematics, kinetics and wearable sensor data §II.A. Features used are unilateral hip angle, hip velocity and hip moment in the sagittal plane, plus pelvis and thigh IMU data §II.A fig. 1.
- Input matrix M. Each subject-task average gait or movement cycle is linearly interpolated to a common length. The three signals are concatenated per subject-task pair, and all rows form M §II.A. Seven non-cyclic tasks are dropped because they have no uniform cycles §II.A. One subject is dropped for too few cyclic trials §II.A. The stated remaining counts are 8 cyclic and 12 non-cyclic tasks, and 11 subjects §II.A.
- PCA. Components are derived from M and the number kept is set by explained variance. The first three components are used §II.B fig. 2a.
- k-means. Tasks are clustered in the PCA space. K is chosen as the value with the highest silhouette score, which is K = 8 with score 0.38 §II.B fig. 2b §III.A.
- Task-weight score. For a task t in cluster c,
R = (A/B) * (A/C) * (S/11) * weq. 1, where A is the task's points in cluster c, B is all points in c, C is all points of that task across clusters, S is the number of subjects contributing that task to c, and w is a per-task weight §II.B. The highest-R task in each cluster is its representative §III.A tab. 1. - Training conditions. Three training sets are compared: all 20 tasks, the 8 optimized representatives (3 cyclic, 5 non-cyclic), and the 8 cyclic tasks §III.A.
- Model. FCNN: input layer of 14 features, three hidden layers of 50 units, and one output unit for hip moment §II.C fig. 1. Each hidden layer is linear, then batch normalization, then ReLU, then dropout 0.2 §II.C.
- Validation. Leave-one-subject-out. For each held-out subject, the rest is filtered by condition and split 80% train / 20% validation §II.C fig. 1. Test metrics are RMSE and R², averaged over folds §II.C.
Equation as printed in the paper (variables defined in the text above it):
# Task-weight representativeness of task t in cluster c [eq. 1]
# A = points of t in c, B = points in c, C = points of t in all clusters
# S = distinct subjects of t in c, w = per-task weight
def representativeness(A, B, C, S, w):
# the denominator 11 is the number of subjects after exclusion [§II.A]
return (A / B) * (A / C) * (S / 11) * wTraining of each FCNN, as stated §II.C:
# Per held-out subject, per condition [§II.C]
# Adam, learning rate 0.001, MSE loss, batch size 64
def train_fold(train_set, val_set):
# up to 100 epochs; stop if validation loss has not improved for 10 epochs
for epoch in range(100):
for batch in batches(train_set, size=64):
loss = mse(model(batch.inputs), batch.moment)
update(model, loss, optimizer="Adam", lr=0.001)
if no_improvement(val_set, patience=10):
break
return modelHyperparameters
| Name | Value | Where | Notes |
|---|---|---|---|
| Subjects after exclusion | 11 (of 12) | §II.A | one excluded for too few cyclic trials |
| Tasks after exclusion | 20 (8 cyclic, 12 non-cyclic) | §II.A | 7 non-cyclic tasks excluded; the dataset description states 10 cyclic and 17 non-cyclic §II.A, which does not reconcile with 8 + 12 |
| Interpolation target length | not stated | §II.A | |
| PCA components kept | 3 | §II.B fig. 2a | explain 70.04% of variance |
| k-means K | 8 | §II.B fig. 2b | chosen by highest silhouette (0.38) |
| k-means init, seeds, n_init | not stated | ||
| Task-weight w | 0.8 to 1.0 in Table 1 | tab. 1 | values for other tasks not listed; described as both "popularity and ease of collection" §II.B and as "data collection difficulty" §II.B |
| FCNN input size | 14 | §II.C fig. 1 | composition of the 14 is not stated in the text |
| FCNN hidden layers | 3 × 50 units | §II.C | |
| Activation | ReLU | §II.C | |
| Normalization | batch normalization after each linear layer | §II.C | input standardization not stated |
| Dropout | 0.2 | §II.C | |
| Optimizer | Adam, lr 0.001 | §II.C | other Adam settings not stated |
| Loss | MSE | §II.C | |
| Batch size | 64 | §II.C | |
| Max epochs | 100 | §II.C | |
| Early stopping patience | 10 epochs on validation loss | §II.C | which checkpoint is restored not stated |
| Train/validation split | 80% / 20% of the training subjects | §II.C | split procedure (random, stratified) not stated |
| CV scheme | leave-one-subject-out, 11 folds | §II.C fig. 4 | |
| Significance level | 0.05 | §II.C | one-way ANOVA, Bonferroni post hoc |
| Random seeds | not stated |
Results
Author-reported. Setup: 11 healthy adults, leave-one-subject-out, FCNN, RMSE in Nm/kg §III.B fig. 4. Gray points are 11 folds per condition fig. 4.
| Training set | RMSE (Nm/kg) | R² | Source |
|---|---|---|---|
| All tasks (20) | 0.28 ± 0.05 | 0.64 ± 0.07 | §III.B fig. 4 |
| Optimized tasks (8) | 0.30 ± 0.05 | 0.57 ± 0.10 | §III.B fig. 4 |
| Cyclic tasks (8) | 0.38 ± 0.08 | 0.32 ± 0.09 | §III.B fig. 4 |
Reported comparisons §III.B:
- All-task and optimized-task RMSE are lower than cyclic-only by 27.11 ± 6.18% and 20.60 ± 9.80%, both p < 0.05.
- Optimized vs all tasks: no difference in RMSE or R² (no p-value given).
- Optimized vs cyclic-only: R² higher, significance stated for RMSE only fig. 4.
Clustering results §III.A: PC1, PC2, PC3 explain 41.79%, 18.04% and 10.21% of variance fig. 2a. Silhouette score 0.38 at K = 8 fig. 2b.
Representative tasks as stated in the text §III.A: normal walk, stairs up, stairs down (cyclic); lunges, jump, cutting, sit to stand, lift weight (non-cyclic). See the pitfall below on Table 1.
Table 1 (top-R task per cluster, values as printed) tab. 1:
| Cluster | Top task | R |
|---|---|---|
| 1 | Tire Run | 0.11000 |
| 2 | Lift Weight | 0.31715 |
| 3 | Stairs Up | 0.36387 |
| 4 | Jump | 0.61547 |
| 5 | Normal Walk | 0.08998 |
| 6 | Stairs Down | 0.45581 |
| 7 | Cutting | 0.43672 |
| 8 | Sit to Stand | 0.17679 |
Qualitative examples: predicted vs ground-truth moments for two cyclic and two non-cyclic tasks, from the median-RMSE subject, show a ceiling effect at peak moment fig. 5. The text names normal walk, incline walk, ball toss and lunges §III.B.
Comparison to a prior model on the same dataset (not this paper's result, as reported in its Discussion): TCN with kinematic IMU inputs, RMSE 0.280 Nm/kg and R² 0.56 §IV.
Paper vs code
No official code.
Searched: (1) the paper and its LaTeX source contain no repository or project URL; (2) no project page is linked; (3) GitHub search for "locomotor task set optimization", "hip exoskeleton joint moment", "exoskeleton biological torque deep learning" and "Scherpereel exoskeleton" returned nothing. The GitHub user inseungkang (matching author Inseung Kang) was also searched for joint moment, task and cluster repositories: none. Its hip-exoskeleton repositories cover gait-phase estimation and locomotion-mode classification, which are different papers. No account matching Jimin An, the corresponding author, was found.
Pitfalls
- Table 1 vs the text. Table 1 gives Tire Run (R = 0.110) as the top task in cluster 1, but the text lists lunges as the representative from that group. Lunges appears in cluster 1 (R = 0.073) and cluster 2 (R = 0.079), where neither is top. Tire Run appears nowhere in the text. Implementers should decide which set they reproduce and say so.
- Task counts do not reconcile. The dataset is said to contain 10 cyclic and 17 non-cyclic tasks. Excluding 7 non-cyclic tasks leaves 10 non-cyclic, but the text says 8 cyclic and 12 non-cyclic remain. Which two tasks moved class is not stated.
- Weight w. The text describes w as both popularity and ease of collection, and as collection difficulty. The direction (higher w means easier or harder) is therefore ambiguous. Per-task w values are only partly shown in Table 1.
- S/11 is hard-coded. The subject count after exclusion is baked into eq. 1 eq. 1.
- Silhouette sweep. The range of K tested is not stated, and the paper does not say whether the 0.38 score is for the same PCA dimension used elsewhere.
- Feature standardization. The text does not say whether features are standardized before PCA or before the FCNN. The interpolation length is not stated.
- Input composition. Figure 1 lists four signal types (IMU left thigh, IMU pelvis, hip angle, hip velocity) with the hip moment as the label fig. 1, but the 14-dimensional count is not broken down in the text.
- Early stopping. Which epoch's weights are restored is not stated, and the validation split procedure is not given.
- Validation split. The 80/20 split is applied to the remaining subjects' data, so validation trials may come from the same subjects as training trials. The text does not say whether the split is by subject. The held-out subject is excluded from both.
- Statistics. Pairwise tests on RMSE are reported, but their pairing (per fold, per subject) and the R² p-values are not stated.
- Population. Healthy young adults only (age 21.8 ± 3.2 years). The authors say that patient populations with atypical gait (e.g. crouch gait, stiff knee) may degrade task optimization §V.
- Excluded tasks. Seven non-cyclic tasks are dropped because they have no uniform cycles. The Discussion says these tasks are harder to predict, which the authors attribute to excluding them but do not test §IV.
- Unit. Moments are normalized by body mass, in Nm/kg §III.B.
Lineage
- Builds on: the same public dataset as its comparison model §II.A §IV. Its LSTM and TCN references are the prior learned estimators the authors contrast with §V.
- Compared against: TCN estimator on the same dataset (RMSE 0.280, R² 0.56, as reported in the paper) §IV; forward task selection from prior work (not reproduced here) §I.
- Superseded by: not known from this wiki.
Source and license
Adapted from “Optimizing Locomotor Task Sets in Biological Joint Moment Estimation for Hip Exoskeleton Applications” by Jimin An, Changseob Song, Eni Halilaj, Inseung Kang (arXiv:2412.07823), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors.