50163

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

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

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

Блондинка - рыжая - брюнетка unit Unit1; interfce uses Windows Messges SysUtils Vrints Clsses Grphics Controls Forms Dilogs ComCtrls StdCtrlsmth TeEngine Series ExtCtrls TeeProcs Chrt; type TForm1 = clssTForm Chrt1: TChrt; Series1: TLineSeries; Series2: TLineSeries; Series3: TLineSeries; Series4: TBrSeries; TrckBr1: TTrckBr; Lbel1: TLbel; Lbel5: TLbel; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Lbel6: TLbel; Lbel2: TLbel; Lbel3:...

Русский

2014-01-17

67.5 KB

3 чел.

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

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

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


 

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

83151. Контроль и учет в компании 85.24 KB
  Планы не всегда выполняются так, как было задумано. Люди не всегда принимают делегированные им права и обязанности. Руководству не всегда удается должным образом мотивировать людей на достижение поставленных целей. Меняются условия окружающей среды, и организация должна соответственно к ним адаптироваться.
83152. Разработка стратегии деятельности ОАО «КЭМЗ» на рынке 211.05 KB
  Целью данной курсовой является развитие процесса исследования среды маркетинга ОАО «КЭМЗ». Задачи курсовой работы: определить сущность и значение исследовательской деятельности маркетинговой среды предприятия; изучить процесс исследования среды маркетинга предприятия...
83153. The English Articles and its development in the History of English language and English Grammar 87.06 KB
  The development of the nаtion is essentiаl for the development of every person belonging to it; becаuse his understаnding аnd percepting the world is formed аccording to the society he grows up in аnd is influenced by the norms аnd vаlues of this society.
83154. Страхование в системе финансов 231.5 KB
  Страхование - это особый вид экономических отношений, призванный обеспечить страховую защиту людей (или организаций) и их интересов от различного рода опасностей. Страхование - одна из древнейших категорий, отражающих особую сферу экономических отношений общества.
83155. Разработка ассортимента современных рыбных блюд 1.09 MB
  Постоянный рост на рынке услуг общественного питания, возникновение и развитие новых концепций и форм обслуживания диктует необходимость гибкого изменения структуры предприятия. Успешная деятельность предприятия питания зависит от того, в какой степени заведению удается привлечь и удержать клиентов.
83156. Эволюция стратегического менеджмента. Основные школы стратегического менеджмента 157 KB
  Актуальность и значение темы доказываются тем, что значение стратегии, позволяющей фирме выживать в конкурентной борьбе в долгосрочной перспективе, резко возросло в последние десятилетия. Ускорение изменений в окружающей среде, появление новых запросов и изменение позиции потребителя...
83158. Численные методы решения инженерных задач на ЭВМ 324.33 KB
  Программа должна работать с любыми значениями аргумента из области определения функции. Обязательно наличие заголовка с указанием функции расположенного над графиком координатной сетки и заданного максимального и минимального значения функции в этом интервале.
83159. Финансы и финансовая система Российской Федерации 90.6 KB
  Финансовая система Российской Федерации. Финансовая политика Российской федерации Выводы Введение Актуальность данной темы обусловлено тем что финансовая система является основой обеспечения государственного суверенитета безопасности и развития страны а финансовые показатели являются основой для оценки эффективности государственной экономической политики. Для достижения указанной цели поставлены следующие задачи: изучить сущность и признаки финансов выявить функции финансов и роль финансов в системе денежных отношений рыночного хозяйства...