public void AddTuple(DataSetTuple dataSetTuple) { if (!this.Initialized) { StoneHandler.Refresh(); this.T0 = dataSetTuple.StartTime; this.Initialized = true; } else if ((dataSetTuple.StartTime - this.T0) > this.Size) { this.Shift(dataSetTuple); } StoneCluster cluster; var findedClusters = this.Clusters.Where(x => x.Prefix == dataSetTuple.ClusterPrefix); if (findedClusters.Count() == 0) { cluster = new StoneCluster(dataSetTuple.ClusterPrefix); this.Clusters.Add(cluster); } else if (findedClusters.Count() == 1) { cluster = findedClusters.First(); } else { throw new HelperClasses.LibraryException("{0} کلاستر با پیشوند {1} وجود دارد.", findedClusters.Count(), dataSetTuple.ClusterPrefix); } cluster.AddTuple(dataSetTuple); }
private void Shift(DataSetTuple dataSetTuple) { this.T0 += this.Advance; foreach (StoneCluster cluster in this.Clusters) { cluster.Purge(this.T0); } }
public Boolean ProbabilisticAdd(DataSetTuple dataSetTuple, double probability) { int seed = new Random().Next(100); var value = new Random(seed).NextDouble(); if (value < probability) { this.Add(dataSetTuple); return(true); } return(false); }
public int LoadFromFile(string filePath) { this.Tuples = new List <DataSetTuple>(); var lines = File.ReadAllLines(filePath); foreach (string line in lines) { DataSetTuple tuple = new DataSetTuple(line); this.Tuples.Add(tuple); } return(this.Tuples.Count); }
public static void AddTuple(DataSetTuple dataSetTuple) { if (!IsActive) { StoneBaseChanel.ForwardToServer(dataSetTuple); return; } int groupNumber = AxesBuilder.GroupFunction(dataSetTuple.StoneFeatures); if (groupNumber == 0) { GroupChanels[0].Add(dataSetTuple); } else { var clusters = ProfileMaintainer.AcquaintanceList.Where(x => x.Prefix == dataSetTuple.ClusterPrefix); if (clusters.Count() > 0) { Boolean added = false; var cluster = clusters.First(); foreach (var group in DCC.Groups) { var probability = cluster.ProbabilityInGroup(group); var chanel = GroupChanels[group.Number]; added = chanel.ProbabilisticAdd(dataSetTuple, probability * chanel.Capacity); if (added) { break; } } if (!added) { SuspiciousChanel.Add(dataSetTuple); } } else { SuspiciousChanel.Add(dataSetTuple); } } }
public void AddTuple(DataSetTuple dataSetTuple) { _lifeTime = 0; _weight = 0; _frequency = 0; DataAggregatorTuple tuple = new DataAggregatorTuple(); tuple.OldFeatures.Frequency = this.Frequency; tuple.OldFeatures.Weight = this.Weight; tuple.OldFeatures.LifeTime = this.LifeTime; this.DataSetTuples.Add(dataSetTuple); tuple.NewFeatures.Frequency = this.Frequency; tuple.NewFeatures.Weight = this.Weight; tuple.NewFeatures.LifeTime = this.LifeTime; tuple.SourceCluster = this; tuple.StartTime = this.StartTime; DCC.Receive(tuple); }
public static void AddTuple(DataSetTuple dataSetTuple) { Window.AddTuple(dataSetTuple); }
public static void ForwardToServer(DataSetTuple dataSetTuple) { File.AppendAllText(ApplicationSettings.Instance.ServerInputLinkFile, dataSetTuple.ToString() + "\r\n"); }
public void Add(DataSetTuple dataSetTuple) { ForwardToServer(dataSetTuple); }