Разработка обучающей программы "Алгоритмическая система Тьюринга"

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 10.07.2015
Размер файла 525,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ РЕСПУБЛИКИ УЗБЕКИСТАН

БУХАРСКИЙ ИНЖЕНЕРНО - ТЕХНОЛОГИЧЕСКИЙ ИНСТИТУТ

КАФЕДРА «ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»

Направление 5140900- Профессиональное образование - (Информатика, информационные технологии)

Выпускная квалификационная работа

Тема: «Разработка обучающей программы «Алгоритмическая система Тьюринга»

По дисциплине: «Основы вычислительной и микропроцессорной техники»

Выполнила: студентка группы 11-09 МИИТ

Мингазова Гузалия

Руководитель: доц. Убайдуллаева Ш.Р.

Бухара- 2013

Аннотация

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

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

Введение,

Теоретическая часть,

Практическая часть,

Безопасность жизнедеятельности и охрана труда.

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

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

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

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

Содержание

Введение

1. Теоретическая часть

1.1 Принципы построения электронных обучающих систем

1.2 Классификация электронных учебных изданий

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

2. Практическая часть

2.1 Машина Тьюринга. Основные определения

2.2 Примеры машин Тьюринга

2.3 Сценарий обучающей программы «Алгоритмическая система Тьюринга» по дисциплине «Основы вычислительной и микропроцессорной техники»

2.4 Использование новых педагогических технологий в преподавании дисциплины «Основы вычислительной и микропроцессорной техники» (На примере темы «Алгоритмическая система Тьюринга»

2.5 Пользовательский интерфейс обучающей программы «Алгоритмическая система Тьюринга» по дисциплине «Основы вычислительной и микропроцессорной техники»

3. Безопасность жизнедеятельности

3.1 Охрана труда при работе с персональным компьютером

3.2 Санитарно-гигиенические нормы для работы в компьютерных классах

3.3 Электробезопасность в компьютерном классе

3.4 Пожарная безопасность в компьютерном классе

3.5 Компьютер и здоровье

Заключение

Литература

Введение

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

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

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

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

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

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

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

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

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

Целью данной выпускной квалификационной работы является

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

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

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

· изучить принципы построения электронных обучающих систем;

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

· составить план разработки виртуального стенда по дисциплине «Основы вычислительной и микропроцессорной техники»;

· разработать общую структуру виртуального стенда по дисциплине «Основы вычислительной и микропроцессорной техники»;

· разработать алгоритмы отдельных взаимосвязанных блоков виртуального стенда;

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

· тестирование и отладка разработанного приложения.

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

1. Теоретическая часть

1.1 Принципы построения электронных обучающих систем

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

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

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

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

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

· навыков решения задач;

· оценки приобретенных знаний, умений и навыков.

Цель и результат деятельности обучаемого образуют учебную деятельность. Учебная деятельность организуется не объектом деятельности (обучаемым), а субъектом (преподавателем). Для того, чтобы цель и результат совпадали, необходимо управление учебной деятельностью. Результат учебной деятельности является свойством самого субъекта. Исходя из этого, учебная программа должна включать в себя 3 основные части:

· теоретическую,

· тренирующую,

· контролирующую,

а процесс обучения можно представить схемой (рис. 1.1.):

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

· селективные

· интеллектуальные или экспертные.

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

Рассмотрим кратко назначение всех систем.

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

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

· Система модели обучения. Предназначена для формирования последовательности обучения. Принимает информацию о результатах обучения и принимает решение о продолжении обучения.

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

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

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

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

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

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

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

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

Таким образом, можно сказать, что результат обучения есть функция от цели обучения и коррекции.

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

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

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

Таким образом, можно сказать, что результат обучения есть функция от цели обучения и коррекции.

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

Рис.1.1.

Рис.1.2.

Рис.1.3.

1.2 Классификация электронных учебных изданий

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

Электронные издания включают в себя: электронные справочники, электронные словари, электронные энциклопедии, электронные путеводители, электронные учебники, и т.д.

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

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

· Электронный учебник - как и традиционный учебник, содержит теоретический материал по определенному предмету и примеры (например, примеры решения задач).

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

· Обучающая система - это человеко-машинный комплекс, работающий в диалоговом режиме и предназначенный для управления познавательной деятельностью. Как видно из названия, она должна обучать, а только изучение теоретического материала еще не является обучением. Следовательно, обучающая система - более широкое понятие, чем электронный учебник. Она должна включать в себя теоретический материал с примерами (т.е. электронный учебник), а также средства для выработки практических навыков у обучаемых и средства контроля приобретенных знаний, умений и навыков (контролирующую систему и тренирующую программу). Основное назначение обучения (а, следовательно, и обучающей системы) - овладение умениями, а не знаниями. Механизмом осуществления деятельности является решение задач [14]. Следовательно, основная часть обучающей системы - тренирующая.

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

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

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

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

1.3 Основные требования к успешному применению средств новых информационных технологий в учебном процессе

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

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

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

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

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

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

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

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

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

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

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

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

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

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

2. Практическая часть

2.1 Машина Тьюринга. Основные определения

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

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

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

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

Основные определения.

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

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

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

В каждой ячейке может храниться только один знак из конечного множества знаков, называемого алфавитом машины Тьюринга, эти же знаки называются буквами алфавита. Ячейка может оказаться и пустой. Ради удобства договоримся: когда ячейка пустая, считать, что в ней хранится специальная буква алфавита, которую мы обозначим через s0 и назовем пустой буквой. Таким образом, в каждой ячейке ленты в любой данный момент находится одна и только одна буква алфавита А = {s0, s1, s2, ... ,sk}, причем только конечное число ячеек заполнено буквами из А, отличными от пустой буквы s0.

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

а) i = j, т. е. буква в обозреваемой ячейке не изменилась;

