In this section, a min–max algorithm is proposed to look for a subset of the robust vector equilibrium flows.
3.1. Description of the Algorithm
In this subsection, we construct an optimization problem whose solution is equivalent to the the robust vector equilibrium flow. For
$(y,\xi )\in \Omega \times U$, we define:
.
Proposition 1. Let $\overline{y}$ be a feasible flow. The following statements are equivalent.
 (i)
$\overline{y}$ is a robust vector equilibrium;
 (ii)
There exists $(\overline{y},\phantom{\rule{4pt}{0ex}}\overline{\xi})$ such that it is a saddlepoint of the problem, denoted as follows:
and $\psi (\overline{y},\overline{\xi})$ is equal to zero. Proof. Firstly, we prove the implication
$\left(i\right)\Rightarrow \left(ii\right)$. Since
$\psi (y,\xi )\ge 0$, it suffices to prove
$\psi (\overline{y},\xi )=0$ for all
$\xi \in U$, i.e.,
$0=\psi (\overline{y},\xi )=\psi (\overline{y},\overline{\xi})\le \psi (y,\xi )$. Hence, for every
$\xi \in U,\phantom{\rule{4pt}{0ex}}{p}_{k}\in {P}_{\omega}$,
$\omega \in \mathcal{W}$, we consider the following term:
If ${c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )\u2ab0{0}_{{\mathbb{R}}^{m}}$ for some ${p}_{j}\in {P}_{\omega}$, then by Definition 2, one has ${\overline{y}}_{{p}_{k}}={l}_{{p}_{k}}$ or $\phantom{\rule{4pt}{0ex}}{\overline{y}}_{{p}_{j}}={u}_{{p}_{j}}$ and so ${O}_{{p}_{k}}=0$. If ${c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )\prec {0}_{{\mathbb{R}}^{m}}$, for some ${p}_{j}\in {P}_{\omega}$, ${H}_{+}[{c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )]={0}_{{\mathbb{R}}^{m}}$, and hence, ${O}_{{p}_{k}}=0$. By the above cases, one has $\psi (\overline{y},\xi )=0$ for all $\xi \in U$.
Conversely, if (ii) is satisfied, $(\overline{y},\overline{\xi})$ is a saddlepoint and ${O}_{{p}_{k}}=0$. If for every $\xi \in U$, some ${p}_{k},\phantom{\rule{4pt}{0ex}}{p}_{j}\in {P}_{\omega},\phantom{\rule{4pt}{0ex}}\omega \in W$ one has ${c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )\u2ab0{0}_{{\mathbb{R}}^{m}}$, then ${[{c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )]}^{\top}{H}_{+}[{c}_{{p}_{k}}(\overline{y},\xi ){c}_{{p}_{j}}(\overline{y},\xi )]>0$ and so ${\overline{y}}_{{p}_{k}}={l}_{{p}_{k}}\phantom{\rule{4pt}{0ex}}or\phantom{\rule{4pt}{0ex}}{\overline{y}}_{{p}_{j}}={u}_{{p}_{j}}$. Consequently, $\overline{y}$ is a robust vector equilibrium. □
Now, a min–max algorithm is proposed to solve problem (
2). In our algorithm, we select different steps for the two variables
y and
$\xi $, which is different from one proposed in [
22]. In addition, we extend the search directions of the algorithm to make the search faster and more suitable for different needs. Thus, our algorithm is an improvement of that in [
22].
Direction set: The set D consist of finite unit vectors which can span ${\mathbb{R}}^{n}$. Here, in order to reduce the computational cost, we only consider some directions in D. For example, when $n=2$, in this paper, let $D=\{(1,0),(\frac{\sqrt{3}}{2},\frac{1}{2}),(1,1),$$(\frac{1}{2},\frac{\sqrt{3}}{2}),(0,1),(\frac{1}{2},\frac{\sqrt{3}}{2}),(1,1),$$(\frac{\sqrt{3}}{2},\frac{1}{2}),(1,0),(\frac{\sqrt{3}}{2},\frac{1}{2})$, $(1,1)$, $(\frac{1}{2},\frac{\sqrt{3}}{2}),(0,1),(\frac{1}{2},\frac{\sqrt{3}}{2}),$$(1,1),(\frac{\sqrt{3}}{2},\frac{1}{2})\}$.
Step length: Let initial step ${t}_{0}=1$ and ${d}_{k}=arg{min}_{{y}_{i}}{\psi}_{k}({y}_{k}+{t}_{k}d,{\xi}_{k})$, $d\in D$. Let ${\tilde{y}}_{k}={y}_{k}+{t}_{k}{d}_{k}$. If iteration is successful, i.e., ${\psi}_{k}({\tilde{y}}_{k},{\xi}_{k}))<{\psi}_{k}({y}_{k}+{t}_{k}d,{\xi}_{k})c{t}_{k}^{2}$ for all $d\in D$ ($c>0$), then the next step length value ${t}_{k+1}=1$; if the iteration is unsuccessful, then ${t}_{k+1}=\parallel \tilde{y}{y}_{k}\parallel /2$.
Remark 2. It is worth noting that computations for ${y}_{t}$ and ${\xi}_{t}$ in Algorithm 1 are based on Algorithm 2.
Algorithm 1: Min–max algorithm (Algorithm 1). 

