  Resource allocation problems are often approached with linear programming
techniques. But many concrete allocation problems in the experimental and
observational sciences cannot or should not be expressed in the form of linear
objective functions. Even if the objective is linear, its parameters may not be
known beforehand because they depend on the results of the experiment for which
the allocation is to be determined. To address these challenges, we present a
bipartite Graph Neural Network architecture for trainable resource allocation
strategies. Items of value and constraints form the two sets of graph nodes,
which are connected by edges corresponding to possible allocations. The GNN is
trained on simulations or past problem occurrences to maximize any
user-supplied, scientifically motivated objective function, augmented by an
infeasibility penalty. The amount of feasibility violation can be tuned in
relation to any available slack in the system. We apply this method to optimize
the astronomical target selection strategy for the highly multiplexed Subaru
Prime Focus Spectrograph instrument, where it shows superior results to direct
gradient descent optimization and extends the capabilities of the currently
employed solver which uses linear objective functions. The development of this
method enables fast adjustment and deployment of allocation strategies,
statistical analyses of allocation patterns, and fully differentiable,
science-driven solutions for resource allocation problems.
