コード例 #1
0
 public void setChild(BayesNode child)
 {
     if (child != this)
     {
         children.Add(child);
         child.setParent(this);
     }
 }
コード例 #2
0
ファイル: Form1.cs プロジェクト: KorneevVitaly/BayesGraph
        // Инициализация узлов и их таблиц и их отрисовка
        public void InitNodes()
        {
            Alcohol         = new BayesNode("Алкоголізм");
            Cirrhosis       = new BayesNode("Цироз");
            Steatosis       = new BayesNode("Стеатоз");
            Hemochromatosis = new BayesNode("Гемохроматоз");
            Fibrosis        = new BayesNode("Фіброз");
            Hepatitis       = new BayesNode("Гепатит");

            Alcohol.setChild(Steatosis);
            Alcohol.setChild(Cirrhosis);
            Alcohol.setChild(Hemochromatosis);
            Alcohol.setChild(Fibrosis);
            Alcohol.setChild(Hepatitis);

            Alcohol.setProbabTable("АлкоголізмTrue;", 0.265);
            Alcohol.setProbabTable("АлкоголізмFalse;", 0.735);

            Steatosis.setProbabTable("СтеатозTrue;АлкоголізмTrue;", 0.65);
            Steatosis.setProbabTable("СтеатозFalse;АлкоголізмTrue;", 0.35);
            Steatosis.setProbabTable("СтеатозTrue;АлкоголізмFalse;", 0.26);
            Steatosis.setProbabTable("СтеатозFalse;АлкоголізмFalse;", 0.74);

            Cirrhosis.setProbabTable("ЦирозTrue;АлкоголізмTrue;", 0.86);
            Cirrhosis.setProbabTable("ЦирозFalse;АлкоголізмTrue;", 0.14);
            Cirrhosis.setProbabTable("ЦирозTrue;АлкоголізмFalse;", 0.2);
            Cirrhosis.setProbabTable("ЦирозFalse;АлкоголізмFalse;", 0.6);

            Hemochromatosis.setProbabTable("ГемохроматозTrue;АлкоголізмTrue;", 0.333);
            Hemochromatosis.setProbabTable("ГемохроматозFalse;АлкоголізмTrue;", 0.667);
            Hemochromatosis.setProbabTable("ГемохроматозTrue;АлкоголізмFalse;", 0.1);
            Hemochromatosis.setProbabTable("ГемохроматозFalse;АлкоголізмFalse;", 0.9);

            Fibrosis.setProbabTable("ФіброзTrue;АлкоголізмTrue;", 0.1);
            Fibrosis.setProbabTable("ФіброзFalse;АлкоголізмTrue;", 0.9);
            Fibrosis.setProbabTable("ФіброзTrue;АлкоголізмFalse;", 0.45);
            Fibrosis.setProbabTable("ФіброзFalse;АлкоголізмFalse;", 0.55);

            Hepatitis.setProbabTable("ГепатитTrue;АлкоголізмTrue;", 0.3);
            Hepatitis.setProbabTable("ГепатитFalse;АлкоголізмTrue;", 0.7);
            Hepatitis.setProbabTable("ГепатитTrue;АлкоголізмFalse;", 0.1);
            Hepatitis.setProbabTable("ГепатитFalse;АлкоголізмFalse;", 0.9);

            Alcohol.setInitialProbability();


            ParentNodes = new List <BayesNode>();
            ParentNodes.Add(Alcohol);

            drawNodeRect();
        }
コード例 #3
0
 void setParent(BayesNode parent)
 {
     parents.Add(parent);
 }