예제 #1
0
        public float Implicacao()
        {
            float      tmp      = 0;
            Proposicao anterior = null;

            foreach (Proposicao p in Antecedente)
            {
                if (anterior != null)
                {
                    if (anterior.Conector == Conector.AND)
                    {
                        tmp = Math.Min(tmp, p.Ativavao);
                    }
                    else if (anterior.Conector == Conector.AND)
                    {
                        tmp = Math.Max(tmp, p.Ativavao);
                    }
                }
                else
                {
                    tmp = p.Ativavao;
                }
                anterior = p;
            }

            foreach (Proposicao p in Consequente)
            {
                p.Ativavao = Math.Max(p.Ativavao, tmp);
            }

            return(tmp);
        }
예제 #2
0
파일: Regra.cs 프로젝트: petroniocandido/IA
 public void AddConsequente(Proposicao p)
 {
     Consequente.Add(p);
 }
예제 #3
0
파일: Regra.cs 프로젝트: petroniocandido/IA
 public void AddAntecedente(Proposicao p)
 {
     Antecedente.Add(p);
 }
예제 #4
0
 public void AddConsequente(Proposicao p)
 {
     Consequente.Add(p);
 }
예제 #5
0
 public void AddAntecedente(Proposicao p)
 {
     Antecedente.Add(p);
 }