Constrained Optimization

52 Views Asked by At

I have have a vector of weights, $y$ (summing to 1 and each greater than 0). However, these weights violate some inequality and equality constraints. Thus, I would like to adjust these weights, so that they don't violate the constraints.

I initially thought of minimizing the squared deviations between the original weights and the new ones subject to the constraints. Something along the lines of:

$\min_x \sum (x_i-y_i)^2$

s.t.

$Ax \leq b$

$Cx = d$

However, I would like to "weight" my solution with a signal, $W$, such that the $x$'s with a high signal, get a higher value.

I initially thought of doing a weighted least squares of the form

$\min_x \sum W_i (x_i-y_i)^2$,

but (as I see it) this weighting scheme will force $x_i$'s with a large signal ($W_i$) closer to the original weight, $y_i$, and not increase the value of these $x_i$'s.

Furthermore, weighting with the inverse of the signal ($1/W_i$), lets $x_i$'s with high signals deviate further from the original weight, but the deviations could be in both directions.

How should I pose my problem, so that $x$'s with a high signal, get a higher value?