  The problem of inferring unknown graph edges from numerical data at a graph's
nodes appears in many forms across machine learning. We study a version of this
problem that arises in the field of \emph{landscape genetics}, where genetic
similarity between organisms living in a heterogeneous landscape is explained
by a weighted graph that encodes the ease of dispersal through that landscape.
Our main contribution is an efficient algorithm for \emph{inverse landscape
genetics}, which is the task of inferring this graph from measurements of
genetic similarity at different locations (graph nodes). Inverse landscape
genetics is important in discovering impediments to species dispersal that
threaten biodiversity and long-term species survival. In particular, it is
widely used to study the effects of climate change and human development.
Drawing on influential work that models organism dispersal using graph
\emph{effective resistances} (McRae 2006), we reduce the inverse landscape
genetics problem to that of inferring graph edges from noisy measurements of
these resistances, which can be obtained from genetic similarity data. Building
on the NeurIPS 2018 work of Hoskins et al. 2018 on learning edges in social
networks, we develop an efficient first-order optimization method for solving
this problem. Despite its non-convex nature, experiments on synthetic and real
genetic data establish that our method provides fast and reliable convergence,
significantly outperforming existing heuristics used in the field. By providing
researchers with a powerful, general purpose algorithmic tool, we hope our work
will have a positive impact on accelerating work on landscape genetics.
