I am trying to do an optimization problem:
I have 500 customers and $N$ facilities, and $C_{i,j}$ indicates whether customer $i$ is assigned to facility $j$. Each customer is assigned to at most one facility, and at least 475 customers needs to be assigned. Each facility has a capacity of 150 resources, and $D$ indicates the number of resources that each costumer need (being a matriz 500 x 1). The distance of the customer to the facility that the costumer is assigned should be at most 85 units, and the matrix $L$ is a matrix $N$x$2$ which shows the localition of the facility in meters (in x,y coordinates). The matrix $G$ is a matrix $N$x$2$ which shows the localition of the costumer in meters (and we assume that a costumer can not move its position). Then, as we will bilt the facilities, I have to minimize the number of facilities and minimize the distance of the facility from each costumer.
So my formulation of the problem is the following:
\begin{equation} \sum_{i=1}^{500}\sum_{j=1}^{N}C_{i,j}\geq 475 \end{equation}
\begin{equation} \sum_{i=1}^{500}C_{i,j}D_{i,1} \leq 150 \, , \,\, \forall j \in \{1, ..., N\} \end{equation}
\begin{equation} \sum_{j=1}^{N}C_{i,j}\cdot \sqrt{(G_{i,1}-L_{j,1})^2 + (G_{i,2}-L_{j,2})^2} \leq 85 \, , \,\, \forall i \in \{1,2, ..., 500\} \end{equation}
\begin{equation} \sum_{j=1}^{N}C_{i,j} \leq 1\, , \,\, \forall i \in \{1,2, ..., 500\} \end{equation}
\begin{equation} C_{i,j} \in \{0, 1\} \end{equation}
The optimization function is this one:
\begin{equation} f_1 = min \, \sum_{i=1}^{500}\sum_{j=1}^{N}C_{i,j}\cdot \sqrt{(G_{i,1}-L_{j,1})^2 + (G_{i,2}-L_{j,2})^2} \end{equation}
\begin{equation} f_2 = min \, N \end{equation}
To solve it, I thought about transforming this multiobjective problem into a set of monoobjective problems, by solving it for $N=1, N=2, ..., N=500$ (and I'll have to minimize only the function $f_1$ for different values of N). I have all the values of $G_{i,j}$ and $D_{i,j}$ given. I thought using The variable $C_{i,j}$ is a binary variable which can assume either the value 0 or 1, the variable $L_{i,j}$ can be any given real value. Do you guys can recommend me a optmization algorithm to accomplish such thing?