Экспертные системы тестирования

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    453,22 Кб
  • Опубликовано:
    2012-05-06
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Экспертные системы тестирования

Содержание

 

Введение

1. Экспертные системы

1.1 Назначение и архитектура экспертных систем

1.2 Использование экспертных систем

1.4 Классификация экспертных систем

1.5 Инструментальные средства разработки экспертных систем

2. Компьютерные обучающие системы

2.1 Основные принципы новых информационных технологий обучения

2.2 Типы обучающих программ

2.3 Перспективные исследования в области компьютерного обучения

2.3.1 Интеллектуалъные обучающие системы

2.3.2 Учебная мультимеда и гипермедиа

3. Контроль знаний

3.1 Компьютерное тестирование

3.2 Технология разработки тестовых заданий

3.2.1 Классификация видов тестов

3.2.2 Требования к тестовым заданиям

3.2.3 Рекомендации по составлению тестовых заданий

4. Инструментальные средства создания приложения и разработка программы тестирования

4.1 Общие сведения о Delphi

4.2 Используемые компоненты Delphi при разработки программы тестирования

4.3 Разработка программы тестирования

4.3.1 Постановка задачи

4.3.2 Описание программы

4.4 Техника безопасности работы на персональных компьютерах и вычислительной технике

Заключение

Список использованных источников

Приложение

Введение

Актуальность темы исследования:

В программе стратегического развития Республики Казахстан до 2030 года наш президент Назарбаев Н.А. предусмотрел развитие не только народного хозяйства и экономики, но и развитие информационных технологий в Казахстане. В данном проекте уделено большое внимание внедрению новых инновационных технологий, программного обеспечения для организаций и программ по обучению населения компьютерной грамотности.

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

Экспертные системы тестирования не определяют знания обучаемого, а определяют степень усвоения материала, степень соответствия обучаемого требуемому эталону, как бы ставят диагноз, показывая изъяны и пробелы с обоснованием и предлагают пути их устранения.

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

экспертная система тестирование программа

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

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

Цель исследования:

·        Освоение принципов организации и функционирования экспертных систем, а также получения практических навыков их проектирования

·        Овладение систематизированными представлениями о возможностях и областях использования экспертных систем и в частности в образовании, их архитектурных особенностях и средствах их создания.

·        Создание программы тестирования, которая удовлетворяла бы всем требованиям, предъявляемым к процессу тестирования.

Для достижения поставленной цели были решены следующие задачи исследования:

-        представлен широкий круг проблем, связанный с применением и перспективами использования ЭС и в особом случае - образовании;

-        показана классификация ЭС, модели представления знаний, вывода решений и модели общения в ЭС;

-        предложены теоретические и практические аспекты получения, формализации и структуризации проблемных знаний;

-        создана тестирующая программа на языке Delphi в качестве экспертной системы тестирования.

Объектом исследования являются экспертные системы.

Предметом исследования - экспертные системы в образовании.

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

Методы исследования: всеобщий диалектический, сравнительный, аналитический, исторический, и логический методы, а также системно-структурный, системно-функциональный методы и метод обобщения.

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

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

Результаты исследований могут быть использованы при чтении курса "Системы искусственного интеллекта" на четвертом курсе университета специальности "Информационные системы", и в школьном курсе по предмету "Информатика", а также проведено тестирование по экспертной тестирующей программе в 38 школе города.

Данная программа облегчит и даст учащимся новый материал, как в теоретической части, так и в практической.

Практической базой написания дипломного проекта - современные тенденции применения информационных технологий в образовании и непосредственно в дистанционном обучении.

Структура дипломного проекта: состоит из введения, четырех разделов, заключения, списка использованной литературы и приложения. Общий объем работы состоит из 97 страницы машинописного текста, 13 рисунков, 5 таблиц и 1 приложения.

Во введении раскрыты актуальность, цель, задачи, научная новизна, объект и предмет исследования, структура работы.

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

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

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

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

Результаты исследования обобщены в заключении.

1. Экспертные системы


1.1 Назначение и архитектура экспертных систем


В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы" (ЭС). Цель исследований по ЭС состоит в разработке программ, которые при решении задач, трудных для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. Исследователи в области ЭС для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е. Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".

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

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

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

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

Неформализованные задачи обычно обладают следующими особенностями:

§  ошибочностью, неоднозначностью, неполнотой и противоречивостью исходных данных;

§  ошибочностью, неоднозначностью, неполнотой и противоречивостью знаний о проблемной области и решаемой задаче;

§  большой размерностью пространства решения, т.е. перебор при поиске решения весьма велик;

§  динамически изменяющимися данными и знаниями.

Следует подчеркнуть, что неформализованные задачи представляют большой и очень важный класс задач. Многие специалисты считают, что эти задачи являются наиболее массовым классом задач, решаемых ЭВМ.

Экспертные системы и системы искусственного интеллекта отличаются от систем обработки данных тем, что в них в основном используются символьный (а не числовой) способ представления, символьный вывод и эвристический поиск решения (а не исполнение известного алгоритма).

Экспертные системы применяются для решения только трудных практических (не игрушечных) задач. По качеству и эффективности решения экспертные системы не уступают решениям эксперта-человека. Решения экспертных систем обладают "прозрачностью", т.е. могут быть объяснены пользователю на качественном уровне. Это качество экспертных систем обеспечивается их способностью рассуждать о своих знаниях и умозаключениях. Экспертные системы способны пополнять свои знания в ходе взаимодействия с экспертом.

Экспертные системы имеют две категории пользователей и два отдельных “входа”, соответствующих различным целям взаимодействия пользователей с ЭС:

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

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

Архитектура экспертной системы включает в себя два основных компонента: базу знаний (хранилище единиц знаний) и программный инструмент доступа и обработки знаний, состоящий из механизмов вывода заключений (решения), приобретения знаний, объяснения получаемых результатов и интеллектуального интерфейса. Причем центральным компонентом экспертной системы является база знаний, которая выступает по отношению к другим компонентам как содержательная подсистема, составляющая основную ценность. “Know-how" базы знаний хорошей экспертной системы оценивается в сотни тысяч долларов, в то время как программный инструментарий - в тысячи или десятки тысяч долларов.

Обобщённо структуру экспертной системы можно представить в следующем виде (рисунок 1):

Примечание - [составлено автором]

Рисунок 1 - Структура экспертной системы

Интерфейс пользователя - комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и на стадии вывода результатов.

База знаний (БЗ) - является ядром ЭС, это совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю. БЗ предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.

БЗ - это совокупность единиц знаний, которые представляют собой формализованное с помощью некоторого метода представления знаний отражение объектов проблемной области и их взаимосвязей, действий над объектами и, возможно, неопределенностей, с которыми эти действия осуществляются.

В качестве методов представления знаний чаще всего используются либо правила, либо объекты (фреймы), либо их комбинация. Так, правила представляют собой конструкции:

Если < условие > То <заключение> CF (Фактор определенности) <значение>

В качестве факторов определенности (CF), как правило, выступают либо условные вероятности байесовского подхода (от 0 до 1), либо коэффициенты уверенности нечеткой логики (от 0 до 100). Примеры правил имеют следующий вид:

Правило 1: Если Коэффициент рентабельности > 0.2

То Рентабельность = "удовл." CF 100

Правило 2: Если Задолженность = "нет" и Рентабельность = "удовл. "

То Финансовое_сост. = "удовл." CF 80

Правило 3: Если Финансовое_сост. = "удовл." и Репутация ="удовл. "

То Надежность предприятия = "удовл." CF 90

В любой момент времени в системе существуют три типа знаний:

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

Структурированные динамические знания - изменяемые знания о предметной области. Они обновляются по мере выявления новой информации.

Рабочие знания - знания, применяемые для решения конкретной задачи или проведения консультации.

Интеллектуальный редактор базы знаний (механизм приобретения знаний) - программа, представляющая возможность создавать базы знаний в диалоговом режиме. База знаний отражает знания экспертов (специалистов) в данной проблемной области о действиях в различных ситуациях или процессах решения характерных задач. Выявлением подобных знаний и последующим их представлением в базе знаний занимаются инженера знаний. Для ввода знаний в базу и их последующего обновления ЭС должна обладать механизмом приобретения знаний. В простейшем случае это интеллектуальный редактор, который позволяет вводить единицы знаний в базу и проводить их синтаксический и семантический контроль, например, на непротиворечивость, в более сложных случаях - извлекать знания путем специальных сценариев интервьюирования экспертов, или из вводимых примеров реальных ситуаций, как в случае индуктивного вывода, или из текстов, или из опыта работы самой интеллектуальной системы.

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

Решатель - программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в базе знаний. (Синонимы: интерпретатор, дедуктивная машина, блок логического вывода). Этот программный инструмент получает от интеллектуального интерфейса преобразованный во внутреннее представление запрос, и, используя исходные данные из рабочей памяти и знания из БЗ, формирует конкретный алгоритм решения задачи, выполняет алгоритм, а полученный результат предоставляется интеллектуальному интерфейсу для выдачи ответа на запрос пользователя.

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

Механизм объяснения. В процессе или по результатам решения задачи пользователь может запросить объяснение или обоснование хода решения. С этой целью ЭС должна предоставить соответствующий механизм объяснения. Объяснительные способности ЭС определяются возможностью механизма вывода запоминать путь решения задачи. Тогда на вопросы пользователя "Как?" и "Почему?" получено решение или запрошены те или иные данные система всегда может выдать цепочку рассуждений до требуемой контрольной точки, сопровождая выдачу объяснения заранее подготовленными комментариями. В случае отсутствия решения задач объяснение должно выдаваться пользователю автоматически. Полезно иметь возможность и гипотетического объяснения решения задачи, когда система отвечает на вопросы, что будет в том или ином случае. Подсистема объяснений - программа, позволяющая пользователю получать ответы на вопросы: "Как…?" и "Почему…?". Ответ на вопрос "как" - это трассировка всего процесса получения решения с указанием использованных фрагментов базы знаний, т.е. всех шагов цепи умозаключений. Ответ на вопрос "почему" - ссылка на умозаключение, предшествовавшее полученному решению. Однако не всегда пользователя может интересовать полный вывод решения, содержащий множество ненужных деталей. В этом случае система должна уметь выбирать из цепочки только ключевые моменты с учетом их важности и уровня знаний пользователя. Для этого в базе знаний необходимо поддерживать модель знаний и намерений пользователя. Если же пользователь продолжает не понимать полученный ответ, то система должна быть способна в диалоге на основе поддерживаемой модели проблемных знаний обучать пользователя тем или иным фрагментам знаний, т.е. раскрывать более подробно отдельные понятия и зависимости, если даже эти детали непосредственно в выводе не использовались.

База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином, используемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (в первую очередь долгосрочных), хранимых в системе.

Качество ЭС определяется размером и качеством базы знаний (правил или эвристик). Система функционирует в следующем циклическом режиме: выбор (запрос) данных или результатов анализов, наблюдения, интерпретация результатов, усвоение новой информации, выдвижении с помощью правил временных гипотез и затем выбор следующей порции данных или результатов анализов. Такой процесс продолжается до тех пор, пока не поступит информация, достаточная для окончательного заключения.

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

1) компетентность - в конкретной предметной области экспертная система должна достигать того же уровня, что и эксперты-люди, при этом она должна пользоваться теми же эвристическими приемами, также глубоко и широко отражать предметную область;

2) символьные рассуждения - знания, на которых основана экспертная система, представляют в символьном виде понятия реального мира, рассуждения также происходят в виде преобразований символьных наборов;

3) глубина - экспертиза должна решать глубокие, нетривиальные задачи, отличающиеся сложностью либо в плане сложности знаний, которые экспертная система использует, либо в плане их обилия, это не позволяет использовать полный перебор вариантов как метод решения задачи и заставляет прибегать к эвристическим, творческим, неформальным методам;

4) самосознание - экспертная система должна включать в себя механизм объяснения того, каким образом она прихрдит к решению задачи.

Экспертные системы (также рисунок 2) создаются для решения разного рода проблем, но основные типы их деятельности можно сгруппировать в категории, приведенные в таблице 1.

Таблица 1 - Типичные категории способов применения экспертных систем

Категория

Решаемая проблема

Интерпретация Прогноз Диагностика Проектирование Планирование Наблюдение Отладка Ремонт Обучение Управление

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


Примечание - [составлено автором]

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

Интерпретирующие экспертные системы могут обрабатывать разнообразные виды данных. Например, системы анализа сцен и распознавания речи, используя естественную информацию (в одном случае визуальные образы, в другом - звуковые сигналы), анализируют их характеристики и понимают их смысл. Интерпретация в области химии использует даниые дифракции рентгеновских лучей, спектрального анализа или ядерного магнитного резонанса для вывода химической структуры веществ. Интерпретирующая система в геологии использует каротажное зондирование - измерение проводимости горных пород в буровых скважинах и вокруг них, чтобы определить подповерхностные геологические структуры. Медицинские интерпретирующие системы используют показания следящих систем (например, значения температуры, пульса, кровяного давления), чтобы установить диагноз или тяжесть заболевания. Наконец, в военном деле интерпретирующие системы используют данные от радаров, радиосвязи и сонарных устройств, чтобы оценить ситуацию и идентифицировать цели.

Примечание - [составлено автором]

Рисунок 2 - Схема обобщенной экспертной системы

1.2 Использование экспертных систем


Экспертная система является инструментом, усиливающим интеллектуальные способности эксперта, и может выполнять следующие роли:

консультанта для неопытных или непрофессиональных пользователей;

ассистента в связи с необходимостью анализа экспертом различных вариантов принятия решений;

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

Особенности экспертных систем:

. Экспертиза может проводиться только в одной конкретной области. Так, программа, предназначенная для определения конфигурации систем ЭВМ, не может ставить медицинские диагнозы.

. База знаний и механизм вывода являются различными компонентами. Действительно, часто оказывается возможным сочетать механизм вывода с другими базами знаний для создания новых ЭС. Например, программа анализа инфекции в крови может быть применена в пульмонологии путем замены базы знаний, используемой с тем же самым механизмом вывода.

