Иллюстрированный самоучитель по введению в экспертные системы


           

Две задачи не могут начинаться


(errand (name lunch) (earliest 1130) (latest 1430)

(duration 100) (priority 2))

(errand (name guitar-shop)

(earliest 1000)

(latest 1700) (duration 100)

(priority 3)) (errand (name haircut)

(earliest 900) (latest 1700)

(duration 30) (priority 4))

(errand (name groceries)

(earliest 900) (latest 1800)

(duration 130) (priority 5))

(errand (name dentist)

(earliest 900) (latest 1600)

(duration 100) (priority 2))

;; Попадает ли время начала S в интервал [Т, T+D]?

;; Две задачи не могут начинаться в одно и то же время.

(deffunction overlapl (Is ?t ?d)

(and (<= ?t ?s) (< ?s (+ ?t ?d))))

;; Попадает ли время завершения S в интервал [Т, T+D]?

;; Для задачи А можно назначить время начала выполнения

;; равным времени завершения задачи В.

(deffunction overlap2 (?s ?t ?d)

(and (< ?t ?s) (< ?s (+ ?t ?d))))

;; Операция добавления к значению времени интервала,

;; выраженного в формате INTEGER,

(deffunction +t (?X ?Y) (bind ?T (+ ?X n))

(if(or (= (- ?T 60) ( (div (- ?T 60) 100) 100))

(= (- ?T 70) ( (div (- ?T 70) 100) 100))

(= (- ?T 80) ( (div (- ?T 80) 100) 100))

(= (- ?T 90) ( (div (- ?T 90) 100) 100)))

then (+ ?T 40)

telse ?T))

;; ПРАВИЛА

;; На выполнение некоторых задач отводится

;; фиксированное время, (defrule fixed

(declare (salience 80))

(goal (subgoal start))

?E <- (errand (name ?N)

(earliest ?T) (latest ?T) (duration ?D)

(priority ?P) (done no))

(not (schedule (start ?U1&:(overlapl ?U1 ?T ?D))))

(not (schedule (finish ?U2&:(overlap2 ?U2 ?T ?D))))

(printout t crlf "Fixing start and end of " ?N t crlf)

;; ( "Определение начала и завершения " ?N

(modify ?E (done finish)) (assert (schedule (task ?N)

(start ?T) (finish (+t ?T ?D)) (priority ?P)))

;; Следующей в расписание включается задача с наиболее

;; высоким приоритетом, причем ей задается самое раннее

;; время начала выполнения, (defrule priorityl

(declare (salience 50))

(goal (subgoal start))

: ?Е <- (errand (name ?N) (earliest ?T)

Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий