public void GenerateSingleLayer() { var generator = new RandomMultiLayerGenerator(); foreach (var n in Enumerable.Range(2, 10)) { var network = generator.GenerateSingleLayer(n, 0.55); Assert.Equal(n, network.Actors.Count()); } }
public void TestRandom() { var generator = new RandomMultiLayerGenerator(); var random = new Random(); var network = generator.GenerateSingleLayer(5, 0.65); var communities = new Louvain().Apply(network); var count = communities.SelectMany(c => c.Actors).Count(); Assert.Equal(5, count); }
public void TestRandom() { var generator = new RandomMultiLayerGenerator(); var random = new Random(); var network = generator.GenerateSingleLayer(5, 0.65); var communities = _labelPropagation.GetCommunities(network); var count = communities.SelectMany(c => c.Actors).Count(); Assert.Equal(5, count); }
public void TestRandom() { var random = new Random(); var generator = new RandomMultiLayerGenerator(); for (var n = 2; n < 15; n++) { var network = generator.GenerateSingleLayer(n, 0.65); var communities = new CLECCCommunityDetection().Apply(network, 1, 2); var count = communities.SelectMany(c => c.Actors).Count(); Assert.Equal(n, count); } }
public void TestRandom() { var random = new Random(); var generator = new RandomMultiLayerGenerator(); for (var i = 8; i < 15; i++) { var p = random.Next(6, 10) / 10.0; var l = random.Next(2, 10); var n = generator.Generate(i, l, p); var a = n.Actors; var abacus = new ABACUS(); var communities = abacus.Apply(n, n => new Louvain().Apply(n), 2); var actors = communities.SelectMany(c => c.Actors).Distinct(); Assert.Empty(a.Except(actors)); communities.ForEach(c => Assert.NotEmpty(c.Actors)); } }
public void PerformanceBetweenOneAndZero() { var r = new Random(); var g = new RandomMultiLayerGenerator(); for (var n = 2; n < 50; n++) { var network = g.GenerateSingleLayer(n, 0.65); var communityCount = r.Next(2, n); var communities = Enumerable .Range(0, communityCount) .Select(c => new Community()) .ToList(); foreach (var actor in network.Actors) { var c = r.Next(0, communityCount); communities[c].Actors.Add(actor); } var performance = Performance.Get(network, communities); Assert.True(performance >= 0.0, "Performance was less than zero."); Assert.True(performance <= 1.0, "Performance was greater than one."); } }