Пример #1
0
        /// <summary>
        /// Create test Bayesian network
        /// </summary>
        void TestListNodes()
        {
            List <Node> Parents  = new List <Node>();
            List <Node> Children = new List <Node>();

            listNodes.AddFact("Пациент пожилого возраста");

            listNodes.AddFact("Пациент перенес операцию");

            Parents.Add(listNodes.FindFact("Пациент перенес операцию"));
            listNodes.AddFact("Патология аккомодации");
            listNodes.AddFactLeaf("Патология аккомодации", Parents);
            Parents.Clear();

            Parents.Add(listNodes.FindFact("Пациент пожилого возраста"));
            listNodes.AddFactLeaf("Помутнение хрусталика", Parents);
            Parents.Clear();

            Parents.Add(listNodes.FindFact("Патология аккомодации"));
            listNodes.AddFactLeaf("Развитие косоглазия", Parents);
            Parents.Clear();

            Parents.Add(listNodes.FindFact("Патология аккомодации"));
            Parents.Add(listNodes.FindFact("Помутнение хрусталика"));
            listNodes.AddFactLeaf("Синдром ухудшения зрения", Parents);
            Parents.Clear();

            Parents.Add(listNodes.FindFact("Синдром ухудшения зрения"));
            listNodes.AddFactLeaf("Повышенное давление", Parents);
            Parents.Clear();

            Parents.Add(listNodes.FindFact("Помутнение хрусталика"));
            listNodes.AddFactLeaf("Патологический рефлекс сетчатки", Parents);
            Parents.Clear();
            RefreshForm();

            //-------------------------------------Create test network
            listNodes.InitProbs();

            listNodes.Nodes[0].SetProbability(0, 0.01);

            listNodes.Nodes[1].SetProbability(0, 0.2);

            listNodes.Nodes[2].SetProbability(0, 0.16);
            listNodes.Nodes[2].SetProbability(1, 0.05);

            listNodes.Nodes[3].SetProbability(0, 0.1);
            listNodes.Nodes[3].SetProbability(1, 0.001);

            listNodes.Nodes[4].SetProbability(0, 0.2);
            listNodes.Nodes[4].SetProbability(1, 0.025);

            listNodes.Nodes[5].SetProbability(0, 0.95);
            //listNodes.Nodes[5].SetProbability(1, 0.04);
            listNodes.Nodes[5].SetProbability(1, 0.25);
            listNodes.Nodes[5].SetProbability(2, 0.9);
            listNodes.Nodes[5].SetProbability(3, 0.02);

            listNodes.Nodes[6].SetProbability(0, 0.4);
            listNodes.Nodes[6].SetProbability(1, 0.001);

            listNodes.Nodes[7].SetProbability(0, 0.99);
            listNodes.Nodes[7].SetProbability(1, 0.001);
        }
 /// <summary>
 /// Initialize probabilities with default values
 /// </summary>
 private void InitProbs()
 {
     listNodes.InitProbs();
 }