# Bike flow estimation in Paris

Marco Rogier, Emir Melliti, Lucas Babet

► To cite this version:

Marco Rogier, Emir Melliti, Lucas Babet. Bike flow estimation in Paris. Ecole normale supérieure - ENS PARIS. 2025. hal-05293193

HAL Id: hal-05293193

https://hal.science/hal-05293193v1

Submitted on 1 Oct 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Bike flow estimation in Paris

Marco Rogier

Emir Melliti

Lucas Babet

October 1, 2025

## Abstract

This work addresses the problem of estimating bicycle traffic flows in Paris using datasets provided by IFP Energies Nouvelles <fnref n="1" /> (IFPEN), with a primary focus on station occupancy. We construct a graph-based model in which bicycle movements are represented through a time-dependent transition matrix, enabling the reconstruction of street-level flows from aggregated station-level data. To address the high dimensionality and ill-posed nature of the problem, we combine structural assumptions—such as shortest-path routing and daily periodicity—with statistical approaches including dimension reduction, linear regression, and LASSO regularization.

Beyond analytical formulations, we explore probabilistic interpretations of the system via Markov chains, as well as estimation strategies that balance interpretability and robustness. Numerical experiments illustrate the potential of these methods for identifying significant traffic patterns, though several challenges remain due to data sparsity and model simplifications.

Our study highlights both the feasibility and the limitations of statistical modeling in urban mobility contexts, and points toward several promising directions for further research, including non-parametric extensions, autoregressive formulations, and machine learning approaches for capturing complex, nonlinear traffic behaviors.

<footnote n="1">¹https://www.ifpenergiesnouvelles.fr/</footnote>
# Contents

<table><tr><td>1 Introduction</td><td>2</td></tr><tr><td>2 Model overview</td><td>3</td></tr><tr><td>2.1 Notations</td><td>3</td></tr><tr><td>2.1.1 A first version of the graph model</td><td>3</td></tr><tr><td>2.1.2 Assumptions about time</td><td>3</td></tr><tr><td>2.1.3 Introduction of the quantities of interest</td><td>4</td></tr><tr><td>2.2 Use of the model</td><td>4</td></tr><tr><td>2.2.1 Equation between quantities</td><td>4</td></tr><tr><td>2.2.2 Evolution over time</td><td>6</td></tr><tr><td>2.2.3 Graph modifications</td><td>7</td></tr><tr><td>2.3 Estimation of Q<sub>n</sub></td><td>8</td></tr><tr><td>2.3.1 Qualitative criteria</td><td>8</td></tr><tr><td>2.3.2 Quantitative criteria</td><td>8</td></tr><tr><td>2.3.3 Principal component analysis and dimension reduction</td><td>9</td></tr><tr><td>3 Statistical Study of Q</td><td>11</td></tr><tr><td>3.1 Estimation of Q seen as the transition matrix of a Markov chain</td><td>11</td></tr><tr><td>3.1.1 Numerical Simulation</td><td>12</td></tr><tr><td>3.2 Estimation of Q</td><td>13</td></tr><tr><td>3.2.1 Estimation Method</td><td>14</td></tr><tr><td>4 Conclusion:</td><td>15</td></tr></table>

# 1 Introduction

The increasing availability of urban mobility data has opened new opportunities for analyzing and optimizing traffic flows in cities. In this project, we focus on estimating bicycle traffic at the street level in Paris using datasets provided by IFPEN. These include bike station occupancy over time, counts on certain streets, and origin-destination data for free-floating bikes.

Our objective is to reconstruct as accurately as possible the flow of bikes through the city, both temporally and spatially. The challenge lies in the partial nature of the data: while we know the number of bikes present at each station at discrete time steps, we have little to no information about the precise paths taken by users or their travel times. To address this, we develop a model that interprets stations and their connections as a directed graph, assuming that bikes follow shortest paths and that their movement patterns exhibit daily periodicity.

