# Some Algorithms to Solve a Bi-Objectives Problem for Team Selection
## 2 DC Programming and DCA for MDSB  
### A Brief Introduction of DC Programming and DCA  
DC programming and DCA are for solving the optimization problem of minimizing a function that is a difference of two convex functions on a convex set \(C\in R^{n}\). The general form of a DC program is of the following form: \(\inf[f(x)=g(x)-h(x):x\in C]\), where C is a convex set, and \(g(x)\) and h(x) are convex functions on C. DC programming and DCA were introduced by [PERSON] in 1985 and have been extensively developed by both [PERSON] and [PERSON] since 1994, see [17] and references therein. The idea of this method is that, instead of solving a nonconvex problem, a sequence of convex sub-problems is solved to find a sequence of solutions that is convergent to the solution of the original problem under some conditions. More specifically, with the initial point \(x_{0}\), a sub problem derived from the original problem by replacing \(h(x)\) by its linear approximation at \(x_{0}\) gives the solution \(x_{1}\). This process is repeated until a stopping condition is satisfied. The generic DCA scheme can be described as follows:  
1. Let \(k=0\), Choose \(x^{k}\) in \(R^{d}\), and \(\epsilon\) is small enough.
2. Calculate \(y^{k}\) in \(\partial h(x^{k})\).
3. Calculate \(x^{k+1}\in argmin\Big{\{}g(x)-h(x^{k})+<\ x-x^{k},y^{k}\ >\ :x\in R^{d}\Big{\}}\).
4. If \(|f(x^{k+1})-f(x)|>\epsilon\), come back to step 2.  
Before presenting some essential convergence properties of DCA, it is useful to recall some related notions.  
* A vector \(y\) is called a subgradient of a convex function \(f\) at a point \(x^{0}\) if \[f(x)\geq f(x^{0})+<x-x^{0},y>\forall x.\] The set of all subgradients of \(f\) at \(x^{0}\) is called the subdifferential of \(f\) at \(x^{0}\) and is denoted by \(\partial f(x^{0})\).
* The modulus of convex function \(f\) denoted by \[\rho(f)=sup\Big{\{}\rho\geq 0:f-\rho/2.\|.\|^{2}\text{ is convex}\Big{\}}.\] If \(\rho(f)>0\), then \(f\) is strongly convex.
* A point \(x^{0}\) is called a critical point of \((g-h)\) if it verifies the generalized Kuhn-Tucker condition \[\partial g(x^{*})\cap\partial h(x^{*})\
eq\varnothing.\] (1)  
The convergence of DCA and its basic properties was presented in [17]. Some of the important properties are summarized here:  
1. The sequences \(\Big{\{}g(x^{k})-h(x^{k})\Big{\}}\) are decreasing and \(g(x^{k}+1)-h(x^{k}+1)=g(x^{k})-h(x^{k})\) iff \(y^{k}\in\partial g(x^{k})\cap\partial h(x^{k}),y^{k}\in\partial g(x^{k+1}) \cap\partial h(x^{k+1})\) and \([\rho(g,C)+\rho(h,C)]\|x^{k+1}-x^{k}\|=0\). Moreover, if \(g\) or \(h\) are strongly convex on \(C\), then \(x^{k}=x^{k+1}\). In such case, DCA terminates at kth iteration (finite convergence of DCA).
2. If \(g(x)\) or \(h(x)\) are strongly convex, then the series \(\|x^{k+1}-x^{k}\|^{2}\) converges.
3. If the optimal value \(\alpha\) of DC program is finite and the infinite sequences \(\Big{\{}x^{k}\Big{\}}\) and \(\Big{\{}y^{k}\Big{\}}\) are bounded, then every limit point \(x^{*}\) of sequence \(\Big{\{}x^{k}\Big{\}}\) is a critical point of \((g-h)\), i.e., \(\partial g(x^{*})\cap\ \partial h(x^{*})\ \
eq\varnothing\).
4. DCA has a linear convergence for DC programs.  
DC programming and DCA are widely used nowadays due to its efficiency. The success of DCA and its scalability have been shown in a lot of works and in various fields [18; 19; 20; 21].