50171

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

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

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

Согласно заданным вариантам разработать программу на любом алгоритмическом языке, способную: А. Различать степени изменения лингвистической переменной в трех степенях – «Очень – Нормально – Слабо» Б. Изменять порог чувствительности. Рано – пора вставать – Ой, проспал

Русский

2014-01-17

67.5 KB

1 чел.

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

Лабораторная работа №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.

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


 

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

1849. СЕМАНТИЧЕСКАЯ ИЗОТОПИЯ ЕДА В ХУДОЖЕСТВЕННОМ ТЕКСТЕ (НА МАТЕРИАЛЕ МАЛОЙ ПРОЗЫ 60-80-Х ГОДОВ ХХ ВЕКА) 1.26 MB
  Гносеологическая и онтологическая сущность семантической изотопии еда. Фрагмент языковой картины мира, репрезентируемый семантической изотопией еда. Реализация семантической изотопии еда в событийном пространстве текста. Ритуализованные формы речи. Застолье, чаепитие, распивание спиртных напитков.
1850. ОБРАЗ ЖИЗНИ БРИТАНСКОЙ ЭЛИТЫ В ТРЕТЬЕЙ ЧЕТВЕРТИ XIX ВЕКА 1.26 MB
  Изменение положения британской элиты в третьей четверти XIX в. Распределение социального, экономического и политического влияния в элитных группах британского общества. Трансформация ценностных ориентиров элитных групп. Досуговая культура средневикторианского высшего общества.
1851. ПЕДАГОГИЧЕСКИЕ АСПЕКТЫ ПРЕОДОЛЕНИЯ НЕГАТИВНЫХ ПОСЛЕДСТВИЙ УЧЕБНЫХ ФАКТОРОВ РИСКА, ОТРАЖАЮЩИХСЯ НА ЗДОРОВЬЕ УЧАЩИХСЯ КОЛЛЕДЖА 1.26 MB
  Современные научные подходы к выделению факторов риска в образовательном процессе. Педагогические подходы в выявлении негативных последствий учебных факторов риска, отражающихся на здоровье учащихся колледжа. Изучение взаимосвязи учебных факторов риска и состояния здоровья учащихся. Анализ результатов изучения педагогических подходов к преодолению учебных факторов риска в образовательном процессе колледжа.
1852. СЕМАНТИЧЕСКИЕ, ГРАММАТИЧЕСКИЕ И ФУНКЦИОНАЛЬНЫЕ ОСОБЕННОСТИ СЛОВА 1.26 MB
  Аспекты изучения проблемы переходности в области неполнозначных слов. Трудные случаи морфологической квалификации слова так. Пословицы, поговорки, крылатые выражения с элементом так. Возможности транспозиции слова "так".
1853. Промисловий аналіз продуктів какао 337.08 KB
  Какао продукти, какао напої та екстракти. Какао як продукт харчування. Виробництво шоколаду. Кондитерська промисловість. Замінники какао-масла.
1854. Теории и современные воспитательные концепции 163 KB
  Современные воспитательные концепции. Системное построение процесса воспитания. Воспитательная система образовательного учреждения. Характеристика компонентов воспитательной системы. Педагогическая поддержка ребенка и процесса его развития.
1855. Оружие геноцида 3.13 MB
  “Нормальная” культура ненормальных людей. Общее воздействие алкоголя на организм. Гипоксия — алкогольная эйфория. Почему пьющие избегают трезвых. О главной причине употребления психотропов. Творчество под угнетением табака. Курение и детородная функция. Целомудрие здравомыслие.
1856. Сегментация изображений и поиск объектов медицины и биологии 3.01 MB
  Программные системы и методы 3D-реконструкции биомедицинских данных. Модели, методы и алгоритмы, положенные в основу сегментации и поиска объектов. Сегментация данных компьютерной томографии и электронной микроскопии. Описание реализации программной системы. Примеры результатов сегментации и идентификации объектов.
1857. МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ ЗАНОСА АВТОМОБИЛЯ 1.09 MB
  Анализ подходов к математическому и численному моделированию движения автомобиля. Постановка задачи. Оценка области применимости велосипедной модели. Математические модели движения автомобиля без потери сцепления колес с дорогой. Математическая модель переменной структуры для описания заноса автомобиля.