  Mechanism design is a central research branch in microeconomics. An effective
mechanism can significantly improve performance and efficiency of social
decisions under desired objectives, such as to maximize social welfare or to
maximize revenue for agents. However, mechanism design is challenging for many
common models including the public project problem model which we study in this
thesis. A typical public project problem is a group of agents crowdfunding a
public project (e.g., building a bridge). The mechanism will decide the payment
and allocation for each agent (e.g., how much the agent pays, and whether the
agent can use it) according to their valuations. The mechanism can be applied
to various economic scenarios, including those related to cyber security. There
are different constraints and optimized objectives for different public project
scenarios (sub-problems), making it unrealistic to design a universal mechanism
that fits all scenarios, and designing mechanisms for different settings
manually is a taxing job. Therefore, we explore automated mechanism design
(AMD) of public project problems under different constraints.
  In this thesis, we focus on the public project problem, which includes many
sub-problems (excludable/non-excludable, divisible/indivisible,
binary/non-binary). We study the classical public project model and extend this
model to other related areas such as the zero-day exploit markets. For
different sub-problems of the public project problem, we adopt different novel
machine learning techniques to design optimal or near-optimal mechanisms via
automated mechanism design. We evaluate our mechanisms by theoretical analysis
or experimentally comparing our mechanisms against existing mechanisms. The
experiments and theoretical results show that our mechanisms are better than
state-of-the-art automated or manual mechanisms.
