ExpCone-class function

The ExpCone class.

The ExpCone class.

This class represents a reformulated exponential cone constraint operating elementwise on a,b,ca, b, c. class

ExpCone(x, y, z, id = NA_integer_) ## S4 method for signature 'ExpCone' as.character(x) ## S4 method for signature 'ExpCone' residual(object) ## S4 method for signature 'ExpCone' size(object) ## S4 method for signature 'ExpCone' num_cones(object) ## S4 method for signature 'ExpCone' cone_sizes(object) ## S4 method for signature 'ExpCone' is_dcp(object) ## S4 method for signature 'ExpCone' is_dgp(object) ## S4 method for signature 'ExpCone' canonicalize(object)

Arguments

  • x: The variable xx in the exponential cone.
  • y: The variable yy in the exponential cone.
  • z: The variable zz in the exponential cone.
  • id: (Optional) A numeric value representing the constraint ID.
  • object: A ExpCone object.

Details

Original cone:

K={(x,y,z)y>0,yex/yz}{(x,y,z)x0,y=0,z0} K = \{(x,y,z) | y > 0, ye^{x/y} \leq z\} \cup \{(x,y,z) | x \leq 0, y = 0, z \geq 0\}

Reformulated cone:

K={(x,y,z)y,z>0,ylog(y)+xylog(z)}{(x,y,z)x0,y=0,z0} K = \{(x,y,z) | y, z > 0, y\log(y) + x \leq y\log(z)\} \cup \{(x,y,z) | x \leq 0, y = 0, z \geq 0\}

Methods (by generic)

  • residual(ExpCone): The size of the x argument.
  • size(ExpCone): The number of entries in the combined cones.
  • num_cones(ExpCone): The number of elementwise cones.
  • cone_sizes(ExpCone): The dimensions of the exponential cones.
  • is_dcp(ExpCone): An exponential constraint is DCP if each argument is affine.
  • is_dgp(ExpCone): Is the constraint DGP?
  • canonicalize(ExpCone): Canonicalizes by converting expressions to LinOps.

Slots

  • x: The variable xx in the exponential cone.
  • y: The variable yy in the exponential cone.
  • z: The variable zz in the exponential cone.
  • Maintainer: Anqi Fu
  • License: Apache License 2.0 | file LICENSE
  • Last published: 2024-11-07