public void LinearAssignment3() { threecomp[4, 2] = 3; threecomp.RemoveAt(2, 2); int[] best = GC.LinearAssignment(threecomp); int[] expected = new int[6] { 0, 1, 4, 3, 2, 5 }; Assert.IsTrue(expected.SequenceEqual(best)); }
public void LinearAssignment2() { SparseMatrix profit = new SparseMatrix(3, 3); profit[0, 1] = 2; profit[0, 2] = 5; profit[1, 0] = 3; profit[1, 2] = 6; profit[2, 0] = 1; profit[2, 1] = 2; int[] best = GC.LinearAssignment(profit); int[] expected = new int[3] { 2, 0, 1 }; Assert.IsTrue(expected.SequenceEqual(best)); }
public void LinearAssignmentUnique() { SparseMatrix profit = new SparseMatrix(4, 4); for (int i = 0; i < 10; i++) { profit[i, i] = (i + 1) / 2.0; } int[] best = GC.LinearAssignment(profit); int[] expected = new int[10]; AE.Fill(expected, i => i); Assert.IsTrue(expected.SequenceEqual(best)); }