б) i j - буква изменилась, при этом:

б1) если i = 0, то в пустую ячейку вписана буква sj, и б2) если j = 0, то стерта буква si в обозреваемой ячейке.

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

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

Машина Тьюринга имеет конечное множество внутренних состояний: Q = {q0, q1, q2, …, qm}. В каждый данный момент времени машина Тьюринга находится в одном из своих внутренних состояний. После выполнения очередного такта работы машина может изменить свое внутреннее состояние и воспринимать ячейку в следующий момент уже в новом состоянии. Разумеется, внутреннее состояние может остаться и прежним. Если машина в какой-то момент времени попадет в состояние q0, то ее работа заканчивается (состояние q0 называется пассивным). Из множества Q выделим еще одно состояние -- q1 -- начальное состояние. В этом состоянии машина всегда начинает свою работу.

Что умеет воображаемая машина?

За один такт работы она может:

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

2) совершить сдвиг влево или вправо на одну ячейку или остаться на месте и

3) изменить свое внутреннее состояние.

И больше машина Тьюринга ничего не умеет делать.

Может показаться, что это очень мало. В действительности, это очень много.

Порядок работы машины Тьюринга с алфавитом A={s0, s1, s2, …, sk} и множеством состояний Q = {q0, q1, q2, ..., qm} полностью определяется программой, представляющей собой таблицу, содержащую k+1 столбец и m строк. В клетке таблицы на пересечении i-го столбика (i=0, 1, 2, ..., k) и j-й строки (j=1, 2, ..., m) вписана команда, которую должна выполнить машина Тьюринга.

Если машина в какой-то момент воспринимает управляющей головкой ячейку, в которой записана буква si, и машина находится в состоянии qj, команда будет записываться в виде трехбуквенного слова shTqp, где Т{Л, Н, П}, т. е. обозначает один из сдвигов управляющей головки.

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

1) буква si, находящаяся в обозреваемой ячейке, меняется на sh;

2) управляющая головка совершает сдвиг Т, т. е. Л, Н или П;

3) машина переходит в состояние qp.

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

2.2 Примеры машин Тьюринга

Опишем несколько простых (элементарных) машин Тьюринга. Элементарные машины -- это машины с алфавитом {s0, |}, получаемым присоединением к однобуквенному алфавиту пустой буквы s0. Результатом их применения к записи на ленте являются некоторые элементарные изменения (преобразования) этой записи.

Машина А, имеющая программу, данную в таблице 5, выше уже рассмотрена.

A

s0

|

q1

|Нq0

|Пq1

Машина B воспринимает любое число из набора x1, x2, ..., xn, уменьшает число палочек в его записи на одну и останавливается, воспринимая уменьшенное число. Так работает машина с программой, данной в таблице.

B

s0

|

q1

s0Лq0

Задача 1

Изобразите на ленте в алфавите {s0, |} набор чисел 2, 3, 4 и пусть машина В воспринимает второе число в стандартном положении. Изобразите ленту после работы машины. Какой набор чисел будет записан на ней?