. Наиболее подходящая область применения - решение задач дедуктивным методом. Например, правила или эвристики выражаются в виде пар посылок и заключений типа “если-то”.

. Эти системы могут объяснять ход решения задачи понятным пользователю способом. Обычно мы не принимаем ответ эксперта, если на вопрос “Почему? ” не можем получить логичный ответ. Точно так же мы должны иметь возможность спросить систему, основанную на знаниях, как было получено конкретное заключение.

. Выходные результаты являются качественными (а не количественными).

. Системы, основанные на знаниях, строятся по модульному принципу, что позволяет постепенно наращивать их базы знаний.

Экспертные системы используются во многих областях, среди которых лидирует сегмент приложений в бизнесе, рисунок 3.

Примечание - [составлено автором]

Рисунок 3 - Области применения экспертных систем

 

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

. Данные и знания надежны.

. В процессе решения задачи должны использоваться формальные рассуждения.

. Должен быть, по крайней мере, один эксперт, который способен явно сформулировать свои знания и объяснить свои методы применения этих знаний для решения задач.

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

Таблица 2. Критерий применимости ЭС.

 Применять целесообразно

Применять нецелесообразно

Не могут быть построены строгие алгоритмы или процедуры, но существуют эвристические методы решения.

Имеются эффективные алгоритмические методы.

Есть эксперты, которые способны решить задачу.

Отсутствуют эксперты или их число недостаточно.

По своему характеру задачи относятся к области диагностики, интерпретации или прогнозирования.

Задачи носят вычислительный характер.

Доступные данные “зашумлены”.

Известны точные факты и строгие процедуры.


Примечание - [составлено автором]

В целом ЭС не рекомендуется применять для решения следующих типов задач:

математических, решаемых обычным путем формальных преобразований и процедурного анализа;

задач распознавания, поскольку в общем случае они решаются численными методами;

задач, знания о методах решения которых отсутствуют (невозможно построить базу знаний).

Ограничения в применении экспертных систем. Даже лучшие из существующих ЭС, которые эффективно функционируют как на больших, так и на мини-ЭВМ, имеют определенные ограничения по сравнению с человеком-экспертом.

. Большинство ЭС не вполне пригодны для применения конечным пользователем. Если пользователь не имеет некоторого опыта работы с такими системами, то у него могут возникнуть серьезные трудности. Многие системы оказываются доступными только тем экспертам, которые создавали базу знаний.

. Вопросно-ответный режим, обычно принятый в таких системах, замедляет получение решений. Например, без системы MYCIN врач может (а часто и должен) принять решение значительно быстрее, чем с ее помощью.

. Навыки системы не возрастают после сеанса экспертизы.

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

. ЭС не способны обучаться, не обладают здравым смыслом. Домашние кошки способны обучаться даже без специальной дрессировки, ребенок в состоянии легко уяснить, что он станет мокрым, если опрокинет на себя стакан с водой, однако если начать выливать кофе на клавиатуру компьютера, у него не хватит “ума” отодвинуть ее.

. ЭС неприменимы в больших предметных областях. Их использование ограничивается предметными областями, в которых эксперт может принять решение за время от нескольких минут до нескольких часов.

. В тех областях, где отсутствуют эксперты, применение ЭС оказывается невозможным.

. Имеет смысл привлекать ЭС только для решения когнитивных задач. Теннис, езда на велосипеде не могут являться предметной областью для ЭС, однако такие системы можно использовать при формировании футбольных команд.

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

Системы, основанные на знаниях, оказываются неэффективными при необходимости проведения скрупулезного анализа, когда число “решений” зависит от тысяч различных возможностей и многих переменных, которые изменяются во времени. В таких случаях лучше использовать базы данных с интерфейсом на естественном языке.

Преимущества ЭС перед человеком - экспертом. ЭС имеют определенные преимущества перед человеком-экспертом.

. У них нет предубеждений.

. Они не делают поспешных выводов.

. Эти системы работают систематизировано, рассматривая все детали, часто выбирая наилучшую альтернативу из всех возможных.

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

. Системы устойчивы к “помехам”. Эксперт пользуется побочными знаниями и легко поддается влиянию внешних факторов, которые непосредственно не связаны с решаемой задачей. ЭС, не обремененные знаниями из других областей, по своей природе менее подвержены “шумам”. Со временем системы, основанные на знаниях, могут рассматриваться пользователями как разновидность тиражирования - новый способ записи и распространения знаний. Подобно другим видам компьютерных программ они не могут заменить человека в решении задач, а скорее напоминают орудия труда, которые дают ему возможность решат задачи быстрее и эффективнее.

. Эти системы не заменяют специалиста, а являются инструментом в его руках.

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

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

Экспертные системы, выполняющие проектирование, разрабатывают конфигурации объектов с учетом набора ограничений, присущих проблеме. Примерами могут служить генная инженерия, разработка СБИС и синтез сложных органических молекул.

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

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

Экспертные системы, выполняющие обучение, подвергают диагностике, "отладке" и исправлению (коррекции) поведение обучаемого. В качестве примеров приведем обучение студентов отысканию неисправностей в электрических цепях, обучение военных моряков обращению с двигателем на корабле и обучение студентов-медиков выбору антимикробной терапии. Обучающие системы создают модель того, что обучающийся знает и как он эти знания применяет к решению проблемы. Системы диагностируют и указывают обучающемуся его ошибки, анализируя модель и строя планы исправлений указанных ошибок. Они исправляют поведение обучающихся, выполняя эти планы с помощью непосредственных указаний обучающимся.

Экспертные системы, осуществляющие управление, адаптивно руководят поведением системы в целом. Примером служит управление производством и распределением компьютерных систем, Управляющие экспертные системы допжны включать наблюдающие компоненты, чтобы отслеживать поведение объекта на протяжении времени, но они могут нуждаться и в других компонентах для выполнения любых или всех из уже рассмотренных типов задач: интерпретации, прогнозирования, диагностики, проектирования, планирования, отладки, ремонта и обучения. Типичная комбинация задач состоит из наблюдения, диагностики, отладки, планирования и прогноза.

1.3 Примеры известных классических ЭС


Рассмотрим примеры наиболее известных, классических экспертных систем, с которых началось создание и развитие этого типа программных средств.

МҮСIN - это экспертная система, разработанная для медицинской диагностики. В частности, она предназначена для работы в области диагностики и лечения заражения крови и медицинских инфекций. Система ставит соответствующий диагноз, исходя из представленных ей симптомов, и рекомендует курс медикаментозного лечения любой из диагностированных инфекций. Она состоит в общей сложности из 450 правил, разработанных с помощью группы по инфекционным заболеваниям Стэндфордского университета. Ее основополагающим моментом является использование вероятностного подхода.

Система МҮСIN справляется с задачей путем назначения показателя определенности каждому из своих 450 правил. Поэтому можно представлять МҮСIN как систему, содержащую набор правил вида "ЕСЛИ. ТО" с определенностью Р, которые предоставили люди-эксперты - и которые изложили и правила и указали свою степень доверия к каждому правилу по шкале от 1 до 10.

Установив эти правила и связанные с ними показатели определенности, МҮСIN идет по цепочке назад от возможного исхода, чтобы убедиться, можио ли верить такому исходу. Установив все необходимые исходные предпосылки, МҮСIN формирует суждение по данному исходу, рассчитанное на основе показателей определенности, связанных со всеми правилами, которые нужно использовать.

Допустим, чтобы получить исход Z, требуется определить предпосылки X и Ү, дающие возможность вывести Z. Но правила для определения X и Ү могут иметь связанные с ними показатели определенности Р и Q. Если значения Р и Q были равны 1,0, то исход Z не вызывает сомнения. Если Р и Q меньше 1,0 (как это обычно бывает), то исход Z не последует наверняка. Он может получиться лишь с некоторой степенью определенности.

МҮСIN не выдает диагноз и не раскрывает его точный показатель неопределенности. Система выдает целый список диагнозов, называя показатель определенности для каждого из них. Все диагнозы с показателями выше определенного специфического для каждого диагноза уровня принимаются как в той или иной степени вероятные, и пользователю вручается список возможных исходов.

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

Врачи оказались очень довольными таким результатом, потому что, сами не осознавая этого, они говорили, используя очень небольшой набор слов английского языка (по крайней мере, когда сообщали о своей работе).

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

DENDRAL - это старейшая, самая разработанная экспертная система в мире. Или, по крайней мере, старейшая система, названная экспертной.

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

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

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

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

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

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

PROSPECTOR - это экспертная система, применяемая при поиске коммерчески оправданных месторождений полезңых ископаемых.

Система PROSPECTOR, по аналогии с МҮСІN, содержит большое число правил, относящихся к различным объектам, а также возможных исходов, выведенных на их основе. В этой системе используется также "движение по цепочке назад" и вероятности. Методы этой системы являются одними из лучших среди всех разработанных методов для любой из существующих ныне систем.

Самый простой случай - правила, выражающие логические отношения. Это правила типа "ЕСЛИ х, ТО z", где событие "z" непосредственно вытекает из "х". Они остаются столь же простыми, если сопоставить "х" вероятность.

Если у "х" всего один аргумент, то это правило существенно упрощается. Обычно вместо "х" мы представляем более сложное логическое выражение, например (х И у) или (х ИЛИ у).

Если элементы отношения связаны с помощью логического И и отдельным элементам этого отношения сопоставлены определенные вероятности, то система PROSPECTOR. выбирает минимальное из этих значений и присваивает эту минимальную вероятность рассматриваемому возможному исходу. Поэтому, когда вероятность х = 0,1, вероятность у = 0,2, вероятность исхода z = 0,1. Легко видеть, почему выбран такой метод: чтобы "z" было истинным, и "х", и "у" доджны быть истинными. Это яаляется "жестким" ограничением, поэтому следует брать минимальное значение.

Система PROSPECTOR пользуется методом, основанным на применении формулы Байеса с целью оценки априорной и апостериорной вероятностей какого-либо события.

В целом правила в системе PROSPECTOR записываются в виде ЕСЛИ., ТО (LS; LN), причем каждое правило устанавливается с отношением правдоподобия как для положительного, так и для отрицательного ответа.

Система PROSPECTOR предлагает пользователю шкалу ответов в диапазоне от - 5 до +5. Нижний предел-это определенно "Да", верхний - определенно "Нет".

Обычно ответ пользователя находится где-то между крайними значениями, и PROSPECTOR корректирует Р (Н), учитывая LSи LN с помощью линейной интерполяции. Это легко представить себе в виде линейной шкалы, где LN - крайнее левое, а LS - крайнее правое значение.

Кроме экспертных систем МҮСІN, DENDRAL и PROSPECTOR существует большое количество других экспертных систем. Ниже (таблица 3) приводится список некоторых систем, отличительной особенностью которых является наличие большой базы знаний. Этот перечень, конечно, весьма неполный, потому что в последнее время происходит быстрое расширение сферы применения экспертных систем, и полный их перечень был бы огромным и устарел бы почти сразу же после его опубліжования.

В этом списке приведены также "пустые" экспертные системы (не содержащие конкретных правил предметных областей) и экспертные системы по построению других экспертных систем. Такие системы являются инструментальными средствами для создания прикладных экспертных систем, Они значительно облегчают задачи создания полномасштабной прикладной экспертной системы.

Вообще же инструментальные средства создания экспертных систеи (ЭС) классифицируют следующим образом: символьные языки программирования, ориентированные на создание ЭС и систем искусственного интеллекта (например, LISP, INTERLISP, SMALLTALK); языки инженерии знаний, т.е. языки высокого уровня, ориентированные на построение ЭС (например, OPS-5, LOOPS, Пролог, KES); системы, автоматизирующие разработку (проектирование) ЭС (например, КЕЕ, ART, TEIRESIAS, AGE, TIMM); их часто называют окружением (enviroment) для разработки систем искусственного интеллекта, ориентированных на знания; оболочки ЭС (или пустые ЭС) - ЭС, не содержашие знаний ни о какой проблемной области (например, ЭКСПЕРТИЗА, ЕМҮСIN, ЭКО, ЭКСПЕРТ).

В таблице 3 приведен список некоторых экспертных систем

Таблица 3 Список некоторых экспертных систем

Наименование системы

Назначение системы

MYCIN, PUFF, PIP,CASNET, INTERNIST SACON PROSPECTOR DENDRAL SECHS SYNCHEM EL MOLGEN MECHO PECOS R1 SU/X VM SOPHIE GUIDON TEIRESIAS,EMYCIN, EXPERT, KAS ROSIE, AGE, HEARSAY III, AL/X, SAGE, Micro-Expert

 Медицинская диагностика Техническая диагностика Геологическая диагностика Определение химической структуры вещества Определение химической структуры вещества. Анализ цепей Генетика Механика Программирование Конфигурирование компьютеров Машинная акустика Медицинские измерения Обучение электронике Медицинское обучсние Построение базы данных Построение экспертных систем


Примечание - [составлено автором]

 


1.4 Классификация экспертных систем


Класс "экспертные системы" сегодня объединяет несколько тысяч различных программных комплексов, которые можно классифицировать по различным критериям.

Компьютерные системы, которые могут лишь повторить логический вывод эксперта, принято относить к ЭС первого поколения. Однако специалисту, решающему интеллектуально сложную задачу, явно недостаточно возможностей системы, которая лишь имитирует деятельность человека. Ему нужно, чтобы ЭС выступала в роли полноценного помощника и советчика, способного проводить анализ нечисловых данных, выдвигать и отбрасывать гипотезы, оценивать достоверность фактов, самостоятельно пополнять свои знания, контролировать их непротиворечивость, делать заключения на основе прецедентов и, может быть, даже порождать решение новых, ранее не рассматривавшихся задач. Наличие таких возможностей является характерным для ЭС второго поколения. Экспертные системы, относящиеся ко второму поколению, называют партнерскими, или усилителями интеллектуальных способностей человека. Их общими отличительными чертами является умение обучаться и развиваться, т.е. эволюционировать.

В экспертных системах первого поколения знания представлены следующим образом:

) знаниями системы являются только знания эксперта, опыт накопления знаний не предусматривается.

) методы представления знаний позволяют описывать лишь статические предметные области.

) модели представления знаний ориентированы на простые области.

Представление знаний в экспертных системах второго поколения следующее:

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

) ЭС может решать задачи динамической базы данных предметной области.

По степени сложности решаемых задач экспертные системы можно классифицировать следующим образом:

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

По способу учета временного признака экспертные системы могут быть статическими, квазидинамическими или динамическими.

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

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

Квазидинамические ЭС интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени (например, микробиологические ЭС, в которых снимаются лабораторные измерения с технологического процесса один в 4 - 5 ч и анализируется динамика полученных показателей по отношению к предыдущему измерению).

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

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

В соответствии с перечисленными признаками классификации, как правило, выделяются следующие основные классы экспертных систем, таблица 4.

Таблица 4 - Основные классы экспертных систем

 

Анализ

Синтез

 

Детерминированность знаний

Классифицирующие

Трансформирующие

Один источник знаний

Неопределенность знаний

Доопределяющие

Многоагентные

Множество источников знаний

 

Статика

Динамика

 


Примечание - [составлено автором]

Классы экспертных систем, классифицирующие экспертные системы. К аналитическим задачам прежде всего относятся задачи распознавания различных ситуаций, когда по набору заданных признаков (факторов) выявляется сущность некоторой ситуации, в зависимости от которой выбирается определенная последовательность действий. Таким образом, в соответствии с исходными условиями среди альтернативных решений находится одно, наилучшим образом удовлетворяющее поставленной цели и ограничениям.

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

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

Для аналитических задач классифицирующего и доопределяющего типов характерны следующие проблемные области:

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

Диагностика - выявление причин, приведших к возникновению ситуации. Требуется предварительная интерпретация ситуации с последующей проверкой дополнительных фактов (например, выявление факторов снижения эффективности производства). В своём роде это обнаружение неисправностей в некоторой системе, т.е. поиск отклонений от нормы, как в технических, так и в живых организмах. Пример: диагностика и терапия сужения коронарных сосудов - ANGY;

диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ - система GRIP

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

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

В качестве методов решения задач в трансформирующих экспертных системах используются разновидности гипотетического вывода:

генерации и тестирования, когда по исходным данным осуществляется генерация гипотез, а затем проверка сформулированных гипотез на подтверждение поступающими фактами;

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

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

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

Примечание - [составлено автором]

Рисунок 4 - “Доска объявлений”

Для многоагентных систем характерны следующие особенности:

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

Распределенное решение проблем, которые разбиваются на параллельно решаемые подпроблемы, соответствующие самостоятельным источникам знаний;

Применение множества стратегий работы механизма вывода заключений в зависимости от типа решаемой проблемы;

Обработка больших массивов данных, содержащихся в базе данных;

Использование различных математических моделей и внешних процедур, хранимых в базе моделей;

Способность прерывания решения задач в связи с необходимостью получения дополнительных данных и знаний от пользователей, моделей, параллельно решаемых подпроблем.

Для синтезирующих динамических экспертных систем наиболее применимы следующие проблемные области:

Проектирование - определение конфигурации объектов с точки зрения достижения заданных критериев эффективности и ограничений. Состоит в подготовке спецификаций на создание "объектов" с заранее определёнными свойствами. Пример: проектирование бюджета предприятия или портфеля инвестиций; синтез электрических цепей - SYN.

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

Диспетчирование - распределение работ во времени, составление расписаний, например, планирование графика освоения капиталовложений.

Планирование - выбор последовательности действий пользователей по достижению поставленной цели. Нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции, а также используются модели поведения реальных объектов. Пример: планирование промышленных заказов - ISIS; планирование эксперимента - MOLGEN, планирование процессов поставки продукции.

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

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

Обучение - диагностируют ошибки при изучении какой - либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Кроме того, они планируют акт общения с обучаемым в зависимости от успехов обучаемого с целью передачи знаний. Пример: система PROUST - обучение языку Паскаль

Классификация по степени интеграции с другими программами.

Автономные ЭС работают непосредственно в режиме консультаций с пользователем для специфически "экспертных" задач, для решения которых не требуется привлекать традиционные методы обработки данных (расчёты моделирование и т.д.)

Гибридные ЭС представляют программный комплекс, агрегирующий стандартные пакеты прикладных программ (например, математическую статистику, линейное программирование или системы управления базами данных) и средства манипулирования знаниями.

Несмотря на большую выгодность гибридных ЭС их создание и разработка является более сложной задачей нежели автономных ЭС.

1.5 Инструментальные средства разработки экспертных систем


Различают следующие типы инструментальных средств разработки ЭС:

.        языки программирования;

2.       языки представления знаний (языки инженерии знаний);

.        средства автоматизации разработки (проектирования);

.        оболочки ЭС.

Указанные типы инструментальных средств перечислены в порядке убывания эффективности, требуемой квалификации пользователя и трудозатрат, необходимых для создания ЭС. Действительно, при использовании инструментальных средств первого типа в задачу разработчика входит программирование всех компонентов ЭС на языке довольно низкого уровня. Использование инструментальных средств второго типа позволяет значительно повысить уровень языка, что, как правило, приводит к некоторому снижению эффективности. Инструментальные средства третьего типа позволяют разработчику не программировать все или часть компонентов ЭС, а выбирать их из заранее составленного набора. При применении инструментальных средств четвертого типа разработчик ЭС полностью освобождается от работ по созданию программ, так как берет готовую пустую ЭС.

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

Оболочки ЭС ориентированы на работу с пользователем-непрофессионалом в области программирования. Основным свойством оболочек является то, что они содержат все компоненты ЭС в готовом виде и их использование не предполагает программирования, а сводится лишь к вводу в оболочку знаний о проблемной области. Каждая оболочка характеризуется фиксированным способом представления знаний, организации вывода и функционирования компонентов, которые будут использоваться во всех приложениях, где будет применяться оболочка.

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

Таким образом, в этом разделе рассмотрены общие сведения об экспертных системах, их назначение и архитектура, использование, приведены примеры известных классических экспертных систем, представлена классификация экспертных систем.

2. Компьютерные обучающие системы


2.1 Основные принципы новых информационных технологий обучения


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

С началом промышленного изготовления компьютеров первых поколений и их появленнем в образовательных учреждениях возникло новое направление в педагогике - компьютерные технологии обучения. Первая обучающая система Рlatо на основе мощной ЭBМ фирмы "Соntrol Data Соrроrаtіоn" была разработана в США в конце 50-х годов и развивалась в течение 20 лет. По-настоящему массовыми создание и использование обучающих программ стали с начала 80-х годов, когда появились и получили широкое распространение персональные компьютеры. С тех пор образовательные применения ЭВМ выдвинулись в число их основных прнменений наряду с обработкой текстов и графики, оттеснив на второй план математические расчеты.

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

Благодаря своим конструктивным и функциональным особенностям современный персональный компьютер является уникальной по своим возможностям обучающей машиной. Он находит применение в обучении самым разнообразным дисциплинам и служит базой для создания большого числа новых информационных технологий обучения. Какие же особенности персонального компьютера так выгодно отличают его от прежде известных обучающих машин и технических средств обучения?

Это не столько какая-то одна возможность персонального компыотера, сколько сочетание:

· интерактивного (диалогового) режима работы (действие человека - реакция компьютера-. - действие человека-реакция компьютераи т.д.);

· "персональности" (небольшие размеры и стоимость, позволяющие обеспечить компьютерами целый класс);

· хороших графических, иллюстративных возможностей (экраны распространенных модификаций имеют разрешающую способность 640x480 точек при 16 млн. цветовых оттенков - это качество хорошего цветного телевизора или журнальной иллюстрации);

· простоты управления, наличия гибких языков программирования человеко-машинного диалога и компьютерной графики;

· легкости регистрации и хранения информации о процессе обучения и работе учащегося, а также возможности копирования и размножения обучающих программ.

Технические возможности персонального компьютера, если компьютер используется как обучающее средство, позволяют

·активизировать учебный процесс;

·индивидуализировать обучение;

·повысить наглядность в предъявлении материала;

·сместить акценты от теоретических знаний к практическим;

·повысить интерес учеников к обучению.

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

Индивидуализация обучения при использовании компьютера также связана с интерактивным характером работы с компьютером и наличием компьютеров на рабочих местах: каждый ученик теперь может сам выбирать темп обучения, делать в работе паузы. Более глубокий и тонкий учет индивидуальных особенностей учащихся может осуществлять компьютерная программа, с помощью которой ведется обучение (педагогическое программное средство, сокращенно ППС). С помощью начального теста программа может определить уровень обученности ученика, и в соответствии с этим уровнем предъявлять теоретический материал, вопросы и задачи, а также подсказки и помощь. Обучение слабых учеников программа ведет на самом легком (базовом) уровне, изложение теоретических сведений максимально упрощено, вопросы и задачи облегчены, помощь имеет характер прямой подсказки. Обучение сильных учеников ведется на наиболее сложном уровне, теория излагается углубленно, предлагаются творческие задачи, требующие изобретательности и интуиции, а помощь имеет косвенный характер - намека или наводящего на правильный путь соображения. Между этими крайними случаями обучающая программа может учитыаать более тонкую традацию подготовленности учащихся.

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

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

Всегда остро стоит вопрос о соотношении теории и практики применительно к научному знанию, обучению и т.д. (на это обращал внимание еще гетевский Мефистофель: "Суха теория, мой друг, но древо жизни вечно зеленеет"). Традиционное обучение является преимущественно теоретическим. Классно-урочная форма обучения исподволь, незаметно подталкивает каждого педагога в отдельности и всю систему образования в целом к усилению теоретической стороны обучения в ущерб практической. В самом деле, любому педагогу излагать теоретические знания у доски и требовать от учеников воспроизведения этого изложения значительно легче, чем организовывать ориентированную на практику работу учащихся. Если же вести обучение с помощью компьютера, оно приобретает практический уклон: диалоговый характер работы с компьютером, его вычислительные моделирующие возможности предрасполагают к обучению в форме решения задач (и к тому же задач практической направленности).

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

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

Компьютерная технология повышает интерес к обучению предметам, не связанным с информатикой. Новое в организации учебного процесса с участием компьютера, само изменение характера работы ученика на уроке способствуют повышению интереса к учебе. В то же время, более тонкое использование возможностей компьютера позволяет, управлять мотивацией учеников во время компьютерного обучения. Здесь имеются в виду, в первую очередь, мотивирующие реплики обучающих программ, т.е. фразы, в которых обучающая программа оценивает работу ученика и стимулирует дальнейшее обучение. Эти фразы могут иметь неформальный характер с оттенком юмора и создавать теплую партнерскую эмоциональную атмосферу при работе с компьютером. Важное значение имеют элементы игры, состязательности в компьютерном обучении (например, подсчет очков и сравнение достижений различных учеников) или звуковые и зрительные эффекты (звучание музыкальных мелодий, мигание и цвета на экране дисплея).

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

Итак, компьютеры - эти уникальные по своим возможностям обучающие машины - установлены в классе. И тут выясняется, что не понятно, как к этим компьютерам подступиться, т.е. говорить о компьютерном обучении еще рано. Как быть, с чего начать переход к компьютерному обучению?

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

а) программного обеспечения - педагогических программных средств;

б) организационных форм использования компьютеров.

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

2.2 Типы обучающих программ


Основанием для классификации служат обычно особенности учебной деятельности обучаемых при работе с программами. Многие авторы выделяют четыре типа обучающих программ:

·тренировочные и контролирующие;

·наставнические;

·имитационные и моделирующие;

·развивающие игры.

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

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

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

Главным элементом программированного обучения является программа, понимаемая как упорядоченная последовательность рекомендаций (задач), которые передаются с помощью дидактической машины или программированного учебника и выполняются обучаемыми. Существует несколько известных разновидностей программированного обучения.

1. Линейное программированное обучение. Основатель - Б.Ф. Скиннер, профессор психологии Гарвардского университета, США. Впервые выступил со своей концепцией в 1954 г. При ее создании Скиннер опирался на бихевиористскую психологию, в соответствии с которой обучение основано на принципе S-R, т.е. на появлении некоторых факторов (S - stimulus) и реакции на них (R - reaction). По этой концепции для любой реакции, соответственно усиленной, характерна склонность к повторению и закреплению. Поощрением для обучаемого является подтверждение программой каждого удачного шага, причем, учитывая простоту реакции, возможность срвершения ошибки сводится к минимуму.

Линейная программа в понимании скиннера характеризуется следующими особенностями:

·дидактический материал делится на незначительные дозы, называемые шагами, которые обучаемые преодолевают относительно легко, шаг за шагом;

·вопросы, содержащиеся в отдельных рамках программы, не должны быть очень трудными, чтобы обучаемые не потеряли интереса к работе;

·обучаемые сами дают ответы на вопросы, привлекая для этого необходимую, информацию;

·в ходе обучения учащихся сразу же информируют о том, правильны или ошибочны их ответы;

·все обучаемые проходят по очереди все рамки программы, но каждый делает это в удобном ему темпе;

2. Разветвленная программа. Автор концепции разветвленного программирования - Норман А. Кроудер. Разветвленная программа основана на выборе одного правильного ответа из нескольких данных, она ориентирует на текст многократного выбора. По мнению автора, выбор правильных ответов требует от обучаемых больших умственных способностей, нежели припоминание какой-то информации. Непосредственное подтверждение правильности ответа он считает своеобразным типом обратной связи.

Вопросы, в понимании Кроудера, имеют целью

·проверить, знает ли ученик материал;

·в случае отрицательного ответа отсылать обучаемого к координирующим и соответственно обосновывающим ответ порциям информации;

·возможность закрепления основной информации с помощью рациональных упражнений;

·увеличение усилий обучаемого и одновременную ликвидацию механического обучения через многократное повторение информации;

·формирование требуемой мотивации обучаемого.

