AABB
AlignmentBehavior
ArriveBehavior
AStar
BFS
BoundingSphere
BVH
BVHNode
Cell
CellSpacePartitioning
CohesionBehavior
CompositeGoal
ConvexHull
Corridor
CostTable
DFS
Dijkstra
Edge
EntityManager
EvadeBehavior
EventDispatcher
Behavior
FollowPathBehavior
FuzzyAND
FuzzyCompositeTerm
FuzzyFAIRLY
FuzzyModule
FuzzyOR
FuzzyRule
FuzzySet
FuzzyTerm
FuzzyVariable
FuzzyVERY
GameEntity
Goal
GoalEvaluator
Graph
GraphUtils
HalfEdge
HeuristicPolicyDijkstra
HeuristicPolicyEuclid
HeuristicPolicyEuclidSquared
HeuristicPolicyManhattan
InterposeBehavior
LeftSCurveFuzzySet
LeftShoulderFuzzySet
LineSegment
Logger
MathUtils
Matrix3
Matrix4
MemoryRecord
MemorySystem
MeshGeometry
MessageDispatcher
MovingEntity
NavEdge
NavMesh
NavMeshLoader
NavNode
Node
NormalDistFuzzySet
OBB
ObstacleAvoidanceBehavior
OffsetPursuitBehavior
OnPathBehavior
Path
Plane
Polygon
Polyhedron
PriorityQueue
PursuitBehavior
Quaternion
Ray
RectangleTriggerRegion
Regular
RightSCurveFuzzySet
RightShoulderFuzzySet
SAT
SeekBehavior
SeparationBehavior
SingletonFuzzySet
Smoother
SphericalTriggerRegion
State
StateMachine
SteeringBehavior
SteeringManager
Task
TaskQueue
Telegram
Think
Time
TriangularFuzzySet
Trigger
TriggerRegion
Vector3
Vehicle
Version
WanderBehavior

addRule

addRule 方法用于向模糊逻辑系统的模糊规则集中添加新规则。

语法

addRule(antecedent, consequent)

参数

  • antecedent – 规则前件,是一个字符串类型的表达式,表示模糊系统的输入变量。
  • consequent – 规则后件,是一个字符串类型的表达式,表示模糊系统的输出变量。

返回值

  • 无返回值。

示例

const Fuzzy = require('yuka');
const fuzzy = new Fuzzy.FuzzyModule();

// 添加规则,如果温度较高或湿度较高,则降低灯光亮度。
fuzzy.addRule("(temperature is high) or (humidity is high)", "dim lights");

// 添加规则,如果温度较低且湿度较低,则增加灯光亮度。
fuzzy.addRule("(temperature is low) and (humidity is low)", "brighten lights");

说明

在模糊逻辑系统中,模糊规则集由多条规则组成,每条规则包含一个前件和一个后件。前件和后件都是模糊集合的短语,前件中包含模糊变量,后件中包含模糊输出。模糊前件表示输入变量的模糊条件,模糊后件表示输出变量的模糊结果。

addRule 方法用于向模糊规则集中添加新规则。在添加规则时,应该首先确定规则前件和后件的表达式,然后通过 addRule 方法将规则添加到模糊规则集中。

要注意的是,规则前件和后件的表达式必须符合模糊逻辑系统的语法规则。否则,可能会导致解析错误或者结果不准确。建议在编写规则时,参考模糊逻辑系统的语法规则,以确保规则的正确性和准确性。

参考链接