我正在用氢化物训练方法实施ANFIS模型。我有13个输入映射到一个输出。我制定了与我的系统有关的规则。当我训练数据时,我得到以下错误:
输出数MF不等于规则数
关于我哪里出错的任何线索?
答案 0 :(得分:1)
来自Fuzzy Logic Toolbox User's Guide:
的引用anfis的限制:
anfis比模糊复杂得多 到目前为止讨论的推理系统,并非所有人都可以使用 模糊推理系统选项。具体来说,anfis只支持 Sugeno型系统,这些必须具备以下特性:
* 没有规则共享。不同的规则不能共享相同的输出 隶属函数,即输出隶属函数的数量 必须等于规则的数量。
因此,ANFIS模型结构应如下所示:
仅供参考,错误来自以下代码段:
/* output MF no. must be the same as rule no. */
if (fis->output[0]->mf_n != fis->rule_n) {
fisFreeFisNode(fis);
PRINTF("Number of output MF's is not equal to number of rules -->\n");
fisError("Parameter sharing in FIS is not allowed!");
}