1 Introduction

The development of information and communication technologies (ICT) and data science is changing the structure of society, including the movement of people and goods or mobility. To this day, various studies have been conducted to innovate mobility. Mobility-as-a-service (MaaS) is attracting attention and is being adopted worldwide. As an exemplar case, Whim in Finland [9, 30] provides a transportation package that converts road transportation and railroads into on-demand services.

This chapter focuses on car-sharing services, particularly one-way car-sharing services, as one of the forms of MaaS. One-way car-sharing services have multiple stations where vehicles are pooled, and users can return their vehicles to any of the available stations (i.e., parking lots). The service is expected to grow because of its high convenience to users and the ability to use ordinary parking lots as stations [51]. In Japan, government approval for these services was granted in 2014, and experimental operations are underway [55], including Ha:mo Ride TOYOTA.

However, the current one-way car-sharing service poses a significant challenge to the operator, the most pertinent of which is the uneven distribution of vehicles. Thus, research is being conducted to solve these problems [41]. The uneven distribution of vehicles refers to the situation wherein some stations run out of parked vehicles whereas others run out of parking spaces due to asymmetrical user demand. An obvious and straightforward solution is for service staff to relocate vehicles to redistribute the number of vehicles among stations. However, this approach carries high labor costs of vehicle relocation (i.e., requiring provider staff to drive vehicles between stations); thus, cost-effective methods need to be considered, which has attracted considerable research attention. For example, in [5], a method to minimize the cost of relocation using the model predictive control method was proposed. Moreover, in [69], a model that considers staff behavior in relocation was developed. In [3], a study was conducted to minimize the number of relocations for a car-sharing system in a resort area in Southern California.

This chapter discusses control system approaches to overcome the aforementioned issues. Thus, recent research trends are presented that show that a systems control approach is promising for mobility innovation. Section 8.2 provides the result of the optimization of the car-sharing system considering demand shift by dynamic pricing. Section 8.3 presents sparse optimal control for networked systems. In Sect. 8.4, communication-aware cooperative car-sharing control is discussed. Section 8.5 considers the rebalancing in car-sharing services as a control problem of probability distributions with costs determined by the Wasserstein distance. Section 8.6 presents the optimization of one-way car-sharing services via the DC program.

2 Notation

Let \(\mathbb {R}\), \(\mathbb {R}_+\), and \(\mathbb {R}_{++}\) denote the set of real, non-negative, and positive numbers, respectively. Let \(\mathbb {Z}\) and \(\mathbb {Z}_+\) be the sets of integers and non-negative integers, respectively. The set of corresponding vectors of size n are denoted by \(\mathbb {R}^n\), \(\mathbb {R}^n_+\), and \(\mathbb {R}^n_{++}\), respectively. We let \(1_n\) denote a column vector with all entries set to unity. The identity and zero matrices of order n are denoted by \(I_n\) and \(O_n\), respectively. For real numbers \(a_1,\ldots ,a_n \in \mathbb {R}\) or a vector \(a =[a_1~\cdots ~a_n]^\top \in \mathbb {R}^n\), \(\textrm{diag}(a_1,\ldots ,a_n)\) represents the diagonal matrix whose i-th entry is \(a_i\).

For a real number \(\kappa \in \mathbb {R}\), let \(\kappa \mathbb {Z} = \{\ldots ,-2\kappa ,-\kappa ,0,\kappa ,2\kappa ,\ldots \}\). The floor and ceiling functions for \(\kappa \) are defined as

$$\begin{aligned} \lfloor x \rfloor _\kappa = \max \{y \in \kappa \mathbb {Z}:y \le x\},\ \lceil x\rceil _\kappa = \min \{y \in \kappa \mathbb {Z}:y \ge x\}, \nonumber \end{aligned}$$

respectively. Consider a random variable \(x:\mathbb {Z}_+ \rightarrow \mathbb {Z}_+\) of a non-negative integer at time \(t \in \mathbb {Z}_+\). The probability of x(t) being \(x \in \mathbb {Z}_+\) is denoted as \(\textrm{P}(x(t)=x) \in [0,1]\). The expectation of a function \(f:\mathbb {Z}_+ \rightarrow \mathbb {R}\) of x(t), f(x(t)), is expressed as

$$\begin{aligned} \textrm{E}[f(x(t))] = \sum _{x=0}^\infty f(x) \textrm{P}(x(t)=x) . \end{aligned}$$

For random variables \(x,y:\mathbb {Z}_+ \rightarrow \mathbb {Z}_+\), the joint probability of x(t), y(t) being \(x,y \in \mathbb {Z}_+\) is denoted as \(\textrm{P}(x(t)=x,y(t)=y) \in [0,1]\). The conditional probability of x(t) being \(x \in \mathbb {Z}_+\) under the assumption that y(t) takes \(y \in \mathbb {Z}_+\) is represented as \(\textrm{P}(x(t)=x|y(t)=y)\), which is defined as

$$\begin{aligned} \textrm{P}(x(t)=x|y(t)=y) = \frac{\textrm{P}(x(t)=x,y(t)=y)}{\textrm{P}(y(t)=y)} . \end{aligned}$$

For a function \(f:\mathbb {Z}_+ \rightarrow \mathbb {R}\) of a variable x(t), the expectation of f(x(t)) under the assumption that y(t) takes \(y \in \mathbb {Z}_+\) is defined as

$$\begin{aligned} \textrm{E}[f(x(t))|y(t)=y] = \sum _{x=0}^\infty f(x) \textrm{P}(x(t)=x|y(t)=y) . \end{aligned}$$

For some natural number m and set \(\Omega \subset {\mathbb {R}}\), \(a\in \Omega ^{m}\) implies that \(a_i\in \Omega \) for any i, where \(a=[a_1, a_2, \dots , a_m]^{\top }\in \mathbb {R}^{m}\). Let

$$\begin{aligned} &\Vert a\Vert _{\ell ^0} \triangleq \#\{j\in \{1, 2, \dots , m\}: a_j\ne 0\},\\ &\Vert a\Vert _{\ell ^1} \triangleq \sum _{j=1}^{m} |a_{j}| \end{aligned}$$

denote \(\ell ^0\), \(\ell ^{1}\) norm of vector a, where \(\#\) returns the number of elements of a set. For the function

$$\begin{aligned} u(t)=[u_1(t), u_2(t), \dots , u_m(t)]^{\top }\in {\mathbb {R}}^m \end{aligned}$$

on a time interval [0, T], let

$$\begin{aligned} &\Vert u\Vert _{L^0} \triangleq \sum _{j=1}^{m}\mu (\{t\in [0, T]: u_j(t)\ne 0\}),\\ &\Vert u\Vert _{L^1} \triangleq \sum _{j=1}^{m}\int _{0}^{T} |u_j(t)| dt \end{aligned}$$

denote its \(L^0\), \(L^{1}\) norm, where \(\mu \) is the length in the naive sense (Lebesgue measure in \({\mathbb {R}}\)). Thus, the \(L^0\) norm of the signals in Fig. 8.1 is 5 for the blue one, and approximately 2.6 for the red one. Notably, [0, 1] denotes a set of real number between 0 and 1, but \(\{0,1\}\) denotes a set of binary value 0 and 1.

Fig. 8.1
A dual-line graph plots the sparsity of signal with respect to time for the L power 0 norm of the signals of 5 and the L power 0 norm of the signals of 2.6. The L power 0 norm of the signals of 2.6 trends in a decreasing and increasing pattern, and it remains constant at 0 between 1.2 and 3.8.

Sparsity of signal

The real matrix A is said to be non-negative (positive), and is denoted by \(A \ge 0\) (\(A > 0\)), if all entries of A are non-negative (positive). The notion \(B < A\) is defined as \(B-A < 0\). Let the Hadamard product of matrices A and B be denoted by \(A \odot B\). Let \(A\otimes B\) denote the Kronecker product of matrices A and B. If A and B are square, the Kronecker sum of A and B is defined as \(A \oplus B=A \otimes I_m +I_n\otimes B\), where n and m denote the orders of A and B, respectively. We define the entry-wise exponential operation of a real vector v as \(\exp [v]=[\exp v_1, \dotsc , \exp v_n]^\top \) and the entry-wise logarithm operation as \(\log [v] = [\log v_1, \dotsc , \log v_n]^\top \). For a vector v with scalar entries \(v_1, \dotsc , v_n\), we use \({{\,\textrm{diag}\,}}(v_1, \dotsc , v_n)\) to denote the diagonal matrix.

3 Optimization of the Car-Sharing System Considering Demand Shift by Dynamic Pricing

To solve the uneven distribution of vehicles in car-sharing services, we consider introducing dynamic prices. This is a method of voluntarily moving users so that the vehicles are evenly distributed by adjusting the prices of the service hourly. From this aspect, [45] proposes a model that determines the price to maximize the profits of both the user and the operator. The model in [75] aims to maximize profits by considering the allocation of relocating personnel. Reference [74] investigated optimal pricing and charging scheduling for an electric vehicle sharing system. In addition, [47, 72] examined pricing strategies for a one-way car-sharing service. Most of the models presented in these papers only consider that demand increases or decreases with changes in prices. However, these models do not adequately represent user behavior. Users will probably prefer and shift to less expensive links (i.e., change their starting and ending destinations on foot). Such a shift is particularly likely to occur in urban areas, where many stations are within walking distance of each other. The authors proposed a demand shift model and a dynamic pricing model to represent such user behavior in [70], and addressed the optimal control problem of the traffic model in [66, 67]. In this section, the research results in [66, 67] will be presented.

3.1 Modeling

The car-sharing service considered here has dynamic prices, and users can reserve a car by referring to the prices via the Internet or other means. Prices are changed at regular intervals according to a policy determined by the organizer. The user makes a reservation by declaring both the departure and arrival stations.

The number of stations is \(n \in \mathbb {Z}_+\). Let \(\mathcal {N} = \{1,2,\ldots ,n\}\) be the set of station indices. A move whose departure station is \(j \in \mathcal {N}\) and whose arrival station is \(i \in \mathcal {N}\) is called a link ij. The target car-sharing system consists of four models: the number of parking spaces, the number of reservations, the number of demands, and the number of demand shifts. Figure 8.2 shows the overall diagram.

Fig. 8.2
A schematic model of a car-sharing system includes station i, link i j, occupied slots x subscript i of t, ease of walking gamma k i, station k, shift s subscript i j, k l of t, link k l, demand d subscript i j of t, reservation r subscript i j of t, price p subscript i j of t, station j, and station l.

Model of car-sharing system [66]

3.1.1 Model of the Number of Parking Spaces

Consider station \(i \in \mathcal {N}\). Let \(x_i(t) \in \mathbb {Z}_+\) denote the sum of the number of parking spaces already parked and spaces scheduled to be parked due to reservations. Denote the capacity of parking spaces by \(x_i^{\max } \in \mathbb {Z}_+\). In other words, \(x_i(t)\) must satisfy

$$\begin{aligned} 0 \le x_i(t) \le x_i^{\max }~\forall t \in \mathbb {Z}_+ . \end{aligned}$$
(8.1)

Let \(m \in \mathbb {Z}_+\) be the total number of vehicles. The sum of the numbers of parked cars \(x_i(t)\) at all stations satisfies

$$\begin{aligned} \sum _{i \in \mathcal {N}} x_i(t) = m . \end{aligned}$$
(8.2)

We assume that the total capacity of parking spaces

$$\begin{aligned} m^{\max } = \sum _{i \in \mathcal {N}} x_i^{\max } \end{aligned}$$
(8.3)

is sufficiently larger than the number of vehicles m.

Denote the number of reservations for link ij by \(r_{ij}(t) \in \mathbb {Z}_+\). Then, \(x_i(t)\) varies according to \(r_{ij}(t)\) as

$$\begin{aligned} x_i(t+1) = x_i(t) + \sum _{j \in \mathcal {N}} (r_{ij}(t)-r_{ji}(t)) . \end{aligned}$$
(8.4)

In this equation, \(r_{ij}(t)\) (\(r_{ji}(t)\)) denotes the number of vehicles entering (leaving) station i.

3.1.2 Model of Reservation Number

Next, consider a model for the reservation number \(r_{ij}(t)\). This model is assumed to follow three rules: (i) The reservation number is smaller than the demand number \(d_{ij}(t) \in \mathbb {Z}_+\), i.e., \(r_{ij}(t) \le d_{ij}(t)\) is satisfied. (ii) The number of parking spaces \(x_i(t+1)\) at the next time satisfies condition (8.1). (iii) The unrealized demand \(u_{ij}(t) = d_{ij}(t) - r_{ij}(t) \in \mathbb {Z}_+\) is minimized through the dynamic pricing of the organizer.

Here, if service is provided on a first-come, first-serve basis, (iii) cannot be strictly satisfied. However, if the parking capacity is satisfied for demand, i.e.,

$$\begin{aligned} 0 \le x_i^+(t) \le x_i^{\max },~0 \le x_j^+(t) \le x_j^{\max } \end{aligned}$$
(8.5)

then \(u_{ij}(t)=0\), i.e., \(r_{ij}(t) = d_{ij}(t)\), is satisfied, where

$$\begin{aligned} x_i^+(t) = x_i(t) + \sum _{j \in \mathcal {N}} (d_{ij}(t)-d_{ji}(t)) . \end{aligned}$$
(8.6)

In such a case, even if we take the demand as the number of reservations as it is (i.e., \(r_{ij}(t) = d_{ij}(t)\)), (8.1) is satisfied because \(x_i(t+1)\) in (8.4) is equal to \(x_i^+(t)\).

From this perspective, to satisfy (iii), we consider controlling the demand number \(d_{ij}(t)\) so that \(x_i^+(t)\) satisfies (8.5).

3.1.3 Model of Demand Number

Consider a model of the demand number \(d_{ij}(t)\) for link ij. Assume that users move to nearby stations on foot according to the link’s price. The number of demands to shift from link \(k\ell \) to ij is denoted by \(s_{ij,k\ell }(t) \in \mathbb {Z}_+\). This means that the departure station is moved from \(\ell \) to j and the arrival station is moved from k to i. Denote the original demand under a specific standard price by \(\hat{d}_{ij}(t) \in \mathbb {Z}_+\), which is assumed to be a random variable with expected value \(\delta _{ij} > 0\), i.e.,

$$\begin{aligned} \textrm{E}[\hat{d}_{ij}(t)] = \delta _{ij} . \end{aligned}$$
(8.7)

A typical example is a Poisson process. Suppose that \(\hat{d}_{ij}(t)\) is independent for any \(i,j \in \mathcal {N}\) and \(t \in \mathbb {Z}_+\). In this case, the demand number \(d_{ij}(t)\) changes from the original number \(\hat{d}_{ij}(t)\) according to the demand shift number \(s_{ij,k\ell }(t)\) as

$$\begin{aligned} d_{ij}(t) = \hat{d}_{ij}(t) + \sum _{k\ell \in \mathcal {N}^2} (s_{ij,k\ell }(t) - s_{k\ell ,ij}(t)) . \end{aligned}$$
(8.8)

3.1.4 Model of Demand Shift Number

Next, we model the variation of the demand shift number \(s_{ij,k\ell }(t)\) with the price. Denote the price for link ij by \(p_{ij}(t) \in \kappa \mathbb {Z}\), where \(\kappa \in \mathbb {Z}_+\) (\(\kappa > 0\)) denotes the unit of the price in this service (e.g., 10 yen, 1 dollar, etc.). The ease of walking between stations i and k is denoted by \(\gamma _{ik} (= \gamma _{ki}) \ge 0\). In general, the larger the distance between stations i and k, the smaller is the value of \(\gamma _{ik}\). Two pieces of information are provided to the users. (i) The price difference between the two links, \(p_{k\ell }(t)-p_{ij}(t)\) (the benefit of travel). (ii) Ease of walking \(\gamma _{ik},\gamma _{j\ell }\) (the cost of travel). Based on this information, we assume that demand moves stochastically based on the expectation

$$\begin{aligned} \textrm{E}[s_{ij,k\ell }(t)|P(t)=P] &= \gamma _{ik}\gamma _{j\ell } \phi (p_{ij}-p_{k\ell }) , \end{aligned}$$
(8.9)

where P(t) and \(P \in \mathbb {Z}^{n \times n}\) denote the matrices with \(p_{ij}(t)\) and \(p_{ij}\) as the (i, j)-component, respectively. The function \(\phi :\mathbb {Z} \rightarrow \mathbb {R}_+\) is a monotonically non-increasing function satisfying \(\phi (p) = 0\) for \(p \ge 0\). This indicates that users are more likely to move to links with lower prices and never move to links with higher prices.

3.2 Control Objective

The control objective of the organizer is to evenly redistribute the number of vehicles parked at each station to match the unrealized demand \(u_{ij}(t)\), minimizing the difference with actual availability. As described in Sect. 8.2.1.2, this is achieved by controlling \(x_i^+(t)\) so that the inequality in (8.5) is satisfied. Here, as a soft constraint corresponding to (8.5), the deviation from half of the capacity of parking spaces \(\bar{x}_i^+(t) = x_i^+(t) - x_i^{\max }/2\) is considered as a penalty. The goal here is to level this penalty across all stations. We consider the sum of the expected values as the evaluation function

$$\begin{aligned} V_{\textrm{x}}(x(t)) = \frac{1}{n} \sum _{i \in \mathcal {N}} \textrm{E}\!\left[ \bar{x}_i^+(t) - \frac{1}{n} \sum _{i \in \mathcal {N}} \bar{x}_i^+(t)\right] ^2 , \end{aligned}$$
(8.10)

where \(x(t) = [x_1(t)~x_2(t)~\cdots ~x_n(t)]^\top \) and \(x_i^+(t)\) is given by \(x_i(t)\) as (8.6).

Here, to redistribute the number of parking spaces, the organizer introduces dynamic prices based on a common decentralized policy. The common decentralized policy is based on a common algorithm for all the links using only information from neighboring stations to determine prices for each link. Because this policy does not require information aggregation, it can be implemented regardless of the number of stations. Let \(\hat{p}_{ij} = \hat{p}_{ji} \in \kappa \mathbb {Z}\) be the standard price for travel between stations i and j. The dynamic price \(p_{ij}(t)\) is determined according to the policy \(\pi :\mathbb {Z}_+^2 \rightarrow \kappa \mathbb {Z}\) as

$$\begin{aligned} p_{ij}(t) = \hat{p}_{ij} + \pi (\bar{x}_i(t),\bar{x}_j(t)) , \end{aligned}$$
(8.11)

where \(\bar{x}_i(t) = x_i(t) - x_i^{\max }/2\).

For user convenience, the price \(p_{ij}(t)\) should be as close as possible to the standard price \(\hat{p}_{ij}\). From (8.11), this can be evaluated by

$$\begin{aligned} V_{\textrm{p}}(x(t)) &= \frac{1}{n^2} \sum _{i,j \in \mathcal {N}} \textrm{E}[\pi (\bar{x}_i(t),\bar{x}_j(t))]^2 . \end{aligned}$$
(8.12)

Here, for simplicity, \(\pi :\mathbb {Z}_+^2 \rightarrow \kappa \mathbb {Z}\) is assumed to be an affine function as

$$\begin{aligned} \pi (\bar{x}_i,\bar{x}_j) = \hat{\pi }_{\textrm{a}} \bar{x}_i + \hat{\pi }_{\textrm{b}} \bar{x}_j + \hat{\pi }_{\textrm{c}},~ \hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}} \in \kappa \mathbb {Z} , \end{aligned}$$
(8.13)

