рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Разработка диалоговой системы, оформленной в виде пакета прикладных программ и реализующей идею искусственного интеллекта

Разработка диалоговой системы, оформленной в виде пакета прикладных программ и реализующей идею искусственного интеллекта - Лабораторная Работа, раздел Программирование, 1.Задание На Лабораторную Работу Разработать Диалоговую Систему, Офо...

1.Задание на лабораторную работу Разработать диалоговую систему, оформленную в виде пакета прикладных программ и реализующую идею искусственного интеллекта.Для этого необходимо Самостоятельно выбрать предметную область интеллектуального пакета Для выбранной предметной области описать семантическую сеть и правила вывода базу знаний Разработать блоки системной части пакета, реализующие машину логического вывода процедуры работы с семантической сетью Подготовить отладочные варианты наборов данных Провести машинный эксперимент Описать полученные результаты 2.Руководство пользователя 1. Назначение программы В качестве предметной области была выбрана кулинария. Программа предназначена для получения информации о составе различных кулинарных блюд. Пользователю предоставляется возможность перечислить несколько ингредиентов и получить информацию о том, что из этого набора можно приготовить, или ввести интересующее блюдо и узнать из чего оно состоит, или ввести как ингредиенты так и готовый продукт и узнать достаточно ли введенных компонент для приготовления выбранного блюда.

Программа позволяет корректировать имеющуюся базу знаний и создавать новую.

Корректировка заключается в добавлении и удалении знаний и фактов.Но в целях соблюдения целостности базы знаний программа не позволит удалить некоторые знания и факты. Если факт входит в состав знания, то его удаление повлечет нарушение целостности базы. Программа предложит сначала удалить знания, в которые входит этот факт, а потом уже сам факт. 2.Описание базы знаний База знанийФакты декларативные знанияПравила процедурные знания Декларативные знания Числовой кодЗначение12 яйца23 яйца34 яйца4100 грамм молока5200 грамм молока6400 грамм молока70,5 ложки соли81 ложка соли92 ложки соли101 стакан муки112 стакана муки124 стакана муки1310 ложек сахара1413 ложек сахара1515 ложек сахара16Изюм17Дорожжи18Творог19Омлет на 1-го человека20Омлет на 2-х человек21Опара22Тесто23Блины24Яичница на 1-го человека25Яичница на 2-х человек26Кулич27Ватрушка28Жарить29Печь Процедурные знания Код порождаемого фактаКоличество свидетельствСвидетельства1941,4,7,282043 ,5,8,282145,9,11,1722521,3,4,12,1523222, 282431,7,282533,8,2826322,16,2927322,18, 3. Описание диалога Данная программа построена по принципу диалога с пользователем, что обеспечивает удобство и психологический комфорт при работе с ней. После запуска программы появляется стандартное windows-окно - в данном случае главное окно, приглашающее вас к работе.

Данное окно содержит картинку, располагающую вас к приятной реализации программного продукта, и меню из трех пунктов Главное меню, содержащее подпункты Работа с системой и Выход, Помощь и О программе.

Выбрав Работа с системой, вы не только узнаете о ее названии и версии, но и о создателях таковой. Выбор можно осуществлять кроме мыши с помощью сочетания клавиш Alt соответствующая буква.

Нажав меню Работа с системой, вы окажитесь в окне CulinaryMiracles где вам будет представлены следующие возможности системы Правка, Работа, Выход. Ознакомившись с пунктом Помощь, в котором содержится общая информация по данному программному продукту, вы смело можете приступать к реализации основных действий. При выборе Работа с системой появится рабочее окно, где вам будет предложены имеющиеся факты и цели исходной базы знаний.

Теперь все в ваших руках.

Данная программа предоставляет три варианта реализации ее возможностей.Во-первых, вы можете выбрать интересующие вас факты и спросить у системы, что можно из них приготовить, во-вторых, выбрать желаемые цели и запросить, какие факты необходимы для их реализации, и наконец в-третьих, выбрать и факты и цели, а затем система выдаст сообщение о том, что все в порядке либо подскажет вам какие из выбранных фактов оказались лишними, а каких не хватает.

Выше перечисленные действия реализуются легко и просто с помощью кнопок добавить фактцель в список выбранных фактовцелей удалить фактцель из списка выбранных фактовцелей - и запуск на выполнение OK. Для выполнения последующих запросов вам необходимо нажать кнопку Сброс. Для модернизации возможностей Culinary Miracles воспользуйтесь пунктом Правка, где вам будут представлены факты, снабженные информацией, то есть, простой ли это факт или порождаемый факт с содержащимися в нем свидетельствами.

В данном пункте меню вы можете не только добавить или удалить факты исходной базы знаний, но и сохранить измененную новую базу в файл, а также открыть любую из предложенных.Все компоненты программы снабжены помощью, подсказками, что облегчает работу пользователя, как-то сообщения о допущенных ошибках, запрос системы о том, действительно ли вы хотите совершить то или иное действие и т.д. Окончив работу, вы покидаете систему с помощью пункта Выход или другими стандартными способами Windows. 4. Описание работа машинного логического вывода 1. Описание стратегии Стратегия реализации поставленной задачи разбита на 3 возможных варианта желаний пользователя.

Все зависит от того, что пользователь введет только факты компоненты, только знания блюда, и факты и знания.Система сама распознает, какой вариант введен и пойдет по нужному пути. Случай 1. Введены только факты. В данном случае система задействует алгоритм планирования с прямым ходом.

Если хоть один целевой факт т.е. съедобное блюдо достижим, то программа покажет, что именно. Результатом может стать только одно блюдо. Т.е. на неимеющее смысла перечисление всех ингредиентов, программа скромно выдаст только одно блюдо. Случай 2. Введены только знания.В этом случае программа задействует алгоритм планирования с обратным ходом.

Можно ввести как одно, так и несколько блюд, и программа выдаст все ингредиенты для интересующих знаний. Случай 3. Введены и факты и знания.В этом случае система анализирует, что необходимо для введеных знаний, потом какие необходимые факты ввел пользователь и в заключении сообщает какие факты лишние, а каких недостает. 2.4.2. Прямое планирование Подготовка обнуление различных ключей и счетчиков. Цикл на организацию обработки базы знаний до тех пор, пока не будет получено первое целевое значение или не станет ясна невозможность его получения.

Цикл на просмотр всех правил до порождения целевого факта. .Внутри этого цикла осуществляется проверка на необходимость порождения правила и возможность порождения правила. Если и то и то подтверждается, то порождается факт правило, и если этот факт целевой, то обработка заканчивается и этот факт запоминается, иначе переход к следующему правилу Конец цикла.Конец алгоритма, если был порожден целевой факт, то выдача результата на экран, иначе выдача сообщения о невозможности приготовления ни одного блюда из предложенных компонентов.

Алгоритм прямого планирования реализован в процедуре Direct. 2.4.3. Обратное планирование Подготовка обнуление различных ключей и счетчиков. Цикл на просмотр всех введенных пользователем правил. Занесение этого значения в специальный массив. Цикл на разложение каждого введенного пользователем правила на простые компоненты.Все компоненты факты и знания заносятся в специальный массив, который анализируется на наличие в нем правил.

Если правило найдено, то его разлагают на более простые составляющие, и так то тех пор, пока от введенного правила останутся только простые факты. Конец цикла. Переход к следующему введенному правилу. Конец алгоритма. Выдача результатов на экран.Алгоритм прямого планирования реализован в процедуре Inv. 2.5.Примеры реализации основных функций пользователя Задание фактов и получение цели Задание целей и получение фактов Задание фактов и целей и получение информации о лишних и недостающих фактах Задание фактов и целей и получение положительного сообщения системы Добавление факта в базу 3.Описание программы 3.1. Общие свойства Любая программа в интегрированной среде разработки приложений Delphi 4 состоит из файла проекта файл с расширением dpr и нескольких модулей файлы с расширением pas, каждый из которых описывает программную единицу Object Pascal.

Файл проект представляет собой программу, написанную на языке Object Pascal и предназначенную для обработки компилятором.

Эта программа автоматически создается Delphi, содержит лишь несколько строк и не предназначена для редактирования.Данная программа написана с помощью инструмента программирования Delphi 4 и состоит из файла проекта CulinaryMiraclesи трех модулей Culinary.pas, About.pas, Help.pas. 3.2. Логическая структура программы Так как язык программирования Object Pascal - это объектно-ориентированный язык, то отобразить схематично многообразие процедур - обработчиков событий нажатий на многочисленные кнопки, вызовов меню и прочее не позволяет лист бумаги.

Так что логическая структура отображает только модули работы системы по обработке введенных данных, добавлению и удалению фактов, сохранению и открытию базы знаний. 3.3.Описание функций модулей 1procedure FormActivate Задание начальных параметров, загрузка базы знаний Base.dat2. 2procedure Timer1Timer Обеспечивает бегущие надписи при заставке3. 3procedure N6ClickОбработчик вызова меню О программе4. 4procedure N2ClickОбработчик вызова меню Работа с системой5. 5Procedure SpeedButton3ClickОбработчик нажатия кнопки Выход, выход из программы6. 6Procedure SpeedButton1ClickОбработчик нажатия кнопки Правка7. 7Procedure SpeedButton8ClickОбработчик нажатия кнопки Возврат, возврат в главное меню8. Procedure SpeedButton2ClickОбработчик нажатия кнопки Работа, появления окна для выбора фактов и знаний9. procedure N7ClickОбработчик вызова пункта Возврат в окне выбора фактов procedure BitBtn1ClickЗанесение фактов в окошко Выбранные факты11. Procedure BitBtn3ClickЗанесение фактов в окошко Выбранные цели12. Procedure BitBtn5ClickОбработчик нажатия кнопки ОК, обработка введеных данных, выдача резльтатов13. Procedure BitBtn6ClickОбработчик нажатия кнопки Сброс, обнуление счетчиков14. Procedure Timer2TimerОбеспечивает выплывание надписи ОК15. Procedure LoadBaseПроцедура открытия новой базы16. procedure SaveBaseПроцедура сохранения текущей базы17. Procedure SpeedButton6ClickОбработчик нажатия кнопки Открыть БЗ, выдача соответствующего диалогового окна18. Procedure SpeedButton7ClickОбработчик нажатия кнопки Сохранить как, выдача соответствующего диалогового окна19. procedure ListBox1ClickОтображение фактов в окне Имеющиеся факты20. Procedure SpeedButton4Click Обработчик нажатия кнопки Добавить, отображение окошка для добавления в БЗ фактов21. Procedure SpeedButton10ClickОбработчик нажатия кнопки Отмена в окошке для добавления фактов, возврат в окно Правка22. Procedure RadioGroup1ClickОбработчик выбора типа факта в окне добавления фактов23. procedure AddSimpleFactПроцедура добавления простого факта24. Procedure SpeedButton9ClickОбработчик нажатия кнопки ОК в окошке для добавления фактов, вызов процедуры AddSimpleFact25. Procedure SpeedButton11ClickОбработчик нажатия кнопки Добавить при добавлении фактов в БЗ, эта кнопка добавляет факты в знание при его определении26. Procedure AddComplexFactПроцедура добавления правила27. procedure DeleteFactПроцедура удаления факта28. Procedure SpeedButton5ClickОбработчик нажатия кнопки Удалить29. Procedure BitBtn2ClickУдаление фактов в окне Выбранные факты30. procedure BitBtn4ClickУдаление фактов в окне Выбранные цели31. procedure N5ClickВызов пункта меню Помощь, появление окна Помощь32. procedure N4ClickВызов пункта меню Выход, выход из программы 4.Список литературы 1. В.А.Благодатских, С.Н.Семенов, А.М.Хамов. Лабораторный практикум по прикладному и системному программированию М. Финансы и статистика, 1985. 2. Фаронов В.В. Delphi4,учебный курс М. Нолидж,1999. 3. В.А. Благодатских, М.А. Енгибарян, Е.В. Ковалевская.

Экономика, разработка и использование программного обеспечения ЭВМ М.Финансы и статистика, 1995. 4. Роб Баас, Майк Фервай.

Delphi 4 Полное руководство - Киев, издательская группа BHV, 1999. 5.Приложения 5.1.Листинги программы unit Culinary interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, jpeg, Menus, Buttons type TForm1 classTForm Image1 TImage Label1 TLabel Label2 TLabel Label3 TLabel Timer1 TTimer MainMenu1 TMainMenu N1 TMenuItem N2 TMenuItem N3 TMenuItem N4 TMenuItem N5 TMenuItem N6 TMenuItem SpeedButton1 TSpeedButton SpeedButton2 TSpeedButton SpeedButton3 TSpeedButton ListBox1 TListBox ListBox2 TListBox Label4 TLabel Label5 TLabel Bevel1 TBevel Bevel2 TBevel SpeedButton4 TSpeedButton SpeedButton5 TSpeedButton SpeedButton6 TSpeedButton SpeedButton7 TSpeedButton SpeedButton8 TSpeedButton Bevel3 TBevel ListBox4 TListBox ListBox5 TListBox ListBox6 TListBox BitBtn1 TBitBtn BitBtn2 TBitBtn BitBtn3 TBitBtn BitBtn4 TBitBtn Label7 TLabel Label8 TLabel Label9 TLabel Label10 TLabel Bevel4 TBevel Bevel5 TBevel N7 TMenuItem BitBtn5 TBitBtn ComboBox1 TComboBox ComboBox2 TComboBox Label11 TLabel Label12 TLabel BitBtn6 TBitBtn Label13 TLabel Timer2 TTimer ListBox3 TListBox OpenDialog1 TOpenDialog SaveDialog1 TSaveDialog Bevel6 TBevel Bevel7 TBevel Label6 TLabel ComboBox3 TComboBox Edit1 TEdit RadioGroup1 TRadioGroup Panel1 TPanel SpeedButton9 TSpeedButton SpeedButton10 TSpeedButton Label14 TLabel Label15 TLabel SpeedButton11 TSpeedButton procedure FormActivateSender TObject procedure Timer1TimerSender TObject procedure N6ClickSender TObject procedure N2ClickSender TObject procedure SpeedButton3ClickSender TObject procedure SpeedButton1ClickSender TObject procedure SpeedButton8ClickSender TObject procedure SpeedButton2ClickSender TObject procedure N7ClickSender TObject procedure BitBtn1ClickSender TObject procedure BitBtn3ClickSender TObject procedure BitBtn5ClickSender TObject procedure BitBtn6ClickSender TObject procedure Timer2TimerSender TObject procedure LoadBase procedure SaveBase procedure SpeedButton6ClickSender TObject procedure SpeedButton7ClickSender TObject procedure ListBox1ClickSender TObject procedure SpeedButton4ClickSender TObject procedure SpeedButton10ClickSender TObject procedure RadioGroup1ClickSender TObject procedure AddSimpleFact procedure SpeedButton9ClickSender TObject procedure SpeedButton11ClickSender TObject procedure AddComplexFact procedure DeleteFact procedure SpeedButton5ClickSender TObject procedure BitBtn2ClickSender TObject procedure BitBtn4ClickSender TObject procedure N5ClickSender TObject procedure N4ClickSender TObject private Private declarations public Public declarations end TFactFile record факт Numberinteger номер факта Znachstring40 значение факта Qinteger количество порождаемых фактов FactInarray1 10 of integer массив порождаемых фактов ZelbyteЦелевой или нецелевой факт end TKnow Record порождаемый факт Numberinteger номер порождаемого факта Qinteger количество порождаемых фактов FactInarray1 10 of integer массив порождаемых фактов Zelbyte end TFact record факт Numberinteger номер факта Znachstring40 значение факта end TBaseRecord Factarray1 40 of integer Rulearray 1 40 of TKnow end TFFfile of TFactFile var Form1 TForm1 FFTFF TermFactarray1 50 of integer массив c тем что хотим иметь на выходе NE,NK,NF,NF1,NFF,NR,KEND,Rez,NST,Numinte ger Spisarray1 30 of integer необходимые факты для цели SpisFarray1 30 of integer выбранные факты BaseKnowTBase Knowledgearray1 5 of integer массив с выбранными правилами VectFactarray1 50 of TFact база фактов implementation uses About, Help R .DFM procedure TForm1.FormActivateSender TObject var KnowTKnow FactTFact FactFileTFactFile i,jinteger begin NF0NF10NK0 AssignFileFF,Base.dat Файл с фактами ResetFF NFF0 While Not eofFF do begin ReadFF,FactFile NFFNFF1 VectFactNFF.NumberFactFile.Number VectFactNFF.ZnachFactFile.Znach ListBox1.Items.AddVectFactNFF.Znach ListBox3.Items.AddVectFactNFF.Znach if FactFile.Q 1 then begin NRNR1 BaseKnow.RuleNR.NumberFactFile.Number BaseKnow.RuleNR. ZelFactFile.Zel ListBox5.Items.AddFactFile.Znach BaseKnow.RuleNR.QFactFile.Q for i1 to BaseKnow.RuleNR.Q do BaseKnow.RuleNR.FactIniFactFile.FactIni end end closefileFF end procedure TForm1.Timer1TimerSender TObject begin label1.toplabel1.top-2 label2.leftlabel2.left4 label3.toplabel3.top2 if label2.left100 then timer1.Enabledfalse end procedure TForm1.N6ClickSender TObject begin AboutBox.Show end procedure TForm1.N2ClickSender TObject begin N1.Visiblefalse N2.Visiblefalse N3.Visiblefalse N4.Visiblefalse N5.Visiblefalse N6.Visiblefalse label1.Visiblefalse label2.Visiblefalse label3.Visiblefalse form1.Height150 form1.Width185 form1.BorderStylebsDialog form1.PositionpoScreenCenter speedbutton1.Visibletrue speedbutton2.Visibletrue speedbutton3.Visibletrue end procedure TForm1.SpeedButton3ClickSender TObject begin close end procedure TForm1.SpeedButton1ClickSender TObject begin form1.Height343 form1.Width450 form1.BorderStylebsSingle form1.PositionpoScreenCenter speedbutton1.Visiblefalse speedbutton2.Visiblefalse speedbutton3.Visiblefalse speedbutton4.Visibletrue speedbutton5.Visibletrue speedbutton6.Visibletrue speedbutton7.Visibletrue speedbutton8.Visibletrue listbox1.Visibletrue listbox2.Visibletrue bevel1.Visibletrue bevel2.Visibletrue bevel3.Visibletrue bevel3.Width430 label4.Visibletrue label5.Visibletrue label6.Visibletrue end procedure TForm1.SpeedButton8ClickSender TObject begin form1.Height150 form1.Width185 form1.BorderStylebsDialog form1.PositionpoScreenCenter speedbutton1.Visibletrue speedbutton2.Visibletrue speedbutton3.Visibletrue speedbutton5.Visiblefalse speedbutton6.Visiblefalse speedbutton7.Visiblefalse speedbutton8.Visiblefalse listbox1.Visiblefalse listbox2.Visiblefalse bevel1.Visiblefalse bevel2.Visiblefalse bevel3.Visiblefalse bevel3.Width481 label4.Visiblefalse label5.Visiblefalse label6.Visiblefalse panel1.Visiblefalse edit1.Visiblefalse combobox3.Visiblefalse radiogroup1.Visiblefalse speedbutton11.visiblefalse end procedure TForm1.SpeedButton2ClickSender TObject begin form1.Height343 form1.Width503 form1.BorderStylebsSingle form1.PositionpoScreenCenter speedbutton1.Visiblefalse speedbutton2.Visiblefalse speedbutton3.Visiblefalse BitBtn5.Visibletrue BitBtn6.Visibletrue bevel3.Visibletrue bevel4.Visibletrue bevel5.Visibletrue bevel6.Visibletrue bevel7.Visibletrue ListBox3.Visibletrue ListBox4.Visibletrue ListBox5.Visibletrue ListBox6.Visibletrue label7.Visibletrue label8.Visibletrue label9.Visibletrue label10.Visibletrue label11.Visibletrue label12.Visibletrue ComboBox1.Visibletrue ComboBox2.Visibletrue BitBtn1.Visibletrue BitBtn2.Visibletrue BitBtn3.Visibletrue BitBtn4.Visibletrue N7.Visibletrue end procedure TForm1.N7ClickSender TObject begin form1.Height150 form1.Width185 form1.BorderStylebsDialog form1.PositionpoScreenCenter speedbutton1.Visibletrue speedbutton2.Visibletrue speedbutton3.Visibletrue BitBtn5.Visiblefalse BitBtn6.Visiblefalse bevel3.Visiblefalse bevel4.Visiblefalse bevel5.Visiblefalse bevel6.Visiblefalse bevel7.Visiblefalse ListBox3.Visiblefalse ListBox4.Visiblefalse ListBox5.Visiblefalse ListBox6.Visiblefalse label7.Visiblefalse label8.Visiblefalse label9.Visiblefalse label10.Visiblefalse BitBtn1.Visiblefalse BitBtn2.Visiblefalse BitBtn3.Visiblefalse BitBtn4.Visiblefalse N7.Visiblefalse label11.Visiblefalse label12.Visiblefalse ComboBox1.Visiblefalse ComboBox2.Visiblefalse BitBtn6ClickSender end procedure TForm1.BitBtn1ClickSender TObject var rabinteger begin rabListBox3.itemindex listbox4.Items.AddVectFactrab1.Znach NF1NF11 SpisFNF1VectFactrab1.Number BaseKnow.FactNF1VectFactrab1.Number NFNF1 end procedure TForm1.BitBtn3ClickSender TObject var rab,i,jinteger begin rabListBox5.itemindex for i1 to NFF do if BaseKnow.Rulerab1.NumberVectFacti.Number then begin listbox6.Items. AddVectFacti.Znach NKNK1 KnowledgeNKVectFacti.Number end end Procedure Direct var KIZ,NS,KA,k,i,l,jinteger begin Теперь алгоритм прямого хода KEnd0KIZ0NS0 While KEnd0 and KIZ0 do begin организация обработки БЗ до тех пор, пока не получим требуемое целевое значение или не станет ясна невозможность его получения KIZ1 i1 While i NR and Kend0 do begin Просмотр всех правил до порождения целевого факта KA0 Проверка нужно ли порождать факт k1 While KA0 and K NF do begin if BaseKnow.Rulei.NumberBaseKnow.Factk then KA1 Факт входит в множество имеющихся kk1 end Проверка можно ли породить факт j1 While j BaseKnow.Rulei.Q and KA0 do begin Анализ порождающих фактов KA1 k1 While k NF and KA1 do begin Проверка наличия порождающего факта есть ли факт в БЗ if BaseKnow.Rulei.FactInjBaseKnow.Factk then KA0 kk1 end если при выходе КА1, то нет факта, необходимого для порождения jj1 end if KA0 then begin Все факты, необходимые для порождения нового факта, есть в наличие NFNF1 BaseKnow.FactNFBaseKnow.Rulei.Number KIZ0 Проверка является ля порожденный факт целевым if BaseKnow.Rulei.Zel1 then begin KEND1 RezBaseKnow.Rulei.Number end end ii1 end Конец очередного просмотра всех правил Конец обработки БЗ end end Procedure Inv var KVPC,KVPF,AnFact,NS1,Rab,FindFactAninteg er L,NS,i,j,k,KAinteger begin Алгоритм обратного хода KEnd0 L1 NST0 While L NK do begin Организация просмотра всех целевых фактов, пока не подтвердится возможность порождения каког-л. из них KEND0 NstNst1 SpisNstKnowledgel While Kend0do begin FindFactAn0 j0 While FindFactAn0and j NST do выбор факта для анализа begin for k1 to NR do if BaseKnow.Rulek.NumberSpisj then begin FindFactAn1 Ищем, есть ли правило AnFactSpisj которое можно породить for ij to Nst-1 do SpisiSpisi1 NstNst-1 end jj1 end if FindFactAn0 then KEnd1 Факта для анализа нет, конец анализа else begin i1 While I NR do begin анализ возм-ти порождения выбранного факта if AnFactBaseKnow.Rulei.Number then begin требуемый факт является порожденным for j1 to BaseKnow.Rulei.Q do begin NSTNST1 SpisNstBaseKnow.Rulei. FactInj end endконец анализа порождаемого факта ii1 endWhile end end ll1 endОкончание обработки всех целевых фактов if NSTNK then KEND0 else KEND1 Ни один из целевых фактов не может быть порожден end procedure TForm1.BitBtn5ClickSender TObject нажали кнопку ОК var i,j,k,KA,linteger begin BitBtn5.enabledfalse if NF1 0 and NK0 then факты введены, цель не введена begin Direct if Kend 0 then begin for i1 to NFF do if VectFacti.NumberRez then ListBox6.Items.AddVectFacti.Znach Label10.CaptionВы приготовите Label10.Font.Colorclnavy end else Application.MessageBoxИз выбранных компонентов ничего нельзя приготовить,Ошибка,mbiconwarning end if NF10 and NK 0 then факты не введены, цель введена begin Inv if KEnd 0 then begin for i1 to NST do for j1 to NFF do if SpisiVectFactj.Number then ListBox4.Items.AddVectFactj.Znach Label8.CaptionВам необходимо Label8.Font.Colorclnavy end end if NK 0 and NF1 0 then анализ на совпадение фактов с целью begin k1 While k NR do begin Если есть порождаемые факты i1 то раскладываем их на простые составляющие KA0 While i NF1and KA0 do begin if BaseKnow.Rulek.NumberSpisFi then begin for ji to NF1-1 do SpisFjSpisFj1 NF1NF1-1 KA1 end ii1 end if KA1 then begin for i1 to BaseKnow.Rulek.Q do begin NF1NF11 SpisFNF1BaseKnow.Rulek.FactIni end k0 end kk1 end INV i1 While i NF1 do Проверка, что лишнее begin или чего не хватает KA0 j1 While j NST and KA0 do begin if SpisFiSpisj then Ka1 jj1 end if KA1 then begin for ki to NF1-1 do SpisFkSpisFk1 ii-1 NF1NF1-1 for lj-1 to NST-1 do SpislSpisl1 NSTNst-1 end ii1 end if Nst0and NF10 then Timer2.Enabledtrue else begin KA0 for i1 to NST do for j1 to NFF do begin if SpisiVectFactj.Number and KA0 then begin combobox2.TextVectFactj.Znach KA1 end if SpisiVectFactj.Number and KA1 then combobox2.Items.AddVectFactj.Znach end KA0 for i1 to NF1 do for j1 to NFF do begin if SpisFiVectFactj.Number and KA0 then begin combobox1.TextVectFactj.Znach KA1 end if SpisFiVectFactj.Number and KA1 then combobox1.Items.AddVectFactj.Znach end end end if Nk0 and NF10 then begin Application.MessageBoxИсходные данные не введены,Ошибка,mbiconwarning BitBtn5.Enabledtrue end end procedure TForm1.BitBtn6ClickSender TObject begin listbox4.Items.Clear listbox6.Items.Clear label10.CaptionВыбранные цели label8.CaptionВыбранные факты Label10.Font.Colorcllime Label8.Font.Colorcllime NK0 NF10 label13.Visiblefalse label13.Top104 ComboBox1.Clear ComboBox2.Clear BitBtn5.enabledtrue end procedure TForm1.Timer2TimerSender TObject begin label13.Visibletrue label13.toplabel13.top2 if label13.top150 then timer2.Enabledfalse end procedure TForm1.LoadBase var iinteger FF TFF FactFileTFactFile begin i0 OpenDialog1.FilterБаза знаний.dat if not OpenDialog1.Execute then exit if FileExistsOpenDialog1.FileNamefalse then begin Application.

MessageBoxФайл с таким именем не найден,Error,MBiconwarning exit end else begin AssignFileFF,OpenDialog1.FileName resetFF NR0 NFF0 While Not eofFF do begin ReadFF,FactFile NFFNFF1 VectFactNFF.NumberFactFile.Number VectFactNFF.ZnachFactFile.Znach ListBox3.Items.AddVectFactNFF.Znach ListBox1.Items. AddVectFactNFF.Znach if FactFile.Q 1 then begin NRNR1 BaseKnow.RuleNR.NumberFactFile.Number BaseKnow.RuleNR.ZelFactFile.Zel ListBox5.Items.AddFactFile.Znach BaseKnow.RuleNR.QFactFile.Q for i1 to BaseKnow.RuleNR.Q do BaseKnow.RuleNR.FactIniFactFile.FactIni end end end closefileFF end procedure TForm1.SpeedButton6ClickSender TObject var infinteger begin infApplication.MessageboxЗагрузить новую БЗ,Question,MBYESNOMBICONQUESTION if infidNO then exit if infidYes then begin ListBox1.Clear ListBox2.Clear ListBox3.Clear ListBox4.Clear ListBox5.Clear ListBox6.Clear LoadBase end end procedure TForm1.SaveBase var i,k,jinteger FF TFF FactFileTFactFile begin SaveDialog1.FilterБаза знаний.dat if SaveDialog1.Execute then begin assignfileFF,SaveDialog1.filename rewriteFF for i1 to NFF do Begin FactFile.NumberVectFacti.Number FactFile.ZnachVectFacti.Znach FactFile.Q0 FactFile.Zel0 for j1 to NR do if VectFacti.NumberBaseKnow.Rulej.Number then begin FactFile. Q BaseKnow.Rulej.Q FactFile.Zel BaseKnow.Rulej.Zel for k1 to BaseKnow.Rulej.Q do FactFile.FactInkBaseKnow.Rulej.FactInk end writeff,FactFile end end else exit closefileFF end procedure TForm1.SpeedButton7ClickSender TObject begin SaveBase end procedure TForm1.ListBox1ClickSender TObject var i,j,rab,r,tinteger begin label6.Visibletrue t0 ListBox2.Clear rabListBox1.Itemindex for i1 to NR do if VectFactrab1.NumberBaseKnow.Rulei.Number then begin t1 for j1 to BaseKnow.Rulei.Q do for r1 to NFF do if VectFactr.NumberBaseKnow.Rulei.FactInjth en ListBox2.Items.AddVectFactr.Znach end if t1 then label6.CaptionПорождаемый факт if t0 then label6.CaptionПростой факт end procedure TForm1.SpeedButton4ClickSender TObject begin speedbutton6.Enabledfalse speedbutton7.Enabledfalse speedbutton8.Enabledfalse panel1.Visibletrue edit1.Visibletrue combobox3.Visibletrue radiogroup1.Visibletrue radiogroup1.ItemIndex0 Num0 edit1.SetFocus edit1.Clear end procedure TForm1.SpeedButton10ClickSender TObject begin panel1.Visiblefalse edit1.Visiblefalse combobox3.Visiblefalse radiogroup1.Visiblefalse speedbutton11.visiblefalse speedbutton6.Enabledtrue speedbutton7.Enabledtrue speedbutton8.Enabledtrue end procedure TForm1.RadioGroup1ClickSender TObject begin if radiogroup1.ItemIndex0 then begin combobox3.Enabledfalse label14.Enabledfalse speedbutton11.visiblefalse edit1.SetFocus end if radiogroup1.ItemIndex1 then begin combobox3.Enabledtrue label14.Enabledtrue speedbutton11.visibletrue edit1.SetFocus end end procedure TForm1.AddSimpleFact var i,tinteger rstring begin redit1.text for i1 to NFF do if rVectFacti.Znach then begin Application.MessageBoxТакой факт уже существует, Ошибка,mbiconwarning exit end tVectFactNFF.Number NFFNFF1 VectFactNFF.Numbert1 VectFactNFF.Znachr ListBox1.items.addVectFactNFF.Znach ListBox3.items.addVectFactNFF.Znach end procedure TForm1.AddComplexFact var i,tinteger rstring begin redit1.text for i1 to NFF do if rVectFacti.Znach then begin Application.MessageBoxТакой факт уже существует, Ошибка,mbiconwarning exit end tVectFactNFF.Number NFFNFF1 VectFactNFF.Numbert1 VectFactNFF.Znachr ListBox1.items.addVectFactNFF.Znach ListBox3.items.addVectFactNFF.Znach ListBox5.items.addVectFactNFF.Znach NRNR1 BaseKnow.RuleNR.NumberVectFactNFF.Number BaseKnow.RuleNR.QNum BaseKnow.RuleNR.Zel1 for i1 to Num do BaseKnow.RuleNR.FactIniSpisFi end procedure TForm1.SpeedButton9ClickSender TObject begin if radiogroup1.ItemIndex0 then if edit1.Text then begin Application.MessageBoxНе введены данные,Ошибка,mbiconwarning exit end else AddSimpleFact if radiogroup1.ItemIndex1 then if edit1.Text or ComboBox3.Textor Num0then begin Application.MessageBoxВведены не все данные, Ошибка,mbiconwarning exit end else begin AddComplexFact combobox3.Clear end edit1.Clear Num0 end procedure TForm1.SpeedButton11ClickSender TObject var rabinteger begin rabListBox1.itemindex ComboBox3.Items.AddVectFactrab1.Znach ComboBox3.ItemIndex0 NumNum1 SpisFNumVectFactrab1.Number end procedure TForm1.DeleteFact var i,j,rab,t,kinteger begin rabListBox1.ItemIndex1 kVectFactrab.Number for i1 to NR do for j1 to BaseKnow.Rulei.Q do if BaseKnow.Rulei.FactInjk then begin Application.MessageBoxДля сохранения целостности базы удалите вначале факт, содержащий в себе данный,Предупреждение,mbiconwarning exit end for irab to NFF-1 do begin VectFacti.NumberVectFacti1.Number VectFacti.ZnachVectFacti1.Znach end NFFNFF-1 for i1 to NR do if kBaseKnow.Rulei.Number then begin for ti to NR-1 do begin BaseKnow.Rulet.NumberBaseKnow.Rulet1.Num ber BaseKnow.Rulet.QBaseKnow.Rulet1.Q BaseKnow.Rulet.ZelBaseKnow.Rulet1.Zel for j1 to BaseKnow.Rulet.Q do BaseKnow.Rulet.FactInjBaseKnow.Rulet1.Fa ctInj end NRNR-1 end ListBox1.Clear ListBox2.Clear ListBox3.Clear ListBox5.Clear for i1 to NFF do begin ListBox1.Items.AddVectFacti.Znach ListBox3.Items.AddVectFacti.Znach for j1 to NR do if VectFacti.NumberBaseKnow.Rulej.Number then ListBox5.Items.AddVectFacti.Znach end end procedure TForm1.SpeedButton5ClickSender TObject var infinteger begin infApplication.

MessageboxУдалить факт,Question,MBYESNOMBICONQUESTION if infidNO then exit if infidYes then DeleteFact end procedure TForm1.BitBtn2ClickSender TObject var rab,i,jinteger begin if NF1 0 then begin rabListBox4.Itemindex for irab1 to NF1-1 do begin SpisFiSpisFi1 BaseKnow.FactiBaseKnow.Facti1 end NF1NF1-1 NFNF1 ListBox4.Clear for i1 to NF1 do for j1 to NFF do if SpisFiVectFactj.Number then ListBox4.Items.AddVectFactj.Znach end end procedure TForm1.BitBtn4ClickSender TObject var rab,i,jinteger begin if NK 0 then begin rabListBox6.Itemindex for irab1 to NK-1 do KnowledgeiKnowledgei1 NKNK-1 ListBox6.Clear for i1 to NK do for j1 to NFF do if KnowledgeiVectFactj.Number then ListBox6.Items.AddVectFactj.Znach end end procedure TForm1.N5ClickSender TObject begin HelpBox.show end procedure TForm1.N4ClickSender TObject begin close end end. 5.2.Распечатка экранных форм Заставка Был выбран пункт меню Работа с системой Окно пункта меню Правка Пользователь пожелал добавить факт, отобразилось окошко В окне Правка можно просмотреть все факты, при этом узнать их статус и состав PAGE 13 PAGE 1 Cоединение кабелем витой парой UTP UTP Unshielded Twisted Pair - неэкранированные скрученные пары Общий термин, используемый для обозначения кабельных систем на основе неэкранированных скрученных попарно медных проводников. используется также термин витая пара. Соединение каждого компьютера производится отдельным кабелем от устройства HUB. Приемущества очевидны топология звезда, возможность подключать каждого пользователя отдельным куском кабеля, устойчивость к сбоям, расширение до 100Mbit. Недостатки несколько более высокая стоимость по отношению к коаксиальному кабелю, непргодность для длинных сегментов.

