rsesrulegenerator.cpp

来自「粗糙集应用软件」· C++ 代码 · 共 106 行

CPP
106
字号
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Revisions.....:
//===================================================================

#include <stdafx.h> // Precompiled headers.
#include <copyright.h>

#include <kernel/rses/algorithms/rsesrulegenerator.h>

#include <kernel/rses/structures/rsesreducts.h>
#include <kernel/rses/structures/rsesrules.h>
#include <kernel/rses/structures/rsesdecisiontable.h>

#include <kernel/rses/library/trr_calc.h>
#include <kernel/rses/library/err.h>

#include <kernel/utilities/creator.h>

#include <kernel/basic/message.h>

//-------------------------------------------------------------------
// Methods for class RSESRuleGenerator.
//===================================================================

//-------------------------------------------------------------------
// Constructors/destructor.
//===================================================================

//-------------------------------------------------------------------
// Method........: Constructor.
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

RSESRuleGenerator::RSESRuleGenerator() {
}

//-------------------------------------------------------------------
// Method........:
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

RSESRuleGenerator::~RSESRuleGenerator() {
}

//-------------------------------------------------------------------
// Methods inherited from Identifier.
//===================================================================

IMPLEMENTIDMETHODS(RSESRuleGenerator, RSESRULEGENERATOR, RuleGenerator)

//-------------------------------------------------------------------
// Methods inherited from Algorithm.
//===================================================================

//-------------------------------------------------------------------
// Method........: IsApplicable
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

bool
RSESRuleGenerator::IsApplicable(const Structure &structure, bool /*warn*/) const {
	return structure.IsA(RSESREDUCTS);
}

//-------------------------------------------------------------------
// Method........: Apply
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Generates decision rules.
//
// Comments......: Assumes that library clients use handles.
//
//                 Excerpt from the RSES technical doc.:
//
//                   Generates decision rules for all reducts of
//                   type 0 (not related to objects) from rr_mem
//                   on the basis of decision table table.
//
//                   Note: Decision rules for object related reducts
//                   (type 1) are calculated automatically when
//                   calculating reducts.  If rr_mem contains
//                   object related reducts then those reducts are
//                   omitted by GenerateRules().
//
//                   Remark: Decision rules of both types could be
//                   computed automatically when calculating reducts
//                   but in case of not object related reducts number
//                   of rules may be huge.  Thus the separate function
//                   GenerateRules is implemented.
//
// Revisions.....: A

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?