Heuristic algorithms

OptimalApplication.optimalportfolio_greedyFunction
optimalportfolio_greedy(mkt::VariedCostsMarket) -> X, v

Use a greedy heuristic that adds schools in decreasing order of mkt.f .* mkt.t ./ mkt.g to compute a heuristically optimal portfolio for the VariedCostsMarket defined by mkt.

source
OptimalApplication.optimalportfolio_simulatedannealingFunction
optimalportfolio_simulatedannealing(
    mkt::VariedCostsMarket;
    temp::Float64=0.25,
    red::Float64=0.0625,
    nit::Integer=500,
    verbose::Bool=false
) -> X, v

Use a simulated annealing procedure to compute a heuristically optimal portfolio for the VariedCostsMarket defined by mkt. temp is the initial temperature, red is the reduction factor, and nit is the total number of iterations.

source