Витую пару лучше всего использовать при наличчи в доме или подъезде нескольких абонентов, которых легче соеденить используя один хаб и несколько кабелей от этого хаба к каждому пользователю нежели проводить коаксиал через всех. Это сеть основанная на экpаниpованной STP или неэкpаниpованной UTP витой паpе. Hазывается эта сеть ETHERNET 10BASE-T и FAST ETHERNET 100BASE-X Сеть стpоиться по топологии звезда. Стандаpты здесь такие Максимальное pасстояние между двумя устpойствами - 100 метpов.

Максимальное количество машин - 1024. Как показали опыты на обоpудовании 3COM длина сегмента может достигать 170-250 метpов.

Hо нужно также учитывать пеpеход на 100Mbit пpи котоpом это, скоpее всего, pаботать не будет.

Активные концентраторы HUBs Пеpвые ЛВС на Ethernet 10Base-2 5 были невелики из-за огpаничений на длину кабеля.

Чтобы обеспечить возможность увеличивать сеть, была введена концепция повтоpителя.

Они не пpосто соединяли два куска имея 2 поpта кабеля, но и фильтpовали эл.сигналы, пpоходящие между сегментами отpубали, к пpимеpу, сегмент в случае возникновения там кз и тд, т.е. выполняли partitioning - эл.pазбиение сети. Пpи пеpеходе на 10Base-T, была введена концепция - повтоpителя-концентpатоpа, котоpый обычно пpосто называют концентpатоpом hub или повтоpителем repeater. к нему пpисоединяется каждый узел сети, вместо того, чтобы чеpез какой нибудь тpансивеp если это необходимо пpисоединяться к общему кабелю. место, отведенное коаксиальному кабелю в шинной сети, занимает цифpовая шина концентpатоpа, к котоpой чеpез поpт повтоpителя как и к поpту повтоpителя шинной сети подключаются узлы сети. Для Ethernet теpмины повтоpитель и концентpатоp взаимозаменяем в FDDI используется теpмин concentrator,в ArcNet - hub. Коммутаторы Swich Устройство, соединяющее две или несколько физических сетей и передающее пакеты из одной сети в другую.

Коммутаторы могут фильтровать пакеты, т.е. передавать в другие сегменты или сети только часть трафика, на основе информации канального уровня MAC-адрес.

Если адрес получателя пристутствует в таблице адресов моста, кадр передается только в тот сегмент или сеть, где находится получатель.

