176,029 research outputs found
Survey on Combinatorial Register Allocation and Instruction Scheduling
Register allocation (mapping variables to processor registers or memory) and
instruction scheduling (reordering instructions to increase instruction-level
parallelism) are essential tasks for generating efficient assembly code in a
compiler. In the last three decades, combinatorial optimization has emerged as
an alternative to traditional, heuristic algorithms for these two tasks.
Combinatorial optimization approaches can deliver optimal solutions according
to a model, can precisely capture trade-offs between conflicting decisions, and
are more flexible at the expense of increased compilation time.
This paper provides an exhaustive literature review and a classification of
combinatorial optimization approaches to register allocation and instruction
scheduling, with a focus on the techniques that are most applied in this
context: integer programming, constraint programming, partitioned Boolean
quadratic programming, and enumeration. Researchers in compilers and
combinatorial optimization can benefit from identifying developments, trends,
and challenges in the area; compiler practitioners may discern opportunities
and grasp the potential benefit of applying combinatorial optimization
Combinatorial Assortment Optimization
Assortment optimization refers to the problem of designing a slate of
products to offer potential customers, such as stocking the shelves in a
convenience store. The price of each product is fixed in advance, and a
probabilistic choice function describes which product a customer will choose
from any given subset. We introduce the combinatorial assortment problem, where
each customer may select a bundle of products. We consider a model of consumer
choice where the relative value of different bundles is described by a
valuation function, while individual customers may differ in their absolute
willingness to pay, and study the complexity of the resulting optimization
problem. We show that any sub-polynomial approximation to the problem requires
exponentially many demand queries when the valuation function is XOS, and that
no FPTAS exists even for succinctly-representable submodular valuations. On the
positive side, we show how to obtain constant approximations under a
"well-priced" condition, where each product's price is sufficiently high. We
also provide an exact algorithm for -additive valuations, and show how to
extend our results to a learning setting where the seller must infer the
customers' preferences from their purchasing behavior
Convex Combinatorial Optimization
We introduce the convex combinatorial optimization problem, a far reaching
generalization of the standard linear combinatorial optimization problem. We
show that it is strongly polynomial time solvable over any edge-guaranteed
family, and discuss several applications
Quantum Optimization for Combinatorial Searches
I propose a "quantum annealing" heuristic for the problem of combinatorial
search among a frustrated set of states characterized by a cost function to be
minimized. The algorithm is probabilistic, with postselection of the
measurement result. A unique parameter playing the role of an effective
temperature governs the computational load and the overall quality of the
optimization. Any level of accuracy can be reached with a computational load
independent of the dimension {\it N} of the search set by choosing the
effective temperature correspondingly low. This is much better than classical
search heuristics, which typically involve computation times growing as powers
of log({\it N})Comment: Revised, published versio
- …
