A fuzzy logic C++ library
Defines | Functions
build-rule-base.cpp File Reference

Builds a FIS rule set automatically with provided input file. More...

#include "app_common.hpp"
#include "slifis.hpp"
#include <GetPot>
+ Include dependency graph for build-rule-base.cpp:

Defines

#define STDERR_FILE_NAME   "stderr_build-rule-base.txt"

Functions

int main (int argc, char **argv)
 see file build-rule-base.cpp
void usage ()
 Prints application usage (arguments)

Detailed Description

Builds a FIS rule set automatically with provided input file.

Can also build automatically input sets of functions and output set of functions.

4 Arguments minimum (order matters):

  1. input datafile (.cvs or .arff style)
  2. FIS filename (output, but also input, eventually). If file doesn't exist, then it will be created.
  3. column of datafile that contains output values in the input data file (starting from 1 !)
  4. string containing the column index of desired inputs ( for example : "2;3;6;8;10;11;12", also starting from 1) (must be ordered)

The following options can be given (at any place in the command-line):

if option -AIX is not given, then the app will assume (and check) that the FIS file exists, and that it has assigned input functions (at least 1).

Please note that this version actually stores the whole data in STL vectors, so memory requirements can be high, depending on size of datafile.

Remarks:
Please try included scripts brb_s1.sh and brb_s2.sh

Define Documentation

#define STDERR_FILE_NAME   "stderr_build-rule-base.txt"

Referenced by main().


Function Documentation

int main ( int  argc,
char **  argv 
)

see file build-rule-base.cpp

References slifis::SLIFIS::AddInput(), slifis::SLIFIS::AddRuleFromValues(), APP_FATAL_ERROR, APP_MSG, APP_NAME, APP_REGULAR_END, slifis::DATAFILE_INFO::AssignDataDescription(), slifis::SLIFIS::DeleteAllInputs(), slifis::SLIFIS::DeleteAllRules(), slifis::DT_NUMERIC, slifis::SLIFIS::FactorizeRuleBase(), slifis::FS_LIN, slifis::FS_LOG, slifis::SLIFIS::GenerateHistogramFile(), slifis::DATAFILE_INFO::GetAttribName(), slifis::DATAFILE_INFO::GetFileInfo(), slifis::DATA_SET::GetInMMValue(), slifis::SLIFIS::GetInputCoeffVar(), slifis::DATA_DESCR::GetInputIndex(), slifis::SLIFIS::GetInputSet(), slifis::DATA_SET::GetInputValues(), slifis::DATASET_PROPERTIES::GetMaxValue(), slifis::FUZZY_ROOT::GetMf(), slifis::DATASET_PROPERTIES::GetMinValue(), slifis::FUZZY_ROOT::GetName(), slifis::MEMBFUNC::GetName(), slifis::DATA_SET::GetNbClasses(), slifis::DATAFILE_INFO::GetNbDataPts(), slifis::DATA_DESCR::GetNbInputs(), slifis::SLIFIS::GetNbInputs(), slifis::FUZZY_ROOT::GetNbMf(), slifis::DATAFILE_INFO::GetNbNumericFields(), slifis::SLIFIS::GetNbRules(), slifis::SLIFIS::GetOutputCoeffVar(), slifis::DATA_SET::GetOutputIndex(), slifis::SLIFIS::GetOutputSet(), slifis::DATA_SET::GetOutValue(), slifis::DATA_SET::GetProperties(), slifis::SLIFIS::GetRuleBase(), slifis::GetString(), slifis::DATA_SET::GetStringValue(), slifis::SLIFIS::GetType(), slifis::DATAFILE_INFO::HasAttribNames(), LOG_USER_ERROR, slifis::MM_Max, slifis::MM_Min, slifis::DATASET_PROPERTIES::Print(), slifis::DATA_SET::Print(), slifis::DATA_DESCR::Print(), slifis::RULE_BASE::Print(), slifis::DATAFILE_INFO::Print(), slifis::SLIFIS::Read(), slifis::DATA_SET::ReadData(), slifis::REDM_HIGHEST_SUM, slifis::SLIFIS::ReduceRuleBase(), REOPEN_STDERR, slifis::MEMBFUNC::SetName(), slifis::SLIFIS::SetOutput(), SLIFIS_DEBUG_LOG, SLIFIS_EPSILON_REAL, STDERR_FILE_NAME, usage(), and slifis::SLIFIS::Write().

void usage ( )

Prints application usage (arguments)

Referenced by main().