where \(\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}} \in \kappa \mathbb {Z}\) are design parameters.

Consider designing a common decentralized policy \(\pi \) such that the functions \(V_{\textrm{x}}(x(t))\) and \(V_{\textrm{p}}(x(t))\) are reduced. To take these terminal values into account, we employ the evaluation function

$$\begin{aligned} V(\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}}) = \max _{m \in \mathbb {Z}} \lim _{t \rightarrow \infty } (V_{\textrm{x}}(\bar{x}(t)) + \mu V_{\textrm{p}}(x(t))) + \nu (\hat{\pi }_{\textrm{a}}^2 + \hat{\pi }_{\textrm{b}}^2 + \hat{\pi }_{\textrm{c}}^2) , \end{aligned}$$
(8.14)

where \(\mu ,\nu > 0\) are some constants and the last term is the normalization term. Maximization with respect to \(m \in \mathbb {Z}\) is considered to render the policy \(\pi \) scalable independently of the number of vehicles m.

From the above, we consider the following problem.

Problem 8.1

Consider the system consisting of (8.1)–(8.9). Find the solution to the following optimization problem as the parameters of the common decentralized policy \(\pi :\mathbb {Z}_+^2 \rightarrow \kappa \mathbb {Z}\) in (8.11) that has the form of (8.13).

$$\begin{aligned} \min _{\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}} \in \kappa \mathbb {Z}} V(\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}}) \end{aligned}$$
(8.15)

3.3 Main Result

To obtain an analytical solution to Problem 8.1, we consider a linear system near an equilibrium point. This yields the following theorem.

Theorem 8.1

Consider the system that linearizes (8.1)–(8.9) under the assumption that the function \(\phi \) satisfies \(\textrm{d}\phi /\textrm{d}p(p_*) = -\hat{\phi }\) at an equilibrium point \(p_* < 0\) for a constant \(\hat{\phi }> 0\). Let \(x_i(t) \in \mathbb {Z}_+\) (\(i \in \mathcal {N}\)) be the solution of this system, and let \(\Delta ,\Gamma \in \mathbb {R}^{n \times n}\) be the matrices whose (i, j)-components are \(\delta _{ij},\gamma _{ij}\), respectively. Assume that the graph whose adjacent matrix is given by \(\Gamma \) is connected. For the matrix \(L = \textrm{diag}(\Gamma 1_n) - \Gamma \in \mathbb {R}^{n \times n}\), let \(\lambda _1 = 0,\lambda _2,\ldots ,\lambda _n (0 < \lambda _2 \le \cdots \le \lambda _n)\) be its eigenvalues and let \(v_1=1_n/\sqrt{n},v_2,\ldots ,v_n \in \mathbb {R}^n\) be the corresponding eigenvectors. Then, the parameters \(\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}} \in \kappa \mathbb {Z}\) of the solution to the optimization problem (8.15) in \(\pi :\mathbb {Z}_+^2 \rightarrow \kappa \mathbb {Z}\) of the dynamic pricing policy (8.11) with (8.13) satisfy

$$\begin{aligned} \hat{\pi }_{\textrm{a}} & \in \left\{ \left\lfloor \sqrt{\frac{\Vert h\Vert }{2\sqrt{2n\nu }}}\right\rfloor _\kappa , \left\lceil \sqrt{\frac{\Vert h\Vert }{2\sqrt{2n\nu }}}\right\rceil _\kappa , \left\lfloor \frac{1}{\displaystyle \lambda _n \sum _{i,j \in \mathcal {N}}\gamma _{ij}}\right\rfloor _\kappa \right\} \end{aligned}$$
(8.16)
$$\begin{aligned} \hat{\pi }_{\textrm{a}} & \le \left\lfloor \frac{1}{\displaystyle \lambda _n \sum _{i,j \in \mathcal {N}}\gamma _{ij}}\right\rfloor _\kappa \end{aligned}$$
(8.17)
$$\begin{aligned} \hat{\pi }_{\textrm{b}} &= -\hat{\pi }_{\textrm{a}} \end{aligned}$$
(8.18)
$$\begin{aligned} \hat{\pi }_{\textrm{c}} &= 0 , \end{aligned}$$
(8.19)

where h is given as

$$\begin{aligned} h = \frac{\displaystyle \sum _{i \in \{2,\ldots ,n\}} \lambda _i^{-1} v_i v_i^\top (\Delta -\Delta ^\top )1_n }{\displaystyle \hat{\phi }\sum _{i,j \in \mathcal {N}}\gamma _{ij}} . \end{aligned}$$
(8.20)

The minimum value of (8.15) is derived as

$$\begin{aligned} \min _{\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}} \in \kappa \mathbb {Z}} V(\hat{\pi }_{\textrm{a}},\hat{\pi }_{\textrm{b}},\hat{\pi }_{\textrm{c}}) = \frac{1}{n} \frac{\Vert h\Vert ^2}{4\hat{\pi }_{\textrm{a}}^2} + 2\nu \hat{\pi }_{\textrm{a}}^2 . \end{aligned}$$
(8.21)

Proof

From (8.4), (8.7), (8.8), (8.11), and (8.13), the expectation of \(\bar{x}_i(t) = x_i(t)-x_i^{\max }/2\) is governed by the differential equation

$$\begin{aligned} \textrm{E}[\bar{x}(t+1)] = (I_n-(\hat{\pi }_{\textrm{a}} -\hat{\pi }_{\textrm{b}})\hat{\phi }1_n^\top \Gamma 1_n L) \textrm{E}[\bar{x}(t)] + (\Delta -\Delta ^\top )1_n , \end{aligned}$$
(8.22)

where \(\bar{x}(t) = [\bar{x}_1(t)~\cdots ~\bar{x}_n(t)]^\top \in \mathbb {R}^n\). Equation (8.22) is equivalent to a system under consensus control with external input, and its properties can be analyzed from the graph Laplacian L by control theory based on algebraic graph theory [53]. The detailed proof is omitted for reasons of space limitation.    \(\square \)

Equation (8.16) gives three candidates for \(\hat{\pi }_{\textrm{a}}\). If either of the first two terms is smaller than the last term, then this term is the solution. If both of the first two terms are smaller than the last term, then the solution is to substitute the two terms into (8.21) and output the smaller value. Otherwise, the last term is the solution. Equations  (8.18) and (8.19) indicate that the skew-symmetric policy (i.e., \(\pi (\bar{x}_i,\bar{x}_j) = -\pi (\bar{x}_j,\ bar x_i)\)) is the most effective.

3.4 Simulation Result

To verify the effectiveness of the proposed method, a simulation is performed using the traffic simulator SOUND [34]. Figure 8.3 represents a scene in the simulation. The \(n = 25\) stations are scattered over an area of 6\(\times \)8 km, and both vehicles under sharing service and regular vehicles are traveling.

Fig. 8.3
A map in the simulation performed using the traffic simulator SOUND indicates 25 stations scattered over an area of 6 times 8 kilometers, vehicles under sharing service, and regular vehicles.

Simulation via SOUND: 25 stations (hollowed-out rectangle), vehicles under sharing service (solid squares), general vehicles (dots) [67]

The parameters of the system are as follows. All parking spaces have a capacity of \(x_i^{\max } = 10\) vehicles. The number of sharing vehicles is \(m = 164\). The time interval for changing prices is set to 5 s, which is the sampling time of the model. We set the price elasticity \(\hat{\phi }= 2.5 \times 10^{-5}\), the expected value of demand \(\delta _{ij} = 0.005 \times 60^{-1}\)–\(3 \times 60^{-1}\), and the ease of shift between stations \(\gamma _{ik} = e^{-\eta \Vert \rho _i-\rho _k\Vert }\), where \(\rho _i \in \mathbb {R}^2\) is the position of station i in Fig. 8.3 and \(\eta = 4.5 \times 10^{-4}\). The common decentralized policy \(\pi :\mathbb {Z}_+^2 \rightarrow \kappa \mathbb {Z}\) in (8.11) is given as in (8.13). Designing its parameters according to Theorem 8.1, we obtain \(\hat{\pi }_{\textrm{a}} = -\hat{\pi }_{\textrm{b}} = 1\) and \(\hat{\pi }_{\textrm{c}} = 0\) for \(\mu = \nu = 0.01\) and \(\kappa = 1\) from (8.16), (8.18), and (8.19). Simulations are performed (A) with dynamic pricing and (B) without it for comparison.

Figure 8.4 shows the penalty \(V_{\textrm{x}}(x(t))\) for the number of parking vehicles given by (8.10). Figure 8.5 represents the deviation \(V_{\textrm{p}}(x(t))\) of prices from standard ones given by (8.12). In both cases, the solid lines represent the results (A) with dynamic pricing and the dashed lines represent the results (B) without it. Figure 8.4 shows that the penalty is smaller and the number of parking spaces is smoothed for (A) with dynamic pricing than (B) without it. Figure 8.6 denotes the cumulative total of unfulfilled demand \( \sum _{ij} u_{ij}(t)\). It can be seen that (A) with dynamic pricing has fewer unfulfilled demands and more services are provided than (B) without it.

Fig. 8.4
A dual-line graph of penalty V subscript x (x of t) unit squared for the number of parking vehicles versus time t in hours for dynamic pricing and without dynamic pricing. The penalty of dynamic pricing was high when compared to without dynamic pricing.

Penalty \(V_{\textrm{x}}(x(t))\) for the number of parking vehicles: (A) dynamic pricing (solid line) and (B) without it (chain line) [67]

Fig. 8.5
A line graph of deviation V subscript p (x of t) price unit squared from standard ones versus time t in hours for dynamic pricing and without dynamic pricing. The deviation with dynamic pricing remains constant at 0. The deviation without dynamic pricing trends follows an increasing and decreasing pattern.

Deviation \(V_{\textrm{p}}(x(t))\) of prices from standard ones: (A) with dynamic pricing (solid line), (B) without it (chain line) [67]

Fig. 8.6
A graph of cumulative unrealized demand sigma subscript t sigma subscript i j u subscript i j of t unit versus time t in hours for dynamic pricing and without dynamic pricing. The cumulative unrealized demand without dynamic pricing was high when compared to dynamic pricing.

Cumulative unrealized demand \(\sum _t \sum _{ij} u_{ij}(t)\): (A) with dynamic pricing (solid line), (B) without it (chain line) [67]

4 Sparse Optimal Control for Networked Systems

A signal that takes the value 0 at most times and elements, such as the solid line in Fig. 8.1, is said to be sparse. In recent years, the effectiveness of sparsity-based methods in machine learning, such as regularization or feature extraction, has been attracting considerable research attention [23]. In control engineering, achieving the control goal with sparse input signals is also an important application problem [56]. The authors recently clarified the theoretical properties of sparse optimal control [36, 39, 42] and developed a series of studies on a new problem setting for networked systems applications [35, 37, 38, 40, 60]. The main objective of this section is to apply these results to one-way car sharing services [19, 41].

4.1 Sparse Optimal Control Problem

Here we introduce the sparse optimal control problem and show the validity properties of its convex relaxation.

4.1.1 Formulation

In this section, we formulate several sparse optimal control problems treated in this chapter. The first is the problem of finding sparse control inputs as described in the introduction [40].

Problem 8.2

For given \(A(t)\in \mathbb {R}^{n\times n}\), \(B(t)\in \mathbb {R}^{n\times m}\), \(T>0\), \(x_0,\ x_d\in \mathbb {R}^n\), \(\beta \in \{1,2,\ldots ,m-1\}\), find the solution to the following optimization problem:

$$\begin{aligned} \begin{aligned} \underset{u}{\textrm{minimize }} \ \ & \Vert u\Vert _{L^0}\\ \mathrm {subject \ to } \ \ & \dot{x}(t) = A(t) x(t) + B(t) u(t), \quad \forall t\in [0, T], \\ & x(0)=x_0, \quad x(T)=x_d, \\ & \Vert u(t)\Vert _{\ell ^0} \le \beta , \quad \forall t\in [0, T],\\ & u(t) \in [0,1]^m, \quad \forall t \in [0,T]. \end{aligned} \end{aligned}$$

\(\triangleleft \)

This problem is to minimize the sum of the time durations over which the inputs are non-zero under the constraint that the number of elements that can be input at each time in a linear time-varying system is less than or equal to \(\beta \). Note that the box constraint on the input signal (although the upper and lower bounds can be other values) is an essential assumption from which the theoretical results are derived.

The next problem is to maximize the controllability of the linear system [35].

Problem 8.3

For given \(A\in \mathbb {R}^{n\times n}\), \(B\in \mathbb {R}^{n\times m}\), \(\beta ,T>0\), define the matrix

$$\begin{aligned} G_c:=\int _0^T \exp ^{A(T-\tau )}BZ(\tau ) B^\top \exp ^{A^\top (T-\tau )}d\tau . \end{aligned}$$

In this case, find the solution to the following optimization problem:

$$\begin{aligned} \begin{aligned} \underset{z}{\textrm{maximize}} \ \ & \textrm{Tr}(G_c) \\ \mathrm {subject \ to} \ \ & Z(t)={\textrm{diag}}(z(t)), \quad z(t)\in \{0,1\}^m,\\ & \Vert z\Vert _{L^0} \le \beta . \quad \end{aligned} \end{aligned}$$

\(\triangleleft \)

In this problem, note that \(Z(\tau ) Z(\tau )^\top =Z(\tau )\) holds and the matrix \(G_c\) is the controllability Gramian corresponding to the continuous-time linear system

$$\begin{aligned} \begin{aligned} \dot{x}(t)=Ax(t)+B Z(t)u(t). \end{aligned} \end{aligned}$$
(8.23)

The largerFootnote 1 the controllability Gramian, the smaller the control inputs required for state transition. However, in the case of \(z_i(t)=0\), the ith input channel is inactive at time t and, therefore, unavailable. In other words, this is a scheduling problem, i.e., which actuator should be active at which time to maximize controllability.

In the last problem, decision variables are included in the A-matrix [37].

Problem 8.4

For given \(\mathcal {A}(t),M_e(t)\in \mathbb {R}^{n\times n}\), \(e=1,\ldots ,m\), \(\alpha \in \mathbb {R}\), \(T>0\), \(x_0,\ x_d\in \mathbb {R}^n\), find the solution to the following optimization problem:

$$\begin{aligned} \begin{aligned} \underset{\nu }{\textrm{minimize}} \ \ & \Vert \nu \Vert _{L^0}+\alpha \Vert x(T)-x_d\Vert \\ \mathrm {subject \ to} \ \ & x(0)=x_0,\ \dot{x}(t)=A(t)x(t), \\ & A(t)=\mathcal {A}(t)+\bar{\mathcal {A}}(t), \\ & \bar{\mathcal {A}}(t)=\sum _{e=1}^m \nu _e(t) M_e(t), \\ & \nu (t) \in \{0,1\}^m. \end{aligned} \end{aligned}$$

\(\triangleleft \)

The main control goal of this problem is also to bring the end state x(t) close to \(x_d\) like Problem 8.2, not by using conventional exogenous input signals, but by modifying the A-matrix in a time-varying manner. Specifically, if the nominal A-matrix is given by \(\mathcal {A}(t)\) and \(\nu _e(t)=1\), \(M_e(t)\) can be added to the A-matrix. The problem is a scheduling problem to find which modifications should be made at which moment to achieve the control goal with as few time modifications as possible.

4.1.2 Theoretical Results

In each of these problems, sparsity is expressed by the \(L^0\) or \(\ell ^0\) norms, which are not convex with respect to their argument. Indeed, these problems are essentially combinatorial optimization problems that are difficult to solve. In sparse optimization in signal processing, many efficient computational algorithms have been obtained by relaxing the 0-norm to the 1-norm [23]. However, the optimal solution obtained by the relaxation problem is often different from the original problem.

The problem discussed in the previous section seems to be even more difficult because the decision variables are infinite-dimensional (i.e., a combinatorial optimization problem with an infinite number of decision variables), but in fact, it has the opposite property: the convex relaxation problem gives an exact solution.Footnote 2

Theorem 8.2

Under certain moderate assumptions, the same optimal solution can be obtained by replacing \(\Vert \cdot \Vert _{L^0}\), \(\Vert \cdot \Vert _{\ell ^0}\) with \(\Vert \cdot \Vert _{L^1}\), \(\Vert \cdot \Vert _{\ell ^1}\) in Problem 8.2, respectively. Moreover, every element of the optimal solution takes one of the binary values \(\{0,1\}\) at all times. \(\triangleleft \)

A similar result is obtained when the decision variable is restricted to discrete values.

Theorem 8.3

Under certain moderate assumptions, the same optimal solution can be obtained by replacing \(\Vert \cdot \Vert _{L^0}\) with \(\Vert \cdot \Vert _{L^1}\) and \(\{0,1\}^m\) with \([0,1]^m\) in Problem 8.3, respectively. \(\triangleleft \)

The following result holds for Problem 8.4 [37].

Theorem 8.4

Under certain mild assumptions, the same optimal solution can be obtained by replacing \(\Vert \cdot \Vert _{L^0}\) with \(\Vert \cdot \Vert _{L^1}\) and \(\{0,1\}^m\) with \([0,1]^m\) in Problem 8.4, respectively. \(\triangleleft \)

For both cases, the set of decision variables (functions on [0, T] taking values in \([0,1]^m\)) is convex. Therefore, if time discretization is carried out with a sufficiently small time interval, the relaxation problems in Problems 8.2 and 8.3, in which the evaluation function is linear with respect to the decision variables, can be solved using standard convex optimization solvers such as CVX. The relaxation problem in Problem 8.4 can also be solved using non-linear optimization solvers such as fmincon (MATLAB).Footnote 3

4.2 Application to the Rebalancing Problem

In one-way car sharing services, users are free to choose where to return their vehicles, which may result in an unbalanced number of vehicles at each station. Therefore, the smooth operation of the service requires the adjustment (rebalancing) of the number of vehicles by the service provider at each station. Recently, the optimization problem for this vehicle transport scheduling has been studied [6, 77]. Here, we formulate the rebalancing problem as a sparse optimal control problem.

4.2.1 Model of Car-Sharing Service

In this section, we introduce the dynamics involved in rebalancing [40]. If the mathematical depth presented here is not of interest, the reader can skip the rebalancing dynamics described below and progress on to the next section. A total of s stations are labeled by \(\mathcal {S} = \{1,2,\ldots ,s\}\) and the amount of vehicle usage per unit time from station \(i \in \mathcal {S}\) to \(j \in \mathcal {S}\) is denoted by \(g_{ij}(t) \ge 0\). Similarly, let \(u_{ij}(t) \ge 0\) denote the amount of rebalancing per unit time from station i to j by the staff (\(g_{ii}(t)=u_{ii}(t)=0,\forall i,t\)). First, the number of vehicles at station i is denoted by \(v_i(t) \in \mathbb {R}\) and its dynamics is assumed to follow:

$$\begin{aligned} \dot{v}_i(t) = \sum _{j=1}^{s} \gamma _{ij} f_{ij}(t)- \sum _{j=1}^{s} (g_{ij}(t)+u_{ij}(t)), \end{aligned}$$
(8.24)

where \(\gamma _{ij}=\frac{1}{\tau _{ij}}\) holds, and \(\tau _{ij} = \tau _{ji} > 0\) represents the amount of time required for a user to travel between stations i and j, which is generally determined by the distance between i, j, and traffic conditions. Furthermore, the dynamics of the number of vehicles \(f_{ij}\) that are driven by users from station \(j \in \mathcal {S}\) to \(i \in \mathcal {S}\) is assumed to be

$$\begin{aligned} \dot{f}_{ij}(t) = -\gamma _{ij} f_{ij}(t)+g_{ij}(t)+u_{ij}(t). \end{aligned}$$
(8.25)

Next, we introduce the concept of dynamic pricing. The usage fee from station j to i is denoted by \(p_{ij}(t) \in \mathbb {R}\). Based on the model in the literature [61], the amount of movement between each station is assumed to vary with price, as follows:

$$\begin{aligned} g_{ij}(t) = \bar{g}_{ij}(t) - \theta _{ij}(t) p_{ij}(t). \end{aligned}$$
(8.26)

However, \(\bar{g}_{ij}(t) \in \mathbb {R}\) is the expected number of vehicles when \(p_{ij}(t) = 0\), and \(\theta _{ij}(t) = \theta _{ji}(t)\ge 0\) denotes price elasticity. Moreover, by using standard price

$$\begin{aligned} \bar{p}_{ij}(t) = \frac{\bar{g}_{ij}(t)}{\theta _{ij}(t)} , \end{aligned}$$
(8.27)

assume that the price \(p_{ij}(t)\) is determined according to the number of vehicles at stations i and j by the following equation:

$$\begin{aligned} p_{ij}(t) = \bar{p}_{ij}(t) + {\nu }_{ij}(t)v_i(t)- {\nu }_{ji}(t)v_j(t). \end{aligned}$$
(8.28)

However, \( {\nu }_{ij}(t), {\nu }_{ji}(t) \in \{0,1\}\) are parameters that determine whether the price \(p_{ij}\) is adjusted according to the number of vehicles at stations i and j. Under such formulation, the price \(p_{ij}(t)\) increases as the number of vehicles \(v_i(t)\) increases, with the effect of reducing the number of vehicles to station i (and vice versa).

Therefore, by summarizing the above arguments, the following dynamics are obtained:

$$\begin{aligned} \begin{aligned} \dot{v}_i(t) = \sum _{j=1}^{s} (\gamma _{ij} f_{ij}(t)+\theta _{ji}(t)( {\nu }_{ji}(t)v_{j}(t) - {\nu }_{ij}(t)v_{i}(t))-u_{ji}(t)),\\ \end{aligned} \end{aligned}$$
(8.29)
$$\begin{aligned} \begin{aligned} \dot{f}_{ij}(t) = -\gamma _{ij} f_{ij}(t)-\theta _{ij}(t)( {\nu }_{ij}(t)v_{i}(t) - {\nu }_{ji}(t)v_{j}(t))+u_{ij}(t). \end{aligned} \end{aligned}$$
(8.30)

Finally, by defining

