Processing 5 input of matrices into a fuzzy logic system

조회 수: 5 (최근 30일)
Berna Caliskan
Berna Caliskan 2021년 12월 3일
답변: MULI 2024년 9월 20일
Sir Arkadiy Turevskiy,
I read your answer about 'Processing a list of inputs into a fuzzy logic system. I have a similar question, I want to process 5 input matrices (207*216) to take 1 output matrices (207*216). I have five separate matrices text file loaded in workspace(input1=slope_text, input2=jeo_text, input3=pop_text, input4=land_text, input5=stream_text)
[System]
Name='Suitability2'
Type='mamdani'
Version=2.0
NumInputs=5
NumOutputs=1
NumRules=108
AndMethod='min'
OrMethod='max'
ImpMethod='min'
AggMethod='max'
DefuzzMethod='centroid'
[Input1]
Name='EĞİM'
Range=[0 10]
NumMFs=3
MF1='very_suitable':'trapmf',[-4.5 -0.5 2 5]
MF2='moderately_suitable':'trapmf',[2 5 7 10]
MF3='unsuitable':'trapmf',[7 10 11 40]
[Input2]
Name='JEOLOJİ'
Range=[0 10]
NumMFs=2
MF1='suitable':'trapmf',[4 8 10 13.75]
MF2='unsuitable':'trapmf',[-4.5 -2 1 2]
[Input3]
Name='NÜFUS'
Range=[0 98399]
NumMFs=3
MF1='LOW':'trimf',[0 9976 25470]
MF2='HIGH':'trimf',[72460 98400 1000000]
MF3='medium':'trimf',[25470 46380 72460]
[Input4]
Name='ARAZİ_KULLANIMI'
Range=[0 10]
NumMFs=2
MF1='Unsuitable':'trimf',[0 0 6]
MF2='Suitable':'trimf',[6 10 10]
[Input5]
Name='YÜZEYSEL_AKIŞ'
Range=[0 10]
NumMFs=3
MF1='low':'trimf',[1 2 3]
MF2='high':'trimf',[5 6 7]
MF3='medium':'trimf',[3 4 5]
[Output1]
Name='UYGUNLUK_DEĞERİ'
Range=[0 100]
NumMFs=3
MF1='POOR':'trapmf',[-4.46 0 10 40]
MF2='GOOD':'trimf',[25 50 75]
MF3='EXCELLENT':'trapmf',[60 90 100 100]

답변 (1개)

MULI
MULI 2024년 9월 20일
Hi Berna,
I understand that need to process your five input matrices to generate a 207x216 output matrix.
You can follow the below steps to process the inputs using “Fuzzy Logic Designer
  • Load your fuzzy inference system (FIS) in the Fuzzy Logic Designer
fuzzyLogicDesigner('your_system.fis')
  • Define your inputs, outputs, and membership functions in the Fuzzy Logic Designer.
  • Set the input ranges and corresponding membership functions for each input and define your rules.
  • After defining your system, generate the MATLAB code for simulation using the "Export > Generate Simulation Function" option from the "Desig"n tab in the app.
  • Once you generate the code, MATLAB will open a script that simulates the fuzzy system programmatically. You can modify this code to process your input matrices.
You can refer to these MathWorks documentation links for more information on “Fuzzy Logic Designer” and generating MATLAB code for fuzzy systems

카테고리

Help CenterFile Exchange에서 Fuzzy Logic in Simulink에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by