Машина C воспринимает набор чисел x1, x2, ..., xn в стандартном положении и через одну пустую ячейку справа от этого набора записывает число 0, после чего останавливается, воспринимая 0.

Программа машины C представлена таблицей.

C

s0

|

q1

s0Пq2

|Пq1

q2

|Нq0

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

Задача 2

Изобразите на ленте в алфавите {s0, |} набор чисел 1, 2, 3 и имитируйте работу машины C (изобразите ленту после каждого такта машины до ее остановки).

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

Так работает машина с программой, данной в таблице.

D

s0

|

q1

|Пq2

q2

|Пq2

|Лq3

q3

s0Лq0

Задача 3

Изобразите на ленте числа 3 и 2 в алфавите {s0, |}, отделенные друг от друга четырьмя пустыми ячейками. Имитируйте работу машины D применительно к этой записи на ленте.

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

Так работает машина с программой, данной в таблице.

r

s0

|

q1

s0Пq0

|Пq0

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

Задача 4

Составьте программу машины l.

l

s0

|

q1

s0Лq0

|Лq0

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

Программа машины R помещена в таблице.

R

s0

|

q1

s0Пq2

|Пq1

q2

s0Пq2

|Пq3

q3

s0Лq0

|Пq3

Задача 5

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

Задача 6

Составьте программу машины L

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

Так работает машина с программой, данной в таблице.

s0

|

q1

s0Пq2

|Пq1

q2

|Нq3

q3

|Нq4

|Пq3

q4

|Нq5

|Пq4

q5

|Нq0

|Пq5

Задача 7

Проимитируйте работу машины

Рассмотрим машину Тьюринга, которая по записи любого числа на ленте распознает, оно больше нуля или равно нулю. В первом случае машина в качестве результата выдает число 1, записанное через одну пустую клетку справа от воспринимаемого числа, во втором -- число 0, записанное также через одну пустую клетку справа от воспринимаемого числа.

2.3 Сценарий обучающей программы «Алгоритмическая система Тьюринга» по дисциплине «Основы вычислительной и микропроцессорной техники»

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

1. титульный лист виртуального стенда;

2. Основная часть программы состоит из следующих разделов:

1. Теоретические сведения по теме;

2. Окно обучающей программы;

3. Окно примеров.

Теоретическое введение по теме «Алгоритмическая система Тьюринга».

Абстрактная вычислительная машина была предложена в 1936 году А. Тьюрингом для уточнения понятия алгоритма. Согласно тезису Тьюринга, любой алгоритм может быть записан в виде программы для машины Тьюринга. Доказано, что машина Тьюринга по своим возможностям эквивалентна машине Поста и нормальным алгорифмам Маркова.

Машина Тьюринга состоит из каретки (считывающей и записывающей головки) и бесконечной ленты, разбитой на ячейки. Каждая ячейка ленты может содержать символ из некоторого алфавита A={a0,a1,…,aN}. Любой алфавит содержит символ «пробел», который обозначается как a0 или Л. При вводе команд пробел заменяется знаком подчеркивания «_».

Машина Тьюринга -- это автомат, который управляется таблицей. Строки в таблице соответствуют символам выбранного алфавита A, а столбцы -- состояниям автомата Q={q0,q1,…,qM}.

В начале работы машина Тьюринга находится в состоянии q1. Состояние q0 -- это конечное состояние: попав в него, автомат заканчивает работу.

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

символ из алфавита A; направление перемещения: > (вправо), < (влево) или . (на месте); новое состояние автомата

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

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

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

Получается, что в соответствии с алгоритмом УГ бегает направо - налево вдоль ленты и производит предписанные алгоритмом действия.

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

Обучающая часть программы.

Построить МТ, которая определяет четность или нечетность числа 1 в строке. Конец последовательности помечается символом В, затем в эту ячейку будет записан результат.

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

Алгоритмическая идея: МТ требуется 2 состояния: одно для нечетного числа 1, другое для четного. Исходя из условия, результат будет записан в ячейку с символом В - 0 при четном числе 1, 1 - при нечетном. Для учета уже посчитанных/пройденных 1, каждая встретившаяся и учтенная 1 стирается, т.е. на ее место записывается 0.

Установим: S1 - состояние для четного числа 1, S2 - для нечетного.

В начальный момент времени, находимся в состоянии S1.

Действие: УГ устанавливается в очередную ячейку. Если там записана 1, то на ее место записывается 0, МТ переходит в противоположное состояние, и УГ передвигается в следующую ячейку. Движение УГ слева направо. Если в рассматриваемой ячейке записан 0, то состояние не меняется, УГ передвигается вправо к следующей ячейке. Если встретился символ В - надо анализировать, в каком состоянии находится МТ в этот момент. Если в S1, то на место В записывается 0, если в S2, то записывается 1 и происходит остановка МТ.

Рис. 2.1. Анимация, имитирующая работу машины Тьюринга, которая определяет четность или нечетность числа 1 в строке.

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

Если УГ читает в ячейке 1, то в этой ячейке вместо 1 записывается 0.

Если УГ читает в ячейке 0, то содержимое ячейки не меняется, т.е. 0 остается.

Если УГ читает в ячейке символ B, то надо анализировать, в каком состоянии находится МТ в этот момент. Если в S1 (состояние для четной единицы), то на место В записывается 0, если в S2(состояние для нечетной единицы), , то записывается 1 и происходит остановка МТ.

Установим: S1 - состояние для четного числа 1, S2 - для нечетного.

В начальный момент времени, МТ находится в состоянии S1.

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

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

Указание для пользователя: заполните ячейки таблицы, соответствующие состоянию S1 и состоянию S2.

Значение

символа в

ячейке МТ

S1

S2

Запись символа в

ячейку МТ

Состояние

МТ

Движение

УГ МТ

Запись символа в

ячейку МТ

Состояние

МТ

Движение

УГ МТ

0

S1

П

S2

П

1

0

S2

П

0

S1

П

B

0

S1

!

1

S2

!

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

Построить МТ, для проверки скобочных выражений. МТ должна решить, является ли последовательность из левых и правых скобок правильной, т.е. каждой левой скобке ( должна соответствовать правая ). Начало и конец последовательности ограничены символами А.

Допущение: Управляющая головка (УГ) находится под первой слева скобкой.