$$\begin{aligned} &x(t) = [v_1(t)~\cdots ~v_s(t)\ f_{12}(t)\ f_{13}(t) \cdots f_{s,s-1}(t)]^\top , \\ &u(t) = [u_{12}(t)\ u_{13}(t)~\cdots ~u_{s,s-1}(t)]^\top ,\\ &\mathcal {A}= \begin{bmatrix} 0&{} \Gamma \\ 0&{} -\Delta \\ \end{bmatrix} ,\ \bar{\mathcal {A}}(t)= \begin{bmatrix} \Xi \Lambda (t) &{} 0\\ -\Lambda (t) &{} 0 \\ \end{bmatrix} ,\ B(t)= \begin{bmatrix} -\Xi \\ I \\ \end{bmatrix} , \\ &\Xi = [\hat{E}_1 \hat{E}_2~\cdots \hat{E}_s]^\top \nonumber , \hat{E}_i = [e_{1} \cdots e_{i-1} e_{i+1}~\cdots ~e_{s}]^\top , \\ & \Lambda (t)= \begin{bmatrix} \theta _{12}( {\nu }_{12}(t)e_1- {\nu }_{21}(t)e_2)^\top \\ \theta _{13}( {\nu }_{13}(t)e_1- {\nu }_{31}(t)e_3)^\top \\ \vdots \\ \theta _{s,s-1}( {\nu }_{s,s-1}(t)e_s- {\nu }_{s-1,s}(t)e_{s-1})^\top \\ \end{bmatrix} , \\ & \Gamma = [ e_1\gamma _{12} \ e_1\gamma _{13} \ ~\cdots e_s\gamma _{s,s-1}]^\top , \\ &\Delta = {\textrm{diag}}(\gamma _{12} \ \gamma _{13} \ ~\cdots \gamma _{s,s-1}) \end{aligned}$$

with \(n=s^2,m=s^2-s\) and \(e_i\in {\mathbb R}^n\) as ith standard basis, the dynamics of the whole system can be summarized as follows:

$$\begin{aligned} \dot{x}(t) = ( \mathcal {A}+\bar{\mathcal {A}}(t)) x(t) + B(t)u(t). \end{aligned}$$
(8.31)
  • x(t) is the number of waiting cars at each station

  • u(t) is the amount of rebalancing carried out between each station

  • \(\nu (t)\) is whether or not dynamic splines are implemented between each station

  • \(\bar{\mathcal A}(t)\) is linear with respect to each element of \( {\nu }(t)\).

4.2.2 Sparse Rebalancing Problem

Here, the rebalancing problem in car-sharing systems is formulated as a sparse optimal control problem.

Problem 8.2’ The initial number of vehicles \(v_0 \in \mathbb {R}^s\) at all stations is generally non-uniform and needs to be adjusted by the staff to the required number of vehicles \(v_d \in \mathbb {R}^s\) to provide a smooth service. Consequently, regarding the state variable x(t) in dynamics (8.31), we consider the problem of designing an input u(t) for transitions from the initial state \(x(0)=x_0\) to the target state \(x(T)=x_d\) within T. Here, each \(u_{ij}(t)\) corresponds to the number of vehicles that are rebalanced by staff between stations i and j. Therefore, when the number of staff teams is \(\beta \), the number of vehicles that can be transported simultaneously is at most \(\beta \), and the constraint \(\Vert u(t)\Vert _{\ell ^0} \le \beta \) is imposed on the input variables. In addition, as each team can only transport one vehicle at a time, \(u(t)\in [0,1]\) must be satisfied. Furthermore, as it is desirable for staff to have a shorter transportation time, \(\Vert u\Vert _{L^0}\) is defined as an evaluation function to achieve this goal. In other words, in the rebalancing scheduling, considering the cost of staff and treating this as a sparse optimal control problem, it is formulated as in Problem 8.2.

Problem 8.3’ Problem 8.2’ is a problem of determining the specific rebalancing implementation method with given \(x_d\). In contrast, although \(x_d\) is still undetermined in the previous day’s planning, having staff standing by at all stations all the time is not cost-efficient. Therefore, staff scheduling has to be determined to achieve effective rebalancing for any \(x_d\). As the minimum energy required (on average) when the target state is unknown is characterized by the controllability Gramian, the decision of which station to keep staff ready and when can be formulated as in Problem 8.3.

Problem 8.4’ Next, we formulate an optimal control problem for rebalancing to reduce the time spent on dynamic pricing by the service provider. Even if dynamic pricing is carried out over a long period of time, there may be situations in which users become used to it, and it does not have the expected effect. We assume that the service provider decides whether or not to implement \( {\nu }_{ij}(t)\). This means that dynamic pricing scheduling, which determines at which time and between which stations price interventions are made, can be formulated as in Problem 8.4.

4.2.3 Numerical Examples

To demonstrate the usefulness of the proposed method, numerical calculations are performed after convex relaxation for Problems 8.2’ and 8.4’. The number of stations was set to \(s=10,\ T=4\), the initial value of user vehicles at each station was determined according to an independent uniform distribution of [10, 30], and the target state \(x_d\) was set to the average of the total number of user vehicles. Parameters such as the arrival rate \(\gamma _{ij}\) and the coefficient of price elasticity \(\theta _{ij}(t)\) were determined in the same way as in [40].

First, the optimal trajectory \(u_{ij}\) resulting from solving Problem 8.2’ under

$$\begin{aligned} \nu _{ij}(t)=1,\ \forall i,\ j,\ t, \end{aligned}$$
(8.32)

assuming that dynamic pricing is effective at all times and between stations, is shown in Fig. 8.7. This confirms that the optimal solution takes discrete values despite solving a convex relaxation problem. Note that there are times when values other than \(\{0,1\}\) are taken near the changeover of each trajectory, but this is due to the effect of time discretization. In other words, the time width must be sufficiently small to prevent such phenomena from becoming problematic. The total time length (\(L^0\) norm of \(u_{ij}\)) with rebalancing between stations is shown in Fig. 8.8. It can be seen that rebalancing is not performed between most stations (blue), which confirms the sparsity of the optimal solution.

Fig. 8.7
A positive-negative graph of u subscript i j of t versus t. The dynamic pricing is effective at all times and between stations.

Each trajectory \(u_{ij}\) in the optimal solution of Problem 8.2’

Fig. 8.8
A plot of j versus i for the total time length L power 0 norm of u subscript i j with rebalancing between stations. It indicates the rebalancing is not performed between most stations, and values range from 0 to 4 using color codes.

Total time \(\Vert u_{ij}\Vert _{L^0}\) of rebalancing implementation between each station in the optimal solution of Problem 8.2’

Consider the situation in which rebalancing by staff transport is not regarded here (i.e., \(u=0\)), and the time to implement dynamic pricing is suppressed. The terminal error \( \Vert x(T)-x_d\Vert \) and the total time length of dynamic pricing \(\Vert \nu \Vert _{L^0}\) are shown in Fig. 8.9 when the optimal \(\nu \) for each parameter \(\alpha \) is used. Both are shown as a ratio to the case of (8.32), and the number on each point is the value of \(\alpha \). Naturally, there is a trade-off between these two values; however, it can be seen, for example, that the ratio of \(\Vert \nu \Vert _{L^0}\) can be kept below 0.1, while the ratio of the terminal error can be reduced to approximately 1.3.

Finally, to confirm the implementation of dynamic pricing switches each time, snapshots of the optimal \(\nu \) for \(\alpha =100\) at \(t=16h,24h,32h\) are shown in Fig. 8.10, where h is the discretized step size. Yellow and blue in Fig. 8.10 represent \(\nu _{ij}(t)=1\) and \(\nu _{ij}(t)=0\), respectively, and it can be seen that the implementation point changes with time.

Fig. 8.9
A line graph of error versus active time duration. It plots a curve that trends in a downward pattern. 0, 10, 20, 30, 50, 100, 200, 500, and 1000 are plotted on the curve.

Implementation time length \(\Vert \nu \Vert _{L^0}\) and terminal error \(\Vert x(T)-x_d\Vert \) (ratio to the fully active time) in the optimal solution of Problem 8.4’

Fig. 8.10
Three plots of the optimal v for alpha equals 100 at t equals 16, 24, and 32. The v subscript i j of t equals 1 and 0 are represented in snapshots, indicating that the implementation point changes with time.

Snapshots of the price adjustment implementation point \(\nu _{ij}\) in the optimal solution of Problem 8.4’ (Top: \(t=16h\), Middle: \(t=24h\), Bottom: \(t=32h\))

5 Communication-Aware Cooperative Car-Sharing Control

In this section, we present a framework of cooperative rebalancing control of one-way car-sharing service based on distributed control and optimization [27, 28, 43, 57, 58, 76]. We consider a group of service providers operate vehicles independently but share common rental stations. Since the deadheading of vehicles involves extra costs for the service providers, the deadhead vehicles should be minimized as much as possible. The cooperative rebalancing control to minimize the deadhead vehicles is formulated as a distributed optimization problem with a coupling inequality. The optimization problem can be solved by consensus-based algorithms [10, 11, 17, 79]. However, the conventional distributed optimization methods require communication between service providers at each iteration of the optimization algorithm, which may result in waste of communication resources [29]. To save limited communication resources, the distributed event-triggered methods have been considered in many applications of control and optimization [1, 7, 8, 25, 26, 46, 50]. In this section, we review a distributed primal-dual method with event-triggered communication [24], in which service providers communicate with other providers when the error of the estimated solution exceeds a predefined threshold. Each service provider updates the estimations of the primal and dual optimizers using a consensus-based primal-dual algorithm. We confirm that the estimations of all providers converge to an optimal rebalancing solution under the constraints of available vehicles and parking slots.

5.1 Formulation of Cooperative Rebalancing Control

We consider \(N \ ({\ge } 1)\) service providers that cooperatively operate the car-sharing service among \(S \ ({\ge } 2)\) stations.

Let \(a_{i,j}[k]\in \mathbb {R}_{+}\) and \(f_{i,j\ell }[k]\in \mathbb {R}_{+}\) be the expected number of vehicles of provider \(i\in \mathcal {V}\) parked at station \(j\in \mathcal {S}\) at time \(k\in \mathbb {N}\) and the expected number of vehicles of provider \(i\in \mathcal {V}\) traveling from the station \(\ell \in \mathcal {S}\) to \(j\in \mathcal {S}\) at time \(k\in \mathbb {N}\), where \(\mathcal {V}=\{1,2,\dots ,N\}\) is the set of the service providers and \(\mathcal {S}=\{1,2,\dots ,S\}\) is the set of the stations. Suppose also that \(s_{i,j\ell }[k]\in \mathbb {R}_{+}\) and \(w_{i,j\ell }[k]\in \mathbb {R}_{+}\) are respectively the expected rates of the number of deadhead vehicles and the demands of provider i from station \(\ell \) to station j at time k. Then, the dynamics of the car-sharing system of provider i is given as follows:

$$\begin{aligned} a_{i,j}[k+1]&=a_{i,j}[k]+\sum _{\ell \in \mathcal {S}\setminus \{j\}} c_{j\ell }[k] f_{i,j\ell }[k] \nonumber \\ & - \sum _{\ell \in \mathcal {S}\setminus \{j\}} (s_{i,\ell j}[k]+w_{i,\ell j}[k]), \quad j\in \mathcal {S}, \end{aligned}$$
(8.33)
$$\begin{aligned} f_{i,j\ell }[k+1]&=(1-c_{j\ell }[k])f_{i,j\ell }[k]+s_{i,j\ell }[k]+w_{i,j\ell }[k], \quad j, \ell \in \mathcal {S}, \ j\ne \ell , \end{aligned}$$
(8.34)

where \(c_{j\ell }[k]=1-e^{-1/\tau _{j\ell }[k]}\) is the expected arrival rate from station \(\ell \) to station j.

The dynamics (8.33) shows that the number of the operator i’s vehicles at station j for the subsequent time \(k+1\), denoted as \(a_{i,j}[k+1]\), is determined by the sum of the current number of vehicles at station j and the influx of vehicles from other stations, subtracted by the number of vehicles departing from station j toward other stations. Similarly, the dynamics (8.34) shows that the number of the operator i’s vehicles in transit from station \(\ell \) to j at the next time \(k+1\), represented as \(f_{i,j\ell }[k+1]\), equals the number of vehicles currently on route from station \(\ell \) to j that won’t reach j by the next time, added to the total vehicles initiating their journey from station \(\ell \) toward j.

5.2 Distributed Event-Triggered Optimization

We consider the case when several service providers jointly use common car stations. Because the parking space of the stations is shared among providers, each provider manages the deadhead vehicles so that the number of these vehicles is as small as possible under the constraints of the parking space.

Let \(x_i[k]=[a_{i,1}[k], \dots , a_{i,S}[k], f_{i,12}[k], \dots , f_{i,S,S-1}[k]]^\top \in \mathbb {R}^{n}\), \(u_i[k]=[s_{i,21}[k], s_{i,31}[k], \dots , s_{i,S-1,S}[k]]^\top \in \mathbb {R}^{m}\), and \(w_i[k]=[w_{i,21}[k], w_{i,31}[k], \dots ,\) \(w_{i,S-1,S}[k]]^\top \in \mathbb {R}^{m}\) be the state, the control input, and the external input of provider i at time k, where \(m=S(S-1)\) and \(n=S^2\). From (8.33) and (8.34), the dynamics of the car-sharing service is given as

$$\begin{aligned} x_i[k+1]=A_ix_i[k] + B_i (u_i[k]+w_i[k]), \quad x_i[0]=x_{i0}, \end{aligned}$$
(8.35)

where \(A_i\in \mathbb {R}^{n\times n}\) and \(B_i\in \mathbb {R}^{n\times m}\) are the coefficient matrices, and \(x_{i0} \ (\ge 0_n)\) is the initial state of provider i.

Let \(u_i=[u_i^\top [0], \ u_i^\top [1], \ \dots , \ u_i^\top [T-1] ]^\top \in \mathbb {R}^{mT}\) be the vector that represents the number of deadhead vehicles of provider i during the time horizon \([0,T-1]\). Because both the expected number of vehicles between stations and the parked vehicles are non-negative, the non-negativeness condition for the state is required as follows:

$$\begin{aligned} x_i[k] \ge 0_n, \quad \forall i\in \mathcal {V}, \ \forall k\in \mathcal {K}, \end{aligned}$$
(8.36)

where \(\mathcal {K}=\{1,2,\dots ,T\}\) and the inequality sign for vectors represents the element-wise operation. The constraint on the limited parking space is represented as

$$\begin{aligned} \Gamma \sum _{i=1}^N x_i[k] \le \xi [k], \quad \forall k\in \mathcal {K}, \end{aligned}$$
(8.37)

