Class DefaultModel<W extends World,​B extends SATSBidder>

    • Constructor Detail

      • DefaultModel

        public DefaultModel()
    • Method Detail

      • createWorld

        public abstract W createWorld​(RNGSupplier worldSeed)
        Creates a new World
        Parameters:
        worldSeed - A rng supplier for random creation of world parameters
        Returns:
        a new world
      • createWorld

        public W createWorld​(long seed)
        Creates a new World
        Parameters:
        seed - The seed for the random creation of world parameters
        Returns:
        a new world
      • createWorld

        public W createWorld()
        Creates a new World
        Returns:
        a new world
      • createPopulation

        public abstract java.util.List<B> createPopulation​(W world,
                                                           RNGSupplier populationRNG)
        Creates a new set of SATSBidder instances
        Parameters:
        world - the World for which the bidders are created
        populationRNG - a rng supplier for the creation of random bidder parameters
        Returns:
        a new set of bidders
      • createNewWorldAndPopulation

        public java.util.List<B> createNewWorldAndPopulation()
        Default version if you do not have to keep track of the seeds of your auction instance. Note your experiments will not be repeatable with this version. Creates a new set of SATSBidder instances
        Returns:
        a new set of bidders
      • createNewWorldAndPopulation

        public java.util.List<B> createNewWorldAndPopulation​(long seed)
        Default version if you want to keep track of the seeds of your auction instances. In practice you want you to use this version to achieve repeatable experiments. Creates a new set of SATSBidder instances
        Parameters:
        seed - the seed for the RNG
        Returns:
        a new set of bidders
      • createNewWorldAndPopulation

        @Deprecated
        public java.util.List<B> createNewWorldAndPopulation​(RNGSupplier rngSupplier)
        Deprecated.
        Creates a new set of SATSBidder instances for a newly generated World instance
        Parameters:
        rngSupplier - A rng supplier for random creation of both world parameters and bidder paramters
        Returns:
        a new set of bidders
      • createNewWorldAndPopulation

        @Deprecated
        public java.util.List<B> createNewWorldAndPopulation​(long worldSeed,
                                                             long populationSeed)
        Deprecated.
        Creates a new set of SATSBidder instances for a newly generated World instance If you are only interested in one population of the world you might rather use the method, where you only provide one seed. When you are interested in different populations of the same world you may use the method where you provide the already created world
        Parameters:
        worldSeed - A seed for random creation of world parameters
        populationSeed - A seed for random creation of bidder parameters
        Returns:
        a new set of bidders
        See Also:
        createNewWorldAndPopulation(long), createNewPopulation(World, long)
      • createNewWorldAndPopulation

        public java.util.List<B> createNewWorldAndPopulation​(RNGSupplier worldRNG,
                                                             RNGSupplier populationRNG)
        Creates a new set of SATSBidder instances for a newly generated World instance
        Parameters:
        worldRNG - A rng supplier for random creation of world parameters
        populationRNG - A rng supplier for randmon creation of bidder parameters
        Returns:
        a new set of bidders
      • createNewPopulation

        public java.util.List<B> createNewPopulation​(W world,
                                                     long populationSeed)
        Creates a new set of SATSBidder instances
        Parameters:
        world - The world for which the bidders are created
        populationSeed - A seed for random creation of bidder parameters
        Returns:
        a new set of bidders
      • createNewPopulation

        public java.util.List<B> createNewPopulation​(W world)
        Creates a new set of SATSBidder instances
        Parameters:
        world - The world for which the bidders are created
        Returns:
        a new set of bidders