## 3 Quantifying the Value of Energy Storage  
The compact daily operation problem is given in (2). On each day, the problem data is different. Suppose we have the data in \(\mathsf{s}=1,\cdots,\mathsf{S}\) typical days, which refer to the solar generation profiles and load curves that affect vector \(\mathsf{b}\) in the constraints, while \(A\), \(B\) and \(c\) remain unchanged. Therefore, we use a superscript \(\mathsf{s}\) to distinguish the problem associated with day \(\mathsf{s}\):  
\[ \begin{array}{c}v^{s}(\theta)=\min c^{\mathsf{T}}x^{s}\\ \text{s.t. }Ax^{s}\leq b^{s}+B\theta\end{array}  \tag{4}\]  
The optimal value is a function of \(\theta\). If the probability of scenario \(\mathsf{s}\) is \(\rho^{s}\), the average cost is:  
\[v(\theta)=\sum_{s=1}^{\mathsf{S}}\rho^{s}v^{s}(\theta) \tag{5}\]  
If the charging and dispatching power is fixed at \(0\), the feasible set is the same as the one with \(\theta=0\), hence for any \(\theta\geq 0\), the feasible region is larger, and \(v(0)\geq v(\theta),\ \forall\theta\geq 0\) holds. The value of energy storage is defined as the cost reduction:  
\[V(\theta)=v(0)-v(\theta) \tag{6}\]  
In the rest of this section, we develop a linear programming based method to retrieve an approximate expression of \(v(\theta)\) in closed form. In what follows, the average cost problem,  
\[ \begin{array}{c}v(\theta)=\min\sum_{s=1}^{\mathsf{S}}c^{\mathsf{T}}x^{s}\\ \text{s.t. }Ax^{s}\leq b^{s}+B\theta,\ \forall s\end{array}  \tag{7}\]  
is denoted by:  
\[ \begin{array}{c}v(\theta)=\min\sum_{s=1}^{\mathsf{S}}\overline{c}^{\mathsf{T }}\overline{x}\\ \text{s.t. }\overline{A}\overline{x}\leq\overline{b}+\overline{B}\theta\end{array}  \tag{8}\]  
where  
\[\overline{c}=\left[ \begin{array}{c}c\\ \vdots\\ c\end{array} \right]\overline{x}=\left[ \begin{array}{c}x^{1}\\ \vdots\\ x^{s}\end{array} \right]\overline{A}=\left[ \begin{array}{cc}A\\ &\ddots\\ &&A\end{array} \right]\ \overline{b}=\left[ \begin{array}{c}b^{1}\\ \vdots\\ b^{s}\end{array} \right]\ \overline{B}=\left[ \begin{array}{c}B\\ \vdots\\ B\end{array} \right] \tag{9}\]  
The dual problem of LP (8) is:  
\[ \begin{array}{c}v(\theta)=\max_{\mu\in U}\mu^{\mathsf{T}}(\overline{b}+ \overline{B}\theta)\\ U=\left\{\left.\mu\right|\overline{A}^{\mathsf{T}}\mu=\overline{c},\mu\leq 0 \right\}\end{array}  \tag{10}\]  
where \(\mu\) is the dual variable, and \(U\) is the feasible set of dual variables. Because strong duality always holds for linear programs, the optimum of problem (10) is \(v(\theta)\) for any given \(\theta\). For a fixed \(\mu\in U\), \(\mu^{\mathsf{T}}\Big{(}\overline{b}+\overline{B}\theta\Big{)}\) is an affine function in \(\theta\). LP (10) states that \(v(\theta)\) is the pointwise maximum of affine functions \(\mu^{\mathsf{T}}\Big{(}\overline{b}+\overline{B}\theta\Big{)}\) when \(\mu\) takes all possible values in \(U\), so \(v(\theta)\) is convex in \(\theta\), because point-wise maximum preserves convexity. Actually, the enumeration over \(U\) with an infinite number of elements can be replaced with the enumeration over the vertex set \(\text{vert}(U)\) whose number of elements is finite, i.e.,:  
\[v(\theta)=\max_{i}\Bigl{\{}\mu_{i}^{\mathsf{T}}\overline{b}+\mu_{i}^{\mathsf{ T}}\overline{B}\theta\Bigr{\}},\ \forall\mu_{i}\in\text{vert}(U) \tag{11}\]Nevertheless, the majority of the vertices will produce redundant pieces, which never reaches the maximum. Next, we define the minimum representation of \(v(\theta)\). Definition 1: (Non-redundant vertex) a vertex \(\mu_{i}\in\text{vert}(U)\) is called non-redundant if the affine function \(\mu_{i}^{T}\Big{(}\overline{b}+\overline{B}\theta\Big{)}\) reaches the maximum for some \(\theta\in\Theta\). According to Definition 1, \(\text{vert}(U)\) can be divided into two subsets; one consists of non-redundant vertices and the other redundant ones. The former is denoted by \(\overline{V}(U)\).