50171

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

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

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

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

Русский

2014-01-17

67.5 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.

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


 

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

44881. Органы власти 11.25 KB
  Он назначает командующих вооруженными силами и Корпуса стражей исламской революции а также членов Совета попечителей органа призванного гарантировать что все законодательные акты соответствуют принципам ислама. Конституция 1979 предусматривала создание Совета попечителей в задачу которого входила проверка всех законодательных актов на соответствие исламским законам. Совет попечителей состоял из шести беспристрастных религиозных лидеров назначаемых Руководителем и шести юристов избираемых меджлисом и специализирующихся в различных...
44882. Electrical engineering 14.41 KB
  Electricаl engineering sometimes referred to s electricl nd electronic engineering is professionl engineering discipline tht dels with the study nd ppliction of electricity electronics nd electromgnetism. The field first becme n identifible occuption in the lte nineteenth cent ury with the commerciliztion of the electric telegrph nd electricl power supply . The term electricl engineering my or my not encompss electronic engineering. Where distinction is mde electricl engineering is considered to del with the problems ssocited with...
44883. Вторая половина ХХ века с 60-х гг. 20 века 14.64 KB
  Построение европейской зоны высшего образования как ключевого направления развития мобильности граждан с возможностью трудоустройства. Обеспечение конкурентоспособности европейских вузов с другими системами образования в борьбе за студентов деньги влияние. Достижение большей совместимости и сравнимости национальных систем высшего образования.Повышение качества образования.
44885. Веберовская категория “идеального типа”, возможности ее применения в социологическом анализе 15.49 KB
  Веберовская категория €œидеального типа€ возможности ее применения в социологическом анализе. Вебер использует понятие идеального типа. Вебер предполагал что социологи отбирают в качестве характеристик идеального типа определенные аспекты поведения или институтов которые доступны для наблюдения в реальном мире и преувеличивают их до форм логически понятной интеллектуальной конструкции. Например конкретные бюрократические организации могут не совпадать в точности с элементами идеального типа бюрократии однако знание этого идеального...
44886. Решения по результатам диагностики 26.3 KB
  Решения по результатам диагностики Техническая оценка участков трубопровода должна включать в себя следующие этапы: анализ информации содержащейся в техническом паспорте и банке данных; техническое обследование участка анализ результатов; определение степени опасности дефектов; оценка общего напряженнодеформированного состояния участка и его отдельных мест; оценка работоспособности участка; принятие решений о дальнейшей эксплуатации или ремонте и о технических мероприятиях по восстановлению несущей способности участка. На...
44887. Gesunde Ernährung im Job fällt vielen schwer 25.5 KB
  Den meisten bleibt bei der rbeit schlicht keine Zeit in Ruhe zu essen ht eine Umfrge ergeben. Die Kntine ht ml wieder Nudeln mit Tomtensoße der nächste Imbiss ist ein Döner und Zeit fürs Essen bleibt sowieso kum der Chef drängt schon mit dem nächsten Projekt. So oder so ähnlich geht es vielen Berufstätigen in Deutschlnd.
44888. Политическая жизнь Англии 40.5 KB
  Лидер консерваторо вБенджамин Дизраэли слыл одним из самых ловких политиков страны. внес в парламент законопроект о расширении избирательного права Дизраэли будучи в оппозиции провалил его. Несмотря на большие заслуги Дизраэли перед страной кичливые ториаристократы долгое время не признавали его считая выскочкой Дизраэли происходил из еврейской семьи принявшей христианство. Но по мере укрепления партии авторитет Дизраэли возрастал в 1876 г.
44889. «Гнездо» Аксаковых. Творческий путь С.Т. Аксакова, место и значение его творчества в истории русской литературы 29 KB
  Гнездо Аксаковых. Аксакова место и значение его творчества в истории русской литературы. Аксаков Сергей Тимофеевич 17911859 его сыновья: Константин 18171860 Иван 18231886. Аксаков родился в Уфе в старинной дворянской семье отец чиновник мать дочь наместника.