Template Class optscaling_oracle¶
Defined in File optscaling_oracle.hpp
Nested Relationships¶
Nested Types¶
Template Parameter Order¶
typename Graph
typename Container
typename Fn
Class Documentation¶
-
template<typename Graph, typename Container, typename Fn>
class optscaling_oracle¶ Oracle for Optimal Matrix Scaling.
This example is taken from [Orlin and Rothblum, 1985]:
min \pi/\phi s.t. \phi \le u[i] * |aij| * u[j]^-1 \le \pi, \forall aij != 0, \pi, \phi, u, positive
- Template Parameters
Graph –
Container –
Fn –
Public Functions
-
inline optscaling_oracle(const Graph &G, Container &u, Fn get_cost)¶
Construct a new optscaling oracle object.
- Parameters
G – [in]
u – [inout]
get_cost – [in]
-
explicit optscaling_oracle(const optscaling_oracle&) = default¶
Construct a new optscaling oracle object.
-
inline auto operator()(const Arr &x, double &t) -> std::tuple<Cut, bool>¶
Make object callable for cutting_plane_dc()
See also
cutting_plane_dc
- Parameters
x – [in] (, ) in log scale
t – [in] the best-so-far optimal value
- Returns
std::tuple<Cut, double>