Если основой линейной программы является стремление избежать ошибок, то разветвленная программа не направлена на ликвидацию ошибок в процессе обучения; ошибки Кроудер трактует как возможность обнаружить недостатки в знании обучаемых, а также выяснить, какие проблемы обучаемые уяснили недостаточно благодаря этому о его программе можно было бы сказать, что она сводится к "управлению процессом мышления", в то время как линейная программа основана на "управлении ответами".

Постепенно оба классических типа - линейное и разветвленное программированное обучение - уступили место смешанным формам.

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

·блока ориентировочной основы действий (ООД), содержащего текстово-графическое изложение теоретических основ некоторого раздела автоматизированного курса;

·контрольно-диагностического блока, контролирующего усвоение ООД и управляющего обучением;

·блока автоматизированного контроля знаний, формирующего итоговую оценку знаний учащегося.

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

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

. Параллелъно-подготовителъный алгоритм. Начальные элементы заданий независимо один от другого подготавливают выполнение следующего за ним комплексного элемента высокого уровня.

3. Последователъно-корректирующий апгоритм. Начальные элементы задания имеют высокий уровень сложности, а каждый последующий элемент корректирует выполнение предыдущего, указывая, например, на противоречия, к которым приводят неправильные ответы.

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

5.Алгоритм переноса. Приводятся два массива элементов А (N) и В (N). Ими могут быть понятия, отношения, действия, характеристики и т.д. Требуется установить логическое соответствие между ними.

6.Аналитический алгоритм. Предлагаются элементы А (N). Необходимо установитъ принадлежность каждого из них к одному из классов В (K).

7.Синтезирующий алгоритм. Элементы массива А (N) уже разбиты на подгруппы. Задача обучаемого - установить критерий, по которому осуществлялась классификация.

8. Алгоритм упорядочения. Элементы массива А (N) необходимо упорядочить по некоторому указанному критерито В (К). Этот алгоритм требует для своего выполнения комплексной умственной деятельности.

Большинство инструментальных систем предоставляют преподавателю возможность составлять обучающие и контролирующие задания с различными типами ответов

1. С выборочным ответом. Обучаемому предлагается задание (вопрос) и набор (меню) готовых ответов, из которых он может сделать выбор правильного, по его мнению, ответа (утверждения).

Такой вариант задания наиболее удобен для машинной реализации, так как ЭВМ анализирует лишь номер, по которому легко определяет правильность ответа. На первый взгляд задания с выборочным ответом имеют ряд недостатков, а именно: обязательное предъявление верного ответа, возможность его угадывания, а значит, ограничение мыслительной деятельности обучаемого. Эти недостатки существенно снижаются путем правильного, творческого и остроумного применения различных принципов составления таких заданий.

Вероятность угадывания правильного ответа сводится к минимуму следующими простыми приемами:

· повторением аналогичного по смыслу вопроса в нескольких различных формах

· увеличением числа элементов для выбора (при выборе из пяти ответов вероятность угадывания равна 0,2);

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

2. С частично-конструируемым ответом. Задания этого типа являются промежуточным и связующим звеном между заданиями с выборочным ответом и свободноконструируемым. Частично-конструируемый ответ составляется из частей, предложенных препөдавателем.

Эта форма используется для заданий по составлению определений законов, теорем, стандартных формулировок и т.д. В верный ответ входят, как правило, не все элементы задания, и порядок их выбора не является жестким.

. Со свободно-конструируемым ответом. Задания такого типа являются наиболее предпочтительными для автоматизированного обучения и контроля. Они позволяют слушателю общаться с компьютером на естественном языке, имитируя диалог обучаемого и преподавателя. Задания со свободно-конструируемым ответом наиболее сложны для обучаемого, так как полностью исключают возможность угадывания и требуют значительной умственной работы перед вводом в компьютер ответа, набираемого на клавиатуре в свободной форме. В то же время резко возрастает сложность деятельности преподавателя - автора курса по формированию автономных ответов для анализатора инструментальной системы.

Эталон может содержать, как правило, не более 80 символов, включая пробелы. Ответ обучаемого на заданный вопрос сравнивается с текстом эталона и вырабатывается соответствующий признак ответа: "верный", "неверный", "предполагаемый" и т.д. Далее программа переходит к тому кадру сценария, который соответствует полученному признаку.

Таким образом, автор курса формирует кадры, предъявляемые обучаемому в зависимости от признака ответа, что создает иллюзию "понимания" системой смысла введенной фразы, так как при разных ответах на один и тот же вопрос обучаемый получает и различную реакцию компьютера.

В современных инструментальных системах реализованы следующие методы сравнения эталонного ответа с ответом обучаемого.

1. Анализ по ключевым словам. Этот метод анализа достаточно прост и универсален. Эталонный ответ, заранее введенный преподавателем, используется в качестве ключа, который сравнивается с ответом обучаемого на протяжении всеи строки. Ключом может быть один символ, слово или группа слов.

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

. Синтаксический анализ с использованием символов частичной обработки ответа обучаемого. Этот метод анализа целесообразно использовать в том случае, когда требуется выполнить сравнение не по ключу, а по жесткому эталону. Лишний символ должен считаться ошибкой, пробелы не игнорируются. Выполняется как бы прямое (посимвольное) сравнение посимвольного ответа с эталоном. При совпадении всех символов ответа с символами эталона вырабатывается признак "верно".

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

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

3. Логический анализ. Логический метод анализа дает возможность формирования ответа в свободно-конструируемой форме. В данном случае ответ может представлять собой фразу или предложение, в котором порядок слов строго не определен. В словах могут игнорироваться окончание или другие части.

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

Недостатками такого рода программ являются:

снижение мотивации в ходе работы с программой;

возникновение "провалов" (пробелов) в знаниях, связанных с непроизвольным рассеянием внимания в процессе работы с программой, а также ослаблением системного связывания знаний при отсутствии их интонационного выделения;

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

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

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

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

Программы 4-го типа (игры) предоставляют в распоряжение ученика некоторую воображаемую среду, существующий только в компьютере мир, набор каких-то возможностей и средств их реализации. Использование предоставляемых программой средств для реализации возможностей, связанных с изучением мира игры и деятельностьго в этом мире, приводит к развитию обучаемого, формированию у него познавательных навыков, самостоятельному открытию им закономерностей, отношений объектов действительности, имеющих всеобщее значение.

Наибольшее распространение получили обучающие программы первых двух типов в связи с их относительно невысокой сложностью, возможностью унификации при разработке многих блоков программ. Если программы 3-го и 4-го типов требуют большой работы программистов, психологов, специалистов в области изучаемого предмета, педагогов-методистов, то технология создания программ 1 - го и 2-го типов ныне сильно упростилась с появлением инструментальных средств или наполняемых автоматизированных обучающих систем (АОС).

Основные действия, выполняемые программами первых двух типов:

предъявление кадра с текстом и графическим изображением;

предъявление вопроса и меню вариантов ответа (или ожидание ввода открытого ответа);

анализ и оценка ответа;

предоставление кадра помощи при нажатии специальной клавиши.

Они могут быть легко и унифицированно запрограммированы, так что разработчику обучающей программы остается ввести в компьютер только соответствующий текст, варианты ответов, нарисовать на экране с помощью манипулятора "мышь" картинки. Создание обучающей программы в этом случае выполняется совершенно без программирования, не требует серьезных компьютерных познаний и по силам любому педагогу-предметнику средней школы. Названия наиболее известных отечественных АОС: "Урок", "Адонис", "Магистр", "Stratum". Используются в Казахстане и зарубежные системы: "Linkway", "ТеасһСаd" и др. Многие из этих систем имеют хорошие графические подсистемы и позволяют создавать не только статические картинки, но и динамические графические фрагменты в духе "мультимедиа" (речь об этом пойдет ниже).

Создание обучающей системы с использованием инструментальных программ обычно проходит четыре стадии.

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

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

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

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

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

В качестве первого шага к компьютерным технологиям обучения нужно рассматривать тренирующие и контролирующие программы. Нет ничего проще (с этой задачей могут справиться даже учащиеся старших классов, изучающие информатику), чем подготовить контролирующую программу по любому разделу любого учебного курса На языке программирования ВАSIС или с использованием инструментальных программ. Использовать такие контролирующие программы можно систематичсски. Это не потребует кардинальных изменений в существующем учебном процессе и избавит учителя от непроизводительных, рутинных операций по проверке письменных работ, контролю знаннй учащихся, решит проблему накопляемости оценок. Из-за тотальности контроля учащиеся получат мощный стимул к обучению.

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

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

· подготовки программных средств (наполнение оболочек контролирующих программ и обучающих систем соответствующими дидактическими материалами подбор моделирующих программ, размещение программных средств на соответствующем магнитном диске, проверка запускаемости программ);

· проведения самого урока;

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

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

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

· первоначальную мотивацию исследования; обнаружение какого-либо парадокса, постановку проблемной задачи;

· поиск объяснения парадокса, построение гипотез;

· проведение исследований, экспериментов, наблюдений и измерений, литературных изысканий с целью доказать или отвергнуть гипотезы, объяснения;

· групповое обсуждение результатов, составление отчета, проведение научной конференции;

· решение вопроса о практическом применении результатов исследований; разработку и защиту итогового проекта по теме.

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

Использование компьютера очень хорошо вписывается в эту технологию обучения, особенно если имеется возможность реализовать компьютерные телекоммуникации: обмениваться сообщениями по электронной почте с классами в других городах и даже странах, параллельно выполняющими такой же проект. Телекоммуникационная составляющая проекта позволяет резко повысить интерес учащихся к выполнению проекта, делает естественным использование компьютера для представления результатов наблюдений и измерений, способствует формированию информационной культуры учащихся. Проекты, построенные на сопоставлении местных условий, изучении в них общего и особенного, прививают учащимся глобальное видение мира. Учебные телекоммуникационные проекты чрезвычайно популярны в Соединенных Штатах. Сотни таких проектов для десятков тысяч классов во всех странах мира проводят ежегодно многие глобальные компьютерные сети учебно-научного назначения. Имеется опыт кспользования телекоммуникационных проектов и в российских условиях.

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

·развитие письменнои речи;

·овладение компьютерной грамотностью, освоение текстового редактора, компьютерных телекоммуникационных программ;

·развитие общих навыков решения проблем;

·развитие навыков работы в группе;

·развитие навыков творческой работы.

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

2.3 Перспективные исследования в области компьютерного обучения


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

) интеллектуальные обучающие системы;

2)учебные мультимедиа и гипермедиа;

3)учебные среды, микромиры и моделирование;

4)использование компьютерных сетей в образовании;

5)новые технологии для обучення конкретным дисциплинам.

Остановимся на некоторых из этих направлений подробнее.

2.3.1 Интеллектуалъные обучающие системы

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

· микромир;

· учащийся-человек;

· учащийся-компьютер;

· интерфейс между двумя учащимися и микромиром;

интерфейс между двумя учащимися.

В основе разработки компьютерного "соученика" в центре внимания должно быть соотношение между управлением и коммуникацией. Прототипом такого рода системы можно считать МЕМOLАВ - обучающую среду с искусственным интеллектом по методологии экспериментальной психологии и человеческой памяти.

Другое направление развития систем искусственного ннтеллекта - распределенные системы, связывающие два и более компьютеров так, что ученики могут обучаться, сотрудничая или соревнуясь, каждый на своем компьютере. В этом случае возникает некое подобие "классного" обучения, но на совершенно ином уровне. Эксперименты и оценки показывают, что такое обучение оказывается более эффективным и интересным, чем обучение в одиночку. Недостатком многих существующих ИОС является ориентация на специальные знания в рамках определенного предмета, так что в них не предусмотрена возможность простой адаптации к другой предметной области. Более общий подход состоит в развитии интеллектуального окружения (оболочки), из которого затем можно получить много ИОС путем наполнения различным содержанием, как баз знаний. Пример такой системы - ЕЕРS, обучающая среда для решения задач, обеспечивающая обучение решению задач в качественных областях науки.

Система реализует модель преподавания, основанную на трех режимах;

· режим вопросов (обучаемый расспрашивает компьютер, с целью получения ответов на задачи и их объяснений);

· режим исследования (решения задачи совместными усилиями обучаемого с компьютером, обучаемый поставляет требуемую информацию для решения задачи);

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

Система диагностики представляет стратегию решения задач студентом в виде одного из следующих стилей:

·дефектный стиль (студент, зная материал, допускает одну или более концептуальных ошибок);

·стиль "вокруг да около" (студент пытается найти решение многими неверными путями, задает много не относящихся к делу вопросов);

·рефлексивный стиль (когда студент знает материал, но решает задачу постепенно, иногда проходя через множество промежуточных этапов);

·импульсивный стиль (когда студент спешит прийти к заключению без достаточных оснований);

·смешанный стиль - комбинация двух или более перечисленных выше стилей.

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

В современных интеллектуальных обучающих системах, в основном, используются знания о качественных (количественных) аспектах процесса обучения. Однако, необходимо учитывать и мотивационную сторону обучения. Мотивационные аспекты обучения можно классифицировать в соответствии с такими явлениями, как срревновательность, заинтересованность, самоконтроль, уверенность и удовлетворение.

Обучающая система должна.

определять мотивационное состояние обучаемого;

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

Примеры мотивационной тактики:

если менее уверенный ученик правильно решает задачу, система может предложить ему подобную задачу для закрепления;

внимание рассеянных или неактивных обучаемых может быть привлечено неожиданными эффектами или вводными комментариями;

интерес может быть повышен головоломками, вопросами или знакомством с новымитемами.

2.3.2 Учебная мультимеда и гипермедиа

Учебная мультимеда и гипермедиа представляет собой развитие технологии программированного обучения, хотя упор делается не на адаптивность обучения и его методическое обоснование, а на внешнюю иллюстративно-наглядную сторону. Современные графические и звуковые возможности компьютера, а также возможность комплексирования его в качестве управляющего устройства с системами учебного телевидения, обусловили появление средств гипер и мультимедиа. Научные исследования в данной области связаны с разработкой технологий создания учебных курсов большего размера на основе возможностей мульти - и гипермедиа. Под управлением компьютера система мультисред может производить в едином представлении объединение текста, графики, звуков, видео-образов и мультипликации. Технология мультимедиа в последнее время широко применяется для создания электронных книг (и учебников).

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

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

Компьютерное обучение остается очень интересной и перспективной областью исследований, привлекающей передовых ученых, педагогов и методистов всего мира. С внедрением компьютерного обучения стали меняться стили и устоявшиеся подходы к обучению, стала быстро меняться сама эта традиционная сфера человеческой деятельности. Трудно переоценить значение и влияние этих изменений на судьбы человеческой цивилизации в целом.

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

3. Контроль знаний


3.1 Компьютерное тестирование


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

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

Существует специальная теория тестирования, оперирующая понятиями надежность, валидность, матрица покрытия и т.д., не специфических именно для компьютерных тестов. Здесь мы не будем в нее углубляться, сосредоточившись в основном на технологических аспектах.

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

Технология проектирования компьютерных тестов предметной области. Экспертами чаще используется метод нисходящего проектирования модели знаний (технология "сверху - вниз"). Вначале строится генеральное содержяние предметной области с разбивкой на укрупненные модули (разделы). Затем проводится детализация модулей на элементарные подмодули, которые, в свою очередь, наполняются педагогическим содержанием.

Другой метод проектирования "снизу - вверх" (от частного к общему) в большинстве случаев реализуется группой экспертов для разработки модели знаний сложной и объемной предметной области или для нескольких, близких по структуре и содержанию, предметных областей.

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

Примечание - [составлено автором]

Рисунок 5 - Структуры линейной модели знаний

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

Примечание - [составлено автором]

Рисунок 6 - Семантический граф модуля знаний

Приведем пример элемента модуля знаний по теме "Исследование графиков функций", рисунок 7.

Примечание - [составлено автором]

Рисунок 7 - Пример элемента модуля знаний по теме "Исследование графиков функций"

Модульное представление знаний помогает организовать четкую систему контроля с помощью компьютерного тестирования, поскольку допускает промежуточный контроль (тестирование) каждого модуля, итоговый контроль по всем модулям и их взаимосвязям, а также эффективно использовать методику "черного ящика";

осуществлять наполнение каждого модуля педагогическим содержанием;

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

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

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

Можно выделить два принципиальных способа контроля (тестировання) некоторой системы:

) метод "белого ящика" - принцип тестирования экспертной модели знаний;

) метод "черного ящика" - тестирование некоторой сложной системы по принципу контроля входных и выходных данных (наиболее подходит к компьютерному тестированию).

Для упрощения дальнейшего изложения введем ряд определений и понятий.

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

Тестовое задание - это четкое и ясное задание по предметной области, требующее однозначного ответа или выполнения определенного алгоритма действий.

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

Тестовое пространство - множество тестовых заданий по всем модулям экспертной модели знаний

Класс эквивалентности - множество тестовых заданий, таких, что выполнение учеником одного из них гарантирует выполнение других.

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

Эффективный тест - оптимальный по объему полный тест.

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

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

Примечание - [составлено автором]

Рисунок 8 - Схема создания тестовых заданий

Самый простой способ составления тестовых заданий - формирование вопросов к понятиям, составляющим узлы семантического графа, разработка упражнений, требующих для их выполнения знания свойств выбранного понятия. Более сложным этапом является разработка тестовых заданий, определяющих отношения между понятиями. Еще более глубокий уровень заданий связан с их подбором, выявляющим связь понятий между отдельными модулями.

Множество тестовых заданий (тестовое пространство), вообще говоря, согласно принципу исчерпывающего тестирования, может быть бесконечным. Например, для исчерпывающего контроля знаний таблицы умножения целых чисел от 1 до 100 необходимо использовать 100*100 всех возможных комбинаций двух чисел. А для всех натуральных чисел тестовое пространство становится бесконечным.

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

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

В примере с таблицей умножения одним из классов эквивалентности может выступить множество заданий перемножения всех натуральных чисел на 1: 1*1, 1*2, 1*3 и т.д. Поэтому в тест достаточно включить всего лишь несколько тестовых заданий из этого класса эквивалентности.

В дальнейшем необходим тестовый эксперимент на группе учащихся, который позволит провести корректировку и доводку теста до вида эксплуатации (методика "черного ящика"):

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

1)формализация экспертной целевой модели знаний;

2)нисходящее (или снизу - вверх) проектирование тестового пространства;

3)формирование и наполнение тестовых заданий;

4)формирование полного компьютерного теста;

5)тестовый эксперимент;

6) выбор эффективного теста;

) анализ, корректировка и доводка теста до вида эксплуатации.

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

. Типы тестовых заданий по блоку "знания":

· вопросы альтернативные (требуют ответа да - нет);

· вопросы с выбором (ответ из набора вариантов);

· вопросы информативные на знание фактов (где, когда, сколько);

· вопросы на знание фактов, имеющих формализованную структуру (в виде информационной модели или схемы знаний);

· вопросы по темам, где имеются однозначные общепринятые знаковые модели: математические формулы, законы, предикатные представления, таблицы;

· вопросы, ответы на которые можно контролировать по набору ключевых слов;

· вопросы, ответы на которые можно распознавать каким-либо методом однозначно.

2. Типы тестовых заданий по блоку "навыки" (распознание деятельности: манипуляции с клавиатурой; по конечному результату):

задания на стандартные алгоритмы (альтернативные да - нет, выбор из набора вариантов);

выполнение действия.

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

задания на нестандартные алгоритмы (альтернативные да - нет, выбор из набора вариантов);

выполнение действия.

Выбор типов тестов определяется

· особенностями инструментальных тестовых программ (тестовыми оболочками);

· особенностями предметной области;

· опытом и мастерством экспертов.

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

3.2 Технология разработки тестовых заданий


3.2.1 Классификация видов тестов

Тест (от английского слова test - испытание, проверка) - стандартизированные, краткие, ограниченные во времени испытания, предназначенные для установления количественных и качественных индивидуальных различий.

Все имеющееся тесты можно классифицировать на следующие виды:

·        Тесты нулевого уровня (понимание материала);

·        Тесты первого уровня (узнаваемые);

·        Тесты второго уровня (воспроизведение);

·        Тесты третьего уровня (применение использования знаний);

·        Тесты четвертого уровня (творческий, эвристический);

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

Тесты первого уровня используются для проверки качества усвоения на уровне "узнавания". К ним относятся задания на опознание, различие, классификацию объектов, явлений и понятий, при этом дается подсказка.

Тесты второго уровня используются для проверки качества усвоения деятельности, в которой обучаемый способен самостоятельно воспроизводить условные знания и применять в типовых ситуациях, не требующей создания новой информации (репродуктивная деятельность). К тестам второго уровня относятся тесты постановки, в которых намеренно пропущено слово, сочетание слов, формула или другой существенный элемент текста. Это тесты на установление последовательности материала, открытые тексты, тесты на числовое завершение и так далее. К тестам второго уровня относятся и типовые задачи.

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

Тесты четвертого уровня. Эти тесты служат для выявления умения обучаемого применять решение в проблемных, непредвидимых ситуациях. Их решение опирается на творческую деятельность, во время которой получается объективно новый результат. Создание тестов четвертого уровня затрудняет то, что для них сложно создать эталон, так как трудно смоделировать творческую деятельность.

Для контроля усвоения материала обычно используют тесты первого и второго уровня.

К тестам первого уровня относят:

·        закрытые тесты с несколькими возможными правильными выборочными ответами;

·        тесты на установление взаимосвязей;

·        тесты на различение синонимов и антонимов;

·        тесты по аналогии;

К тестам второго уровня относят:

·        открытые тесты (на завершение), состоящие из предложения, в котором пропущено определенное слово (или слова);

·        тесты на числовое завершение, где необходимо определить способ организации серии чисел и обозначить его определенным образом;

·        тесты на установления соответствия элементов одного множества (графики, схемы, формулы, рисунки);

·        тесты на определение правильной последовательности;

·        тесты на решения типовых задач;

Наибольшее применение в учебном процессе вузов находят закрытые и открытые тесты, тесты на установления соответствия и тесты на установление правильной последовательности [1].

3.2.2 Требования к тестовым заданиям

Тест является системой знаний. Системность определяется взаимосвязанностью знаний между собой. Задания должны следовать по возрастающей трудности. Существуют следующее требования к составлению тестовых заданий:

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

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

.        Задание должно быть четким по языку, ясным по смыслу.

.        Задание должно быть корректным, что обычно достигается знанием дисциплины на высоком уровне;

.        В тесте задания должны обладать кумулятивным эффектом - каждое последующее задание должно быть труднее предыдущего.

.        Задание должно обладать дифференцирующей способностью.

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

Время на выполнение тестового задания устанавливается путем проверки выполнения теста знающим человеком. Время на выполнение задания студентами устанавливается в три раза больше времени, затраченного знающим человеком [1].

3.2.3 Рекомендации по составлению тестовых заданий

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

.        Начинать формулировать вопрос с правильного ответа.

2.       Содержание знания должно отвечать программным требованием и отражать содержание обучения.

.        Вопрос должен содержать одну законченную мысль.

.        При составлении вопросов следует особенно внимательно использовать слова "иногда", "часто", "всегда", "все", "никогда".

.        Вопрос должен быть четко сформулирован, избегая слова большой, небольшой, малый, много, мало, меньше, больше и так далее.

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

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

.        Не использовать вопросов с подвохом.

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

.        Реже использовать отрицание в основной части, избегать двойных отрицаний.

.        Ответ на поставленный вопрос не должен зависеть от предыдущих ответов.

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

.        Если ставиться вопрос количественного характера, ответы располагаются по возрастанию, если дистракторы представлены в виде слов текста, располагать их в алфавитном порядке.

.        Лучше не использовать варианты ответов "ни один из перечисленных" и "все перечисленные".

.        Избегать повторения.

.        Использовать ограничения в самом вопросе.

.        Не упрощать вопросы.

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

.        Лучше использовать длинный вопрос и короткий ответ.

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

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

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

4. Инструментальные средства создания приложения и разработка программы тестирования


4.1 Общие сведения о Delphi


При разработке данной дипломной работы мною был использован язык программирования Delphi 7.0. Данный язык программирования оказался наиболее подходящим для разработки программы тестирования.

В первую очередь Delphi предназначен для профессионалов-разработчиков корпоративных информационных систем. Не секрет, что некоторые удачные продукты, предназначенные для скоростной разработки приложений (RAD - rapid application development) прекрасно работают при изготовлении достаточно простых приложений, однако, разработчик сталкивается с непредвиденными сложностями, когда пытается сделать что-то действительно сложное. Бывает, что в продукте вскрываются присущие ему ограничения только по прошествии некоторого времени.такие ограничения не присущи. Хорошее доказательство тому - это тот факт, что сам Delphi разработан на Delphi. Однако Delphi предназначен не только для программистов-профессионалов [15].

Borland Delphi появляется в конце 1993 г. и сразу же завоевывает широкую популярность. Новые версии выходят практически каждый год. В них реализуются все новые мастера, компоненты и технологии программирования.

Действительно, процесс разработки в Delphi предельно упрощен. В первую очередь это относится к созданию интерфейса, на который уходит 80% времени разработки программы. Вы просто помещаете нужные компоненты на поверхность Windows-окна (в Delphi оно называется формой) и настраиваете их свойства с помощью специального инструмента (Object Inspector). С его помощью можно связать события этих компонентов (нажатие на кнопку, выбор мышью элемента в списке и т.д.) с кодом его обработки.

В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты как художник, делающий крупные мазки кистью. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем то же самое, сделанное при помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения [20].

4.2 Используемые компоненты Delphi при разработки программы тестирования


В процессе разработки программы тестирования, были использованы стандартные компоненты, входящие в состав Delphi, а также компоненты, такие как: ListBox, PageControl, Label, Button, RadioGroup.

Компонент - ListBox (список), он предназначен для работы со списком, размещенный на странице Standard Палитры компонентов. Он представляет собой упорядоченную совокупность взаимосвязанных элементов, являющихся текстовыми строками. Списки широко применяются в Windows, например, для отображения информации о перечне шрифтов или способах их начертания. Элементы списка могут быть отсортированные в алфавитном порядке или размещены в порядке их добавления в список. Как и другие объекты, представляющие собой совокупность данных, списки позволяют добавлять, удалять и выбирать отдельные их элементы (строки).

Компонент - PageControl (многостраничный блокнот), служит для работы с содержащими закладки элементами, который размещен на странице Win 32 Палитры компонентов. Он представляет собой управляющий элемент, содержащий несколько страниц (листов), которые пользователь может выбирать, щелкая мышью на закладках этих страниц. PageControl является контейнером и может содержать в себе другие компоненты, объединяя и группируя их. Он состоит из нескольких страниц, расположенных одна под другой. Каждая страница имеет свою закладку и относительно независима от других страниц. Компактное расположение страниц блокнота позволяет удобно размещать и группировать другие управляющие элементы. При выборе закладки автоматически выбирается и соответствующая страница, после чего пользователю становятся доступными расположенные на ней элементы управления.

Компонент - RadioGroup (зависимый переключатель), представляет собой группу переключателей RadioButton, который содержится на станице Standard Палитры компонентов. Такая группа переключателей создана для упорядочения переключателей и упрощения организации их взаимодействия по сравнению с добавлением их вручную к обычной группе. Он позволяет выбрать какое-либо значение из множества и может находиться во включенном или выключенном состояниях.

Компонент - SkinData. (интерфейс приложения), представляет, собой компонент позволяет создавать приложения с поддержкой разнообразных скинов, позволяющих предать разработанному приложению приятный интерфейс [21];

Компонент - TEdit предназначен для ввода пользователем некоторых данных. Обычно им пользуются для ввода цифровых или текстовых данных, пароля (свойство PasswordChar установите маску отображаемых символов, обычно это звездочка). Доступ к тексту - свойство Text. Ограничение количества введенных символов - свойство MaxLength (0 - число символов не ограничено).

Компонент - TCheckBox представляет собой текстовую строку с возможностью ее установки в три положения. Свойство Checked true (истинно, установлена галочка), false (ложно, галочка снята). Возможно ее выделить серым в свойстве State в cbGrayed. Текст устанавливается в свойстве Caption. Такие компоненты чаще всего устанавлявают в окна настройки параметров программы, окна поиска.

Компонент - TDBGrid является потомком классов TDBCustomGrid и TCustomGrid. От класса TCustomGrid наследуются все функции отображения и управления работой двумерной структуры данных. Класс TDBCustomGrid обеспечивает визуализацию и редактирование полей из набора данных, причем TDBGrid только публикует свойства и методы класса TDBCustomGrid, не добавляя собственных.

В компоненте TDBGrid можно отображать произвольное подмножество полей используемого набора данных, но число записей ограничить нельзя - в компоненте всегда присутствуют все записи связанного набора данных. Требуемый набор полей можно составить при помощи специального Редактора столбцов, который открывается при двойном щелчке на компоненте, перенесенном на форму, или кнопкой свойства columns в инспекторе объектов.

Компонент TDBEdit - Компонент представляет собой стандартный однострочный текстовый редактор, в котором отображаются и изменяются данные из поля связанного набора данных. Прямой предок компонента - класс TCustomMaskEdit, который также является прямым предком компонента TEdit.

Компонент может осуществлять проверку редактируемых данных по заданной для поля маске. Непосредственно для редактора задать маску нельзя, т.к. содержащее маску свойство EditMask в классе TCustomMaskEdit является защищенным, а в TDBEdit не перекрыто. Тем не менее механизм контроля полностью унаследован. Саму же маску можно задать в связанном с редактором поле. Объект TField имеет собственное свойство EditMask, которое и используется при проверке данных в редакторе.

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

В компоненте можно использовать буфер обмена. Это делается средствами операционной системы пользователем или программно при помощи методов CopyToClipboard, CutToClipboard, PasteFromCiipboard.

Компонент TDBListBox - компонент отображает текущее значение связанного с ним поля набора данных и позволяет изменить его на любое фиксированное из списка. Функционально компонент ничем не отличается от компонента TListBox. Значение поля должно совпадать с одним из элементов списка. Специальных методов компонент не содержит.

Интерфейс приложения составляют компоненты, которые разработчик выбирает из Палитры компонентов и размещает на форме, то есть компоненты являются своего рода строительными блоками. При конструировании интерфейса приложения действует принцип WYSIWYG (What You See Is Whar You Get - что видите, то и получите), и разработчик при создании приложения видит форму почти такой же, как и при его выполнении. Если посмотреть на компоненты, входящие в стандартную библиотеку, то многие из них словно специально созданы для обучающих программ. Компоненты являются структурными единицами и делятся на визуальные (видимые) и не визуальные (системные). При этом понятия “видимый” и “невидимый” относятся только к этапу выполнения, на этапе проектирования видны все компоненты приложения [8].

К визуальным компонентам относятся, например, кнопки, списки или переключатели, а также форма. Так как визуальные компоненты используются пользователем для управления приложением, то их также называют управляющими компонентами или элементами управления. Именно визуальные компоненты образуют интерфейс приложения.

К не визуальным компонентам относятся компоненты, выполняющие вспомогательные, но не менее важные действия.

При создании интерфейса приложения для каждого компонента выполняются следующие операции:

·   выбор компонентов в Палитре компонентов и размещение его на форме;

·   изменение свойств компонента.

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

В разработке программы тестирования, для сохранения данных собранных во время проведения тестирования (фамилия, имя, отчество, группа, дисциплина, дата тестирования, количество правильных ответов, количество баллов, файл правильных ответов, общие ответы тестируемого, правильные ответы), была использована система управления сетевыми, реляционными базами данных Paradox поставляемая корпорацией BORLAND (таблица 5).

Таблица 5 - Структура таблицы файла базы данных Testing. db.

Фамилия Имя Отчество

Группа

Дисциплина

Дата тестирования

Кол-во правильных ответов

Кол-во баллов

Файл правильных ответов

Общие ответы тестируемого

Верные ответы

Яров Юрий Иванович

И-22

Информатика

10.10.07

1

1

<1test>D <2test>B <3test>D <4test>C <5test>C <6test>A <7test>D <8test>C <9test>D <10test>E

<21test>- <25test>- <3test>D <27test>C <17test>D <9test>A <23test>A <7test>- <18test>- <2test>-

<3test>D



Информация всей Базы данных программы тестирования хранится в одном файле. Размер этого файла может составлять единицы и даже сотни мегабайт.

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

4.3 Разработка программы тестирования


4.3.1 Постановка задачи

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

.        Учитывать сложность тестовых заданий.

2.       Формировать результат тестирования после проведения процедуры тестирования.

.        Использовать технологию создания базы данных, которая необходима для комплексного сбора информации после процедуры тестирования.

4.3.2 Описание программы

Программа "Тестирование Testing’s" представляет собой программное обеспечение, разработанное для контроля успеваемости студентов высшего учебного заведения (но при желании может использоваться и в других учебных заведениях). Для управления действиями программы на главной форме предусмотрено меню (Рисунок 9).

Рисунок 9 - Основное меню программы тестирования

В основное меню программы тестирования входит:

.        Настройка программы.

2.       Тестирование

.        Журнал

.        Выход

Работа с программой тестирования начинается с определения настроек. Заполнение настроек осуществляется в диалоговом окне.

На этой вкладке расположены настройки, позволяющие задать параметры такие, как:

·        Установка времени тестирования - позволяющая задать определенный промежуток времени, который будет отведен на процесс тестирования.

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

·        Создание пароля - здесь пользователь может создать пароль, который ставит ограничение на доступ к настройкам программы, просмотру журнала.

Для начала тестирования необходимо произвести переход на форму ввода начальных данных.

Далее необходимо ввести входные данные Фамилию Имя Отчество, название группы. Затем необходимо из списка заданий выбрать тестовое задание. Список тестовых заданий создается путем добавления файла тесового задания в исходную директорию программы, имеющего расширение *. rtf в котором непосредственно содержатся тестовые задания.

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

Далее после загрузки тестового задания переходим на форму процедуры тестирования.

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

Обработка результатов тестирования происходит с помощью журнала.

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

·        ответы студента (то есть те ответы, на которые был дан ответ студентом);

·        правильные ответы - здесь отражаются сведения только о правильных ответах студента полученных в процессе тестирования;

·        файл ответов - здесь отображаются сведения о файле ответов, который содержит верные ответы на вопросы, которые выносятся на тестирование;

·        удаление записи из базы данной - данная операция позволяет выполнить удаление выбранной записи из таблицы базы данных;

·        форматирование базы данной - подразумевает собой полное уничтожение данных, находящихся в структуре таблиц;

·        отчет - представляет собой документ содержащие данные, аналогично получаемым в результате выполнения запроса к базе данных. Формирование отчета происходит в виде передачи структуры таблицы в Microsoft Excel.

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

4.4 Техника безопасности работы на персональных компьютерах и вычислительной технике


Общие требования техники безопасности.

.1.      К самостоятельной работе на персональных компьютерах (ПК) допускаются лица не моложе 18-ти лет, прошедшие медицинское освидетельствование, специальное обучение, инструктаж по охране труда на рабочем месте, изучившие "Руководство по эксплуатации" и усвоившие безопасные методы и приемы выполнения работы. Персонал, допущенный к работе на ПК по наладке, эксплуатации PR-нию обязан:

·   получить инструктаж по охране труда;

·   ознакомиться с общими правилами эксплуатации и указаниями по безопасности труда, которые содержаться в "Руководстве по эксплуатации";

·   познакомиться с предупреждающими записями на крышках, стенках, панелях блоков и устройств;

·   познакомиться с правилами эксплуатации электрооборудования;

1.2.    ПК должен подключаться к однофазной сети с нормальным напряжением 220 (120) В, частотой 50 (60) Гц и заземленной нейтралью. Заземляющие контакты розеток должны быть надежно соединены с контуром защитного заземления помещения. В помещении должен быть установлен автомат аварийного или рубильник общего отключения питания.

1.3.    Запрещается самостоятельно производить ремонт ПК (его блоков), если это не входит в круг ваших обязанностей.

.4.      При эксплуатации ПК должны выполняться следующие требования, правила:

·   не подключать и не отключать разъемы и кабели электрического питания при поданном напряжении сети;

·   не оставлять ПК включенным без наблюдения;

·   не оставлять ПК включенным во время грозы;

·   по окончании работы отключить ПК от сети;

·   устройства должны быть расположены на расстоянии 1 м от нагревательных приборов;

·   рабочие места должны располагаться между собой на расстоянии не менее 1,5 метров;

·   устройства не должны подвергаться воздействию прямых солнечных лучей;

1.5.    Непрерывная продолжительность работы при вводе данных на ПК не должна превышать 4 часов при 8-часовом рабочем дне, через каждый час работы необходимо делать перерыв 5-10 минут, через 2 часа на 15 минут.

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

Заключение


Краткие выводы по результатам работы:

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

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

. Представлен широкий круг проблем, связанный с применением и перспективами использования ЭС и в особом случае - образовании;

. Показана классификация ЭС, модели представления знаний, вывода решений и модели общения в ЭС;

. Предложены теоретические и практические аспекты получения, формализации и структуризации проблемных знаний;

. Создана экспертная тестирующая программы на языке Delphi

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

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

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

Результаты исследований могут быть использованы при чтении курса "Системы искусственного интеллекта" на четвертом курсе университета специальности "Информационные системы", и в школьном курсе по предмету "Информатика", а также проведено тестирование по экспертной тестирующей программе в 38 школе города.

Данная программа облегчит и даст учащимся новый материал, как в теоретической части, так и в практической.

Список использованных источников


1.       Острейковский В.А., Информатика. - М., Высшая школа, 1999.

2.       Ж. - Л. Лорьер, Системы искусственного интеллекта, М. Мир, 1991.

.        Алиев Р.А. и др. Производственные системы с искусственным интеллектом. / Р.А. Алиев, Н.М. Абдикеев М.Н. Шахназаров. - М., Радио и связь, 1990. - 264 с.

.        Ф. Уоссермен, Нейрокомпьютерная техника, М., Мир, 1992.

.        Прикладные нечеткие системы: Пер. с япон. /К. Асаи и др.,-М., Мир, 1993.

.        С.А. Орловский. Проблемы принятия решений при нечеткой исходной информации. - М.: Наука, 1981.

.        Нечеткие множества в моделях управления и искусственного интеллекта/Под ред. Д.А. Поспелова. - М.: Наука, 1986.

.        Брановский Ю.С., Введение в педагогическую информатику - Ставрополь: СГПУ, 1995.

.        Гаврилов Н.А., Структуирование знаний, курс дистанционного образования - Пермь: Пермский областной институт повышения квалификации работников образования, 2004.

.        Гаврилова Т.А., Хорошевский В.Ф., Базы знаний интеллектуальных систем - Санкт-Петербург: Питер, 2000

.        Дж. Грофф, П. Вайнберг, SQL, 3-е издание - Москва: Литер, 2003.

.        Журнал "Вестник ПОИПКРО" №3 2002, "Структуирование знаний для дистанционного обучения".

.        Журнал "Открытое образование" №3 2002, "Анализ структуры знаний методом S-диаграмм".

.        Журнал "Открытое образование" №3 2003, "Способы представления знаний для дистанционного образования".

.        Карпова Т.С., Базы данных. Модели, разработка, реализация - Санкт-Петербург: Питер, 2002

.        Любомудров А.А., Основы теории компьютеров, курс лекций - Москва: Московский Инженерно Физический Институт (государственный университет), 2000.

.        Фаронов В.В., Учебный курс Delphi 4 - Москва: Нолидж, 1998.

.        Беспалько В.П. Системно-методическое обеспечение учебно-воспитательного процесса подготовки специалистов. М: Высшая школа, 1989.

.        Машбиц Е.И. Психолого-педагогические проблемы компьютеризации обучения. М.: Педагогика, 1988.

.        Савельев А.Я., Новиков В.А., Лобанов Ю.И. Подготовка информации для автоматизированных обучающих систем: Метод, пособие для преподавателей и студентов вузов/ под ред.А.Я. Савельева. М.: Высшая школа, 1986.

.        Роберт И.В. Психолого-педагогические проблемы открытого образования // Тезизы докладов 2-ой Всероссийской конференции "Электронные учебники и электронные библиотеки в открытом образовании". М.: Изд-во МЭСИ, 2001.

.        Роберт И.В. "Электронные учебники и электронные библиотеки в открытом образовании". М.: Изд-во МЭСИ, 2001.

.        Дубовченко К.С. Компьютерные сети. Учебное пособие по информатике "Данекер" Алматы 2001

.        Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: Учебник для вузов.2-ое изд. - СПб.: Питер, 2005. - 703 с

.        Руководящий документ по системе передачи данных России. - М.: 1995.

.        Цезарь Т. Шайко. Тенденции развития мирового телекоммуникационного рынка. “Электросвязь”. 1997. N 7.

.        Суконкин В.С. Передача речи по АТМ. Отраслевой каталог 1999 г. “Технологии и средства связи”.

.        Дунаев В.В. Самоучитель Flash MX 2004. - СПб.: Питер, 2005. - 386 с.: ил.

.        Матросов А., Сергеев А., Чаунин М.html. - Петербург, 2001

.        Спирина Е.А. Основы создания HTML-документов. - Караганда, 2002

.        Будшов В.А. Практические занятия по HTML. Краткий курс. - Наука и Техника, 2001.

.        Гончарев А., HTML, Санкт-Петербург, Москва, Харьков, Минск, 2000

.        Леонтьев Ю. Самоучитель Word 2002. - Москва, 2004

.        Левин А. Самоучитель работы на компьютере.9-е изд., Санкт-Петербург, Москва, 2004

.        Экономическая информатика, учебник для ВУЗов, под. ред.В.В., Евдокимова, 1997.