The core of the modeling relies on defining and estimating a transition matrix $Q_n$, which governs the probabilistic redistribution of bikes between stations over time. From this, we infer not only inter-station flows but also street-level occupancies by mapping bike routes onto the urban street network.
To mitigate the problem of high dimensionality and ill-posedness, we explore a range of strategies: introducing temporal regularities and qualitative assumptions, reducing dimensionality through basis projections, and applying statistical estimation techniques such as linear regression and LASSO. Additionally, we interpret the system through the lens of Markov chains, which provides a natural probabilistic framework and justifies the use of frequentist estimators under certain conditions.

This report details the construction of the model, the assumptions made, and the methods used to estimate bike flows, while also highlighting the limitations of the approach and proposing several directions for future work.

# 2 Model overview

The problem posed being that of estimating street traffic from the data provided by IFPEN, we first decided to sort this data into two types on the basis of a quantitative criterion. As the data of the filling of the bike stations are in large number, they will constitute the main data of our model, while those of the attendance of certain streets, as well as those concerning the journeys of free-floating bicycles will be considered as model calibration and validation data. We therefore initially think only about bikes, considering that all bicycles follow the same behavior as these.

We first introduce certain notations concerning the key quantities of the model, then we will gradually present the different stages of the reflection that we have carried out.

## 2.1 Notations

### 2.1.1 A first version of the graph model

In order to model the stations and the movements of the bikes, we make the hypothesis that to connect two stations, all the bikes take the shortest path. Thus, there is only one way connecting two stations. We can therefore represent the stations and the journeys by a graph (complete a priori, i.e. it is possible to reach any station from any other).

On the example of figure 1, the vertices of the graph correspond to the different bike stations, all linked together by a single line corresponding to the journeys (in one direction or the other). In the example, we do not represent the fact that all the vertices are connected for the sake of visibility.

### 2.1.2 Assumptions about time

The notations that we introduce here will be adapted throughout the document. We choose to reason on the scale of a day and we first decide to discretize the time, with a time step $\Delta t$ whose value is not yet determined. We decide to impose a cyclic condition on all observable quantities, with a period of one day: for an observable $A$, by setting $N_T$ the number of time steps such that $N_T \times \Delta t = 24h$, we therefore have:

$$A(n\Delta t + N_T\Delta t) = A(n\Delta t) \quad \forall n$$
<figure><img src="image_2.png" /><figcaption>Figure 1: An example of graph</figcaption></figure>

This first hypothesis seems likely, at least from Monday to Friday, and will allow simpler use of the data.

Notation : For any quantity A, we set :

$$A_n = A(n\Delta t)$$

### 2.1.3 Introduction of the quantities of interest

We denote by $N_s$ the total number of stations in the network. We first set $x_n \in \mathbb{N}^{N_s}$ as the column vector whose i-th coordinate corresponds to the number of bikes available in the i-th station (we obviously neglect the bikes which are out of service).

Similarly, we introduce $q_n \in \mathbb{N}^{N_s}$ the vector which, to a station 'origin' and a station 'destination', associates the number of bikes going from origin to destination between the time steps $n$, and $n + 1$. The direction of travel is taken into account here.

This last vector is close to the information desired.

Precisely, by denoting $N_r$ the number of street portions taken on the routes of the different bikes, we set $y_n \in \mathbb{N}^{N_r}$ the vector which to each street portion associates the number of bikes who frequent it during the nth time step.

## 2.2 Use of the model

### 2.2.1 Equation between quantities

The manipulation of quantities introduced in vector form is done using matrix calculation. We give as the first relation the one which connects the searched $y_n$ vectors to the $q_n$:

$$ (1) \quad \sum_{k=1}^{N_T} y_k = T \cdot \sum_{k=1}^{N_T} q_k $$

