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в Київ Луганськ Ніжин)


 

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

9208. Обмен веществ и превращение энергии в клетке. Обмен веществ и превращение энергии. Пластический и энергетический обмен 45 KB
  Обмен веществ и превращение энергии в клетке. Обмен веществ и превращение энергии. Пластический и энергетический обмен. Тип урока - изучение нового материала. Цели: Познакомить учащихся с понятием обмен веществ в организме...
9209. Обмен веществ и превращение энергии в клетке. Питание клетки. Автотрофы, гетеротрофы. Фотосинтез. Хемосинтез 38.5 KB
  Обмен веществ и превращение энергии в клетке. Питание клетки. Автотрофы, гетеротрофы. Фотосинтез. Хемосинтез. Тип урока - изучение нового материала. Цели: Познакомить учащихся с типами питания живых организмов. Рассмотреть процесс ...
9210. Обмен веществ и превращение энергии в клетке. Ген и его роль в биосинтезе белков Генетический код ДНК. Реакции матричного синтеза 1.88 MB
  Обмен веществ и превращение энергии в клетке. Ген и его роль в биосинтезе белков Генетический код ДНК. Реакции матричного синтеза. Тип урока - изучение нового материала. Цели: Сформировать знания о генетическом коде и его свойствах....
9211. Деление клетки. Формы размножения организмов. Жизненный цикл клетки. Митоз 571 KB
  Деление клетки. Формы размножения организмов. Жизненный цикл клетки. Митоз. Тип урока - изучение нового материала. Цели: Изучить процесс деления клетки путём митоза. Показать основные этапы жизненного цикла клетки Рассмотреть...
9212. Деление клетки. Мейоз 472.24 KB
  Деление клетки. Мейоз Тип урока - изучение нового материала. Цели: Познакомить учащихся с процессом мейоза. Показать биологическое значение мейоза. План урока. Орг. момент - 5 мин. Объяснение нового материала...
9213. Общая биология как наука, методы исследования связи с другими науками, её достижения 54.5 KB
  Общая биология как наука, методы исследования связи с другими науками, её достижения. Цели: показать актуальность биологических знаний, выявить значение общей биологии ее место в системе биологических знаний познакомить учащихся с...
9214. ПРОЕКТИРОВАНИЕ ЦИФРОВЫХ УСТРОЙСТВ НА ОСНОВЕ ЦИФРОВЫХ КОМПАРАТОРОВ ДЛЯ УПРАВЛЕНИЯ ДВИГАТЕЛЯМИ ПОСТОЯННОГО ТОКА 615.45 KB
  Проектируемое устройство предназначено для управления двигателем постоянного тока. Измерительное устройство на компараторах применяется редко, но они настолько быстры и просты, что находят своё применение в устройствах для автомобильной техники с напряжением 12вольт.
9215. Моделирование адаптивного компенсатора помех 990 KB
  Моделирование адаптивного компенсатора помех Цель работы практическое освоение методов цифрового моделирования адаптивных систем на примере адаптивного компенсатора помех (АКП). Домашнее задание Вычислить вектор взаимной корреляции, корр...
9216. Моделирование коррелированных случайных процессов 755 KB
  Моделирование коррелированных случайных процессов Цель работы практическое освоение методов цифрового моделирования стационарных нормальных случайных процессов с заданными корреляционными свойствами. Домашнее задание Выбрать частоту диск...