where \(\Gamma =[I_S \ O_{S\times (n-S)}]\in \mathbb {R}^{S\times n}\) extracts the variables related to the number of vehicles at stations and \(\xi [k]\in \mathbb {R}^{S}\) represents the number of vehicles that can be parked at S stations at time k. The constraint on the number of deadhead vehicles is given as

$$\begin{aligned} u_i \in \mathcal {U}_i=\{u^\prime \in \mathbb {R}^{mT} \mid 0_{mT}\le u^\prime \le \eta _i \}, \quad \forall i\in \mathcal {V}, \end{aligned}$$
(8.38)

where \(\eta _i\in \mathbb {R}^{mT}\) is the upper bound of the number of dispatchable vehicles of provider i.

Then, the cooperative rebalancing control problem is summarized as follows.

Problem 8.5

For the dynamics of the car-sharing service (8.33) and (8.34), find the control inputs \(\{u_i\}_{i=1}^N\) such that the number of deadhead vehicles is as small as possible under the constraints of dispatchable vehicles and parking space of the stations (8.36)–(8.38).

The distributed optimization problem is formulated as follows:

$$\begin{aligned} \displaystyle \underset{\{u_i\}_{i=1}^N}{\textrm{minimize}} \quad & \sum _{i=1}^N f_i(u_i) \end{aligned}$$
(8.39a)
$$\begin{aligned} \mathrm {subject~to} \quad &\sum _{i=1}^N g_i(u_i) \le 0_q, \end{aligned}$$
(8.39b)
$$\begin{aligned} &u_i \in \mathcal {U}_i, \quad i\in \mathcal {V}. \end{aligned}$$
(8.39c)

In the distributed optimization problem (), \(f_i(u_i)=u_i^\top H_i u_i\), where \(H_{i} {=} \sum _{\tau =0}^{T-1} E^\top [\tau ] R_i E[\tau ] \in \mathbb {R}^{mT\times mT}\), \(E[k] = [ O_{m\times mk}, \ I_{m}, \ O_{m\times m(T-k-1)} ] \in \mathbb {R}^{m\times mT}\), and \(R_i\in \mathbb {R}^{m\times m}\) is a positive-definite weight matrix. Moreover, \(g_i(u_i)=\Omega _i u_i + \psi _i\), where \( \Omega _i{=} \begin{bmatrix} -\hat{\Phi }_i^\top , \check{\Phi }_i^\top \end{bmatrix}^\top \in \mathbb {R}^{q\times mT}\), \(\psi _i=\begin{bmatrix}-(\hat{A}_i\xi _i[0])^\top , \mu _i^\top \end{bmatrix}^\top \in \mathbb {R}^{q}\), and \(q=(n+S)T\). The matrices \(\hat{\Phi }_i\), \(\check{\Phi }_i\), and \(\hat{A}_i\), and the vector \(\mu _i\) are given by \(\hat{\Phi }_i=[\Phi _i^\top [1], \Phi _i^\top [2], \dots , \Phi _i^\top [T]]^\top \in \mathbb {R}^{nT\times mT}\), \(\check{\Phi }_i=[(\Gamma \Phi _i[1])^\top , (\Gamma \Phi _i[2])^\top , \dots ,\) \((\Gamma \Phi _i[T])^\top ]^\top \in \mathbb {R}^{ST\times mT}\), \(\hat{A}_i=[A_i^\top , (A_i^2)^\top , \dots , (A_i^T)^\top ]^\top \in \mathbb {R}^{nT\times n}\), and

$$\begin{aligned} \mu _i&= \begin{bmatrix} \Gamma \sum _{i=1}^N A_ix_i[0] + \Gamma \sum _{i=1}^N \Phi _i[1]w_i - \frac{1}{N}\xi [1] \\ \Gamma \sum _{i=1}^N A_i^{2}x_i[0] + \Gamma \sum _{i=1}^N \Phi _i[2]w_i - \frac{1}{N}\xi [2] \\ \vdots \\ \Gamma \sum _{i=1}^N A_i^{T}x_i[0] + \Gamma \sum _{i=1}^N \Phi _i[T]w_i - \frac{1}{N}\xi [T] \end{bmatrix}\in \mathbb {R}^{ST}.\nonumber \end{aligned}$$

The dual problem for () is given as follows:

$$\begin{aligned} \begin{aligned} \mathop {\textrm{maximize}} \quad & \sum _{i=1}^N \varphi _i(\lambda )\\ \mathrm {subject~to} \quad & \lambda \ge 0_q, \end{aligned} \end{aligned}$$
(8.40)

where \(\varphi _i(\lambda )=\min _{u_i \in \mathcal {U}_i}\mathcal {L}_i(u_i,\lambda )\) and \(\mathcal {L}_i(u_i,\lambda )=f_i(u_i) + \lambda ^\top g_i(u_i)\) is the Lagrange function of provider i. The Lagrange function for () is given as \(\mathcal {L}(u,\lambda )=\sum _{i=1}^N\mathcal {L}_i(u_i,\lambda )\), where \(u=[u_1^\top , u_2^\top ,\dots ,u_N^\top ]^\top \in \mathcal {U}\subset \mathbb {R}^{mNT}\).

Let \(f(u) = \sum _{i=1}^N f_i(u_i)\) and \(g(u) = \sum _{i=1}^N g_i(u_i)\) be the global objective function and the global constraint function. We assume Slater’s qualification for () [79].

Assumption 8.1

There exists \(u\in \,{^{\circ }{\mathcal {U}}}\) such that \(g(u)<0_q\), where \({^{\circ }{\mathcal {U}}}\) is the relative interior of \(\mathcal {U}\).

If Slater’s qualification holds, we have \(f^*=\varphi ^*\) and \(\Lambda ^*\ne \emptyset \) [79], where \(\varphi ^*\) is the optimal value of (8.40) and \(\Lambda ^*\) is the set of the optimal dual solutions of (8.40).

To solve the optimization problem (), each service provider exchanges the estimation of the optimal solution of the dual problem (8.40) with other providers via a communication network. In this study, the communication network between providers is represented by an undirected graph \(\mathcal {G}=(\mathcal {V},\mathcal {E})\), where \(\mathcal {E}\subset \{\{i,j\} \mid i,j\in \mathcal {V}, \ i\ne j\}\) is the set of undirected edges. The set of neighbors of provider i is denoted as \(\mathcal {N}_i=\{j\in \mathcal {V}\mid \{i,j\}\in \mathcal {E}\}\). We make the following assumption for the communication network.

Assumption 8.2

The communication network \(\mathcal {G}\) is connected.

5.3 Event-Triggered Distributed Primal-Dual Algorithm

Let \(u_i^*\in \mathcal {U}_i^*\) and \(\lambda ^*\in \Lambda ^*\) be an optimal primal solution for () and an optimal dual solution for the dual problem (8.40), where \(\mathcal {U}_i^*\subset \mathcal {U}_i\) is the set of the optimal primal solutions of provider i. Each provider i has the estimations of the optimal primal solution \(u_i^{(s)}\in \mathbb {R}^{mT}\) and the optimal dual solution \(\lambda _i^{(s)}\in \mathbb {R}^{q}\) at iteration \(s\in \mathbb {N}\) of the distributed algorithm.

Each service provider sends the estimation of the optimal dual solution \(\lambda _i^{(s)}\) to the neighboring providers only when the difference between the current and most recently transmitted estimates exceeds a certain threshold. The iteration in which service provider i sends the estimation to the neighboring providers is called the trigger time of provider i. Let \(s_i^\ell \) be the \(\ell \)th trigger time of provider i, where \(\ell \in \mathbb {N}\). The latest estimation sent by provider i to the neighboring providers is defined as follows:

$$\begin{aligned} \tilde{\lambda }_i^{(s)} = {\left\{ \begin{array}{ll} \lambda _i^{(s)}, &{} \text{ if } s\in \kappa _i,\\ \tilde{\lambda }_i^{(s-1)}, &{} \text{ if } s\notin \kappa _i, \end{array}\right. } \end{aligned}$$
(8.41)

where \(\kappa _i =\{s_i^0, s_i^1,\dots \}\) is the set of the trigger times of provider i. In the event-triggered algorithm, each service provider i sends the estimation to neighboring providers only at iterations that satisfy the following condition:

$$\begin{aligned} \Vert \lambda _i^{(s)}-\tilde{\lambda }_i^{(s)}\Vert \ge \varepsilon _i^{(s)}, \end{aligned}$$
(8.42)

where \(\varepsilon _i^{(s)} >0\) is a trigger threshold of provider i. Then, for any \(i\in \mathcal {V}\), we get

$$\begin{aligned} \Vert \lambda _i^{(s)}-\tilde{\lambda }_i^{(s)}\Vert \le \varepsilon ^{(s)},\quad \forall s\in \mathbb {N}, \end{aligned}$$
(8.43)

where \(\varepsilon ^{(s)} = \max _{i\in \mathcal {V}} \varepsilon _i^{(s)}\).

Assumption 8.3

The upper bound of the allowable error satisfies

$$\begin{aligned} \lim _{s\rightarrow \infty } \varepsilon ^{(s)} = 0, \quad \sum _{s=0}^\infty (\varepsilon ^{(s)})^2 < \infty , \quad \sum _{s=0}^\infty \varepsilon ^{(s)} = \infty . \nonumber \end{aligned}$$

We define \(\Lambda _i\) as \(\Lambda _i = \{ \lambda \in \mathbb {R}^q_{\ge 0} \mid \Vert \lambda \Vert \le (f(\check{u}) - \check{\varphi })/\Delta (\check{u}) + \omega _i \}\) for some \(\omega _i>0\), where \( \check{u} \in \mathcal {U} \) is a point that satisfies Assumption 8.1, \(\Delta (u) =\min _{1\le p \le q} \{-[\sum _{i=1}^N g_i(u_i)]_{p}\}\), and \(\check{\varphi }=\min _{u\in \mathcal {U}}\mathcal {L}(u,\lambda )\) for \(\lambda \in \mathbb {R}_{+}^q\).

After the information exchange between the neighboring providers, provider i updates the estimations of the optimal solutions of the primal problem () and the dual problem (8.40) by the following event-triggered distributed primal-dual algorithm:

$$\begin{aligned} w_i^{(s)} &= \lambda _i^{(s)} + \sum _{j=1}^{N} p_{ij}\left( \tilde{\lambda }_j^{(s)}-\tilde{\lambda }_i^{(s)} \right) , \end{aligned}$$
(8.44)
$$\begin{aligned} \lambda _i^{(s+1)} &= \Pi _{\Lambda _i}\left[ w_i^{(s)} + \alpha ^{(s)}d\mathcal {L}_{\lambda ,i}(u_i^{(s)},w_i^{(s)}) \right] , \end{aligned}$$
(8.45)
$$\begin{aligned} u_i^{(s+1)} &= \Pi _{\mathcal {U}_i}\left[ u_i^{(s)}-\alpha ^{(s)} d\mathcal {L}_{u,i}(u_i^{(s)},w_i^{(s)})\right] , \end{aligned}$$
(8.46)

where \(d\mathcal {L}_{\lambda ,i}\) and \(d\mathcal {L}_{u,i}\) are the subgradients of \(\mathcal {L}_i\) with respect to \(\lambda \) and \(u_i\), and \(\Pi _{\mathcal {C}}[x]\) is the projection of a point \(x\in \mathbb {R}^n\) to a closed convex set \(\mathcal {C}\).

Assumption 8.4

The step-size satisfies

$$\begin{aligned} \lim _{s\rightarrow \infty } \alpha ^{(s)} = 0, \quad \sum _{s=0}^\infty (\alpha ^{(s)})^2 < \infty , \quad \sum _{s=0}^\infty \alpha ^{(s)} = \infty . \nonumber \end{aligned}$$

Assumption 8.5

The weight \(p_{ij}\) is given as

$$\begin{aligned} p_{ij}&={\left\{ \begin{array}{ll} p_{ji}>p_{\min }, &{} \textrm{if} \ \{i,j\}\in \mathcal {E}, \\ 0, &{} \textrm{if} \ \{i,j\}\notin \mathcal {E}, \ i \ne j, \end{array}\right. } \nonumber \\ p_{ii}&=1-\sum _{j\in \mathcal {V}\setminus \{i\}} p_{ij} >p_{\min }, \nonumber \end{aligned}$$

where \(0<p_{\min }<1\).

In the event-triggered distributed primal-dual algorithm, the information on the estimation \(u_i^{(s)}\), the local cost function \(f_i\), and the local constraints of sharing services (8.36)–(8.38) are not disclosed to the other providers. Therefore, any service provider can determine the appropriate control input while retaining the anonymity of their customers’ information.

The following theorem shows that the estimations of all providers converge to the optimal solutions of () and (8.40) [24].

Theorem 8.5

If each provider updates the estimations by the distributed event-triggered primal-dual algorithm (8.44)–(8.46), then \(\lim _{s\rightarrow \infty } \Vert u_i^{(s)} - u_i^*\Vert =0\) and \( \lim _{s\rightarrow \infty } \Vert \lambda _i^{(s)} - \lambda ^*\Vert =0\) for any \(i \in \mathcal {V}\).

Theorem 8.5 shows that each provider can cooperatively solve Problem 8.5 by the proposed event-triggered primal-dual algorithm.

5.4 Numerical Simulation

We consider a car-sharing problem with \(N=4\) and \(S=15\), in which each provider dispatches up to 400 vehicles for the car-sharing service. The maximum number of vehicles that can be parked at each time is given by \(\xi _j[k]=50\) for any station j. The expected demands of each provider were given randomly from the interval between 0 and 15. The arrival rate \(c_{j\ell }\) is given in the interval [0.95, 0.99] and the maximum number of dispatchable vehicles \(\eta _i\) is 10. The step-size is given as \(\alpha ^{(s)} = 1/(s+2\times 10^7)^{0.51}\) and the trigger function for the event-triggered algorithm is given as \(\varepsilon _i^{(s)}=C_E/(s+1)\) for all \(i\in \mathcal {V}\), where \(C_E\) is a positive constant. The weight matrix is set as \(R_i=I_{m}\) for \(i\in \mathcal {V}\).

Figures 8.11 and 8.12 show the normalized error \((\sum _{i=1}^{n}|f(u_i^{(s)})-f^*|)/(\sum _{i=1}^{n}|f(u_i^{(0)})-f^*|)\), and the number of triggers for the different values of the threshold parameter \(C_E\) of the event-triggered communication, where \(f^*\) is the cost obtained by a centralized computation with CVXPY [16]. These results show that the accuracy of the estimation by the event-triggered algorithm (ET) is comparable to that by the time-triggered algorithm (TT) [79]. Moreover, the number of communications by the event-triggered algorithm can be efficiently reduced compared with that by the time-triggered algorithm.

Fig. 8.11
A graph of normalized error versus iteration s for T T and E T of C subscript E equals 0.01, 0.05, and 0.1. All the curves trend in a downward pattern at first and then remain constant after 2500 iterations. All the curves trend in the same pattern.

The normalized errors with different values of \(C_E\)

Fig. 8.12
A multi-line graph of the total number of triggers versus iteration s for T T and E T of C subscript E equals 0.01, 0.05, and 0.1. E T of C subscript E equals 0.01, 0.05, and 0.1 trend in an increasing pattern at first and then remains constant after 3000 iterations. T T trends in a linearly increasing pattern.

The number of triggers with different values of \(C_E\)

6 Optimal Control Problem of Probability Distributions for Rebalancing in One-Way Car-Sharing Service

This section treats the operation of car-sharing services as a control problem of probability distributions, which is a current focus in control theory [2, 12, 22, 32]. As discussed in previous sections, we examine the rebalancing problem in one-way car-sharing services, where users can return vehicles to arbitrary slots, not necessarily the ones from which the users rented them. This can result in an uneven distribution of vehicles at parking slots. To address this issue, the service operator performs a rebalancing operation by dispatching the vehicles to eliminate the uneven distribution [5, 44, 48, 69]. The section assumes that car-sharing systems dispatch vehicles to match user demand, formulating the rebalancing problem as controlling the numbers of vehicles to match the demand. As discussed in the following, the number of vehicles at each station corresponds to the probability distribution, considering that the total number of vehicles remains the same (i.e., no additional cars are brought into or removed from the total pool), and so does the required number of vehicles in demand. Therefore, the rebalancing problem can be considered as the minimization of the difference between the probability distributions of the actual availability of vehicles and the demand for required vehicles. The section presents an approach based on the Wasserstein distance to measure this difference and formulates the rebalancing problem as the optimal control problem of probability distributions with Wasserstein costs.

6.1 Optimal Control Problem of Probability Distributions: Problem Formulation and Optimal Condition

Here we describe the optimal control problem of probability distributions with costs determined by the Wasserstein distances. The formulation of the control problem is based on [33] focusing on the discrete setting. The continuous setting can be found in [32].

The control problem focuses on discrete state variables, i.e., the state space consists of a finite set \(S = \left\{ s_{1}, s_2, \dots , s_N \right\} \). The problem takes probability distributions on the state space S into consideration. The value of the probability \(\textrm{P} \left[ x_t = s_i \right] \) that an \(S\)-valued random variable \(x_t\) at time t (\(t=1,2,\dots \)) takes the value \(s_i \in S\) is denoted by

$$\begin{aligned} \textrm{P} \left[ x_t = s_i \right] = (p_t)_i, \end{aligned}$$
(8.47)

where \((p_t)_i \in [0, 1]\) for \(i \in \mathbb {Z}_{1:N}\). The values \((p_t)_i\) (\(i=1,\dots , N\)) satisfy \(\sum _{i=1}^N (p_t)_i = 1\) for each t. The probability distribution of \(x_t\) is given by a probability vector \(p_t = \left[ (p_t)_1, (p_t)_2, \dots , (p_t)_N \right] ^T\), consisting of the set of probability distributions \(\mathcal {P}(S)\).

The above setting enables the introduction of Markov decision processes. We assume that the transition matrix of the Markov decision process depending on the control input \(u_t \in U \subset \mathbb {R}^d\), for \(t \in \mathbb {Z}_{0:T-1}\), is given in the form of

$$\begin{aligned} \textrm{P} \left[ x_{t+1} = s_i \mid x_t = s_j \right] = P_{ij}(u_t, t) \quad \text { for } \forall i, j \in \mathbb {Z}_{1:N}, \end{aligned}$$
(8.48)

where \(\textrm{P} \left[ x_{t+1} = s_i \mid x_t = s_j \right] \) is the conditional probability of the event \(x_{t+1} = s_i\) under the event \(x_{t} = s_j\). The elements of the matrix \(P_{ij}(u_t,t)\) is a map from \(U \times \mathbb {Z}_{0:T-1}\) to [0, 1] and satisfies

$$\begin{aligned} \sum _{i=1}^N P_{ij}(u, t) = 1 \text { for } u \in U, \ t \in \mathbb {Z}_{0:T-1}. \end{aligned}$$
(8.49)

Then, a Markov chain is determined by

$$\begin{aligned} p_{t+1} = P(u_t,t) p_t, \quad t \in \mathbb {Z}_{0:T-1} \end{aligned}$$
(8.50)

and the initial value of \(p_0 \in \mathcal {P}(S)\). In this section, we discuss the application of the Markov decision process to the rebalancing in car-sharing services. As mentioned above and discussed in detail below, rebalancing through vehicle dispatching can be regarded as controlling the number of available vehicles to match user demand. We regard this matching problem as minimizing the difference between the number of vehicles and user demand. In terms of the Markov decision process, this problem reduces to the minimization between the actual and desired probability distributions of vehicles at parking slots when the numbers of vehicles at the parking slots are normalized.

To measure the difference between probability distributions in the rebalancing problem, the study [33] introduced Wasserstein distances. To introduce it, the state \(s_i \in S\) is associated with a point located at \(z_i\) in the Euclidean space \(\mathbb {R}^n\).

Definition 8.1

Assume that the states \(s_i, s_j\) are associated with the positions \(z_i, z_j \in \mathbb {R}^n\), respectively, and assume that the distance between \(z_i\) and \(z_j\) is given by \(d_{ij}=\Vert z_i - z_j\Vert \) (\(i,j\in \mathbb {Z}_{1:N}\)). For two probability distributions p, \(q \in \mathcal {P}(S)\), consider the set of joint probability distributions \(\pi \) of \(S\)-valued random variables X and Y whose probability distributions p and q, respectively, are as follows, i.e., \(\pi = \{\pi _{ij}\}\) satisfies

$$\begin{aligned} \pi _{ij} = \textrm{P} \left[ X = s_i, \ Y = s_j \right] \end{aligned}$$
(8.51)

and

$$\begin{aligned} \sum _{j=1}^{N} \pi _{ij} = p_i, \quad \sum _{i=1}^N \pi _{ij} = q_j. \end{aligned}$$
(8.52)

With the notation of the set of joint probability distributions \(\pi \) by \(\Pi (p,q)\), the Wasserstein distance between p and q, \(W: \mathcal {P}(S) \times \mathcal {P}(S) \rightarrow \mathbb {R}\), is given by

$$\begin{aligned} W(p, q) = \min _{\pi \in \Pi (p,q)} \left( \sum _{i,j=1}^N d_{ij} \pi _{ij} \right) . \end{aligned}$$
(8.53)

The set of joint probability distributions \(\Pi (p,q)\) is called the coupling of probability distributions of p and q. Please note that the Wasserstein distance of Definition 8.1 is precisely referred to as the \(1\)-Wasserstein distance because it uses the first power of the distance \(d_{ij}\).

We use the following result to present an optimality condition of the control problem later. It follows from the definition that the Wasserstein distance is given as a solution of a linear programming problem. The following result gives the duality result of the linear programming problem.

Proposition 8.1

([62]) The Wasserstein distance admits another expression given by

$$\begin{aligned} W(p, q) = \max _{(f,g) \in R(d)} f^T p + g^T q, \end{aligned}$$
(8.54)

where the set R(d) is defined as

$$\begin{aligned} R(d) = \left\{ f \in \mathbb {R}^N, g \in \mathbb {R}^N \mid \forall i, j\in \mathbb {Z}_{1:N}, \ f_i + g_j \le d_{ij} \right\} , \end{aligned}$$
(8.55)

where \(f_i\) and \(g_j\), \(i, j \in \mathbb {Z}_{1:N}\) are the \(i\)th element of f and the \(j\)th element of g, respectively.

In expression (8.54), f and g are called Kantorovich potentials.

Given the Wasserstein distance, we can formulate the optimal control problem here. We consider the Markov decision process given by (8.50) and assume that the desired probability distributions \(p_{t,d} \in \mathcal {P}(S)\) for each \(t \in \mathbb {Z}_{1:T}\) are given. The problem formulated here is the minimization of the differences between the probability vector \(p_t\) of (8.50) and the desired distribution \(p_{t,d}\) for each \(t \in \mathbb {Z}_{1:T}\). As mentioned above, the differences between the two distributions are measured by the Wasserstein distance. The following gives the mathematical formulation of the control problem of this section.

Problem 8.6

Consider system (8.50), a probability distribution at the initial time, \(p_{0} \in \mathcal {P}(S)\) at \(t = 0\), and desired probability distributions \(p_{t,d}\), \(t \in \mathbb {Z}_{1:T}\). Find a sequence of the control inputs \(u = \left\{ u_t \right\} _{t=0}^{T-1}\) that minimizes the cost function

$$\begin{aligned} J(u) = \sum _{t=0}^{T-1} \left\{ W(p_{t+1}, p_{t+1,d}) + g(p_t, u_t) \right\} , \end{aligned}$$
(8.56)

where \(g: \mathcal {P}(S) \times U \rightarrow \mathbb {R}\) is continuous on \(\mathcal {P}(S) \times U\) and continuously differentiable on the interior of \(\mathcal {P}(S) \times U\).

As seen below, we introduce the function \(g(p_t, u_t)\) in (8.56) to impose the control cost. Additionally, \(g(p_t, u_t)\) can also be used to take constraints on the control input such that \(u_t \in U \subset \mathbb {R}^d\) into consideration, for example, using barrier functions for \(u \in U\).

Problem 8.6 is the optimal control problem with respect to the probability distributions. In standard optimal control problems, Pontryagin’s minimum principle enables the characterization of the optimality and the optimal control inputs. As for the current problem, we can obtain a condition based on Pontryagin’s minimum principle.

Theorem 8.6

Assume that given the initial probability distribution \(p_{0} \in \mathcal {P}(S)\) and the target probability distributions \(p_{t,d} \in \mathcal {P}(S)\), \(t \in \mathbb {Z}_{1:T}\), for the system (8.50), there exists a sequence of control inputs \(\left\{ u_{t}^{*} \right\} _{t=0}^{T-1}\) that attains the minimum of the cost function (8.56). Then, there exist sequences \(\left\{ p_t^{*} \right\} _{t=0}^T\) and \(\left\{ \Lambda _t^{*} \right\} _{t=0}^{T}\) such that the following conditions hold:

$$\begin{aligned} & p_{t+1}^{*} = P(u_t^{*},t) p_t^{*}, \quad \Lambda _t^{*} = \Lambda _{t+1}^{*} P(u_{t}^{*},t) + {f_t^{*}}^T + \frac{\partial g}{\partial p}(p_t^{*},u_t^{*}) \end{aligned}$$
(8.57)
$$\begin{aligned} & \Lambda _{t+1}^{*} \frac{\partial P}{\partial u_m}(u_t^{*}, t) p_t^{*} + \frac{\partial g}{\partial u_m}(p_t^{*}, u_t^{*}) = 0, \quad t \in \mathbb {Z}_{1:T-1}, \ m \in \mathbb {Z}_{1:d}, \end{aligned}$$
(8.58)

with boundary conditions

$$\begin{aligned} p_0^{*} = p_0, \quad \Lambda _T^{*} = {f_T^{*}}^T, \end{aligned}$$
(8.59)

where \(f_{t}^{*}\), \(t \in \mathbb {Z}_{1:T}\) is a Kantorovich potential of \(W(p_t^{*}, p_{t,d})\) as given in (8.54).

Note that \(\Lambda _t^*\) is given as an \(N\)-dimensional row vector.

The optimality condition in Theorem 8.6 enables the development of a gradient descent-type algorithm. The algorithm developed in [33] is summarized in the following.

A gradient descent-type algorithm with 4 steps. Step 1 reads, let k = 0 and determine the initial value of y subscript t power k with a lower limit t = 0 and an upper limit T minus 1 and the number of the maximal iteration N subscript max. Step 4 reads, k leads to k + 1. If k = N subscript max, stop.

6.2 Application to Rebalancing in One-Way Car-Sharing Services

The optimal control problem discussed above is now adapted to the rebalancing problem in one-way car-sharing systems. As mentioned above, the one-way car-sharing services enable users to return vehicles in arbitrary slots, not necessarily the same slots that the users rented. This framework provides convenience to users but requires the rebalancing of vehicles between parking slots for service providers. This issue requires determining an optimal dispatching strategy in the rebalancing of available vehicles. The current framework deals with this issue from the perspective of the probability distribution control problem.

Fig. 8.13
An illustration of a one-way car-sharing system setting includes N i of t over N all at station S i, N k of t over N all at station S k, operators, N l of t over N all at station S l, N j of t over N all at station S j, users, and P of x subscript t plus 1 = s subscript i vertical bar x subscript t = s subscript j.

Setting in One-way Car-sharing system [33]

The rebalancing problem is formulated as an optimal control problem as follows (see also Fig. 8.13). We assume that \(N_{\textrm{all}}\) vehicles is prepared in the car-sharing service and the number of the vehicles does not change during the operation. Additionally, N parking slots are assumed to be provided, and each parking slot is denoted by \(s_1,\ldots ,s_N\). Then, \(s_1,\ldots ,s_N\) forms the state space in the control problem \(S = \left\{ s_1, \dots , s_N \right\} \). Moreover, we assume that each parking slot is located at the position \(z_i \in \mathbb {R}^{2}\) and \(d_{ij} = \Vert z_i - z_j\Vert \) denotes the distance between the locations \(z_i\) and \(z_j\). Given the vehicles and parking slots, the \(i\)th parking slot possesses \(N_i(t)\) vehicles at time t. The fractions of vehicles at parking slots determine a probability distribution of a vehicle staying at the \(i\)th slots at time t, that is, the probability distribution \(p_t \in \mathcal {P}(S)\) possesses the element \((p_t)_i\) given by

$$\begin{aligned} \textrm{P}[x_t = s_i] = (p_t)_i := \frac{N_i(t)}{N_{\textrm{all}}}, \end{aligned}$$
(8.61)

where \(x_t\) denotes the state of a vehicle at time t, and \(x_t = s_i\) expresses that the vehicle is locating at or moving to the parking slot \(s_i\). We introduce the desired probability vectors \(\left\{ p_{t,d} \right\} _{t=1}^T\) to express the user demand of vehicles in parking slots.

We consider a dynamical model to determine the movements of vehicles between parking slots as a Markov chain (8.50). The Markov chain model of the movements of vehicles is given by

$$\begin{aligned} p_{t+1}= p_t-L_t p_t-L_t^u p_t, \end{aligned}$$
(8.62)

where \(L_t, L_t^u\) are matrices, and \(L_t^u\) is a control input. This equation is obtained by replacing the matrix \(P(u_t, t)\) in  (8.50) with

$$\begin{aligned} P(u_t, t) = I - L_t - L_t^u, \end{aligned}$$
(8.63)

where \(u_t = L_t^u\). The matrix \(L_t\) is assumed to have the form

$$\begin{aligned} L_t = \begin{bmatrix} \sum _{i=2}^N l_{t, i1} &{} -l_{t,12} &{} \dots &{} -l_{t,1N} \\ -l_{t,21} &{} \sum _{\begin{array}{c} i=1\\ i\ne 2 \end{array}}^N l_{t,i2} &{} \dots &{} -l_{t,2N} \\ \vdots &{} \vdots &{} \ddots \vdots \\ -l_{t,N1} &{} -l_{t,N2} &{} \dots &{} \sum _{i=1}^{N-1} l_{t,iN} \end{bmatrix}. \end{aligned}$$
(8.64)

\(L_t^u\) also has the same form as (8.64), where the element \(l_{t,ij}\) is replaced with \(l_{t,ij}^u\). The element \(l_{t,ij}\) in \(L_t\) determines the fraction of vehicles moved by users from slot \(s_j\) to \(s_i\) at time t. Additionally, \(l_{t,ij}^u\) of \(L_t^u\) models the fraction of vehicles moved in the rebalancing from \(s_j\) to \(s_i\). The elements \(l_{t,ij}\) of \(L_t\) satisfy that \(l_{t,ij} \in [0,1]\) and \(\sum _{k=1, k \ne j}^N l_{t,kj} \le 1\) for \(j \in \mathbb {Z}_{1:N}\). Given the matrix \(L_t\), the matrix \(L_t^u\) has to satisfy conditions for the matrix \(I-L_t-L_t^u\) to be a transition matrix. The elements \(l_{t,ij}^u\) satisfy that for \(i, j \in \mathbb {Z}_{1:N}\), \(i \ne j\),

$$\begin{aligned} l_{t, i j}^u \ge 0, \end{aligned}$$
(8.65)

and for \(j \in \mathbb {Z}_{1:N}\),

$$\begin{aligned} \sum _{i=1, i \ne j}^N l_{t, i j}^u \le 1-\sum _{i=1, i \ne j}^N l_{t, i j}. \end{aligned}$$
(8.66)

These conditions on \(L_t^u\) guarantee that the matrix \(I - L_t - L_t^u\) becomes the transition matrix of the Markov chain.

The cost function of J(u) in the optimal control problem of Problem 8.6 is designed as follows. The stage cost consists of the Wasserstein distance and the control cost \(g(p_t, L_t^u)\), where \(u_t\) is replaced with \(L_t^u\). The Wasserstein distance is given by \(W(p_t, p_{t,d})\) to measure the closeness of the actual and desired distribution of vehicles at parking slots, where the distances between parking slots determine the distances \(d_{ij}\) in Definition 8.1. This setting means that the rebalancing strategy is designed to dispatch the vehicles to meet the user demand. Additionally, we introduce the control cost in the rebalancing as follows:

$$\begin{aligned} g\left( p_t, L_t^u\right) =C_{1} \sum _{\begin{array}{c} i, j=1 \\ j \ne i \end{array}}^N\left( l_{t, i j}^u p_{t, j}\right) ^2+C_2 g_B\left( L_t^u\right) , \end{aligned}$$
(8.67)

where \(C_1\) and \(C_2\) are non-negative constants, and \(g_B: \mathbb {R}^{N \times N} \rightarrow \mathbb {R}\) is a barrier function for \(L_t^u\) to satisfy the constraints (8.65) and (8.66). In [33], the barrier function \(g_B(L_t^u)\) is given by

$$\begin{aligned} g_B\left( L_t^u\right) =\sum _{\begin{array}{c} i, j=1 \\ i \ne j \end{array}}^N \frac{1}{l_{t, i j}^u}+\sum _{j=1}^N \frac{1}{1-\sum _{\begin{array}{c} i=1 \\ i \ne j \end{array}}^N l_{t, i j}-\sum _{\begin{array}{c} i=1 \\ i \ne j \end{array}}^N l_{t, i j}^u} \end{aligned}$$
(8.68)

The design of the stage cost with the Wasserstein distance and the control cost including the barrier function yields the rebalancing strategy taking both the user demand and the rebalancing cost into consideration.

Fig. 8.14
A dual-line graph of values of Wasserstein distances for W of p subscript t, p subscript t, d versus time step t for case 1 and case 2. The values of the Wasserstein distance in case 1 were high compared to case 2.

Values of Wasserstein distances \(W(p_t, p_{t,d})\) for \(t \in \mathbb {Z}_{1:T}\) [33]

We show a numerical example of the optimal control for yielding the rebalancing strategy in the one-way car-sharing services. Consider the setting of the car-sharing service with six parking slots and the total time step \(T=10\). Additionally, the locations of parking slots are randomly determined so that the distances between every pair of the parking slots, \(d_{ij}\), is in [0.5, 5.0]. The desired probability distribution \(p_{t,d}\) and the matrices \(L_t\) (\(t \in \mathbb {Z}_{1:T}\)) are also randomly generated. Moreover, the following parameters are used; \(C_t = 100, 0.1\), \(C_2 = 10^{-6}\), \(\beta = 1\). The parameters \(\alpha = 0.0002\) and \(N_{\text {max}} = 20,0000\) are used in Algorithm 8.1. In the following, we refer to the cases of \(C_1=100\) and \(C_1=0.1\) as cases 1 and 2, respectively. Case 1 focuses on reducing the control cost, i.e., the rebalancing strategies prioritize reducing the cost for the dispatching in the rebalancing rather than the matching between the actual numbers of vehicles and the desired numbers determined by user demand. Conversely, case 2 prioritizes meeting the actual and required distributions of vehicles by finding the optimal strategy. Figure 8.14 shows the values of the Wasserstein distances between \(p_t\) and \(p_{t,d}\) on the horizon \(t \in \mathbb {Z}_{1:T}\) for cases 1 and 2. Case 2 has a stronger focus on reducing Wasserstein costs than case 1. Therefore, the values of the Wasserstein distances in case 2 are smaller than in case 1. In case 1, we obtained \(\sum _{t=1}^T W\left( p_t, p_{t, d}\right) = 3.69\) and \(\sum _{t=0}^{T-1} g\left( p_t, L_t^u\right) = 0.006\). Case 2 yields \(\sum _{t=1}^T W\left( p_t, p_{t, d}\right) = 3.08\) and \(\sum _{t=0}^{T-1} g\left( p_t, L_t^u\right) = 0.026\). These results imply that the value of \(C_1\) can adjust preferences in yielding the rebalancing strategy from the optimal control and that the Wasserstein distance between the actual distribution of vehicles and the desired distribution determined by user demand can be reduced by choosing a sufficiently small value of \(C_1\).

7 Optimization of One-Way Car-Sharing Services via DC Program

One-way car-sharing services can be considered as a special class of buffer networks. Recently, the study of buffer networks has emerged in which the nodes among them behave as buffers to exchange the inflow/outflow with their neighbors. Several applications, such as environment [54], power [71], and network-on-chip design [63], have triggered the interest for conducting this type of study. Moreover, there are emerging applications in the mobility systems domain, such as the optimization of traffic flows [13, 20, 73] and the design of efficient and effective mobility-on-demand systems [5, 41]. A standard model used to study buffer networks is the positive linear system model [64]. Using this model, a number of fundamental control and optimization problems have been studied. An example is the stability analysis studied in [14, 52]. Moreover, the positive linear system model enables the study of control and optimization problems [59]. Further, the robust control problem has been studied in [65, 68]. The goal of this section is to show that the DC (Difference of Convex Functions) program is an adequate mathematical tool to address the problem of efficient control.

7.1 Problem Formulation

7.1.1 Service Model

Here, we consider a one-way car-sharing service in which the stations providing parking slots enable customers to rent vehicles at any stations. Let n be the number of stations in an area. We assume that the structure of the service network is described by the graph \(\mathcal {G}=(\mathcal {V}, \mathcal {E}, \mathcal {W}),\) where \(\mathcal {V}= \{{v_1, \dotsc , v_n}\}\) represents the set of n stations within the service and \( \mathcal {E} = \{e_1, \dotsc , e_m\} \subseteq \mathcal {V} \times \mathcal {V}\) represents the set of directed edges indicating possible usage between stations. We suppose that there exist two special sets of stations that serve as origins (i.e., the stations having an empty in-neighborhood node) and destinations (i.e., the stations having an empty out-neighborhood node). We let \(\mathcal {V}_{o}=\{ 1, \dotsc , |\mathcal {V}_{o}| \}\) and \(\mathcal {V}_{ d}\) denote the set of origins and destinations of the car-sharing service, respectively.

Inspired by [40], we construct a mathematical model of the system of the one-way car-sharing service as follows. Let \(x_i(t) \in \mathbb {R}_+\) (\(i \in \mathcal {N}\)) denote the expectation of the number of vehicles parking at station i and at time \(t\ge 0\). Moreover, let \(u_{ij}(t) \in \mathbb {R}_+\) (\((i,j) \in \mathcal {E}\)) be the expectation of the number of customers who travel from station i to j at time t. Let \(f_i^{\textrm{in}} \in \mathbb {R}_+\) (\(f_i^{\textrm{out}} \in \mathbb {R}_+\)) be the expectation of the number of vehicles moving to (from) this area from (to) other areas. Then, we suppose that \(x_i\) obeys the following differential equation

$$\begin{aligned} \frac{dx_i}{dt}=\left\{ \begin{aligned} &f_{i}^{{{\,\textrm{in}\,}}}-\sum _{j \in \mathcal {N}_{{i}}^{{{\,\textrm{out}\,}}}}u_{ij}, \quad \quad \quad \ \ \text {if} \quad i\in \mathcal {V}_{o},\\ &\sum _{j \in \mathcal {N}_{{i}}^{{{\,\textrm{in}\,}}}}u_{ji}-\sum _{j \in \mathcal {N}_{{i}}^{{{\,\textrm{out}\,}}}}u_{ij}, \quad \text {if} \quad i\notin \mathcal {V}_{o} \cup \mathcal {V}_{ d},\\ &\sum _{j \in \mathcal {N}_{{i}}^{{{\,\textrm{in}\,}}}}u_{ji}-f_{i}^{{{\,\textrm{out}\,}}}, \quad \quad \quad \ \text {if} \quad i\in \mathcal {V}_{ d}, \end{aligned} \right. \end{aligned}$$
(8.69)

where \(\mathcal {N}_{{i}}^{{{\,\textrm{in}\,}}}=\{{j} \in \mathcal {V}: {(j, i)}\in \mathcal {E}\}\) denotes the set of in-neighborhoods of station i and \(\mathcal {N}_{{i}}^{{{\,\textrm{out}\,}}}=\{{j} \in \mathcal {V}: {(i, j)}\in \mathcal {E}\}\) denotes the set of out-neighborhoods of station i. Further, we assume

$$\begin{aligned} f_{i}^{\text {out}}=\beta _ix_i, \end{aligned}$$
(8.70)

where \(\beta =\{\beta _i\}_{i \in \mathcal {V}_{ d}}\) are the parameters to be tuned by the designer of the service.

We adopt the following model of the demand of customers that can change with prices. Assume that the expectation of the demand is \(\bar{u}_{ij}(t) \in \mathbb {R}_+\) when the price is \(\bar{p}_{ij}(t) \in \mathbb {R}_+\) and that the change of the demand is governed with an affine model around this point. Let \(p_{ij} \in \mathbb {R}_+\) be the price for traveling from stations i to j, and let \(\delta _{ij} \in \mathbb {R}_+\) be the price elasticity. Then, we consider the affine price model

$$\begin{aligned} u_{ij} = \bar{u}_{ij} - \delta _{ij} (p_{ij} - \bar{p}_{ij}) . \end{aligned}$$
(8.71)

As a pricing strategy, we suppose that the price \(p_{ij}\) is adjusted according to the number \(x_i\) of vehicles at station i as

$$\begin{aligned} p_{ij} = \hat{p}_{ij} - w_{ij} x_i , \end{aligned}$$
(8.72)

where \(\hat{p}_{ij} \in \mathbb {R}_+\) and \(w_{ij} \in \mathbb {R}_+\) are design parameters. Here, we set \(\hat{p}_{ij} = \bar{p}_{ij} + \bar{u}_{ij}/\delta _{ij}\). Then, from (8.71) and (8.72), the demand model is reduced to

$$\begin{aligned} u_{ij} = \delta _{ij} w_{ij} x_i. \end{aligned}$$
(8.73)

We suppose that \(\delta =\{\delta _{ij}\}_{(i, j)\in \mathcal {E}}\) can also be tuned by the operator of the service.

To formulate our optimization problem for designing the car-sharing service, we rewrite the model described above into a standard linear system. Let

$$\begin{aligned}{}[A_{\mathcal {G}}]_{ij}= {\left\{ \begin{array}{ll} w_{ji},&{}\text{ if } (j, i)\in \mathcal {E},\\ 0,&{} \text{ otherwise }. \end{array}\right. } \end{aligned}$$

be the adjacency matrix of the graph \(\mathcal G\). To measure the performance of the buffer network, we adopt the output \(y = [x^\top \ \alpha u^\top ]^\top \), where \(\alpha > 0\) is a weight constant and \(u \in \mathbb {R}_+^{n \times n}\) includes the information of the edges. If we define

$$\begin{aligned} {B_{ij}= {\left\{ \begin{array}{ll} \beta _{i},&{}\text{ if } i = j, \\ 0,&{}\text{ otherwise }, \end{array}\right. }}\quad {D_{ij}= {\left\{ \begin{array}{ll} \delta _{ji},&{}\text{ if } (i, j)\in \mathcal {E}, \\ 0,&{}\text{ otherwise }, \end{array}\right. }} \end{aligned}$$

then the dynamic model can be expressed as

$$\begin{aligned} \Sigma : \left\{ \begin{aligned} &\frac{dx}{dt}=\Bigl (D \odot A_{\mathcal {G}} -{{\,\textrm{diag}\,}}\bigl (1_n^\top (D \odot A_{\mathcal {G}})\bigr )-B \Bigr )x+G^{{{\,\textrm{in}\,}}} f^{{{\,\textrm{in}\,}}},\\ &y=G^{{{\,\textrm{out}\,}}}(\delta )x, \end{aligned} \right. \end{aligned}$$

where the vector \(f^{{{\,\textrm{in}\,}}}\) and the matrices \(G^{{{\,\textrm{in}\,}}}\), \(G^{{{\,\textrm{out}\,}}}(\delta )\) are defined by \(f^{{{\,\textrm{in}\,}}}{=}[f_1^{{{\,\textrm{in}\,}}} \cdots f_{|\mathcal {V}_{o}|}^{{{\,\textrm{in}\,}}}]^\top \) and

$$\begin{aligned} G^{{{\,\textrm{in}\,}}}= \begin{bmatrix} I_{|\mathcal {V}_{o}|}\\ O_{n-|\mathcal {V}_{o}|, |\mathcal {V}_{o}|} \end{bmatrix},~ G^{{{\,\textrm{out}\,}}}(\delta )= \begin{bmatrix} I_n\\ \alpha H(\delta ) \end{bmatrix}, \end{aligned}$$
(8.74)

while the matrix \(H(\delta )\) is defined by

$$\begin{aligned} H(\delta )_{\ell i} = {\left\{ \begin{array}{ll} \delta _{e_\ell } w_{e_\ell },&{} \text{ if } i = e_\ell (1), \\ 0,&{}\text{ otherwise. } \end{array}\right. } \end{aligned}$$

We remark that, as \(G^{{{\,\textrm{in}\,}}}\) and \(G^{{{\,\textrm{out}\,}}}(\delta )\) are non-negative matrices and \(D \odot A_{\mathcal {G}} -{{\,\textrm{diag}\,}}\bigl (1_n^\top (D \odot A_{\mathcal {G}})\bigr )-B\) is the Metzler matrix, following the definition in [18], the dynamic model (8.74) is a positive linear system [59].

7.1.2 Optimization Problem

As stated in the previous section, the parameters \(\beta _i\) and \(\delta _{ij}\) are assumed to be tunable by the operator to improve the performance of the car-sharing system. We consider the situation in which adopting a specific parameter \(\beta \) and \(\delta \) requires a cost \(L(\beta , \delta )=\sum _{i\in \mathcal {V}_{ d }}g_i(\beta _i)+\sum _{(i, j)\in \mathcal E} h_{ij}(\delta _{ij})\). We allow the following interval constraint:

$$\begin{aligned} 0<\beta _i \le \bar{\beta }_i,\ 0<\delta _{ij} \le \bar{\delta }_{ij}. \end{aligned}$$
(8.75)

In this section, we adopt the \(H^{\infty }\) norms to measure the performance of the buffer network. If system \(\Sigma \) is stable, then the \(H^{\infty }\) norm of the system is defined as \(\Vert \Sigma \Vert _{\infty }=\sup _{w\in \mathcal {L}^{\text {2}}}\Vert \Omega *w\Vert _2/\Vert w\Vert _2,\) where \(\Omega \ne 0\) and \(*\) denotes a convolution product and \(\mathcal {L}^{\text {2}}=\{ f :[\text{0 },\infty ) \rightarrow \mathbb {R}^{ n } \mid \int _{\text{0 }}^{\infty } \Vert f(t)\Vert ^\text{2 } dt<\infty \}\) denotes the space of Lebesgue measurement functions.

We are now ready to state the optimization problem studied in this section.

Problem 8.7

(\(H^{\infty }\) norm-constrained optimization) Given the desired \(H^{\infty }\) performance \(\gamma _{\infty }>0\). Find the parameters \(\beta \) and \(\delta \) minimizing the parameter tuning cost \(L(\beta , \delta )\), under the constraint that the parameter constraints (8.75) are satisfied, \(\Sigma \) is stable, and the system requirement \(\Vert \Sigma \Vert _\infty < \gamma _\infty \) is satisfied.

7.2 DC Programming

We present the solutions to the \(H^2\) and \(H^\infty \) norm-constrained optimization problems in terms of DC (Difference of Convex Functions) programming [31, 49]. To state the main results, we begin this section by introducing the preliminary knowledge of posynomials, DC functions, and DC program.

Definition 8.2

Let \(v_1\), \(\dotsc \), and \(v_n\) denote n real positive variables. We state that a real function g(v) is a monomial if \(c>0\) and \(a_1, \dotsc , a_n \in \mathbb {R}\) such that \(g(v) = c v_{ 1}^{a_{1}} \cdots v_{ n}^{a_n}\). We state that a real function f(v) is a posynomial [4] if f is the sum of the monomials of v.

The following lemma shows the log-convexity of posynomials [4].

Lemma 8.1

If \(f :\mathbb {R}_{++}^{ n } \rightarrow \mathbb {R}_{++}\) is a posynomial function, then the log-transformed function \(F :\mathbb {R}^{ n } \rightarrow \mathbb {R} : w \mapsto \log [f(\exp [w])]\) is convex.

The property shown in Lemma 8.1 enables us to establish a relationship with a general class of mathematical programming that deals with the difference between two convex functions, called DC programming.

Definition 8.3

(DC functions [31]) Let C be a convex subset of \(\mathbb {R}^{ n }\). A real-valued function \(f:C \rightarrow \mathbb {R}\) is called a DC function on C if there exist two convex functions \(g,h: C \rightarrow \mathbb {R}\) such that f can be expressed in the form \(f(x)=g(x)-h(x)\).

Any continuous function can be approximated by a DC function with the desired accuracy. In fact, based on decomposition methods [31], it is possible to transform a nonconvex optimization problem into a DC programming problem.

Definition 8.4

(DC programming problem [31]) Programming problems dealing with DC functions are called DC programming problems. Let C be a closed convex subset of \(\mathbb {R}^{ n}\), and the general form of DC programming problem considered in this brief is

$$\begin{aligned} \underset{x \in C}{\textrm{minimize}}\ {} &f_0(x) \\ {{\,\mathrm{subject\ to}\,}}\ {} & f_i(x)\le 0,\,i=1,\dots ,m, \end{aligned}$$

where \(f_0(x)=g_0(x)-h_0(x)\) and \(f_i(x)=g_i(x)-h_i(x)\) are the differences of the two convex functions.

To optimally solve the DC programming problem, we can choose the branch-and-bound type and outer-approximation algorithms [15], which lead to more efficient procedures.

We place the following assumption on the cost functions.

Assumption 8.6

The functions \(g_i(\beta _i)\) and \(h_{ij}(\delta _{ij})\) are posynomials for all i and j.

The following theorem states that Problem 8.7 reduces to a DC program. For the proof, readers are referred to [78].

Theorem 8.7

([78]) Under the aforementioned assumptions and lemma, the solution of Problem 8.7 is given by

$$\begin{aligned} {B=\exp [\gamma ],\ D=\exp [\eta ],} \end{aligned}$$
(8.76)

where \(\gamma \) and \(\eta \) are the solution of the DC programming

$$\begin{aligned} \underset{\genfrac{}{}{0.0pt}{}{\gamma , \eta \in \mathbb {R}}{\mu , \nu , \xi , \zeta \in \mathbb {R}_{++}^{n}}}{\textrm{minimize}} \ \ {} & \log [ L(\exp [\gamma ], \exp [\eta ])] \\ {{\,\mathrm{subject\ to}\,}}\ \ \ {} & \log [ G^{{{\,\textrm{out}\,}}}(\exp [\eta ]) \xi ]-\log [\gamma _\infty \nu ]<0, \\ & \log [(\exp [\eta ] \odot A_{\mathcal {G}})\xi +G^{{{\,\textrm{in}\,}}}\mu ]-\\ &\log [({{\,\textrm{diag}\,}}(1_n^\top \exp [\eta ] \odot A_{\mathcal {G}} )+\exp [\gamma ])\xi ]<0,\\ & \log [{G^{{{\,\textrm{in}\,}}\top }}\zeta ]-\log [\gamma _\infty \mu ] <0, \\ & \log [ (\exp [\eta ] \odot A_{\mathcal {G}})^\top \zeta +{G^{{{\,\textrm{out}\,}}}(\exp [\eta ])^\top } \nu ]-\\ & \log [({{\,\textrm{diag}\,}}(1_n^\top \exp [\eta ] \odot A_{\mathcal {G}} )+\exp [\gamma ])^\top \zeta ]<0,\\ &\log [ \exp [\gamma ]]- \log [\exp [\bar{\gamma }]]<0,\\ &\log [\exp [\eta ]]- \log [\exp [\bar{\eta }]]<0. \end{aligned}$$

7.3 Numerical Simulation

In this simulation, we construct a network with 30 nodes (see Fig. 8.15). We configure the network structure to contain one origin, one destination, and 60 edges. For simplicity, we set \(\alpha =0\). We also assume that \(g_i(\beta _i)=\beta _i\) and \(h_{ij}(\delta _{ij})= \delta _{ij}\), which indicates that the increment of the variable has a positive correlation with the tuning cost.

We solve the \(H^\infty \) norm-constrained optimization problem for various cost bounds \(\bar{L}\). To solve the DC program obtained from the theorem, we employ the proximal bundle method presented in [15]. As a baseline approach, we take the optimization methodology based on geometric programming [59]. Specifically, we reduce the DC problem to a geometric program by imposing the constraint \(\delta _{ij}=\delta _{ik}\) for all k, which enables solving the optimization problem with geometric programming. In Fig. 8.16, the triangles show the optimized \(\gamma _\infty \) for various \(\bar{L}\), and the circles show the optimal solution from geometric programming. We note that our DC programming-based results showed higher performance (Fig. 8.17).

Fig. 8.15
A buffer network structure is comprised of 30 nodes, one origin, one destination, and 60 edges.

Buffer network comprising 30 nodes (red: origin, blue: destination)

Fig. 8.16
A scatterplot of gamma subscript infinity versus L for with diagonal entries constraint and no diagonal entries constraint. With diagonal entries constraint and no diagonal entries constraint tend towards a negative correlation.

Optimized \(H^{\infty }\) norm versus the cost constraints

Fig. 8.17
A scatterplot of gamma subscript infinity D C versus gamma subscript infinity G P. The trendline of gamma subscript infinity D C over gamma subscript infinity G P equals 1 tends towards a positive correlation. It plots the points that range from 10 to 30 using color codes.

Plot of the \(\gamma _{\infty DC} / \gamma _{\infty GP}\) ratio versus the size of network. \(\gamma _{\infty DC}\): the optimized \(H^{\infty }\) norm solved by Theorem 8.7. \(\gamma _{\infty GP}\): optimal \(H^{\infty }\) norm solved by geometric programming (colorbar: size of network)

8 Conclusion

This chapter discussed the problem of the uneven distribution in one-way car-sharing services. The authors discussed this issue from system control approaches as follows.

In Sect. 8.2, we designed a common decentralized policy for dynamic prices to solve the uneven distribution of vehicles in car-sharing services. We focused on the demand shift of users to less expensive links and modeled it as a stochastic process. Then, an optimization problem was solved to determine the best parameters of the dynamic pricing policy. The effectiveness of the model was verified using the traffic simulator SOUND (Simulation On Urban road Network with Dynamic route choice).

Section 8.3 introduced the sparse optimal control theory for networked control systems and then examined the engineering significance of the problem setting through the rebalancing problem in a one-way car-sharing service. We hope this chapter sparks the reader’s interest in the sparse optimal control of network systems.

Section 8.4 reviewed distributed rebalancing control for cooperative car-sharing service. The service providers operate a sharing service in which the number of deadhead vehicles is as small as possible by dispatching vehicles to match user demand. To solve the control problem in a distributed manner, we presented a consensus-based primal-dual method with event-triggered communication. We showed that the estimation of each provider converges to an optimal solution of the rebalancing control problem.

Section 8.5 discussed an optimal control of probability distributions of Markov decision processes and its application to the rebalancing operations of one-way car-sharing services. We formulated the optimal control problem of probability distributions as the minimization of the Wasserstein distance between the controlled and desired distributions. This formulation was applied to the rebalancing problem, which requires the minimization of the difference between the distributions of the availability of vehicles and the user demand for required vehicles. We showed that the control formulation provides rebalancing strategies that match availability and user demand while taking rebalancing costs into consideration.

In Sect. 8.6, we studied the \(H^\infty \) norm-constrained optimization problem for one-way car-sharing services. Using the log-log convexity property of posynomials, we showed that the optimization problem reduces to a standard DC program. We also presented numerical simulations to illustrate the numerical scalability and effectiveness of the proposed optimization framework. There are several future research directions to be explored. One of them is the consideration of the \(L^1\) induced norm. Another direction is to apply our results to other socio-technical systems.

These results show that the control system approach is promising for mobility innovation.