Алгоритмическая идея: Ищется первая правая ) скобка, затем первая левая (, ей парная, и обе заменяются символом Х. Вычеркивание парных скобок продолжается до тех пор, пока не произойдет одно из событий:

1) МТ, продвигаясь влево не находит парного символа ( , при достижении символа А она на его месте печатает символ 0 и останавливается.

2) МТ, продвигаясь вправо не находит ни одного символа ) и достигает символа А. В этом случае МТ начинает движение влево и проверяет - не остался ли какой-то из символов ( :

· Если такой ( символ найден, то на месте А печатается 0

· Если нет символа ( , то на месте символа А печатается 1.

Состояние S1 предписывает движение вправо (П)

Состояние S2 предписывает движение влево (Л)

Состояние S3 предписывает движение влево (Л), когда не найдено ни одной ")". Т.е. головка приходит к правому А и при продвижении влево при нахождении "(" переходит в S4, для того, чтобы поставить символ 0 вместо левого А

Начальное состояние S1.

S1

S2

S3

S4

)

Х S2 Л

Л

-

-

(

П

Х S1 П

S4 Л

Л

А

S3 Л

0 !

1 !

0 !

Х

П

Л

Л

Л

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

Построить МТ, переворачивающую любое слово в алфавите А={а,в}. Т.е. построить зеркальное отображение заданного слова.

Например.

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

*

а

а

в

а

в

Таким образом, алфавит для написания программы МТ будет состоять из: а, в, *, .

Алгоритмическая идея: УГ устанавливается на последний символ слова. МТ находится в состоянии S1. Если это символ алфавита А={а,в}, то символ стирается, т.е. вместо него ставиться пробел , МТ переходит в другое состояние, УГ начинает движение направо и ищет первый пробел. Найдя его она печатает на его месте стертый символ и переходит в состояние, отвечающее за продвижение налево, т.е. за возврат к анализируемому слову. В этом состоянии УГ движется налево до первого пробела, а найдя его сдвигается еще раз налево (к следующей ячейке) и переходит в состояние S1, отвечающее нахождение очередного символа слова для стирания. Если в состоянии S1 МТ в ячейке обнаруживает *, то это означает, что все символы проанализированы, зеркальное отображение построено. Происходит останов МТ.

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

*

а

а

в

а

в

^

*

а

а

в

а

в

^

*

а

а

в

а

в

^

*

а

а

в

в

а

^

*

а

а

в

в

а

^

*

а

а

в

а

в

^

*

а

а

в

а

в

^

*

а

в

а

в

а

^

*

а

в

а

в

а

^

*

в

а

в

а

а

^

*

в

а

в

а

а

^

Программа МТ

Начальное состояние S1.

S1

S2

S3

S4

а

S2 П

П

П

Л

в

S3 П

П

П

Л

*

!

-

-

-

Л

а S4 Л

в S4 Л

S1 Л

Состояния S2 и S3 отличаются тем, что на месте найденного пробела в одном случае (S2) печатают "а", соответственно вместо стертой "а", а в другом печатается "в".

Построить МТ для сложения двух чисел в унарной с/с.

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

УГ установить на последний символ второго числа. Записать на его место пробел (стереть символ), перейти в другое состояние (чтобы при встрече очередной "|" выполнять другие действия, а не стирания, как в предыдущем состоянии) и двигаться налево до первого пробела. Найдя его, записать на его место стертую "|" и перейти в другое состояние, отвечающее за движение направо - для поиска очередного символа второго числа.

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

Программа МТ

Начальное состояние S1.

S1

S2

S3

1

S2 Л

Л

П

-

1 S3 Л

S1 Л

+

!

Л

П

Есть еще вариант. Последний символ второго унарного числа перенести на место "+". Получится суммарное унарное число ни чем не разделенное.

Но в этом случае надо быть точно уверенным, что между числами и знаком "+" не стоят никакие другие символы (пробелы и т.п.), либо проверять.

2.4 Использование новых педагогических технологий в преподавании дисциплины «Основы вычислительной и микропроцессорной техники» (На примере темы «Алгоритмическая система Тьюринга»

?????????? ??????. ?????????? ????????????

Форма занятия

Визуальная лекция

План лекционного занятия

План

1. Алгоритмическая система Тьюринга.

2. Примеры машины Тьюр...


Подобные документы

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

    курсовая работа [2,0 M], добавлен 17.06.2015

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

    дипломная работа [522,2 K], добавлен 30.08.2010

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

    курсовая работа [1,5 M], добавлен 12.09.2012

  • Принципы построения автоматизированных обучающих систем. Описание социальной программы поддержки населения "Твой курс". Сравнение технологий PHP и ASP.NET. Типичный ход событий. Диаграмма вариантов использования. Функциональные требования к системе.

    курсовая работа [2,7 M], добавлен 15.06.2013

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

    контрольная работа [23,3 K], добавлен 24.04.2009

  • Информационные технологии в создании обучающих программ. Принципы построения тестирующих программ. Программы по высшей математике: ODE; Формула; "Математика". Методы решения дифференциальных уравнений в символьном виде. Модульность программного средства.

    дипломная работа [488,2 K], добавлен 08.06.2011

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

    дипломная работа [2,1 M], добавлен 16.06.2015

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

    курсовая работа [4,4 M], добавлен 26.11.2010

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

    курсовая работа [56,0 K], добавлен 25.11.2010

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

    курсовая работа [386,8 K], добавлен 16.12.2010

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

    дипломная работа [10,8 M], добавлен 20.06.2014

  • Этапы разработки программных продуктов. Основные понятия и методы программирования. Разработка обучающей программы по технике безопасности при работе на ПК. Постановка и разработка модели задачи. Проектирование. Отладка и тестирование программы.

    курсовая работа [3,8 M], добавлен 04.10.2008

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

    дипломная работа [2,0 M], добавлен 23.04.2015

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

    дипломная работа [1,8 M], добавлен 30.06.2012

  • Механизм построения мультимедийных приложений. Разработка мультимедийного проекта "классы в С++" - приложения, построенного с применением пакета AuthorWare 6.5. Плюсы и минусы программы в сравнении "AUK BC". Требования к программному обеспечению.

    курсовая работа [1,9 M], добавлен 17.07.2009

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

    дипломная работа [1,5 M], добавлен 29.09.2014

  • Изучение методик языка Javascript по формализации и решению поставленной задачи, технологических приемов разработки программ на языке Javascript, HTML, CSS. Формально определение машины Тьюринга, распознающую язык. Ее программная модель, протоколы работы.

    курсовая работа [220,7 K], добавлен 03.03.2015

  • Этапы разработки программы "Информационная система ГИБДД". Характеристика понятия и видов интерфейса программного продукта. Анализ и экономическое обоснование разрабатываемой программы. Изучение общих требований по технике безопасности при работе на ПК.

    дипломная работа [3,9 M], добавлен 27.02.2010

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

    курсовая работа [1,3 M], добавлен 03.05.2012

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

    дипломная работа [3,0 M], добавлен 06.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.