bnelearn.experiment.multi_unit_experiment module

In this file multi-unit experiments MultiUnitExperiment are defined and their analytical BNEs (if known) are assigned. Also, the SplitAwardExperiment is implemented as well, as it shares most its properties.

class bnelearn.experiment.multi_unit_experiment.MultiUnitExperiment(config: ExperimentConfig)[source]

Bases: _MultiUnitSetupEvalMixin, Experiment

Experiment class for the standard multi-unit auctions.

action_size: int
b_opt: torch.Tensor
bidders: Iterable[Bidder]
bne_env: AuctionEnvironment
bne_utilities: Tensor
env: Environment
epoch: int
input_length: int
learners: Iterable[learners.Learner]
mechanism: Mechanism
models: Iterable[torch.nn.Module]
n_models: int
observation_size: int
plot_xmax: float
plot_xmin: float
plot_ymax: float
plot_ymin: float
positive_output_point: Tensor
sampler: ValuationObservationSampler
v_opt: torch.Tensor
valuation_size: int
class bnelearn.experiment.multi_unit_experiment.SplitAwardExperiment(config: ExperimentConfig)[source]

Bases: _MultiUnitSetupEvalMixin, Experiment

Experiment class of the first-price sealed bid split-award auction.

action_size: int
b_opt: torch.Tensor
bidders: Iterable[Bidder]
bne_env: AuctionEnvironment
bne_utilities: Tensor
env: Environment
epoch: int
input_length: int
learners: Iterable[learners.Learner]
mechanism: Mechanism
models: Iterable[torch.nn.Module]
n_models: int
observation_size: int
plot_xmax: float
plot_xmin: float
plot_ymax: float
plot_ymin: float
positive_output_point: Tensor
pretrain_transform(player_position)[source]

Some experiments need specific pretraining transformations. In most cases, pretraining to the truthful bid (i.e. the identity function) is sufficient.

Args:
player_position (:int:) the player for which the transformation is

requested.

Returns

(:callable:) pretraining transformation

sampler: ValuationObservationSampler
v_opt: torch.Tensor
valuation_size: int