Class MUCA

java.lang.Object
org.jacop.examples.fd.ExampleFD
org.jacop.examples.fd.muca.MUCA

public class MUCA extends ExampleFD
It solves the Mixed Multi-Unit Combinatorial Auctions.

The idea originated from reading the following paper where the first attempt to use CP was presented.

Comparing Winner Determination Algorithms for Mixed Multi-Unit Combinatorial Auctions by Brammert Ottens Ulle Endriss

Version:
4.8
  • Field Details

    • bids

      ArrayList of bids issued by different bidders. Each bidder issues an ArrayList of xor bids. Each Xor bid is a list of transformations.
    • costs

      public List<List<Integer>> costs
      For each bidder and each xor bid there is an integer representing a cost of the xor bid.
    • initialQuantity

      public List<Integer> initialQuantity
      It specifies the initial quantities of goods.
    • finalQuantity

      public List<Integer> finalQuantity
      It specifies the minimal quantities of items seeked to achieve.
    • noGoods

      public int noGoods
      It specifies number of goods which are in the focus of the auction.
    • minDelta

      public int minDelta
      It specifies the minimal possible delta of goods for any transformation.
    • maxDelta

      public int maxDelta
      It specifies the maximal possible delta of goods for any transformation.
    • minCost

      public int minCost
      It specifies the minimal value for the cost.
    • maxCost

      public int maxCost
      It specifies the maximal value for the cost.
    • maxProducts

      public int maxProducts
      The maximal number of products.
    • bidCosts

      public List<IntVar> bidCosts
      For each bidder it specifies variable representing the cost of the chosen xor bid.
    • transitions

      public IntVar[] transitions
      It specifies the sequence of transitions used by an auctioneer.
    • maxNoTransformations

      public int maxNoTransformations
      It specifies the maximal number of transformations used by the auctioneer.
    • deltasI

      public IntVar[][] deltasI
      For each transition and each good it specifies the delta change of that good before the transition takes place.
    • deltasO

      public IntVar[][] deltasO
      For each transition and each good it specifies the delta change of that good after the transition takes place.
    • sum

      public IntVar[] sum
      It specifies the number of goods after the last transition.
    • filename

      public String filename
      It reads auction problem description from the file.
  • Constructor Details

    • MUCA

      public MUCA()
  • Method Details

    • setupProblem1

      public void setupProblem1()
      It creates an instance of the auction problem.
    • setupProblem2

      public void setupProblem2()
      It creates an instance of the auction problem.
    • setupProblem3

      public void setupProblem3()
      It creates an instance of the auction problem.
    • setupProblem4

      public void setupProblem4()
      It creates an instance of the auction problem.
    • main

      public static void main(String[] args)
      It executes the program which solve the supplied auction problem or solves three problems available within the files.
      Parameters:
      args - the first argument specifies the name of the file containing the problem description.
    • model

      public void model()
      Description copied from class: ExampleFD
      It specifies a standard way of modeling the problem.
      Specified by:
      model in class ExampleFD
    • searchSpecial

      public boolean searchSpecial()
      It executes special master-slave search. The master search uses costs variables and maxregret criteria to choose an interesting bids. The second search (slave) looks for the sequence of chosen transactions such as that all constraints concerning goods quantity (deltas of transitions) are respected.
      Returns:
      true if there is a solution, false otherwise.
    • readAuction

      public void readAuction(String filename)
      It reads the auction problem from the file.
      Parameters:
      filename - file describing the auction problem.