.        Левин, Д. Дранг, Б. Эдельсон, Практическое введение в технологию искусственного интеллекта и экспертных систем с иллюстрациями на Бейсике, М. Финансы и статистика, 1990.

.        Н. Нильсон, Принципы искусственного интеллекта. М.: Радио и связь, 1985.

.        Дюбуа Д., Прад А. Теория возможностей. Приложения к представлению знаний в информатике: Пер. с фр. - М.: радио и связь, 1990

.        Экспертные системы. Принципы работы и примеры, (под ред.Р. Форсайта), М. Радио и связь, 1987

.        Ф. Блум, А. Лейзерсон, Л. Хофстедтер, Мозг, разум и поведение, М., Мир, 1988.

41.     Балыко Г.Г., Пугач В.И., Фишмап Л.И. Управление школой и базы данных. - Самара: СГПИ, 1992.

.        Берещанский Д.Г. Практическое программирование на dBASE. - М.: Финансы и статистика, 1989.

.        Герман О.В. Введеиие в теорию экспертных систем и обработку знаний. - Минск: "Дизайн-ПРО", 1995.

.        Глушков В.М. Основы безбумажной информатики /Изд.2-е. - М.: Наука, 1987.

.        Каратыгин С, Тихонов А,, Долголаптев В. Базы данных: простейшие средства обработки информации, электронные таблицы, системы управления базами данных. В 2-х томах. - М.: АВF, 1995.

.        Коновалова Н.В., Капралов Е.Г. Введение в ГИС. - Петрозаводск: Петрозаводский госуниверситет, 1995.

.        Крамм Р. Системы управления базами данных dBASE II и dBASE III для персональных компьютеров. - М.: Финансы и статистика, 1988.

.        САПР. Системы автоматизированного проектирования / Под ред. И.П. Норенкова. - Минск: Высшая школа, 1987.

.        Свириденко С.С. Современные информационные технологии. - М.: Радио и связь, 1989.

.        Советов Б. Я, АСУ. Введение в специальность. - М.; Высшая школа, 1989.

.        Советов Б.Я. Информационная технология. - М.: Высшая школа, 1992.

.        Фурунжиев Р.И., ГугляВ.А. САПР, или как ЭВМ помогает конструктору. - Минск: Высшая школа, 1987.

.        Электронная почта в системе МS-DOS. Официальное руководство компании Релком. - М., 1995.

.        Журнал "Информатика и образование", 2005 г.

.        Журнал "Педагогическая информатика", 2006 г.

Приложение


Листинг программыUnit1;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ComCtrls, ExtCtrls, Menus, StdCtrls, Buttons,, OleCtrls, DBOleCtl, RichTextLib_TLB, jpeg, Grids,, ToolWin, Registry, Spin, IniFiles, DB, DBTables, ImgList,, Mask,ExcelXP,COMObj, FileCtrl;= class (TForm): TStatusBar;: TPanel;: TBitBtn;: TBitBtn;: TBitBtn;: TMainMenu;: TMenuItem;: TMenuItem;: TNotebook;: TGroupBox;: TLabeledEdit;: TLabeledEdit;: TBitBtn;: TGroupBox;: TGroupBox;: TFileListBox;: TPanel;: TPanel;: TPanel;: TGroupBox;: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;: TGroupBox;: TRadioButton;: TRadioButton;: TRadioButton;: TRadioButton;: TRadioButton;: TBevel;: TBevel;: TBevel;: TBitBtn;: TBitBtn;: TBevel;: TBevel;: TBevel;: TGroupBox;: TLabel;: TDBGrid;: TGroupBox;: TLabel;: TEdit;: TEdit;: TTimer;: TListBox;: TListBox;: TListBox;: TListBox;: TListBox;: TListBox;: TSpinEdit;: TSpinEdit;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TProgressBar;: TEdit;: TGroupBox;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TBitBtn;: TBitBtn;: TPanel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TEdit;: TButton;: TEdit;: TTable;: TDataSource;: TImageList;: TPanel;: TBitBtn;: TBitBtn;: TBitBtn;: TDBMemo;: TDBMemo;: TDBMemo;: TGroupBox;: TDBNavigator;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TPopupMenu;: TMenuItem;: TProgressBar;: TPanel;: TMenuItem;: TPanel;: TBitBtn;: TLabel;: TEdit;BitBtn1Click (Sender: TObject);BitBtn3Click (Sender: TObject);BitBtn4Click (Sender: TObject);FileListBox1Click (Sender: TObject);BitBtn9Click (Sender: TObject);BitBtn11Click (Sender: TObject);FormCreate (Sender: TObject);BitBtn5Click (Sender: TObject);BitBtn6Click (Sender: TObject);BitBtn7Click (Sender: TObject);BitBtn8Click (Sender: TObject);RadioButton1Click (Sender: TObject);RadioButton2Click (Sender: TObject);RadioButton3Click (Sender: TObject);RadioButton4Click (Sender: TObject);RadioButton5Click (Sender: TObject);Timer1Timer (Sender: TObject);BitBtn10Click (Sender: TObject);N2Click (Sender: TObject);Button1Click (Sender: TObject);BitBtn14Click (Sender: TObject);BitBtn13Click (Sender: TObject);BitBtn2Click (Sender: TObject);N3Click (Sender: TObject);BitBtn15Click (Sender: TObject);N4Click (Sender: TObject);BitBtn16Click (Sender: TObject);BitBtn12Click (Sender: TObject);

{ Private declarations }

{ Public declarations };zagruzka1;vigruzka1;Erste;RandomChisla (rez: integer): string;Sluchai;Nex;prew;FirstTest;start;First;prowerka;soedenenie;AddRecord;ShowTime;ocenka;

// procedure SendtoExcel (ShFile: String);: TForm1;,sec: integer;: TRegIniFile;: TIniFile;: string;: string = 'Software\TestingS';Unit2;

{$R *. dfm}

// Процедура создания отчетаSendtoExcel (ShFile: String);, Workbook: Variant;: integer;,s2,s3,s4,s5,s6,s7: string;

// Создание Excel: = CreateOleObject ('Excel. Application');Exception. Create ('Не могу запустить Excel');;: = CreateOleObject ('Excel. Application');

// Отключаем реакцию Excel на события, чтобы ускорить вывод информации. Application. EnableEvents: = false;

// Создаем Книгу (Workbook)

// Если заполняем шаблон, то: = ExcelApp. WorkBooks. Add (ShFile);

// Выбираем первую WorkBook: = ExcelApp. WorkBooks. Item [1];

// переходим на последшюю запись в таблицы. Table1. Last;

// делаем прогрес видимым. ProgressBar2. Visible: =true;. ProgressBar2. Max: =form1. Table1. RecordCount-1;

// создаем цикл перемещения по базеi: =form1. Table1. RecordCount-1 downto 0 do. ProgressBar2. Position: =i;

// ячейки excel присваиваем поле базы данных: =form1. Table1. FieldByName ('Fam'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,1]: =s1;: =form1. Table1. FieldByName ('Group'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,2]: =s2;: =form1. Table1. FieldByName ('Data'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,3]: =s3;: =form1. Table1. FieldByName ('All'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,4]: =s4;: =form1. Table1. FieldByName ('Pr'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,5]: =s5;: =form1. Table1. FieldByName ('Nep'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,6]: =s6;: =form1. Table1. FieldByName ('Oc'). AsString;. WorkBooks [1]. WorkSheets [1]. Cells [i+3,7]: =s7;. WorkSheets [1]. Cells [i+3,1]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,2]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,3]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,4]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,5]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,6]. Borders. LineStyle: = xlContinuous;. WorkSheets [1]. Cells [i+3,7]. Borders. LineStyle: = xlContinuous;. Table1. Prior;;. ProgressBar2. Visible: =false;

// Делаем Excel видимым. Visible: = True;;

// Процедура сохранения настроек программыSaveAs;: Tinifile; // необходимо создать объект, чтоб потом с ним работать

// создали файл в директории программы: =TiniFile. Create (extractfilepath (paramstr (0)) +'SaveAS. ini');. WriteString ('Nom','Time',form1. SpinEdit1. Text);. WriteString ('Nom','Wopr',form1. SpinEdit2. Text);. WriteString ('Nom','Pass',form1. Edit6. Text);. Free;;ReadAS;: Tinifile;

// открываем файл: =TiniFile. Create (extractfilepath (paramstr (0)) +'SaveAs. ini');. SpinEdit1. Text: =Ini. ReadString ('Nom','Time','0');. SpinEdit2. Text: =Ini. ReadString ('Nom','Wopr','0');. Label11. Caption: =Ini. ReadString ('Nom','Time','0') +' мин';. Label12. Caption: =Ini. ReadString ('Nom','Wopr','0');. Edit6. Text: =Ini. ReadString ('Nom','Pass','0');. Free;;

// Процедура формирования оценкиocenka;,j,k,l,m,n: integer;: real;: =strtoint (form1. StatusBar1. Panels. Items [1]. Text); // всего тестов: =form1. ListBox6. Count; // колличество правельных: =round (j*100/i);k: =0 to 35 dooc = k then. Label14. Caption: ='2';;l: =36 to 69 dooc = l then. Label14. Caption: ='3';;m: =70 to 89 dooc = m then. Label14. Caption: ='4';;n: =90 to 100 dooc = n then. Label14. Caption: ='5';;;

// Процедура подщета времени тестированияShowTime;: string [20];

// минуты и секунды выводим двумя цифрамиmin < 10 then: = '0' + IntToStr (min) + ': ': = IntToStr (min) + ': ';sec < 10 then: = buf + '0' + IntToStr (sec): = buf + IntToStr (sec);. StatusBar1. Panels. Items [5]. Text: =buf;;

// Процедура забивания базы данныхAddRecord;. Table1. Cancel;. Table1. Insert;. Table1. Append;. Table1. FieldByName ('Fam'). AsString: =Form1. LabeledEdit1. Text;. Table1. FieldByName ('Group'). AsString: =Form1. LabeledEdit2. Text;. Table1. FieldByName ('Data'). AsString: =DateToStr (now);. Table1. FieldByName ('Pr'). AsInteger: =form1. ListBox6. Items. Count;

// form5. Label3. Caption: ='';. Table1. FieldByName ('All'). AsInteger: =strtoint (form1. SpinEdit2. Text);. Table1. FieldByName ('Nep'). AsInteger: =strtoint (form1. SpinEdit2. Text) - form1. ListBox6. Items. Count;. Table1. FieldByName ('File'). AsString: =form1. ListBox5. Items. Text;. Table1. FieldByName ('Prav'). AsString: =form1. ListBox6. Items. Text;. Table1. FieldByName ('File2'). AsString: =form1. ListBox2. Items. Text;. Table1. FieldByName ('Oc'). AsInteger: =strtoint (form1. Label14. Caption);. Table1. Post;;

// Процедура соеденения ответовsoedenenie;, i: integer;: string;: =form1. listBox3. Count-1;i: =1 to raz do: =form1. listbox1. Items. Strings [strtoint (form1. listbox3. Items. Strings [i])] +

(form1. listbox4. Items. Strings [i]);. listBox5. Items. Add (obsh);;. ListBox5. Items. Insert (0,'тесты');;

// Процедура проверки тестовprowerka;,j: integer;,s2: string;i: =1 to form1. listbox5. Items. Count-1 do: =form1. listbox5. Items. Strings [i];j: =0 to form1. listbox2. Items. Count-1 do: =form1. listbox2. Items. Strings [j];s1=s2 then. ListBox6. Items. Add (s1);;;;form1. ListBox6. Items. Count<>0 then. Label16. Caption: =IntToStr (form1. ListBox6. Items. Count); // praw otw;. Label16. Caption: ='0';;;;First;. richtextbox1. textRTF: ='';. richtextbox2. SetFocus;. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)])]));. richtextbox2. SelRTF: ='';. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox2. SelRTF: ='';. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)]) +1]));. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. RichTextBox2. LoadFile (form1. Edit3. Text);;start;. edit1. text: ='1';. richtextbox1. textRTF: ='';. richtextbox2. SetFocus;. edit2. Text: =inttostr (form1. richtextbox2. Find (form1. ListBox1. Items. Strings [1]));. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. RichTextBox2. LoadFile (form1. Edit3. Text);;FirstTest;. richtextbox1. textRTF: ='';. richtextbox2. SetFocus;. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)])]));. richtextbox2. SelRTF: ='';. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox2. SelRTF: ='';. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)]) +1]));. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. RichTextBox2. LoadFile (form1. Edit3. Text);;prew;. Edit1. Text: =inttostr (strtoint (form1. Edit1. Text) - 1);. richtextbox1. textRTF: ='';. richtextbox2. SetFocus;. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)])]));. richtextbox2. SelRTF: ='';. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox2. SelRTF: ='';. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)]) +1]));. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. RichTextBox2. LoadFile (form1. Edit3. Text);;;Nex;. Edit1. Text: =inttostr (strtoint (form1. Edit1. Text) +1);. richtextbox1. textRTF: ='';. richtextbox2. SetFocus;. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)])]));. richtextbox2. SelRTF: ='';. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox2. SelRTF: ='';. edit2. Text: =inttostr (form1. richtextbox2. Find

(form1. ListBox1. Items. Strings [strtoint (form1. ListBox3. Items. Strings [strtoint (form1. Edit1. Text)]) +1]));. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. RichTextBox2. LoadFile (form1. Edit3. Text);;;

// Функция получения случайного числаRandomChisla (rez: integer): string;;: =inttostr (Random (rez));;

// Процедура случайного выбора не повторяющихся чиселSluchai;,j,kol,slu1: integer;. ListBox3. Clear;: =strtoint (form1. StatusBar1. Panels. Items [1]. Text); // общее выбранное количество тестовi: =1 to form1. ListBox1. Items. Count-2 do. ListBox3. Items. Add (inttostr (i)); // заполнение массива параметром (i);j: =1 to kol do // выбор из массива случайных неповторяющихся чисел: =strtoint (RandomChisla (form1. listbox3. Items. Count)); // диапазон генерации. ListBox3. Items. Add (form1. ListBox3. Items. Strings [slu1]); // добавление в список случайных тестов. ListBox3. Items. Delete (slu1); // удаление из основного масива случайного числа;. ListBox3. Items. Insert (0,'тесты');;

