1
$\begingroup$

According to the Mosek documentation, Geometric Programming constraints of form log-sum-exp can be formulated with exponential cones. If the constraint is of form $$t \geq \log(\exp(x_1)+\ldots + \exp(x_n)), $$

we can write the constraint as $$\begin{cases} \sum_{i=1}^n u_i \leq 1 \\ (u_i,1,x_i-t) \in \mathcal{K}_{\exp} \ \forall i \end{cases}$$ where $\mathcal{K}_{\exp}$ stands for the exponential cone, defined as: $$ \mathcal{K}_{\exp} = \{(a_1,a_2,a_3):a_1 \geq a_2 e^{a_3 / a_2}, a_2>0 \}\cup \{(a_1,0,a_3): a_1 \geq 0, a_3 \leq 0 \}$$ So, to be able to use it in the above re-formulation we can show that this cone consists of points which satisfy $a_3 \leq a_2\log (a_1/a_2), a_1,a_2 > 0.$

My case is slightly different. Let $f:\mathbb{R}^n \mapsto \mathbb{R}$ be defined as $f(\mathbf{x}) = \log(\exp(x_1)+\ldots + \exp(x_n))$. The perspective of $f$ can be shown as $x_0f(\frac{x}{x_0})$ where $x_0 > 0$. The constraint I have is: $$t \geq x_0 f\left(\frac{x}{x_0}\right).$$ So I have the same constraint with the perspective function. How can I formulate this constraint with exponential cones (and linear constraints in the variables)? Note that in my constraint $t$ is a variable, too.

$\endgroup$
5
  • 2
    $\begingroup$ Can you please include the definition of $\mathcal{K}_\text{exp}$ in your question? This is both a legitimate request... and a hint :-) $\endgroup$ Feb 4, 2019 at 5:15
  • 1
    $\begingroup$ Also, note that $x_0>0$ is required if the perspective is to preserve convexity. $\endgroup$ Feb 4, 2019 at 5:17
  • $\begingroup$ Added both. Thank you so much! Are there any leads for the next? I am planning to use Mosek Exponential Cone solver (version 9). So, I need to re-formulate this constraint. $\endgroup$ Feb 4, 2019 at 19:41
  • 1
    $\begingroup$ Why not just define new variables with the linear constraints $s=\frac{t}{x_0}$ and $\omega=\frac{x}{x_0}$? Then your constraint is $s\geq f(\omega)$, as required. $\endgroup$ Feb 5, 2019 at 2:21
  • $\begingroup$ Thank you @nathan.j.mcdougall . I think I solved it with a similar idea! $\endgroup$ Feb 5, 2019 at 3:13

1 Answer 1

3
$\begingroup$

I will write up the solution for the sake of completeness and because the question seems to have appeared elsewhere http://ask.cvxr.com/t/convert-the-perspective-function-of-log-sum-exp-to-cvx/5232

The inequality $$t\geq x_0 f(x/x_0)$$ is $$t\geq x_0\cdot\log(\exp(x_1/x_0)+\cdots+\exp(x_n/x_0)).$$ Since $x_0>0$, dividing by it and then following the same procedure as for log-sum-exp in https://docs.mosek.com/modeling-cookbook/expo.html#log-sum-exp we arrive at the inequality $$1\geq \sum \exp\left(\frac{x_i-t}{x_0}\right)$$ which we can rewrite as $$x_0\geq \sum x_0\exp\left(\frac{x_i-t}{x_0}\right)$$ and eventually $$x_0\geq \sum z_i,\quad z_i\geq x_0\exp\left(\frac{x_i-t}{x_0}\right)$$ with exponential cones on the right-hand side.

$\endgroup$

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.