How to get inputs from outputs in fuzzy interface system?
조회 수: 2 (최근 30일)
이전 댓글 표시
is it possible in FIS to get inputs from ouyputs? for example my inputs are a=100,b=60,c=80 and output is 55.can i get inputs for output value=65?
댓글 수: 0
답변 (1개)
Sam Chak
2024년 9월 21일
Hi @amir
There is no built-in function in the Fuzzy Logic Toolbox to accomplish this. Moreover, if the fuzzy inference system (FIS) can indeed produce a specified output, there may be unlimited combinations of inputs in the output manifold that yield exactly that output.
The task is somewhat analogous to solving a system of nonlinear equations; however, the FIS represents only a single nonlinear manifold equation. Therefore, the problem constitutes an underdetermined system.
x1 = (20:0.01:50)';
x2 = x1;
y = x1 + x2;
data= [x1, x2, y];
opt = anfisOptions("DisplayANFISInformation", 0, "DisplayErrorValues", 0, "DisplayStepSize", 0, "DisplayFinalResults", 0);
fis = anfis(data, opt);
out1= evalfis(fis, [20.0 45.0])
out2= evalfis(fis, [25.0 40.0])
out3= evalfis(fis, [30.0 35.0])
out4= evalfis(fis, [32.5 32.5])
out5= evalfis(fis, [35.0 30.0])
out6= evalfis(fis, [40.0 25.0])
out7= evalfis(fis, [45.0 20.0])
gensurf(fis)
xlabel('x1'), ylabel('x2'), zlabel('y')
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Fuzzy Logic in Simulink에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!