Смекни!
smekni.com

Методические рекомендации по срсп и срс самостоятельная работа студентов под руководством преподавателя (стр. 6 из 7)

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

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

Разделы

и темы для самостоятельного

изучения

Виды и содержание самостоятельной работы

Правильная постановка целей

Задания: Выделить цель, дерево целей, выполнить декомпозицию целей; определить факты и правила; прямую и обратную цепочку рассуждений в следующих задачах: 1. Как добраться на работу вовремя. 2. Как сделать салат. 3. Как узнать, хочет ли кошка есть. 4. Тест: знаете ли вы английскую грамматику? 5. Загадка: «угадай животное» (птица, зверь или рыба). 6. Как получить диплом специалиста.

Методические рекомендации к выполнению:

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

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

- Определение цели

- Уточнение цели

- Декомпозиция уточненной цели, построение дерева целей системы с указанием степени достижения цели

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

Пример выполнения задания:

«Создать компьютерную программу, которая оценит, умеет ли ребенок считать».

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

1) что нужно сделать, чтобы получить заданный результат;

2) что получится, если я поступлю «вот так».

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

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

Например, получить диплом можно «экстерном» или обучаясь на протяжении 5 лет.

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

«если я подпрыгну, то, возможно, схвачу высоко висящий предмет»,

«если я встану на ящик, то точно смогу достать выше, подпрыгнув».

Перебирая такие последовательности, мы рано или поздно найдем ту, которая приводит к поставленной цели. Здесь мы идем от фактов к цели.

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

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

Дерево целей может быть получено методом «встречной волны», когда анализируются противоречия между результатами обратной и прямой волны. Такое дерево обеспечивает оптимальный путь достижения цели.

Контроль выполнения работы:

1. В отчете отразить последовательность разработки программы:

1) определения целей;

2) определения фактов, имеющих отношение к этим целям (важно, чтобы факты исчерпывающе соответствовали своей цели), например при проверке «знает ли ребенок правила сложения» следует проверить знание сложения с «О», с «1», без переноса разряда, с переносом разряда);

3) получение данных, соответствующих фактам, характеристик для заданной ситуации или объекта;

4) оценки данных, используя правила и механизм вывода.

Литература:

1. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990. – 560с.

2. Смолин Д.В. «Введение в искусственный интеллект», М.: Изд. Академия, 2005 г.

3. Адаменко А.Н., Кучуков А.М. Логическое программирование и Visual Prolog. – СПб.: БХВ-Петербург, 2003.

4. Девятков В.В. Системы искусственного интеллекта. - М.: Изд-во МГТУ им. Н. Э. Баумана, 2001.

5. Новицкая Ю.В. Основы логического и функционального программирования (учебное пособие). – http://ermak.cs.nstu.ru/flp/

Тема: Элементы формальной логики для управления техническими устройствами

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

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

Разделы

и темы для самостоятельного

изучения

Виды и содержание самостоятельной работы

Элементы формальной логики для управления техническими устройствами

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

4. Классификации (животные, книги, произвольные)

Методические рекомендации к выполнению:

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

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

- Определение цели

- Уточнение цели

- Декомпозиция уточненной цели, построение дерева целей системы с указанием степени достижения цели

Некоторые типичные трудности. 1. Построение формул, образующих циклы в определении. 2. Неспособность выделять сущности, заданные неявно.

Контроль выполнения работы:

Возможны 2 формы защиты работы:

1. без применения ЭВМ. Форма сдачи — отчет.

2. написание программы на Prolog

Литература:

6. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990. – 560с.

7. Смолин Д.В. «Введение в искусственный интеллект», М.: Изд. Академия, 2005 г.

8. Адаменко А.Н., Кучуков А.М. Логическое программирование и Visual Prolog. – СПб.: БХВ-Петербург, 2003.

9. Девятков В.В. Системы искусственного интеллекта. - М.: Изд-во МГТУ им. Н. Э. Баумана, 2001.

10. Новицкая Ю.В. Основы логического и функционального программирования (учебное пособие). – http://ermak.cs.nstu.ru/flp/

Тема: Программирование на языке Prolog. Синтаксис и Рекурсия на Prolog

Цель работы: Выработать у обучаемого навыки графического описания задачи в виде дерева. Отработать практические вопросы поиска на графе. Получить навыки написания рекурсивных программ. Изучить основные синтаксические конструкции языка. Получить практическое представление о работе конечных автоматов.

Содержание работы: Анализ задачи, построение дерева и выбор оптимальной стратегии перебора. Прямая и обратная цепочки рассуждений.

Разделы

и темы для самостоятельного

изучения

Виды и содержание самостоятельной работы

Программирование на языке Prolog

Задания: Написать программу. 1. Найти выход из квадратного лабиринта (начальная точка задана). 2. Проверить, является ли некоторое выражение допустимым с точки зрения некоторой грамматики. 3. Классификация (дихотомия). 4. Электронный консультант «Какую модель ЭВМ купить?» Синтаксис и Рекурсия на Prolog: 1. Вывести на экран целые числа в порядке убывания от заданного. 2. Вычислить факториал заданного числа. 3. Вывести на экран целые числа в порядке убывания от заданного 4. до заданного. 5. Возвести число в степень на Prolog. 6. Вычислить арифметическую прогрессию. 7. Задача повышенной трудности «Волк, Коза, Капуста, Фермер».

Контроль выполнения работы:

Возможны 2 формы защиты работы:

1. без применения ЭВМ. Форма сдачи — отчет.

2. написание программы на Prolog

Литература:

1. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990. – 560с.

2. Смолин Д.В. «Введение в искусственный интеллект», М.: Изд. Академия, 2005 г.