Class profit_q_oracle

Page Contents

Class Documentation

class profit_q_oracle

Oracle for profit maximization problem (discrete version)

This example is taken from [Aliabadi and Salahi, 2013]

max     p(A x1^alpha x2^beta) - v1*x1 - v2*x2
s.t.    x1 \le k

where:

p(A x1^alpha x2^beta): Cobb-Douglas production function
p: the market price per unit
A: the scale of production
alpha, beta: the output elasticities
x: input quantity (must be integer value)
v: output price
k: a given constant that restricts the quantity of x1

See also

profit_oracle

Public Functions

inline profit_q_oracle(double p, double A, double k, const Arr &a, const Arr &v)

Construct a new profit q oracle object.

Parameters
  • p[in] the market price per unit

  • A[in] the scale of production

  • k[in] a given constant that restricts the quantity of x1

  • a[in] the output elasticities

  • v[in] output price

auto operator()(const Arr &y, double &t, bool retry) -> std::tuple<Cut, Arr, bool, bool>

Make object callable for cutting_plane_q()

See also

cutting_plane_q

Parameters
  • y[in] input quantity (in log scale)

  • t[in] the best-so-far optimal value

Returns

Cut and the updated best-so-far value