Ejemplo n.º 1
0
        private void clusterButton_Click(object sender, RoutedEventArgs e)
        {
            int           nElements = 100;
            List <double> elements  = new List <double>();

            Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution cud = new Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution(0, 1);
            for (int i = 0; i < nElements; i++)
            {
                elements.Add(cud.NextDouble());
            }

            Ball <double> .Metric metric = (double x, double y) => Math.Abs(x - y);
            Tuple <List <Ball <double> >, bool, int> tuple = Ball <double> .Cluster2FixedNumberOfBalls(elements, metric, 10, 10000);

            List <Ball <double> > balls = tuple.Item1;

            using (System.IO.StreamWriter writer = System.IO.File.CreateText("testClusterer.txt"))
            {
                foreach (Ball <double> ball in balls)
                {
                    foreach (double element in ball.Elements)
                    {
                        writer.WriteLine(element + "\t" + ball.Center + "\t" + ball.Radius + "\t" + Math.Abs(element - ball.Center));
                    }
                }
            }

            MessageBox.Text += "Cluster done.\n";
            MessageBox.Text += "Converged = " + tuple.Item2 + "\n";
            MessageBox.Text += "n Steps taken = " + tuple.Item3 + "\n";
        }
Ejemplo n.º 2
0
 public MCMC()
 {
     mt              = new Troschuetz.Random.Generators.MT19937Generator();
     uRand           = new Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution(mt, 0, 1);
     OutputDirectory = Directory.GetCurrentDirectory();
 }
Ejemplo n.º 3
0
 public AuxiliaryChain()
 {
     mt    = new Troschuetz.Random.Generators.MT19937Generator();
     uRand = new Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution(mt, 0, 1);
 }
Ejemplo n.º 4
0
 static PMF()
 {
     generator = new Troschuetz.Random.Generators.MT19937Generator();
     uniGen    = new Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution(generator);
 }
Ejemplo n.º 5
0
 public Annealer()
 {
     mt    = new Troschuetz.Random.Generators.MT19937Generator();
     uRand = new Troschuetz.Random.Distributions.Continuous.ContinuousUniformDistribution(mt);
     zRand = new Troschuetz.Random.Distributions.Continuous.NormalDistribution(mt);
 }