コード例 #1
0
ファイル: ShootDecisionRuleSet.cs プロジェクト: senchov/ECS
 private void CreateAmmoFLV()
 {
     IFuzzySet[] ammoFlVFuzzySets = new IFuzzySet[3];
     ammoFlVFuzzySets[0] = new LeftShoulderFuzzySet(0, 10);
     ammoFlVFuzzySets[1] = new TriangleFuzzySet(0, 10, 30);
     ammoFlVFuzzySets[2] = new RightShoulderFuzzySet(10, 30);
     AmmoFLV             = new FuzzyLinguisticVariables(ammoFlVFuzzySets);
 }
コード例 #2
0
 private void CreateDistanceFLV()
 {
     IFuzzySet[] distanceFlVFuzzySets = new IFuzzySet[3];
     distanceFlVFuzzySets[0] = new LeftShoulderFuzzySet(25, 150);
     distanceFlVFuzzySets[1] = new TriangleFuzzySet(25, 150, 300);
     distanceFlVFuzzySets[2] = new RightShoulderFuzzySet(150, 300);
     DistanceToTargetFLV     = new FuzzyLinguisticVariables(distanceFlVFuzzySets);
 }
コード例 #3
0
ファイル: FuzzySetsTest.cs プロジェクト: senchov/ECS
        public void TriangelSet()
        {
            TriangleFuzzySet set = new TriangleFuzzySet(0, 50, 100);
            float            dom = set.CalculateDom(50);

            Assert.AreEqual(1.0f, dom);

            dom = set.CalculateDom(25);
            Assert.AreEqual(0.5f, dom);

            dom = set.CalculateDom(75);
            Assert.AreEqual(0.5f, dom);

            dom = set.CalculateDom(100);
            Assert.AreEqual(0, dom);

            dom = set.CalculateDom(0);
            Assert.AreEqual(0, dom);

            dom = set.CalculateDom(125);
            Assert.AreEqual(0, dom);
        }