// Процедура загрузка первого тестаErste;. RadioButton1. Enabled: =true;. RadioButton2. Enabled: =true;. RadioButton3. Enabled: =true;. RadioButton4. Enabled: =true;. RadioButton5. Enabled: =true;. Label2. Caption: =' Вопрос № '+inttostr (strtoint (form1. Edit1. Text));. StatusBar1. Panels. Items [7]. Text: =inttostr (strtoint (form1. Edit1. Text));;;

//

// Процедура загрузки тестовZagruzka1;,n: integer;. BitBtn11. Caption: ='Начать';. ProgressBar1. Visible: =true;. ProcessMessages;. RichTextBox2. LoadFile (form1. Edit3. Text);. ProgressBar1. Max: =StrToInt (form1. SpinEdit2. Text);. richtextbox2. SetFocus;. ListBox2. Items. Insert (0,'тесты');. ListBox1. Items. Add ('тесты');i: =1 to StrToInt (form1. SpinEdit2. Text) +1 do. ProgressBar1. Position: = (i);: =form1. RichTextBox2. Find ('<'+inttostr (i) +'test>');. RichTextBox2. SelRTF: ='';n<>-1 then. ListBox1. Items. Add ('<'+inttostr (i) +'test>');;;. ProgressBar1. Visible: =false;. StatusBar1. Panels. Items [1]. Text: =' '+form1. SpinEdit2. Text;. StatusBar1. Panels. Items [3]. Text: =' '+form1. SpinEdit1. Text;. RichTextBox2. LoadFile (form1. Edit3. Text); // Refreshform1. ListBox1. Items. Count>1 then. edit2. Text: =inttostr (form1. richtextbox2. Find (form1. ListBox1. Items. Strings [strtoint (form1. Edit1. Text)])); // конец поиска. richtextbox2. SelStart: =0;. richtextbox2. SelLength: =strtoint (form1. edit2. Text);. richtextbox1. SelRTF: =form1. richtextbox2. SelRTF;. ProgressBar1. Visible: =false;. RichTextBox2. LoadFile (form1. Edit3. Text);. Label1. Caption: =form1. LabeledEdit1. Text;('Testing"S"'+#13+#10+#13+#10+

'Программа тестирования не нашла ни одного теста',mtInformation, [mbOk],0);;;

// Процедура выгрузки тестовvigruzka1;. Edit1. Text: ='1';. Edit2. Text: ='0';. LabeledEdit1. Clear;. LabeledEdit2. Clear;. Label1. Caption: ='';. RichTextBox1. SetFocus;. RichTextBox1. TextRTF: ='';. RichTextBox2. SetFocus;. RichTextBox2. TextRTF: ='';. ListBox1. Clear;. ListBox2. Clear;. ListBox3. Clear;. ListBox4. Clear;. ListBox5. Clear;. ListBox6. Clear;. StatusBar1. Panels. Items [1]. Text: =' ';. StatusBar1. Panels. Items [3]. Text: =' ';. StatusBar1. Panels. Items [7]. Text: =' ';. BitBtn5. Enabled: =false;. BitBtn6. Enabled: =false;. BitBtn7. Enabled: =false;. BitBtn8. Enabled: =false;. RadioButton1. Enabled: =false;. RadioButton2. Enabled: =false;. RadioButton3. Enabled: =false;. RadioButton4. Enabled: =false;. RadioButton5. Enabled: =false;. RadioButton1. Checked: =false;. RadioButton2. Checked: =false;. RadioButton3. Checked: =false;. RadioButton4. Checked: =false;. RadioButton5. Checked: =false;. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;;TForm1. BitBtn1Click (Sender: TObject);. Notebook1. ActivePage: ='1';;TForm1. BitBtn3Click (Sender: TObject);Form1. Edit6. Text='' then. Notebook1. ActivePage: ='3';: ='3';. ShowModal;;;TForm1. BitBtn4Click (Sender: TObject);(form1. LabeledEdit1. Text<>'') and (form1. LabeledEdit2. Text<>'') and (form1. Label9. Caption<>'') then. ListBox2. Items. LoadFromFile (form1. Edit4. Text);. Notebook1. ActivePage: ='4';. Panel1. ClientWidth: =0;. StatusBar1. Visible: =true;;('Введите данные');;EFOpenError do('На выбранное задание отсутствует файл ответов');;;;TForm1. FileListBox1Click (Sender: TObject);. Edit3. Text: ='';. Edit4. Text: ='';. Edit3. Text: =Form1. FileListBox1. Directory+'\'+Form1. FileListBox1. Items. Strings [Form1. FileListBox1. ItemIndex];. Edit4. Text: =Form1. FileListBox1. Directory+'\'+ (Form1. FileListBox1. Items. Strings [Form1. FileListBox1. ItemIndex] +'. txt');. Label9. Caption: ='';. Label9. Caption: =Form1. FileListBox1. Items. Strings [Form1. FileListBox1. ItemIndex];;TForm1. BitBtn9Click (Sender: TObject);. Close;;TForm1. BitBtn11Click (Sender: TObject);i: integer;form1. BitBtn11. Caption='Стоп' thenMessageDlg ('Вы действительно хотите закончить тестирование? ',mtInformation, [mbOk,mbCancel],0) = mrOk then. Timer1. Enabled: =false; // остановка таймера. StatusBar1. Panels. Items [5]. Text: ='';;;;;;;. Notebook1. ActivePage: ='1';. Panel1. ClientWidth: =177;. StatusBar1. Visible: =false;

// form2. N2. Enabled: =false;. BitBtn11. Caption: ='Стоп';. BitBtn5. Enabled: =true;. BitBtn6. Enabled: =true;. BitBtn7. Enabled: =true;. BitBtn8. Enabled: =true;. ListBox4. Items. Add ('тесты');i: =1 to form1. ListBox1. Items. Count-2 do. ListBox4. Items. Add ('не отвечено');;;;: =strtoint (form1. StatusBar1. Panels. Items [3]. Text);: =1;. Timer1. Enabled: =true; // Запуск таймера;;TForm1. FormCreate (Sender: TObject);;. Label10. Caption: =FormatDateTime ('dd/mm/yyyy',Now);. Notebook1. ActivePage: ='Default';Session do: = cmSession;('TESTING',ExtractFilePath (ParamStr (0)) {+'Data\'},'PARADOX');. Table1. Active: =True; // откроем базу: = cmAll;;;;;TForm1. BitBtn5Click (Sender: TObject);: string;form1. edit1. Text<>'1' then. Edit1. Text: ='1';. RadioButton1. Checked: =false;. RadioButton2. Checked: =false;. RadioButton3. Checked: =false;. RadioButton4. Checked: =false;. RadioButton5. Checked: =false;. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;: = (listbox4. Items. Strings [strtoint (edit1. Text)]);h [1] ='A' then. CheckBox1. Visible: =true;h [1] ='B' then. CheckBox2. Visible: =true;h [1] ='C' then. CheckBox3. Visible: =true;h [1] ='D' then. CheckBox4. Visible: =true;h [1] ='E' then. CheckBox5. Visible: =true;;. Label2. Caption: =' Вопрос № '+inttostr (strtoint (form1. Edit1. Text));. StatusBar1. Panels. Items [7]. Text: =' '+inttostr (strtoint (form1. Edit1. Text));;TForm1. BitBtn6Click (Sender: TObject);: string;form1. Edit1. Text<>'1' then. RadioButton1. Checked: =false;. RadioButton2. Checked: =false;. RadioButton3. Checked: =false;. RadioButton4. Checked: =false;. RadioButton5. Checked: =false;. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;: = (listbox4. Items. Strings [strtoint (edit1. Text) - 1]);h [1] ='A' then. CheckBox1. Visible: =true;h [1] ='B' then. CheckBox2. Visible: =true;h [1] ='C' then. CheckBox3. Visible: =true;h [1] ='D' then. CheckBox4. Visible: =true;h [1] ='E' then. CheckBox5. Visible: =true;;. Label2. Caption: =' Вопрос № '+inttostr (strtoint (form1. Edit1. Text));. StatusBar1. Panels. Items [7]. Text: =' '+inttostr (strtoint (form1. Edit1. Text));;TForm1. BitBtn7Click (Sender: TObject);: string;strtoint (form1. Edit1. Text) <form1. ListBox3. Items. Count-1 then. RadioButton1. Checked: =false;. RadioButton2. Checked: =false;. RadioButton3. Checked: =false;. RadioButton4. Checked: =false;. RadioButton5. Checked: =false;. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;: = (listbox4. Items. Strings [strtoint (edit1. Text) +1]);h [1] ='A' then. CheckBox1. Visible: =true;h [1] ='B' then. CheckBox2. Visible: =true;h [1] ='C' then. CheckBox3. Visible: =true;h [1] ='D' then. CheckBox4. Visible: =true;h [1] ='E' then. CheckBox5. Visible: =true;;. Label2. Caption: =' Вопрос № '+inttostr (strtoint (form1. Edit1. Text));. StatusBar1. Panels. Items [7]. Text: =' '+inttostr (strtoint (form1. Edit1. Text));;TForm1. BitBtn8Click (Sender: TObject);: string;strtoint (form1. Edit1. Text) <form1. ListBox3. Items. Count-1 then. Edit1. Text: =form1. StatusBar1. Panels. Items [1]. Text;. Label2. Caption: =' Вопрос № '+inttostr (strtoint (form1. Edit1. Text));. StatusBar1. Panels. Items [7]. Text: =' '+inttostr (strtoint (form1. Edit1. Text));. RadioButton1. Checked: =false;. RadioButton2. Checked: =false;. RadioButton3. Checked: =false;. RadioButton4. Checked: =false;. RadioButton5. Checked: =false;. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;: = (listbox4. Items. Strings [strtoint (edit1. Text)]);h [1] ='A' then. CheckBox1. Visible: =true;h [1] ='B' then. CheckBox2. Visible: =true;h [1] ='C' then. CheckBox3. Visible: =true;h [1] ='D' then. CheckBox4. Visible: =true;h [1] ='E' then. CheckBox5. Visible: =true;;;TForm1. RadioButton1Click (Sender: TObject);: integer;: =strtoint (form1. edit1. Text);. Items. Strings [h]: ='A';. CheckBox1. Visible: =true;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;;TForm1. RadioButton2Click (Sender: TObject);: integer;: =strtoint (form1. edit1. Text);. Items. Strings [h]: ='B';. CheckBox1. Visible: =false;. CheckBox2. Visible: =true;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;;TForm1. RadioButton3Click (Sender: TObject);: integer;: =strtoint (form1. edit1. Text);. Items. Strings [h]: ='C';. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =true;. CheckBox4. Visible: =false;. CheckBox5. Visible: =false;;TForm1. RadioButton4Click (Sender: TObject);: integer;: =strtoint (form1. edit1. Text);. Items. Strings [h]: ='D';. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =true;. CheckBox5. Visible: =false;;TForm1. RadioButton5Click (Sender: TObject);: integer;: =strtoint (form1. edit1. Text);. Items. Strings [h]: ='E';. CheckBox1. Visible: =false;. CheckBox2. Visible: =false;. CheckBox3. Visible: =false;. CheckBox4. Visible: =false;. CheckBox5. Visible: =true;;TForm1. Timer1Timer (Sender: TObject);(sec = 0) and (min > 0) then: = 60;: = min - 1;;: = sec - 1;; // показать, сколько времени осталось(min = 0) and (sec = 0) then // заданный интервал истек. Timer1. Enabled: =false; // остановка таймера('Время тестирования истекло! ',mtInformation, [mbOk],0);. Timer1. Enabled: =false; // остановка таймера. StatusBar1. Panels. Items [5]. Text: ='';;;;;;;. Notebook1. ActivePage: ='1';. Panel1. ClientWidth: =177;;;TForm1. BitBtn10Click (Sender: TObject);;;. Notebook1. ActivePage: ='1';;TForm1. N2Click (Sender: TObject);. Notebook1. ActivePage: ='5';;TForm1. Button1Click (Sender: TObject);. Notebook1. ActivePage: =form1. Edit5. Text;;TForm1. BitBtn14Click (Sender: TObject);form1. table1. RecordCount<>0 thenMessageDlg ('Программа тестирование'

+#13+#10+#13+#10+

'Вы действительно хотите удалить'+#13+#10+#13+#10+

'эту запись из базы? '

,mtInformation, [mbOk,mbCancel],0) = mrOk then. Table1. delete;;;;TForm1. BitBtn13Click (Sender: TObject);. Notebook1. ActivePage: ='6';;TForm1. BitBtn2Click (Sender: TObject);Form1. Edit6. Text='' then. Notebook1. ActivePage: ='2';: ='2';. ShowModal;;;TForm1. N3Click (Sender: TObject);form1. table1. RecordCount<>0 thenMessageDlg ('Программа тестирование'

+#13+#10+#13+#10+

'Вы действительно хотите удалить'+#13+#10+#13+#10+

'эту запись из базы? '

,mtInformation, [mbOk,mbCancel],0) = mrOk then. Table1. delete;;;;TForm1. BitBtn15Click (Sender: TObject);: string;: =ExtractFilePath (ParamStr (0)) +'Отчет по программе тестирования. xls';(s);;TForm1. N4Click (Sender: TObject);MessageDlg ('Testing"S"'+#13+#10+#13+#10+

'Подтверждение'+#13+#10+#13+#10+

'Вы действительно хотите удалить'+#13+#10+#13+#10+

'все записи в базе данных? '

,mtInformation, [mbOk,mbCancel],0) = mrOk thennot form1. table1. eof do. table1. first;. table1. Delete;. table1. next;;. table1. Delete;. table1. Cancel;;;TForm1. BitBtn16Click (Sender: TObject);. Notebook1. ActivePage: ='2';;TForm1. BitBtn12Click (Sender: TObject);. Notebook1. ActivePage: ='1';;.


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!