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$ – PlatoManiac Jan 28 '14 at 18:22
  • $\begingroup$ @PlatoManiac Thanks. I corrected it. $\endgroup$ – Zia Jan 28 '14 at 18:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.