Processing 5 input of matrices into a fuzzy logic system

10 ビュー (過去 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 Center および File ExchangeFuzzy Logic in Simulink についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by