36963

Робота з базою знань «План-карта шляхів»

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

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

COM командою lod ‘edit Сформувати файл програми для роботи з базою знань defun можливо стан карта mpcn 'lmbd правило if eql стан cr правило list правило nil карта defun вглибину поточнийплан ppend можливо cdr cr поточнийплан план1...

Украинкский

2013-09-23

40 KB

1 чел.

Лабораторна робота №1

Робота з базою знань «План-карта шляхів»

План виконання роботи:

  1.  Завантажити оболонку muLisp (для цього запустити на виконання файл MULISP.EXE, яка розташована за адресою <Disk>:\Lisp_Prog\MULISP)
  2.  Завантажити редактор EDIT.COM (командою (loadedit))
  3.  Сформувати файл програми для роботи з базою знань

(defun можливо (стан карта )

   (mapcan '(lambda (правило)

                               (if (eql стан (car правило))

                                     (list правило) nil )

                 )

               карта)

)

 

(defun в-глибину (поточний-план)

   (append

          (можливо (cadr (car поточний-план)) план-1)

                           (cdr поточний-план))

   )

основна функція пошуку:

(defun пошук (кінець поточний-план маршрут метод)

(cond

    ((null поточний-план) (print (reverse маршрут)) nil)

; поточний план пустий

    ((eql кiнець (cadr (car поточний-план)))

;якщо  кінцевий пункт знайшовся в поточному-планi, тоді закінчити.

               (print  (reverse (cons кiнець маршрут))))

   ((member (cadr (car поточний-план)) маршрут)

;якщо наслідок вже є в маршруті, тоді рекурсивний пошук в cdr-плані.

              (пошук кiнець (cdr поточний-план) маршрут метод) )

;якщо всi попереднi умови не виконуються, тоді перетворимо поточний-;план заданим "методом", доповнимо "маршрут" i рекурсивно здійснюємо ;подальший пошук.

   ( t (пошук кiнець (funcall метод поточний-план)

          (cons (cadr (car поточний-план)) маршрут)

           метод ) ) )

)

(defun як-проїхати (початок кiнець карта метод)

    (пошук кiнець

                (можливо початок карта)

                (list початок)

              метод

   )

)

  1.  Заповнити базу знань через командну строку

