Skip to content

Mirror descent expects scenario from sample + single scenario augmentation #37

Description

@NicolasCorvol

The way mirror descent augment the dataset is through these functions

function _augment_with_anticipative(dataset, anticipative_solver)
    return map(dataset) do sample
        y = anticipative_solver(sample.scenario; sample.context...)
        return DataSample(sample; y=y)
    end
end

function _perturbed_sample(sample, model, perturbed_solver, is_minimization, κ)
    θ = model(sample.x)
    signed_θ = is_minimization ? -κ * θ : κ * θ
    y = perturbed_solver(signed_θ; scenario=sample.scenario, sample.context...)
    return DataSample(sample; y=y)
end

As we can see, the algorithm expects that the samples has a scenario field, which is not always the case and is not robust.
Moreover, the algorithm uses the scenario stored in sample and only augment with this single scenario.
Meanwhile, we could want to have something that generates randomly a bunch of random scenarios and augment with these.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions