
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
ФАКУЛЬТЕТ ИНФОКОММУНИКАЦИОННЫХ СЕТЕЙ И СИСТЕМ (ИКСС)
КАФЕДРА ПРОГРАММНОЙ ИНЖЕНЕРИИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ (ПИ И ВТ)
ДИСЦИПЛИНА: «Логическое и функциональное программирование»
Лабораторная работа №1.
Продукционная модель, семантическая сеть и фреймовая модель представления знаний
Выполнил:
Козлов Н.С.
Подпись____________
Приняла:
Белая Т.И.
Подпись____________
«_____»________ 2022
Оглавление
Постановка задачи 3
Продукционная модель 3
Семантическая сеть 7
Фреймовая модель 8
Постановка задачи
Построить продукционную, семантическую сеть и фреймовую модель представления знаний в предметной области «Корпоративное программное обеспечение».
Продукционная модель
Для данной предметной области, шаги построения продукционной модели можно сформулировать следующим образом:
Обязательные действия задачи: формулирование критериев выбора программного обеспечения для компании, внедрение и поддержка программного обеспечения.
Прежде чем начать работу с выбранным программным обеспечением в пределах компании, его следует купить или заключить контракт на его использование. Так же можно начать пользоваться программным обеспечением, не прибегая ни к одну из перечисленных пунктов, на безвозмездной основе, если это позволяет сделать лицензия конкретного программного обеспечения.
Прежде чем купить программное обеспечение для компании, следует удостовериться в необходимости такой покупки, затем, если всё же было вынесено решение о покупке, необходимо убедиться, что корпорация располагает нужным количеством средств для покупки и найма специалистов по интеграции если такие требуются. Выбор программного обеспечения должен быть обусловлен предметной областью компании и конкретной деятельностью внутри этой области. Например, редакторы кода, которыми пользуются программисты, будут абсолютно бесполезны для 3D художников, точно так же, как и бесполезными будут редакторы кода SASS для компании, которая занимается разработкой драйверов – следует учитывать, что набор приложений для разных специалистов будет разный. Следовательно, вначале идут действия, позволяющие выбрать подходящие программное обеспечение для специалистов корпорации, а затем оплата, внедрение и поддержка.
Пусть в задаче будут рассматриваться два программных обеспечения: “Visual Studio” и “Visual Studio Code”. Первая среда разработки является большим пакетом для разработки программного обеспечения с огромным функционалом, позволяющим вести совместную разработку в масштабах компаний. Вторая среда разработки является облегчённой версией первой среды, с ориентацией на домашнюю разработку и разработку в небольших компаниях. Пусть субъект – небольшая компания “Foo”, занимающаяся разработкой сайтов.
Преобразуем указанные действия и соответствующие им условия в продукции «Если, то»:
Если субъекту (далее компания) требуется закупить новое корпоративное программное обеспечение и у него достаточно свободного бюджета для его покупки и внедрения в свою корпоративную систему, то компания может перейти к выбору программного обеспечения.
Если компания занимается разработкой программного обеспечения, компания рассматривает программное обеспечение, использующиеся при работе в этой отрасли.
Если компания занимается любой другой деятельностью кроме разработки программного обеспечения, компания рассматривает программное обеспечение, которое специфично для её отрасли.
Если для решений задач компании достаточно функционала, представленного в Visual Studio Code, компания выбирает Visual Studio Code.
Если для решений задач компании недостаточно функционала, представленного в Visual Studio Code, компания выбирает Visual Studio или аналогичное ему программное обеспечение.
Если компания выбрала подходящие для себя программное обеспечение и ей требуется помощь для его интеграции в свою корпоративную систему, компания нанимает специалистов по интеграции и оплачивает как само программное (или не оплачивает если оно бесплатное) обеспечение, так и работу специалистов
Если компания выбрала подходящие для себя программное обеспечение и ей не требуется помощь для его интеграции в свою корпоративную систему, компания оплачивает только само программное (или не оплачивает если оно бесплатное) обеспечение и интегрирует его своими силами.
Если компания выбрала подходящее для себя программное обеспечение, и оно не требует дополнительных действий по интеграции, компания оплачивает (или не оплачивает если оно бесплатное) программное обеспечение и пользуется им без дополнительных действий.
Если компания планирует продолжить работу с выбранным программным обеспечением в будущем и ей требуются дополнительные специалисты для поддержки работы этого программного обеспечения, компания нанимает штат сотрудников, которые будут заниматься этой работой.
Если компания планирует продолжить работу с выбранным программным обеспечением в будущем и ей не требуются дополнительные специалисты для поддержки работы этого программного обеспечения, компания продолжает работу с программным обеспечением при помощи своего штата сотрудников.
Если компания не планирует продолжать работу с выбранным программными обеспечением в дальнейшем, то она отказывается от выбранного программного обеспечения и оформляет возврат средств.
Введём обозначения для фактов (Ф), действий (Д) и продукций (П), тогда:
Субъект = Foo;
Ф1 = Субъект желает купить новое корпоративное программное обеспечение.
Ф2 = Субъект оценил покупку нового программного обеспечение как «необходимое».
Ф3 = Субъект не оценил покупку нового программного обеспечения как «необходимое».
Ф4 = У субъекта достаточно денег для покупки ПО.
Ф5 = У субъекта недостаточно денег для покупки ПО.
Ф6 = Субъект является компанией, занимающейся разработкой ПО.
Ф7 = Субъект не является компанией, занимающейся разработкой ПО.
Ф8 = Субъекту достаточно функционала Visual Studio Code для решения задач.
Ф9 = Субъекту недостаточно функционала Visual Studio Code для решения задач.
Ф10 = Субъекту требуются дополнительные специалисты для интеграции ПО.
Ф11 = Субъекту не требуются дополнительные специалисты для интеграции ПО.
Ф12 = Субъекту не требуется интеграция ПО.
Ф13 = Субъект планирует продолжить работу с выбранным ПО.
Ф14 = Субъект не планирует продолжать работу с выбранным ПО.
Ф15 = Субъекту требуются новые специалисты для поддержки выбранного ПО.
Ф16 = Субъекту не требуются новые специалисты для поддержки выбранного ПО.
Ф17 = Субъект выбрал ПО.
Ф18 = Субъект не выбрал ПО.
Д1 = Субъект может перейти к выбору ПО.
Д2 = Субъект выбирает ПО для разработки ПО.
Д3 = Субъект выбирает ПО для другой сферы деятельности.
Д4 = Субъект выбирает Visual Studio Code.
Д5 = Субъект выбирает Visual Studio или аналог.
Д6 = Субъект нанимает специалистов по интеграции.
Д7 = Субъект не нанимает специалистов по интеграции.
Д8 = Субъект нанимает специалистов по поддержке выбранного ПО.
Д9 = Субъект не нанимает специалистов по поддержке выбранного ПО.
Д10 = Субъект оформляет возврат средств за выбранное ПО.
Д11 = Субъект перестаёт пользоваться выбранным ПО.
Д12 = Субъект завершает выбор ПО.
П1: (Ф1 и Ф2 и Ф4) → Д1.
П2: (Ф1 и (Ф2 или Ф3) и Ф5) ➝ Д12.
П3: (Ф1 и Ф3 и (Ф4 или Ф5)) ➝ Д12.
П4: (Ф6 и Д1) ➝ Д2.
П5: (Ф7 и Д1) ➝ Д3.
П6: (Ф8 и Д2) ➝ Д4.
П7: (Ф9 и Д2) ➝ Д5.
П8: (Ф10 и (Ф6 или Ф7)) ➝ Д6.
П9: (Ф11 и (Ф6 или Ф7)) ➝ Д7.
П10: (Ф12 и (Ф6 или Ф7)) ➝ Д7.
П11: (Ф13 и Ф15) ➝ Д8.
П12: (Ф13 и Ф16) ➝ Д9.
П13: (Ф14) ➝ Д10.
П14: (Ф14 и Д10) ➝ Д11.
П15: Д12.