Where $T \in \mathbb{M}_{N_r \times N_s}(\{0, 1\})$ corresponds to the matrix which for each path (distinguishing its direction) associates the column of 0 and 1 indicating for each street portion whether it is part
of the journey or not. For example, if we consider the route ENS - Lycée Louis le Grand, it
passes through the following streets:

Ulm - Soufflot - Saint Jacques

<figure><img src="image_3.png" /><figcaption>Figure 2: Itinerary from ENS to Lycée Louis le Grand (Paris)</figcaption></figure>
The column associated with this journey (regardless of its direction) is as follows:

<table><tr><td>Vaugirard</td><td>0</td></tr><tr><td>Soufflot</td><td>1</td></tr><tr><td>Claude Bernard</td><td>0</td></tr><tr><td>Ulm</td><td>1</td></tr><tr><td>Saint Jacques</td><td>1</td></tr></table>

This matrix can be calculated under the assumption of uniqueness of the path connecting two terminals. This calculation is independent of the dataset made available to us, it only requires a graph whose vertices are street intersection and edges are street portion, with some additional information such as edges length in order to perform a shortest path algorithm (Floyd Warshall for example).

An important remark for the exploitation of the results: relation (1) therefore gives us access to the total number of bikes who visited a street during a day. To go back to more precise information and obtain a relationship of the type $y_n = T \cdot q_n$ a priori false in continuous time because a bike does not occupy all the streets of its journey at the same time during it, it is therefore necessary to choose a suitable time step, or at least to carry out a summation of several time steps in order to obtain valid approximations.

We will also see in the following that the vectors described previously are intended to be slightly modified, which will make it possible to refine the time step.

### 2.2.2 Evolution over time

From relation (1), we therefore come back to the calculation of the vectors $q_n$.

We can first of all write the relationship linking the temporal evolution of the bikes between each station. We first consider that for any pair of stations $(i, j)$, the travel time to go from $i$ to $j$ is one time step. We then have, for each station $i$:

$$x_{n+1}^i = x_n^i + \sum_{j \neq i} \rho_{j \to i}^n x_n^j - \sum_{j \neq i} \rho_{i \to j}^n x_n^i$$

Where $\rho_{i \to j}^n$ indicates the proportion of velibs from station $i$ going to station $j$ during the n-th time step. We logically have the following identity:

$$\sum_{j=1}^{N_s} \rho_{i \to j}^{n} = 1 \quad \forall i, n$$

By rearranging the terms, we have:

$$\begin{align*} x_{n+1}^i &= \sum_{j \neq i} \rho_{j \to i}^n x_n^j + (1 - \sum_{j \neq i} \rho_{i \to j}^n) x_n^i \\ &\stackrel{\text{\textbf{\textit{\textbf{\textit{\textbf{\textit{\textit{\textit{\textit{\textit{\textit{\textit{\textit{N_s}}}}}}}}}}} \qquad \rho_{i \to i}^n \\ \Rightarrow x_{n+1}^i &= \sum_{j=1}^{N_s} \rho_{j \to i}^n x_n^j \end{align*}$$
We can therefore describe the evolution of the number of bikes in the stations using a stochastic transition matrix:

$$ (2) \quad x_{n+1} = Q_n x_n $$

Where $Q_n \in \mathbb{M}_{N_s \times N_s}([0, 1])$ and $Q_n^{ij} = \rho_{j \to i}^n$. An essential remark should be noted at this point. For all $n$, the product $\rho_{j \to i} x_n^j$ corresponds, according to the definition of $Q$, to the number of velibs going from station $j$ to station $i$. We therefore have, by identification:

$$ \rho_{j \to i} x_n^j = q_n^{ij} $$

Thus, as the vectors $x_n$ are known (these are the bikes data provided by the IFPEN), the problem therefore amounts to calculating all the coefficients of the matrices $Q_n$.

However, the assumption made at the beginning of this section is erroneous: in fact, all the travel times from one station to another cannot be achieved in a single time step. Moreover, whatever the time step chosen, there would always be the possibility of having bicycles still in circulation at time $n\Delta t$. The following section provides a solution to this problem.

### 2.2.3 Graph modifications

In order to overcome the problem of the previous section, we decide to apply the following process, under a simplifying but nevertheless very effective hypothesis. We now assume that all the bikes travel at the same speed $v$ throughout their journeys. This speed is set at the average speed of a bike, the value of which must be requested from the IFPEN. Under this hypothesis, we modify the graph as follows:

We subdivide each (oriented) edge of the graph into a series of edges - fictitious vertices, such that the distance between each vertex of this new graph is equal to $d = v\Delta t$. Thus, between each time step, it becomes realistic to assume that each bike is located on one of the vertices of this new graph. This construction therefore makes it possible to considerably reduce the time step of our construction and therefore to increase the precision of our model.

<figure><img src="image_4.png" /><figcaption>Figure 3: Edge modification</figcaption></figure>

This modification therefore generates changes in the dimensions of the different quantities. By noting $\tilde{N}_s$ the number of dummy vertices, it seems logical to continue the reasoning carried out so far by replacing $N_s$ by $N = N_s + \tilde{N}_s$.

However, certain points should be noted:

* In the case of equation, the data is the $x_n$ and the unknown is the matrix $Q_n$. However, we do not know the number of bikes at the fictitious summits. This problem is in reality solved by the fact that where the coefficients of $x_n$ are unknown, those of the associated matrix $Q_n$ are perfectly known. Indeed, once engaged on one of the oriented edges of
the graph, the bikes have no other choice than to continue towards the next vertex in the direction of circulation imposed on them by the orientation of the edge. We therefore obtain the matrix $\tilde{Q}_n$ from the original matrix $Q_n$ by adding zeros and rows containing only one 1 and zeros.

* In section 1.2.1, we will continue to use the $q_n \in \mathbb{N}^{N_s^2}$ which we will find by summing all the bikes circulating between all the fictitious vertices positioned between two vertices real.

It now remains to determine the coefficients of the original matrix $Q_n$ in order to deduce, following the previous reasoning, an average of the $y_n$ over short periods of time.

## 2.3 Estimation of $Q_n$

The exact knowledge of the $Q_n$ can only be achieved if the given "origin-destination" pairs are given for reason of dimension. However, using certain constraints, it is possible to restrict the space of possible $Q_n$.

### 2.3.1 Qualitative criteria

The qualitative criteria need to be refined, however we can assume that over relatively long phases of the day the matrices are piecewise constant.

For example, if we hypothesize that commuting migrations are in the majority at the start and end of the day, we can assume that during the first hours of the day the matrices $Q_n$ are constant (with noise?), allowing all workers/students to join their activity. The coefficients of this 'morning' matrix are therefore poorly distributed and show the fact that only certain centers of interest are targeted by users.

Likewise, as these same workers/students return home in the evening, the matrices $Q_n$ in the evening are also constant and, subject to existence, will be equal to the inverse of the 'morning' matrix.

Conversely, it seems logical that towards the middle of the day, the coefficients of the matrix are fairly distributed across the majority of centers of interest.

### 2.3.2 Quantitative criteria

Some of the above constraints translate mathematically as below:

* As the movements of bikes are considered cyclical over a 24-hour period, we have:

$$ \prod_{n=1}^{N_T} Q_n = I_d $$

* In addition, the hypothesis of constancy of $Q_n$ during certain phases of the day therefore imposes a certain number of constraints thanks to $x_n$. For example, if all $Q_n = Q$ between $n_a$ and $n_b$, we have:

$$ x_i = Q^{(i-j)} x_j \quad \forall i > j \in \{n_a, \dots, n_b\} $$
In reality, this set of constraints is not extremely powerful because if the constancy assumption is correctly formulated, the p constraints are actually quite similar.

* It is also possible to use the fact that we know certain values of $y_n$ thanks to the measurement tool installed in certain streets. Even if the matrix $T$ is clearly not invertible, these constraints provide a more equations on the coefficient of the matrices $Q_n$.

* Finally, the stronger constraint could be deduced by means of an additional hypothesis. Indeed, if we assume that free-floating bikes have the same behavior as bikes, we can use all of the departure/arrival pairs of these to get additional relation between the $Q_n^{ij}$.

Another approach for restraining the possible value of $Q_n$ could be based on the distances between stations: knowing the distribution of bike travel times (to be requested from IFPEN), it could be possible to go back to the stations likely to be 'connected' by routes (in the sense that there is at least one bike taking this route). This last approach being independent of time and the qualitative considerations specified above, it could describe the time slot in the middle of the day, where all the centers of interest are targeted by the users. In the next subsection, we provide a useful approach which will allow us to take in account some of these constraints.

### 2.3.3 Principal component analysis and dimension reduction

One of the biggest issue in the problem we are trying to solve here is the fact that the dimension of the space where the unknown object $Q_n$ is much bigger than the number of equation that the data provides us:

- $\forall 1 \le n \le N_T, Q_n x_n = x_{n+1}$ gives $N_s \times N_T$ relations

- $Q_n$ is stochastic, giving us additional $N_s \times N_T$ relations

- Each known coordinate of an $y_n$ gives an additional relation

It is striking that the number of equation compared to the number of unknowns doesn't allow us to solve the system. This can be seen as an ill-posed problem, or more precisely, a problem with a huge space of correct answers. Among this huge space, most of the solutions doesn't fit some of the criterion listed above. To tackle this problem, we will reduce the dimension where the solution lies.

More generally, let $AX = Y$ be an "ill posed linear system", that is $N \gg K$, and:

- the unknown $X$ lies in $\mathbb{R}^N$

- the matrix $A$ has shape $K \times N$

- $Y$ is given, and lies in $\mathbb{R}^N$

The fact that the problem is ill-posed resides in the space of solution being an affine space whose direction is $ker(A)$, or said differently, if $X_0$ is a solution, and $U \in ker(A)$, then $X_0 + U$ is another solution.

This translates the facts that some bikes movements are absolutely undetectable by our measure, as the ones presented in the following figure. Indeed, these movement produce all the same effects on the $x_n$, and if none of the edges taken on these graphs are equipped with a counting device, the data will be the same whether any of these movement are added or removed from the traffic.
<figure><img src="image_5.png" /><figcaption>Figure 4: Example of indistinguishable movements</figcaption></figure>

This is why an additional knowledge on $X$ is required to provide an answer to the problem. In the linear point of view, the simplest way of giving an additional knowledge on $X$ is to require that it lies in a certain subspace $E$ of $\mathbb{R}^N$

This can be done by providing a basis $b_1, b_2, ..., b_m$ of $E$, that is $E = \text{Vect}(b_1, ..., b_n)$, and $X \in E$. Equivalently, if $B$ is the rectangle matrix whose column are the $b_i$, then $X = BZ$ where $Z \in \mathbb{R}^m$ is the new unknown. The problem become $ABZ = Y$, and it is well-posed at the condition that $Y$ is in $\text{Im}(AB)$, and $AB$ is injective, i.e., $\text{Im}(B) \cap \text{ker}(A) = \{0\}$ (and $\text{ker}(B) = \{0\}$ is given by the fact that $b_i$ are a basis of $E$), and so, necessarily, $m \le K$.

In this case, if $V$ is a left inverse of $AB$, then $ABZ = Y$ gives $Z = VY$, then $X = BVY$.

Here is a graphic visualisation of the presented method :

<figure><img src="image_6.png" /><figcaption>Figure 5: A graphical visualisation of dimension reduction</figcaption></figure>

Then, the whole difficulty resides in the choice of the $b_i$. They have to capture the main behaviors of the users. A graphical observation and the previous figure, that is indeed true in general is the following:

In order for the new problem to be well posed, the condition $\text{Im}(B) \cap \text{ker}(A) = \{0\}$ is necessary. However, in order to reduce the error, it seems that we should take $E = \text{Im}(B)$ orthogonal to $\text{ker}(A)$ (and of course close from $X$).

In our case, we can set for our $b_i$ some of the assumed behavior of the users presented above. We can't provide more than the number of relation. (actually, we will probably need to provide strictly less in order to have $AB$ injective). Then, the resolution of $ABZ = Y$ will in a certain way determine to what extend which of the provided behavior take an important part of the traffic. In fact, these proportion can be read in the coordinate of the vector $Z$.
The given $b_i$ can be of two types: time independent or time dependent, illustrated by the two following ideas

- A law determines the probability of going to a station according to its distance, and no distinction is made between stations at the same distance. (time independent)

- A distribution of weights on the vertices determines the probability of going to certain vertices (independently of the starting point) and returning in the evening at the starting vertex (time dependent)

To conclude this discussion, we should recall that the technique described above in a totally linear context can be extended to a non-linear context, (that is, constraint $A$ is not linear, and/or embedding $B$ is not linear) of course, with a cost of more complex resolution of the equations, but with similar reasoning on dimension.)

# 3 Statistical Study of $Q$

In the following, we will study a sample of $D$ data for which we can consider the transition matrices ($Q_n$) all equal to $Q$. In practice, this could correspond to a period of time on the same day and at the same hour, or to weekdays at the same time interval.

We assume that $X_n \in \mathbb{R}^{N_s}$, the vector representing the number of bicycles at the $N_s$ stations at the $n$-th observation, follows the following recurrence relation:

$$X_{n+1} = QX_n + \epsilon_n$$

where $\epsilon_n$ are random variables representing potential discrepancies (bicycles still in circulation, lost or undeposited bicycles, etc.). We will assume subsequently that all components of $\epsilon_n$ are independent, centered, and identically distributed.

Our goal now is to recover the coefficients of $Q$ from the observations of $X_n$.

## 3.1 Estimation of $Q$ seen as the transition matrix of a Markov chain

We consider the framework of the modified graph in Figure 3: in this configuration, at each discretized time, it is reasonable to assume that each bike is located on one of the $N = N_s + \tilde{N}_s$ vertices. The matrix $Q$ is still a stochastic matrix: As we have previously mentioned, the number of unknowns has increased as much as the number of equations. This change of perspective simply allows us to consider that all bikes are on a vertex, and hence the $L_1$ norm of the vectors ($x_n$) is constant and equal to the total number of bikes.

$$\forall n, \quad \sum_{i=0}^{N} x_i = C$$

Thus, it is possible to consider the vectors ($P_n$) $\in [0; 1]^N$ defined as:

$$\forall n, \quad P_n = \frac{1}{C} x_n$$
These vectors act as random vectors (with unit $L_1$ norm). These random vectors correspond to the probability of a fictitious particle being located on one of the vertices of the graph at a given time. Moreover, they satisfy the relation:

$$P_{n+1} = QP_n$$

Therefore, the ($P_n$) can be seen as a Markov process with transition matrix $Q$. In this case, it is possible to invoke the classical Markov chain estimators $^2$. For this, it is necessary to introduce some standard notations.

First, let $N_D^{i,j} = \sum_{p=2}^{D} 1_{\{P_{p-1}=i, P_p=j\}}$ denote the number of jumps from the i-th station to the j-th for the sample of size $D$. Similarly, define $N_D^i = \sum_{p=1}^{D-1} 1_{\{P_p=i\}}$, which counts the number of visits to station $i$ up to $D-1$. It can be shown that the empirical estimator:

$$\tilde{Q}_{i,j} = \frac{N_D^{i,j}}{N_D^i}$$

corresponds to the maximum likelihood estimator. In this case, under the (debatable) assumption that the chain is recurrent, and denoting $\mu$ as the invariant probability, we have:

$$\tilde{Q}_{i,j} = \frac{N_D^{i,j}}{N_D^i} \rightarrow Q_{i,j} \quad \text{almost surely as} \quad D \rightarrow +\infty$$

It is important to note that the recurrence assumption of the chain is not always satisfied: At the beginning or end of the day, when commuting migrations occur, some stations empty out and never refill.

### 3.1.1 Numerical Simulation

We implemented the estimation method described above in numerical simulations because it represents the approach most suitable for use if, in addition to having counting data, we also have access to the origin-destination data of the bikes. The code is available in the appendix. Furthermore, once this data is available, the previous estimator of the transition matrix becomes even more accurate by accounting for the large number of bikes.

For all stations $i$, let $T_i$ be the number of bikes at this station at the beginning of the counting period, and $T_{i,j}$ the number of bikes at $j$ coming from $i$ after one iteration. By the law of large numbers, $T_{i,j}/T_i$ almost surely converges to $Q(i, j)$, and by Hoeffding's inequality:

$$P\left(\left|\frac{T_{i,j}}{T_i} - Q(i, j)\right| \ge \varepsilon\right) \le 2 \exp(-2T_i\varepsilon^2)$$

Similarly, by the independence of the steps of a Markov chain, we obtain a similar bound on $N_{i,j}^t/N_i^t$, where $N_{i,j}^t$ counts for each bike $t$ the number of times it moves from $i$ to $j$, relative to the

<footnote>$^2$Didier Dacunha Castelle and Marie Duflo. “Probabilités et statistiques. Tome 2: Problèmes à temps mobile.” (1984) pp. 135-148.</footnote>
number of times it visits station i:

$$ \mathbb{P}\left(\left|\frac{N_{i,j}^t}{N_i^t} - Q(i, j)\right| \geq \varepsilon\right) \leq 2 \exp(-2N_i^t \varepsilon^2) $$

Thus, by denoting $N_{i,j}$ and $N_i$ as the averaged counts, we can further improve the bounds by making assumptions about the counting errors (e.g., independent or Gaussian errors).

## 3.2 Estimation of $Q$

Here, we will propose a method for the statistical estimation of $Q$. Let's start from the following equation:

$$ \forall n : X_{n+1} = QX_n + \epsilon_n $$

We also know that $Q$ is stochastic, so:

$$ (1, \dots, 1)^T = Q(1, \dots, 1)^T \quad \text{and} \quad \forall i, j, \quad 0 \le Q_{i,j} \le 1 $$

Let's attempt to construct an estimator for each row of $Q$. Beginning with the relation:

$$ X_{n+1}^i = (L_Q^i) X_n + \epsilon_n^i = X_n^T (L_Q^i)^T + \epsilon_n^i $$

Where $L_Q^i$ corresponds to the i-th row of the matrix $Q$, we can then construct the vectors:

$$ Y = (X_2^i, X_3^i, \dots, X_D^i)^T \quad \text{and} \quad \epsilon = (\epsilon_1^i, \epsilon_2^i, \dots, \epsilon_{D-1}^i)^T $$

and the matrix:

$$ \begin{pmatrix} X_1^T \\ X_2^T \\ \vdots \\ X_{D-1}^T \end{pmatrix} $$

Then, by setting $\theta = (L_Q^i)^T$, we obtain:

$$ Y = X\theta + \epsilon $$

We have thus reduced the problem to a problem of homoscedastic linear regression. We seek to minimize:

$$ F(u) = \|Y - Xu\|^2 $$

It's important to note that the matrix $X \in \mathbb{N}^{(D-1) \times N_s}$ has its rows strongly correlated, with $N_s \gg D - 1$ a priori. Hence, there exists an infinity of solutions to this problem.

However, let's try to refine our problem. To take into account the fact that the matrix $Q$ is stochastic, we use the fact that:

$$ 1 = (1, \dots, 1)(L_Q^i)^T $$
So, we add a row of (1, ..., 1) to X at the end, as well as a zero to $\epsilon$ and a parameter $\mu$ to the end of Y to maintain additional control over this constraint.

### 3.2.1 Estimation Method

Here, we attempt to introduce a method for estimating $\theta$ allowing for further refinement of the solution. The LASSO method is the one towards which we have oriented ourselves for two reasons:

* The problem posed mainly focuses on visualizing potential congestion areas, i.e., areas of significant migration between different stations. In our case, it is the non-negligible coefficients of $\theta$ that are of interest. The LASSO method performs soft thresholding, thus removing the smallest coefficients of $\theta$, thereby concentrating the information on more frequented routes.

* The LASSO method imposes a constraint on the $L^1$ norm of $\theta$, thus allowing us to reduce it to a simplex whose geometry is adapted to that of the model.

We are thus looking for:

$$ \arg\min_{u} ||Y - Xu||^2 + 2\lambda||u||_1 $$

By taking derivatives, we obtain the following constraints:

$$ \forall j : (X^T X u)_j = (X^T Y)_j - \lambda \text{sg}(u_j) $$

For $\hat{\theta}$ the solution, we have:

* If $\hat{\theta}_j = 0$ if and only if:

$$ |(X^T X \hat{\theta})_j - (X^T Y)_j| \le \lambda $$

* Otherwise, $\hat{\theta}$ satisfies:

$$ (X^T X \hat{\theta})_j = (X^T Y)_j - \lambda \text{sg}(\hat{\theta}_j) $$

The problem here is that $X^T X$ is not invertible in our case. It is therefore necessary to add constraints on $Q$ based on our knowledge of the problem. It should also be noted that we have not yet imposed the positivity of the coefficients of $\theta$. Estimation problems including this constraint exist, and it is possible to draw inspiration from them later. However, the current set of constraints does not yet ensure the uniqueness of the solution $Q$.

It is therefore necessary to formulate hypotheses on the coefficients of $Q$ as before. For example, it may be interesting to consider a model of a matrix $Q$ with variable density. Indeed, it seems quite realistic to imagine that throughout the day, some less frequented stations are only connected to a limited number of neighboring stations. It therefore seems reasonable to conceive $Q$ as sparse on certain blocks.

A computational resolution with these new conditions can therefore be conceivable as a projected gradient descent method.
# 4 Conclusion:

The modeling of bicycle traffic in the streets of Paris has been a fruitful collaborative en-
deavor, combining graph-based representations with statistical estimation methods. By framing
the problem as the estimation of a time-dependent transition matrix, we have developed a
methodology capable of reconstructing street-level flows from limited station-level data. Our
approach, centered on linear regression and enhanced with dimensionality reduction techniques,
demonstrates the potential of statistical tools to address ill-posed problems arising in urban
mobility analysis.

Several limitations remain. The scarcity of observable quantities leads to a wide solution space, and additional assumptions are required to obtain interpretable models. Moreover, the current framework relies on simplifying hypotheses such as shortest-path routing and homogeneous cycling speeds, which may not fully capture the diversity of user behaviors.

These observations naturally open perspectives for further research. Extending the model to non-parametric or autoregressive settings could provide greater flexibility and improve temporal predictions. Principal component analysis may help identify dominant traffic patterns, while numerical implementations incorporating qualitative constraints could validate the robustness of the approach. Finally, recent advances in deep learning suggest promising opportunities for capturing complex, nonlinear mobility dynamics.

In conclusion, while the present work constitutes a first step toward a statistical framework for bike flow estimation, its extensions hold the potential to significantly improve predictive accuracy and provide valuable insights for urban planning and sustainable mobility policies.

# Acknowledgments

We would like to thank our supervisors Bertrand Maury and Louis-Pierre Chaintron, as well
as our contact at IFPEN, Alexandre Chasse.