Abstract Many auctions involve the sale of a variety of distinct assets.
Examples are airport time slots, delivery routes and furniture.
For this reason, economic efficiency is enhanced if bidders are allowed to bid on bundles or combinations of different assets. This paper surveys the state of knowledge about the design of combinatorial auctions. Second, it uses this subject as a vehicle to convey the aspects of integer programming that are relevant for the design of such auctions and combinatorial markets in general.