$(setq plan1 '((Москва Київ) (Київ Москва) (Львiв Київ) (Київ Львiв) (Київ Харкiв) (Харкiв Київ) (Донецьк Харкiв) (Харкiв Донецьк) (Київ Луганськ) (Луганськ Ніжин) (Ніжин Київ)))

  1.  Викликати функцію пошуку шляху

(як-проїхати початок кінець карта метод)

Виклик функції

$(як-проїхати 'Львiв 'Ніжин план-1 в-глибину)

(Львiв Київ Москва Харкiв Донецьк Луганськ Ніжин)

вiдсiкти непотрiбнi пункти за допомогою наступної функції:

(defun вiдсiкти-лишнє (маршрут карта)

  (cond

       ((equal маршрут (відсікти маршрут карта ))

                 маршрут)

       (t (вiдсiкти-лишнє (вiдсiкти маршрут карта)))))

(defun вiдсiкти (маршрут карта рiшення)

    (cond

           ((null карта) nil)

           ((null маршрут) nil)

         ((null (cadr маршрут))

                  (reverse (cons (car маршрут) рiшення)))

          ((member (list (car маршрут) (cadr маршрут)) карта equal)                      

                         (вiдсiкти (cdr маршрут) карта

                          (cons (car маршрут) рiшення)))

       (t (вiдсiкти (cdr маршрут) карта рiшення))))

Застосуємо розроблену функцію:

$(вiдсiкти-лишнє (як-проїхати 'Львiв 'Ніжин план-1 в-глибину) план-1 )

(Львiв Київ Луганськ Ніжин)


 

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

13782. АЗБУКА ПРАВА 821.5 KB
  Каждая отрасль знаний, как бы она ни была сложна, имеет в своей основе некоторые начальные, первичные данные. Кирпичики, из которых складывается многоэтажное здание науки. Иными словами, - в каждой науке существует своя азбука
13783. Теория государства и права А.Б. Венгеров 3.03 MB
  Венгеров А.Б. Теория государства и права: Учебник написанный в соответствии с курсом Теория государства и права для юридических вузов качественно отличается от выходивших ранее книг по этой дисциплине. Сохраняя все то ценное что наработано в теоретикоправовой
13784. Социология. С. С. ФРОЛОВ 1.68 MB
  Социология С.С. ФРОЛОВ ПРЕДИСЛОВИЕ СОЦИОЛОГИЯ И ИЗУЧЕНИЕ ОБЩЕСТВА ОТКРЫТИЕ СОЦИОЛОГИИ КАК НАУЧНОЙ ДИСЦИПЛИНЫ. ВОЗНИКНОВЕНИЕ СОЦИОЛОГИИ КАК НАУКИ. ОБЪЕКТ И ПРЕДМЕТ СОЦИОЛ
13785. Человек и общество (Обществознание, часть 2, 11 класс) 1.69 MB
  Л.Н.Боголюбов А.Ю.Лазебникова Л.Ф.Иванова. Человек и общество Обществознание часть 2 11 класс Раздел I. Глава I. Цивилизация. ЦИВИЛИЗАЦИЯ И КУЛЬТУРА Развитие культуры и цивилизации неразрывно связано: вне духовных ценностей созданных в процессе ку
13786. ВВЕДЕНИЕ В КУЛЬТУРОЛОГИЮ. ОСНОВНЫЕ ПОНЯТИЯ КУЛЬТУРОЛОГИИ В СИСТЕМАТИЧЕСКОМ ИЗЛОЖЕНИИ 1.08 MB
  А. Б. ЕСИН ВВЕДЕНИЕ В КУЛЬТУРОЛОГИЮ ОСНОВНЫЕ ПОНЯТИЯ КУЛЬТУРОЛОГИИ В СИСТЕМАТИЧЕСКОМ ИЗЛОЖЕНИИ Есин А. Б. Е 83 Введение в культурологию: Основные понятия культурологии в систематическом и...
13787. МЕЖДУНАРОДНОЕ ПРАВО В УСЛОВИЯХ ВОЕННЫХ КОНФЛИКТОВ 205.5 KB
  МЕЖДУНАРОДНОЕ ПРАВО В УСЛОВИЯХ ВОЕННЫХ КОНФЛИКТОВ [1] 1. Понятие основных принципов международного права. Источники международного права. Понятие и виды субъектов международного права. [2] 2. Понятие и основные принципы коллективной безоп
13788. Клименко А. В. Обществознание 1.76 MB
  Данное пособие предназначено в помощь учащимся старших классов школ и абитуриентам вузов, готовящимся к сдаче экзамена за курс «Обществознание». Оно избавит читателей от длительной и трудоемкой работы по изучению огромного количества литературы.
13789. Основы права Под редакцией профессора В. В. Лазарева 1.42 MB
  Настоящее учебно-методическое пособие предназначено для преподавателей курса «Основы права» в средних учебных заведениях. Оно подготовлено тем же коллективом авторов, что и учебник «Основы права» под редакцией академика РАЕН В.В. Лазарева, адресованный учащимся
13790. А.И. СОЛОВЬЕВ ПОЛИТОЛОГИЯ, ПОЛИТИЧЕСКАЯ ТЕОРИЯ, ПОЛИТИЧЕСКИЕ ТЕХНОЛОГИИ 3.41 MB
  А.И. СОЛОВЬЕВ политология ПОЛИТИЧЕСКАЯ ТЕОРИЯ ПОЛИТИЧЕСКИЕ ТЕХНОЛОГИИ В данном издании освещаются важнейшие проблемы политической науки традиционно включаемые в фундаментальные курсы зарубежных и отечественных университетов. Наряду с этим в книге раскрывают...