📗 Gray is invalid positions for the influencers (not the receivers).
➭ Vertices (add a line with at least two points to add a polygon):
➭ Drag red circles to move vertices.
➭ Click on the plus signs to add a point.
➭ Drag the green square to move all vertices.
➭ Drag the green circle to rotate the vertices.
➭ (Technical note: all polygons must be convex, and gray polygons should be non-overlapping and in the interior of the green polygons for the demo to work properly.)
📗 Players (influencer:target):
Note
📗 0 for human, 1 for enumeration, 2 for projected gradient descent
📗 Influencer \(i\) maximizes \(\displaystyle\sum_{j} v_{i j} \left\|\hat{x}_{j} - t_{i}\right\|^{2}\) where \(\hat{x}_{j}\) is the final position of receiver \(j\) and \(t_{i}\) is the target position of influencer \(i\).
📗 Receiver \(j\) moves to position \(\hat{x}_{j} = \displaystyle\sum_{i} w_{j i} x_{i}\) where \(x_{i}\) is the position of influencer \(i\). \(w_{j \cdot}\) is not normailzed to sum up to 1.