По этой связке хорошо помогают работать следующие ссылки:
http://octave.sourceforge.net/fuzzy-logic-toolkit/overview.html
http://radio.feld.cvut.cz/matlab/toolbox/fuzzy/fuzzyt23.html
Во второй ссылке описывается формат системы нечеткого вывода в Matlab, который состоит из входов, выходов и правил соответствия, которым соответствуют веса. Треугольной функции принадлежности соответствует функция trimf, после которой должен идти список (в квадратных скобках из трех элементов).
Не совсем понятен, параметр connection - но значение 1 туда подходит.
Еще возможной проблемой является то, что нельзя в названии значений входов и выходов использовать пробелы. Octave тогда ломается и выдает стектрейс.
Для разработки имеет смысл использовать плагин для NetBeans - OctaveNB, который предоставляет чуть ли не REPL для Octave.
Сам скрипт будет состоять из трех команд:
Где [[0.5], [-0.5]] - матрица, в которой каждая строка - массив значений для входа N. На выходе, соответственно - матрица значений для выходов.
Довольно легко и просто!
http://octave.sourceforge.net/fuzzy-logic-toolkit/overview.html
http://radio.feld.cvut.cz/matlab/toolbox/fuzzy/fuzzyt23.html
Во второй ссылке описывается формат системы нечеткого вывода в Matlab, который состоит из входов, выходов и правил соответствия, которым соответствуют веса. Треугольной функции принадлежности соответствует функция trimf, после которой должен идти список (в квадратных скобках из трех элементов).
Не совсем понятен, параметр connection - но значение 1 туда подходит.
Еще возможной проблемой является то, что нельзя в названии значений входов и выходов использовать пробелы. Octave тогда ломается и выдает стектрейс.
Для разработки имеет смысл использовать плагин для NetBeans - OctaveNB, который предоставляет чуть ли не REPL для Octave.
Сам скрипт будет состоять из трех команд:
% Читаем систему из файла в переменную fis fis = readfis("system.fis"); % Проводим вывод на системе results = evalfis([[0.5], [-0.5]], fis); % Показываем результаты disp(results);
Где [[0.5], [-0.5]] - матрица, в которой каждая строка - массив значений для входа N. На выходе, соответственно - матрица значений для выходов.
Довольно легко и просто!
Комментариев нет:
Отправить комментарий