Algorithm 2: Algorithm 2 $(\psi \left(\right),{y}_{0})$. 

3.2. Comparison with Other Methods
In this subsection, we will give three numerical examples to show the comparison with that of [
22]. In these numerical examples, both Algorithm 1 and the algorithm proposed in [
22] start from the same set of initial points. To make a fair comparison, all test problems are run five times to reduce the impact of randomness.
Remark 3. There is a step calculation method in reference [22]—if the iteration is successful: ${t}_{k+1}=min({t}_{max},\phantom{\rule{4pt}{0ex}}\gamma {t}_{k})$, $\gamma >1$, where ${t}_{max}$ is the largest step size; if iteration is unsuccessful: ${t}_{k+1}=\frac{1}{\gamma}{t}_{k}$. Compared with the step calculation method in reference [22], the step calculation method presented in Algorithm 1 has better performance, since Algorithm 1 selects different step size for different variables and extends the search directions. What is more, Algorithm 1 requires neither gradient information nor redundant parameters. Example 2. Consider a network problem depicted in
Figure 1, where
$\mathcal{N}=\{1,2\},$$\mathcal{W}=\left\{\omega \right\}=\left\{(1,2)\right\},\mathcal{E}=\{{\alpha}_{1},{\alpha}_{2}\},\mathcal{D}={d}_{\omega}=30$. There are two criteria: travel time and travel cost. The cost functions of arcs and constraints of paths are given as bellow:
${t}_{1,{\alpha}_{1}}(y,\xi )={y}_{1}^{2}+2{y}_{1}{y}_{2}+{y}_{2}{\xi}_{1}$,
${t}_{2,{\alpha}_{1}}(y,\xi )={y}_{1}+{y}_{2}^{2};$ ${t}_{1,{\alpha}_{2}}(y,\xi )={y}_{1}^{2}+10{y}_{2}{y}_{2}$,
${t}_{2,{\alpha}_{2}}(y,\xi )=7{y}_{1}+6{y}_{2}^{2}6{\xi}_{2}$.
Then, we have:
where
${\xi}_{1}\in [0,1]$ and
${\xi}_{2}\in [0,1]$. Initial feasible flows and a subset of the robust vector equilibrium flows are obtained in
$23.82s$. The results are shown in
Table 1. However, if we use step calculational method in [
22], then it takes 25.68 s and the obtain the same robust vector equilibrium flows with our algorithm.
Example 3. Consider the network problem depicted in Figure 2, where $\mathcal{N}=\{1,2,3,4\}$, $\mathcal{W}=\left\{(1,4),(2,4)\right\}$, and there are two OD pairs, ${\omega}_{1},\phantom{\rule{4pt}{0ex}}{\omega}_{2}$. $\mathcal{E}=\{{\alpha}_{1},{\alpha}_{2},{\alpha}_{3},{\alpha}_{4},{\alpha}_{5}\},\phantom{\rule{4pt}{0ex}}{p}_{1}=\left({\alpha}_{1}{\alpha}_{5}\right),\phantom{\rule{4pt}{0ex}}{p}_{2}=\left({\alpha}_{2}\right),\phantom{\rule{4pt}{0ex}}{p}_{3}=\left({\alpha}_{3}{\alpha}_{5}\right),\phantom{\rule{4pt}{0ex}}{p}_{4}=\left({\alpha}_{4}\right),\phantom{\rule{4pt}{0ex}}\mathcal{D}=\{{d}_{{\omega}_{1}},{d}_{{\omega}_{2}}\}=\{55,35\}$. There are two criteria: travel time and travel cost. Constrains of paths are given as follows: The cost functions of arcs are defined as follows:
Then, we have:
where
${\xi}_{i}\in [0,1],i=1,2,3,4$. Initial feasible flows and a subset of the robust vector equilibrium flows are obtained in
$40.56\phantom{\rule{3.33333pt}{0ex}}s$. The results are shown in
Table 2. The time cost of Algorithm 1 is
$4\%$ lower than that of the step calculation method in [
22].
Example 4. Consider the network problem depicted in Figure 3, where $\mathcal{N}=\{1,2,3,4,5,6\},$$\phantom{\rule{4pt}{0ex}}\mathcal{W}=\{{\omega}_{1},{\omega}_{2}\}=\left\{(1,5),(2,6)\right\},\phantom{\rule{4pt}{0ex}}\mathcal{E}=\{{\alpha}_{1},{\alpha}_{2},{\alpha}_{3},{\alpha}_{4},{\alpha}_{5},{\alpha}_{6},{\alpha}_{7},{\alpha}_{8},{\alpha}_{9}\},\phantom{\rule{4pt}{0ex}}\mathcal{D}=\{{d}_{{\omega}_{1}},{d}_{{\omega}_{2}}\},$${d}_{{\omega}_{1}}=25,\phantom{\rule{4pt}{0ex}}{d}_{{\omega}_{2}}=20$, with two criteria: travel time and travel cost. ${P}_{\omega}=\{{p}_{1},{p}_{2},{p}_{3},{p}_{4},{p}_{5},{p}_{6},{p}_{7}\}$, where ${P}_{{\omega}_{1}}=\{{p}_{1},{p}_{2},{p}_{3},{p}_{4}\}$, ${P}_{{\omega}_{2}}=\{{p}_{5},{p}_{6},{p}_{7}\},\phantom{\rule{4pt}{0ex}}{p}_{1}=\left({\alpha}_{3}\right)$, ${p}_{2}=\left({\alpha}_{2}{\alpha}_{5}{\alpha}_{8}\right),$${p}_{3}=\left({\alpha}_{1}{\alpha}_{4}{\alpha}_{5}{\alpha}_{8}\right)$, ${p}_{4}=\left({\alpha}_{1}{\alpha}_{6}{\alpha}_{8}\right),\phantom{\rule{4pt}{0ex}}{p}_{5}=\left({\alpha}_{7}\right)$, ${p}_{6}=\left({\alpha}_{6}{\alpha}_{9}\right)$, and ${p}_{7}=\left({\alpha}_{4}{\alpha}_{5}{\alpha}_{9}\right)$. The constrains of paths and cost functions are given as follows:
where
${z}_{{\alpha}_{i}}(i=1,2,\dots ,9)$ denotes the flow on arc
${\alpha}_{i}$. Then we have
where
${\xi}_{i}\in [0,1],i=1,2,3,4,5,6,7$. Initial feasible flows and a subset of the robust vector equilibrium flows are obtained in
$538.47$ s. The results are shown in
Table 3. The algorithm proposed in [
22] obtains the same robust vector equilibrium flows, but its time cost is 548.32 s.