I'm not a programmer really (interested in mathematics actually). Excuse me if I can not coding good. I'm also interested in implementation of mathematics results in programming language. That's my hobby!

Yesterday I asked the question below but I did not mention my way of coding! For this reason and some other ones, I decided to delete that. First of all, I thanks rm-rf for his/her Compassionate advice.

I have a combination of two optimization problem, one is bilevel optimization like this:

$$\min_{x,y} \max_{\omega} f(x,y,\omega)$$ and the other is linear programming: $$\min \beta $$ $$ s.t. A\alpha \leq b $$

where $$\alpha = \begin{bmatrix} x\\ y\\ \beta \end{bmatrix}$$

My mean of combination two optimization problem is sth like this:

$$\min_{x,y} \left [ \theta\max_\omega f(x,y,\omega)+ (1-\theta)\beta\right ]$$ $$s.t. A\alpha \leq b$$ where $\theta \in [0,1]$.

How can I do this by mathematica?

My try:

From the answer of this, I enter the code:

T = 0.01;
f[x_, y_, w_] := (((x + (T/2) y) Exp[I w] + ((T/2) y - x)) (1 - 
Exp[-0.3 T]))/((Exp[I w]^100) (Exp[I w] - 
Exp[-0.3 T]) (Exp[I w] - 1) + ((x + (T/2) y) Exp[I w] + 
((T/2) y - x)) (1 - Exp[-0.3 T]));
g[x_?NumberQ, y_?NumberQ] := 
NMaximize[{Evaluate[Abs[f[x, y, w]]], 0 <= w <= 1}, {w, 0, 1}][[1]]

NMinimize[{g[x, y], 2 <= x <= 4.5, 0.5 <= y <= 2}, {x, y}]

for bilevel minimization. And use the linear programming command sth like this:

p = LinearProgramming[{1, 2, 0}, A, b, {{-10, 10}, {-10, 10}, {-10, 10}}];

where A, b are data matrices.

My problem is with how to combine two optimization problems in code and I have not any ideas to explain the problem to mathematica! Because one is linear programming (min or max nature!) and another is minimax problem. I think it may be better to convert linear programming to min/max form. I also read documentation of FindMinimum & NMinimum but it doesn't make any sense to me.

  • 1
    $\begingroup$ Please notice that according to the current formulation as far as the final objective is concerned inside of your $\min$ you are doing an illegal convex combination (or say addition) between a scalar $f(x,y,w)$ and $\alpha$ which is a vector by definition of the linear constraint! $\endgroup$ Commented Jan 28, 2014 at 18:22
  • $\begingroup$ @PlatoManiac Thanks. I corrected it. $\endgroup$
    – Zia
    Commented Jan 28, 2014 at 18:34


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.