49997

Нечеткая логика. Создание простейшей системы нечеткой логики

Лабораторная работа

Информатика, кибернетика и программирование

Создание простейшей системы нечеткой логики реализованной на языке высокого уровня. Задание Согласно заданным вариантам разработать программу на любом алгоритмическом языке способную: Различать степени изменения лингвистической переменной в трех степенях...

Русский

2015-01-29

67 KB

2 чел.

Системы искусственного интеллекта

Лабораторная работа №1

Нечеткая логика

Цель работы: создание простейшей системы нечеткой логики, реализованной на языке высокого уровня.

Задание

Согласно заданным вариантам разработать программу на любом алгоритмическом языке, способную:

А. Различать степени изменения лингвистической переменной в трех степенях – «Очень – Нормально – Слабо»

Б. Изменять порог чувствительности.

  1.  Тихо – нормально – громко

unit Unit1;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, ComCtrls, StdCtrls,math, TeEngine, Series, ExtCtrls, TeeProcs,

 Chart;

type

 TForm1 = class(TForm)

   Chart1: TChart;

   Series1: TLineSeries;

   Series2: TLineSeries;

   Series3: TLineSeries;

   Series4: TBarSeries;

   TrackBar1: TTrackBar;

   Label1: TLabel;

   Label5: TLabel;

   Edit1: TEdit;

   Edit2: TEdit;

   Edit3: TEdit;

   Label6: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label7: TLabel;

   TrackBar2: TTrackBar;

   procedure TrackBar1Change(Sender: TObject);

   procedure TrackBar2Change(Sender: TObject);

   procedure FormCreate(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

 acc:integer;

implementation

{$R *.dfm}

procedure TForm1.TrackBar1Change(Sender: TObject);

var a,b,c,aq:double;

   i:integer;

begin

 label2.Caption:='';

 label3.Caption:='';

 label4.Caption:='';

 label1.Caption:=inttostr(trackbar1.position);

 a:=(1/(1+power(((trackbar1.Position-10+acc)/12),22)));

 b:=(1/(1+power(((trackbar1.Position-35+acc)/12),8)));

 c:=(1/(1+power(((trackbar1.Position-60+acc)/12),12)));

 if a<0.2 then label2.Caption:='Совсем не '+edit1.Text;

 if (a<0.4) and (a>0.2) then label2.Caption:='Чуть-чуть не '+edit1.Text;

 if (a<0.6) and (a>0.4) then label2.Caption:='Немного '+edit1.Text;

 if (a<0.8) and (a>0.6) then label2.Caption:='Весьма '+edit1.Text;

 if (a<1) and (a>0.8) then label2.Caption:='Абсолютно '+edit1.Text;

 if b<0.2 then label3.Caption:='Совсем не '+edit2.Text;

 if (b<0.4) and (b>0.2) then label3.Caption:='Чуть-чуть не '+edit2.Text;

 if (b<0.6) and (b>0.4) then label3.Caption:='Немного '+edit2.Text;

 if (b<0.8) and (b>0.6) then label3.Caption:='Весьма '+edit2.Text;

 if (b<1) and (b>0.8) then label3.Caption:='Абсолютно '+edit2.Text;

 if c<0.2 then label4.Caption:='Совсем не '+edit3.Text;

 if (c<0.4) and (c>0.2) then label4.Caption:='Чуть-чуть не '+edit3.Text;

 if (c<0.6) and (c>0.4) then label4.Caption:='Немного '+edit3.Text;

 if (c<0.8) and (c>0.6) then label4.Caption:='Весьма '+edit3.Text;

 if (c<1) and (c>0.8) then label4.Caption:='Абсолютно '+edit3.Text;

 aq:=a+b+c;

 label2.Caption:=label2.Caption+' '+inttostr(round(a/aq*100))+'%'+edit1.Text;

 label3.Caption:=label3.Caption+' '+inttostr(round(b/aq*100))+'%'+edit2.Text;

 label4.Caption:=label4.Caption+' '+inttostr(round(c/aq*100))+'%'+edit3.Text;

 series4.Clear;

 for i:=1 to 100 do if i<>trackbar1.Position then

   series4.Add(0) else series4.Add(1);

end;

procedure TForm1.TrackBar2Change(Sender: TObject);

var a,b,c:double;

   i:integer;

begin

 acc:=trackbar2.Position;

 series1.Clear;

 series2.Clear;

 series3.Clear;

 series4.Clear;

 for i:=1 to 100 do begin

   a:=(1/(1+power(((i-10+acc)/12),22)));

   series1.Add(a);

   b:=(1/(1+power(((i-35+acc)/12),8)));

   series2.Add(b);

   c:=(1/(1+power(((i-60+acc)/12),12)));

   series3.Add(c);

 end;

end;

procedure TForm1.FormCreate(Sender: TObject);

var a,b,c:double;

   i:integer;

begin

 acc:=0;

 series1.Clear;

 series2.Clear;

 series3.Clear;

 series4.Clear;

 for i:=1 to 100 do begin

   a:=(1/(1+power(((i-10+acc)/12),22)));

   series1.Add(a);

   b:=(1/(1+power(((i-35+acc)/12),8)));

   series2.Add(b);

   c:=(1/(1+power(((i-60+acc)/12),12)));

   series3.Add(c);

 end;

end;

end.

Вывод: научились создавать простейшую системы нечеткой логики, реализованной на языке высокого уровня.


 

А также другие работы, которые могут Вас заинтересовать

38684. ИССЛЕДОВАНИЕ Я-КОНЦЕПЦИИ УЧАЩИХСЯ ПОДРОСТКОВОГО ВОЗРАСТА КАК СРЕДСТВА КАЧЕСТВЕННОЙ ОЦЕНКИ ОБРАЗОВАТЕЛЬНЫХ СИСТЕМ 182 KB
  Штейнера в образовательном процессе; важностью формирования Яконцепции для регуляции всех форм активности организации поведения коммуникации деятельности включая познавательную деятельность; проблемой зависимости содержания Яконцепции учащихся подросткового периода взросления от принципов построения школьного обучения и воспитания; отсутствием экспериментальных исследований направленных на выявление характера связи между различными образами Я в единой структуре Яконцепции. В качестве основания оценивания работы образовательной системы...
38685. ПОЛИТИКА СОВЕТСКОГО ГОСУДАРСТВА В СФЕРЕ РЫБНОЙ ПРОМЫШЛЕННОСТИ ВО ВТОРОЙ ПОЛОВИНЕ XX ВЕКА (НА МАТЕРИАЛАХ НИЖНЕГО ПОВОЛЖЬЯ) 157 KB
  Нижнее Поволжье исторически являлось основным центром по обеспечению рыбной продукцией населения России поэтому исследование проблем связанных с развитием этого центра историей рыбной отрасли не теряет своей актуальности для историков. В ряду исторических сочинений проблема государственной политики в отношении рыбной промышленности занимает одно из приоритетных мест. В советский период был накоплен бесценный опыт реформирования рыбной отрасли который может быть востребован современной практикой решающей во многом сходные задачи...
38686. Антизомби 593 KB
  Только опытный психолог может разобраться в мотивах поведения человека его поступков и устремлений. ценности личной свободы прав человека укоренились в сознании миллионов но существуют еще дикие рабские государства например Северная Корея где полоумный и циничный диктатор зомбирует миллионы с помощью современных средств информации держит их в материальной и духовной нищете и угрожает миру применением современных средств массового уничтожения. Как формируются и от чего зависят политическое мировоззрение человека его взгляды и...
38687. ПРАКТИЧЕСКИЙ КУРС АНГЛИЙСКОГО ЯЗЫКА 5.17 MB
  Образец 1: Techer: How mny books hve you red this yer Student: Mny. White nd hve tlk with Mrs. to hve tlk поговорить; также: to hve smoke покурить: to hve swim поплавать значение однократного действия to be gld радоваться e. djectives which hve two forms of comprison Positive Comprtive Superltive fr old frther более дальний further 1.
38688. МОРФОМЕТРИЧЕСКАЯ СТРУКТУРА ПОПУЛЯЦИЙ ЖУЖЕЛИЦ (COLEOPTERA, CARABIDAE) В АНТРОПОГЕННЫХ ЛАНДШАФТАХ 701.5 KB
  Среди животных быстро и адекватно реагирующих на изменения в окружающей среде особую группу составляют жужелицы Coleopter Crbide. Жужелицы одни из немногих видов почвенных обитателей педобионтов которые встречаются в импактных зонах промышленных источников и могут быть использованы для оценки антропогенных влияний на биоту. С помощью анализа динамики морфометрической структуры популяций жужелиц создается возможность проследить процесс адаптации к меняющимся условиям среды.
38689. ВЛИЯНИЕ КРИМИНАЛИЗАЦИИ ОБЩЕСТВА НА ПРАВОВОЕ СОЗНАНИЕ УЧАЩЕЙСЯ МОЛОДЕЖИ 109 KB
  Современная российская молодежь в полной мере испытывает на себе негативные последствия глубокой социальной трансформации общества которая сопровождается процессом интенсивной криминализации. рост количества преступлений и правонарушений совершенных молодежью говорит о необходимости выработки эффективных мер противодействия негативному влиянию криминального общества на подрастающее поколение в первую очередь на правовое сознание молодежи. Одним из условий успешного решения этой проблемы является научное исследование процесса криминализации...
38690. ОБЩИЙ АЛГОРИТМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ АДАПТИВНО-ЛАНДШАФТНЫХ СИСТЕМ ЗЕМЛЕДЕЛИЯ И АЛГОРИТМ АВТОМАТИЗИРОВАННОГО ФОРМИРОВАНИЯ СИСТЕМЫ МАШИН ДЛЯ АДАПТИВНО-ЛАНДШАФТНЫХ СИСТЕМ ЗЕМЛЕДЕЛИЯ 164.5 KB
  Целью работы является разработка алгоритмов автоматизированного проектирования адаптивноландшафтных систем земледелия АЛСЗ и систем машин для адаптивно ландшафтных систем земледелия СМ АЛСЗ. Основные задачи: Для достижения цели необходимо в ходе выполнения теоретических и экспериментальных исследований решить следующие задачи: Исследовать существующие методы экспертного проектирования АЛСЗ и СМ АЛСЗ. Провести анализ существующих алгоритмов автоматизированного проектирования АЛСЗ и СМ АЛСЗ. Разработать общий алгоритм...
38691. Тактика хирургического лечения повреждений передней крестообразной связки коленного сустава с учетом объективных и субъективных особенностей пациента 105.5 KB
  Как показал анализ отдаленных результатов операций пластики передней крестообразной связки выполненных в различных лечебных учреждениях и различными способами наряду с хорошими результатами и полным восстановлением функции оперированного сустава отмечаются и такие осложнения как ограничение движений в оперированном суставе разрывы растяжение трансплантата со всеми вытекающими последствиями Сименач Б. Большое количество способов восстановления передней крестообразной связки коленного сустава свидетельствует об отсутствии оптимального...
38692. Выбор и установка прицела и точки прицеливания при стрельбе по движущимся целям. Виды движения цели 208 KB
  Для определения упреждения при стрельбе по целям имеющим фланговое движение под прямым углом к направлению стрельбы руководствоваться этой таблицей: Пример: Дальность стрельбы 600 метров скорость цели 3 м сек движение фланговое. Решение: По таблице смотрим на дистанции 600 метров упреждение для скорости передвижения 3 м сек = 300 см.Стрельба из стрелкового оружия по воздушным целям самолетам вертолетам и парашютистам без зенитных прицелов ведется на расстоянии 500 метров не больше с прицелом...