*3.2. Training Regimen*

In order to guide the runners to improve their running cadence, the system has to provide a training regimen tailored to each subject. Before establishing the plan for improving the runner's cadence, the system has to establish the runner's baseline cadence. Note that the different runners may have different levels of experience and different body types. As such, a single and fixed training regimen may not be generalizable to all runners. Therefore, RunningCoach collects two types of information from the runner in order to set her or his personalized training regimen. First, RunningCoach collects information about the runner's physical parameters. The collected physical parameters in the app include age, gender, height, weight, and leg length as measured from the hip joint to the ground (Figure 1a). Second, RunningCoach sets the desired cadence improvement curve, by collecting information about the runner's baseline, target cadence and the length of the proposed training regimen. In the current version of RunningCoach, all of the aforementioned parameters are manually set by the runner.

In future iterations of the app, a recommended training regimen will be determined by collecting data over a small set of consecutive runs and comparing runner's own baseline with similar runners. Similar runners will be identified using the provided physical parameters and their baseline data.

**Figure 1.** (**a**) A screenshot depicting the physique profile screen; (**b**) a screenshot depicting an exponential cadence training regimen; and (**c**) a screenshot depicting a linear training regimen [11].

After the runner provides her or his physical parameters, a default training regimen is suggested. This training regimen consists of a starting cadence level (baseline), a target cadence level, the length of the training regimen, and the steepness of the cadence improvement curve. The default length of the training regimen is 90 days, which can be altered by the subject. The reason for selecting 90 days as a default value was to maintain the length of the training regimen with the length of the study. The family of parametric cadence training regimens adopted by RunningCoach follows an exponential improvement curve, as follows.

$$\mathcal{C}(d) = \frac{\mathcal{C}\_N \cdot e^{aN} - \mathcal{C}\_0}{e^{aN} - 1} - \frac{\mathcal{C}\_0 - \mathcal{C}\_N}{e^{-aN} - 1} \cdot e^{-ad} \, \tag{1}$$

In Equation (1), *C*(*d*) denotes the suggested cadence on day *d*. *C*<sup>0</sup> denotes the baseline cadence of the runner, where *C<sup>N</sup>* denotes the target cadence. The parameter *α* controls the steepness of the personalized training regimen (larger values imply steeper improvements) and *N* denotes the length of the training regimen in days. By setting values for *C*0, *N*, *C<sup>N</sup>* and *α*, a training regimen is established that guides the runner to achieve the target cadence level *C<sup>N</sup>* within *N* days.

The family of training regimens described in Equation (1) is the solution of the function *C*(*d*) = *A* + *B* · *e* <sup>−</sup>*α<sup>d</sup>* with initial conditions *C*(0) = *C*<sup>0</sup> and *C*(*N*) = *CN*. Moreover, as *α* approaches 0, the training regimen described in Equation (1) approaches a training regimen with a linear improvement curve. Concretely, lim*α*→<sup>0</sup> *C*(*d*) = *C*<sup>0</sup> + *CN*−*C*<sup>0</sup> *N* · *d*. This claim is formally shown in [40]. The reasoning behind devising training regimens with gradual improvements in cadence is to minimize the risk of injury due to sudden changes in the runner's training routine. In addition, the exponential training regimen allows for larger increases around the baseline and then levels off towards the higher target cadence to prevent over-training.

Examples of the training regimens are depicted in Figure 1b,c, where Figure 1b shows a training regimen with exponential improvements in cadence (*α* > 0) and Figure 1c shows a training regimen with a linear improvement curve of cadence (*α* → 0).

As stated earlier, in the current version of RunningCoach, the cadence training regimen settings are manually set by the runner. Eventually, we aim to develop an algorithm that would recommend, to each runner, her or his ideal cadence level (*CN*), and a personalized improvement steepness curve (*α*), that are based on her or his physique profile depicted in Figure 1a as well as data from her or his previous runs. In addition, we aim to use heart rate data to dynamically alter the training regimen for the runner in a way that is sensitive to the runner's physical ability. In order to achieve this

goal, we aim to use the data collected in this study (and the future iterations of this study) to train a recommendation algorithm in a way that mimics the true improvement trajectories of the runners. Further studies are needed to validate the efficacy of such a recommendation algorithm. More details about the adopted training regimen can be found in [11,40].