Похожими устройствами являются повторители HUBs, которые просто передают электрические сигналы из одного кабеля в другой и маршрутизаторы router, которые принимают решение о передаче пакетов на основе различных критериев, основанных на информации сетевого уровня.

В терминологии OSI мост является промежуточной системой на уровне канала передачи данных Data Link Layer. Повторители и концентраторы локальных сетей реализуют базовые технологии, разработанные для разделяемых сред передачи данных.

Классическим представителем такой технологии является технология Ethernet на коаксиальном кабеле.

В такой сети все компьютеры разделяют во времени единственный канал связи, образованный сегментом коаксиального кабеля При передаче каким-нибудь компьютером кадра данных все остальные компьютеры принимают его по общему коаксиальному кабелю, находясь с передатчиком в постоянном побитном синхронизме.

На время передачи этого кадра никакие другие обмены информации в сети не разрешаются. Способ доступа к общему кабелю управляется несложным распределенным механизмом арбитража - каждый компьютер имеет право начать передачу кадра, если на кабеле отсутствуют информационные сигналы, а при одновременной передаче кадров несколькими компьютерами схемы приемников умеют распознавать и обрабатывать эту ситуацию, называемую коллизией.

Обработка коллизии также несложна - все передающие узлы прекращают выставлять биты своих кадров на кабель и повторяют попытку передачи кадра через случайный промежуток времени. Работа всех узлов сети Ethernet в режиме большой распределенной электронной схемы с общим тактовым генератором приводит к нескольким ограничениям, накладываемым на сеть. Основными ограничениями являются Максимально допустимая длина сегмента.

Она зависит от типа используемого кабеля для витой пары это 100 м, для тонкого коаксиала - 185 м, для толстого коаксиала - 500 м, а для оптоволокна - 2000 м. Для наиболее дешевых и распространенных типов кабеля - витой пары и тонкого коаксиала - это ограничение часто становится весьма нежелательным.

Технология Ethernet предлагает использовать для преодоления этого ограничения повторители и концентраторы, выполняющие функции усиления сигнала, улучшения формы фронтов импульсов и исправления погрешностей синхронизации.

Однако возможности этих устройств по увеличению максимально допустимого расстояния между двумя любыми узлами сети которое называется диаметром сети не очень велики - число повторителей между узлами не может превышать 4-х так называемое правило четырех хабов.

Для витой пары это дает увеличение до 500 м рисунок 2.2. Кроме того, существует общее ограничение на диаметр сети Ethernet - не более 2500 м для любых типов кабеля и любого количества установленных концентраторов. Это ограничение нужно соблюдать для четкого распознавания коллизий всеми узлами сети, как бы далеко в заданных пределах они друг от друга не находились, иначе кадр может быть передан с искажениями.

Максимальное число узлов в сети. Стандарты Ethernet ограничивают число узлов в сети предельным значением в 1024 компьютера вне зависимости от типа кабеля и количества сегментов, а каждая спецификация для конкретного типа кабельной системы устанавливает еще и свое, более жесткое ограничение. Так, к сегменту кабеля на тонком коаксиале нельзя подключить более 30 узлов, а для толстого коаксиала это число увеличивается до 100 узлов.

В сетях Ethernet на витой паре и оптоволокне каждый отрезок кабеля соединяет всего два узла, но так как количество таких отрезков спецификация не оговаривает, то здесь действует общее ограничение в 1024 узла. Существуют также и другие причины, кроме наличия указанных в стандартах ограничений, по которым число узлов в сети Ethernet обычно не превосходит нескольких десятков.

Эти причины лежат в самом принципе разделения во времени одного канала передачи данных между всеми узлами сети. При подключении к такому каналу каждый узел пользуется его пропускной способностью - 10 Мбс - в течение только некоторой доли общего времени работы сети. Соответственно, на узел приходится эта же доля пропускной способности канала. Даже если упрощенно считать, что все узлы получают равные доли времени работы канала и непроизводительные потери времени отсутствуют, то при наличии в сети N узлов на один узел приходится только 10N Мбс пропускной способности.

Очевидно, что при больших значениях N пропускная способность, выделяемая каждому узлу, оказывается настолько малой величиной, что нормальная работа приложений и пользователей становится невозможной - задержки доступа к сетевым ресурсам превышают тайм-ауты приложений, а пользователи просто отказываются так долго ждать отклика сети. Случайный характер алгоритма доступа к среде передачи данных, принятый в технологии Ethernet, усугубляет ситуацию.

Если запросы на доступ к среде генерируются узлами в случайные моменты времени, то при большой их интенсивности вероятность возникновения коллизий также возрастает и приводит к неэффективному использованию канала время обнаружения коллизии и время ее обработки составляют непроизводительные затраты.

Доля времени, в течение которого канал предоставляется в распоряжение конкретному узлу, становится еще меньше.

Экспоненциальный рост задержек при увеличении числа узлов очень характерен как для технологии Ethernet, так и для других технологий локальных сетей, основанных на разделении каналов во времени - Token Ring, FDDI, 100VG-AnyLAN. До недавнего времени в локальных сетях редко использовались мультимедийные приложения, перекачивающие большие файлы данных, нередко состоящие из нескольких десятков мегабайт. Приложения же, работающие с алфавитно-цифровой информацией, не создавали значительного трафика.

Поэтому долгое время для сегментов Ethernet было действительным эмпирическое правило - в разделяемом сегменте не должно быть больше 30 узлов.

Теперь ситуация изменилась и нередко 3-4 компьютера полностью загружают сегмент Ethernet с его максимальной пропускной способностью в 10 Мбс или же 14880 кадров в секунду.

Более универсальным критерием загруженности сегмента Ethernet по сравнению с общим количеством узлов является суммарная нагрузка на сегмент, создаваемая его узлами.

Если каждый узел генерирует в среднем mi кадров в секунду для передачи по сети, то средняя суммарная нагрузка на сеть будет составлять Si mi кадров в секунду.

Известно, что при отсутствии коллизий, то есть при самом благоприятном разбросе запросов на передачу кадров во времени, сегмент Ethernet может передать не больше 14880 кадров в секунду для самых коротких по стандарту кадров в 64 байта.

Поэтому, если принять эту величину за единицу, то отношение Si mi14880 будет характеризовать степень использования канала, называемый также коэффициентом загрузки.

Зависимость времени ожидания доступа к сети от коэффициента загрузки гораздо меньше зависит от интенсивности трафика каждого узла, поэтому эту величину удобно использовать для оценки пропускной способности сети, состоящей из произвольного числа узлов.

Имитационное моделирование сети Ethernet и исследование ее работы с помощью анализаторов протоколов показали, что при коэффициенте загрузки в районе 0.3 - 0.5 начинается быстрый рост числа коллизий и соответственно времени ожидания доступа.

Поэтому во многих системах управления сетями пороговая граница для индикатора коэффициента загрузки по умолчанию устанавливается на величину 0.3. Ограничения, связанные с возникающими коллизиями и большим временем ожидания доступа при значительной загрузке разделяемого сегмента, чаще всего оказываются более серьезными, чем ограничение на максимальное количество узлов, определенное в стандарте из соображений устойчивой передачи электрических сигналов в кабелях.

Технология Ethernet была выбрана в качестве примера при демонстрации ограничений, присущих технологиям локальных сетей, так как в этой технологии ограничения проявляются наиболее ярко, а их причины достаточно очевидны.

Однако подобные ограничения присущи и всем остальным технологиям локальных сетей, так как они опираются на использование среды передачи данных как одного разделяемого ресурса.

Кольца Token Ring и FDDI также могут использоваться узлами сети только в режиме разделяемого ресурса.

Отличие от канала Ethernet здесь состоит только в том, что маркерный метод доступа определяет детерминированную очередность предоставления доступа к кольцу, но по-прежнему при предоставлении доступа одного узла к кольцу все остальные узлы не могут передавать свои кадры и должны ждать, пока владеющий правом доступа узел не завершит свою передачу.

Как и в технологии Ethernet, в технологиях Token Ring, FDDI, Fast Ethernet и 100VG-AnyLAN также определены максимальные длины отдельных физических сегментов кабеля и ограничения на максимальный диаметр сети и максимальное количество в ней узлов.

Эти ограничения несколько менее стеснительны, чем у технологии Ethernet, но также могут быть серьезным препятствием при создании крупной сети. Особенно же быстро может проявиться ограничение, связанное с коэффициентом загрузки общей среды передачи данных.

Хотя метод маркерного доступа, используемый в технологиях Token Ring и FDDI, или метод приоритетных требований технологии 100VG-AnyLAN позволяют работать с более загруженными средами, все равно отличия эти только количественные - резкий рост времени ожидания начинается в таких сетях при больших коэффициентах загрузки, где-то в районе 60 - 70. Качественный характер нарастания времени ожидания доступа и в этих технологиях тот же, и он не может быть принципиально иным, когда общая среда передачи данных разделяется во времени между компьютерами сети. Общее ограничение локальных сетей, построенных только с использованием повторителей и концентраторов, состоит в том, что общая производительность такой сети всегда фиксирована и равна максимальной производительности используемого протокола.

И эту производительность можно повысить только перейдя к другой технологии, что связано с дорогостоящей заменой всего оборудования.

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

Эти преимущества существенны, недаром технологии такого типа существуют уже около 20 лет. К преимуществам нужно отнести в первую очередь простоту топологии сети гарантию доставки кадра адресату при соблюдении ограничений стандарта и корректно работающей аппаратуре простоту протоколов, обеспечившую низкую стоимость сетевых адаптеров, повторителей и концентраторов Однако начавшийся процесс вытеснения повторителей и концентраторов коммутаторами говорит о том, что приоритеты изменились, и за повышение общей пропускной способности сети пользователи готовы пойти на издержки, связанные с приобретением коммутаторов вместо концентраторов.

– Конец работы –

Используемые теги: Разработка, диалоговой, системы, оформленной, виде, пакета, кладных, программ, реализующей, идею, искусственного, интеллекта0.145

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Разработка диалоговой системы, оформленной в виде пакета прикладных программ и реализующей идею искусственного интеллекта

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Система эвристического анализа и искусственного интеллекта Экспертные системы
Усложнение информации, ее структурное изменение, да и увеличение ее объемов во много раз, порождают новые требования к ее обработке, увеличение… Экспертные системы не смогли бы получить столь широкого распространения в… Использование методов поиска или языков программирования, характерных для систем искусственного интеллекта, не…

Экспертные системы. Классификация экспертных систем. Разработка простейшей экспертной системы
Глава 2. Структура систем, основанных на знаниях. 1. Категории пользователей экспертных систем. 2.2. Подсистема приобретения знаний. 3. База… ЭС выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.

Лекция 1. Тема: Операционная система. Определение. Уровни операционной системы. Функции операционных систем. 1. Понятие операционной системы
Понятие операционной системы... Причиной появления операционных систем была необходимость создания удобных в... Операционная система ОС это программное обеспечение которое реализует связь между прикладными программами и...

Разработка образовательной среды для дистанционного обучения по дисциплинам "Компьютерная графика" и "Системы искусственного интеллекта". Геометрические преобразования
Возможно использование для других специальностей и других форм обучения, а также всеми желающими более детально изучить отдельные вопросы машинной… Область создания образовательных программ освоена достаточно широко,… Однако ранее разработанные СДО обладают целым рядом недостатков - жесткая привязанность к предметной области - жесткая…

Разработка подсистемы вывода в диагностической экспертной системе
Работа выполнялась с 1 сентября 1998 года по 30 мая 1999 года. Тип работы инженерная является плановой разработкой института. Особенностью данной дипломной работы является возможность ее работы с… При этом подсистема вывода будет использовать экспертные знания, также допускающие элементы нечеткости и неточности.

Философское введение в "Основы построения систем искусственного интеллекта"
Т.е. как минимум мы не будем заниматься проблемами походки, питания, дыхания, пищеварения и пр. Вот как ковш экскаватора имитирует руку с лопаткой,… Такой себе homunculus Осталось выяснить, что такое сам интеллект. Большой… Кибернетика анализирует М. в связи с задачей моделирования некоторых мыслительных функций". Ну и для полноты картины:…

СИСТЕМЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Саратовский государственный технический университет... М Б Бровкова... СИСТЕМЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА...

Непротиворечивая система аксиом называется независимой, если никакая из аксиом этой системы не является следствием других аксиом этой системы
При аксиоматическом построении теории по существу все утверж дения выводятся путем доказательства из аксиом Поэтому к системе аксиом предъявляются... Система аксиом называется непротиворечивой если из нее нельзя логически... Если система аксиом не обладает этим свойством она не может быть пригодной для обоснования научной теории...

Микропроцессорные системы: система ДЦ-МПК, система "Юг"
Использован практический опыт внедрения линейных пунктов управления (ЛПУ) на 60 станциях в увязке с ЭЦ-4, ЭЦ-9, МРЦ-12, МРЦ-13. Выполнен переход на… В состав аппаратуры центрального пункта управления (ПУ) входят IBM-совместные… Круглосуточный режим работы аппаратных средств ПУ обеспечивается источниками бесперебойного питания, а также системой…

0.036
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам