product-mix-auction-0.1.0.0: A single-round sealed-bid auction for multiple goods

Safe HaskellNone
LanguageHaskell2010

ProductMixAuction.FujishigeWolfe

Synopsis

Documentation

type BitMask = Vector Bool Source #

findMin :: Int -> SubmodularFunction -> BitMask Source #

This is intended to be the main entry point.

It takes the dimension of the problem (i.e., the number of good we are considering) and the submodular function itself.

It returns the minimum norm point we find.

TODO: the submodular function currently has to evaluate to 0 on the empty set. This is easy to fix by adapting the function, and currently has to be done externally.

fromBitMask :: Num a => BitMask -> Vector a Source #

edmondsGreedy :: SubmodularFunction -> Point -> Point Source #

This algorithm is supposed to be used as the linear optimisation oracle in the main algorithm.

It is for example described in the thesis by Garcia, as Algorithm 2.

The algorithm can also be used to obtain an initial point for the main algorithm.

mkPoint :: [Double] -> Point Source #