  Shifting social opinions has far-reaching implications in various aspects,
such as public health campaigns, product marketing, and political candidates.
In this paper, we study a problem of opinion optimization based on the popular
Friedkin-Johnsen (FJ) model for opinion dynamics in an unweighted directed
social network with $n$ nodes and $m$ edges. In the FJ model, the internal
opinion of every node lies in the closed interval $[0, 1]$, with 0 and 1 being
polar opposites of opinions about a certain issue. Concretely, we focus on the
problem of selecting a small number of $ k\ll n $ nodes and changing their
internal opinions to 0, in order to minimize the average opinion at
equilibrium. We then design an algorithm that returns the optimal solution to
the problem in $O(n^3)$ time. To speed up the computation, we further develop a
fast algorithm by sampling spanning forests, the time complexity of which is $
O(ln) $, with $l$ being the number of samplings. Finally, we execute extensive
experiments on various real directed networks, which show that the
effectiveness of our two algorithms is similar to each other, both of which
outperform several baseline strategies of node selection. Moreover, our fast
algorithm is more efficient than the first one, which is scalable to massive
graphs with more than twenty million nodes.
