Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Автоматное программирование

Содержание

План курсаОсновные понятия автоматного программированияИнструментальные средства автоматного программированияПрименение генетических алгоритмовВерификация автоматных программТекстовые языки автоматного программирования…
Теория автоматов в программированииЛекция 1Ф. Н. Царев08.09.2009 План курсаОсновные понятия автоматного программированияИнструментальные средства автоматного программированияПрименение генетических алгоритмовВерификация автоматных программТекстовые языки автоматного программирования… Преподаватели курсаШалыто А. А.Царев Ф. Н.… Место и время проведения занятийПятница, 17-20Аудитория 218, 219 или 146 Как получить зачет?5 семестрСдать лабораторную работу по генетическим алгоритмамСообщить тему своей курсовой работы Виртуальная лаборатория по ГАДва варианта: Java или C#Сайт is.ifmo.ru, раздел «Генетические алгоритмы», Как сдать курсовую работу?6 семестрНаписать программуНаписать проектную документациюВыложить ее на сайт is.ifmo.ruНе Цель выполнения курсовой работыПривести ее в такое состояние, чтобы было не стыдно выкладывать в Интернет Материалы по курсуСайт кафедры «Технологии программирования» по автоматному программированию и мотивации к 1.1 Области применения автоматного программирования 1.1.1. Классификация          программ 1.1.2. Критерии применимости«Сложное поведение»поведение, зависящее от состояния реакция зависит от предыстории«Простое поведение» Сущность с простым поведением1.1.2. Критерии применимостиСущность со сложнымповедением Пример использования:  ЭЛЕКТРОННЫЕ ЧАСЫПростое поведениеH – увеличивает на единицу число часовM Пример использования:  ЭЛЕКТРОННЫЕ ЧАСЫСложное поведениеH – увеличивает на единицу число часовM 1.1.3. Идеи автоматного 1.1.4. Рекомендации при использовании автоматного подходаиспользуйте автоматный подход при создании любой программной 1.2. Основные понятия автоматного программирования Основные понятия автоматного программирования1.2.1. Основные понятияСостояниеособая величина, которая в неявной форме объединяет Основные понятия автоматного программирования1.2.1. Основные понятияСвойства состояния системы:текущее состояние несет в себе 1.2.1. Основные понятияВходное воздействиеэто вектор, составляющие которого - события и входные переменныеФункция 1.2.1. Основные понятияФункция выходовправила формирования выходных воздействий Автомат без выходов (конечный) совокупность 1.2.2. Конечный автоматОсновные понятия автоматного программирования 1.3. Парадигма автоматного программирования Тезис Тьюринга-Черча Все, что можно «вычислить», «запрограммировать» или «распознать» в любом смысле 1.3.1. Машина ТьюрингаМашина Тьюринга состоит из 2-х частей:Устройство управленияЗапоминающее устройство - лента 1.3.1. Машина ТьюрингаУстройство управления представляет собой конечный автомат единственное входное воздействие: символ, 1.3.2. Программирование  			на Машине ТьюрингаРеализация функции инкремент:двигаться вправо, пока не встретится 1.3.3. Краткое описание поведение машиныГраф переходов, где: вершины - состояния автоматадуги – переходы между состояниями 1.3.4. Выводы по работе 1.3.4. Выводы по работе 			  машины ТьюрингаСостояния устройства управленияследует явно перечислять, 1.3.5. Управляющие и 			 	вычислительные состоянияУправляющие состоянияИх относительно немногоКаждое из них имеет 1.3.5. Управляющие и 			 	вычислительные состоянияВычислительные состоянияИх количество либо бесконечно, либо конечно, 1.3.6. Сущность со  			сложным поведениемУправляющая частьуправляющий автоматотвечает за логику поведения – 1.3.6. Сущность со  			сложным поведениемУправляемая частьобъект управленияотвечает за выполнение действий, выбранных 1.3.6. Сущность со  			сложным поведениемПарадигма автоматного программирования состоит в представлении сущностей Спасибо за вниманиеСледующий раз – в пятницу, 11 сентября в 17-20А. А. Шалыто
Слайды презентации

Слайд 2 План курса
Основные понятия автоматного программирования
Инструментальные средства автоматного программирования
Применение

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

генетических алгоритмов
Верификация автоматных программ
Текстовые языки автоматного программирования


Слайд 3 Преподаватели курса
Шалыто А. А.
Царев Ф. Н.

Преподаватели курсаШалыто А. А.Царев Ф. Н.…

Слайд 4 Место и время проведения занятий
Пятница, 17-20
Аудитория 218, 219

Место и время проведения занятийПятница, 17-20Аудитория 218, 219 или 146

или 146


Слайд 5 Как получить зачет?
5 семестр
Сдать лабораторную работу по генетическим

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

алгоритмам
Сообщить тему своей курсовой работы


Слайд 6 Виртуальная лаборатория по ГА
Два варианта: Java или C#
Сайт

Виртуальная лаборатория по ГАДва варианта: Java или C#Сайт is.ifmo.ru, раздел «Генетические

is.ifmo.ru, раздел «Генетические алгоритмы», подраздел «Лабораторные работы»
Сдать работу =

сдать программу + выложить на сайт отчет

Слайд 7 Как сдать курсовую работу?
6 семестр
Написать программу
Написать проектную документацию
Выложить

Как сдать курсовую работу?6 семестрНаписать программуНаписать проектную документациюВыложить ее на сайт

ее на сайт is.ifmo.ru
Не забывать записываться в календарь Шалыто


Слайд 8 Цель выполнения курсовой работы
Привести ее в такое состояние,

Цель выполнения курсовой работыПривести ее в такое состояние, чтобы было не стыдно выкладывать в Интернет

чтобы было не стыдно выкладывать в Интернет


Слайд 9 Материалы по курсу
Сайт кафедры «Технологии программирования» по автоматному

Материалы по курсуСайт кафедры «Технологии программирования» по автоматному программированию и мотивации

программированию и мотивации к творчеству is.ifmo.ru
Книга Н. Поликарпова, А.

Шалыто Автоматное программирование
Материалы лекций

Слайд 10 1.1 Области применения автоматного программирования

1.1 Области применения автоматного программирования

Слайд 11 1.1.1. Классификация

1.1.1. Классификация     программ по ХарелуТрансформирующие системынекоторое преобразование

программ по Харелу
Трансформирующие системы
некоторое преобразование входных данных


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

Слайд 12 1.1.2. Критерии применимости
«Сложное поведение»
поведение, зависящее от состояния
реакция

1.1.2. Критерии применимости«Сложное поведение»поведение, зависящее от состояния реакция зависит от предыстории«Простое

зависит от предыстории
«Простое поведение»
поведение, не зависящее от состояния
реакция

зависит только от воздействия

Слайд 13 Сущность с простым поведением
1.1.2. Критерии применимости
Сущность со сложным
поведением

Сущность с простым поведением1.1.2. Критерии применимостиСущность со сложнымповедением

Слайд 14 Пример использования: ЭЛЕКТРОННЫЕ ЧАСЫ
Простое поведение
H – увеличивает на

Пример использования: ЭЛЕКТРОННЫЕ ЧАСЫПростое поведениеH – увеличивает на единицу число часовM

единицу число часов
M – увеличивает на единицу число минут


Слайд 15 Пример использования: ЭЛЕКТРОННЫЕ ЧАСЫ
Сложное поведение
H – увеличивает на

Пример использования: ЭЛЕКТРОННЫЕ ЧАСЫСложное поведениеH – увеличивает на единицу число часовM

единицу число часов
M – увеличивает на единицу число минут
A

– включает и выключает настройку «будильник»

Слайд 16 1.1.3. Идеи автоматного

1.1.3. Идеи автоматного

программирования:

отделение логики от семантики
описание логики при автоматном подходе строго структурировано


Слайд 17 1.1.4. Рекомендации при использовании автоматного подхода
используйте автоматный подход

1.1.4. Рекомендации при использовании автоматного подходаиспользуйте автоматный подход при создании любой

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

со сложным поведением

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

Слайд 18 1.2. Основные понятия автоматного программирования

1.2. Основные понятия автоматного программирования

Слайд 19 Основные понятия автоматного программирования
1.2.1. Основные понятия
Состояние
особая величина, которая

Основные понятия автоматного программирования1.2.1. Основные понятияСостояниеособая величина, которая в неявной форме

в неявной форме объединяет все входные воздействия прошлого, влияющие

на реакцию сущности в настоящий момент времени

Слайд 20 Основные понятия автоматного программирования
1.2.1. Основные понятия
Свойства состояния системы:
текущее

Основные понятия автоматного программирования1.2.1. Основные понятияСвойства состояния системы:текущее состояние несет в

состояние несет в себе всю информацию о прошлом системы,

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


Слайд 21 1.2.1. Основные понятия
Входное воздействие
это вектор, составляющие которого -

1.2.1. Основные понятияВходное воздействиеэто вектор, составляющие которого - события и входные

события и входные переменные
Функция переходов
правила, по которым происходит смена

состояний
Выходное воздействие

Основные понятия автоматного программирования


Слайд 22 1.2.1. Основные понятия
Функция выходов
правила формирования выходных воздействий
Автомат

1.2.1. Основные понятияФункция выходовправила формирования выходных воздействий Автомат без выходов (конечный)

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

множества входных воздействий


Основные понятия автоматного программирования


Слайд 23 1.2.2. Конечный автомат
Основные понятия автоматного программирования

1.2.2. Конечный автоматОсновные понятия автоматного программирования

Слайд 24 1.3. Парадигма автоматного программирования

1.3. Парадигма автоматного программирования

Слайд 25 Тезис Тьюринга-Черча
Все, что можно «вычислить», «запрограммировать» или

Тезис Тьюринга-Черча Все, что можно «вычислить», «запрограммировать» или «распознать» в любом

«распознать» в любом смысле (из формально определенных в настоящее

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


Слайд 26 1.3.1. Машина Тьюринга
Машина Тьюринга
состоит из 2-х частей:

Устройство

1.3.1. Машина ТьюрингаМашина Тьюринга состоит из 2-х частей:Устройство управленияЗапоминающее устройство - лента

управления
Запоминающее устройство - лента


Слайд 27 1.3.1. Машина Тьюринга
Устройство управления представляет собой конечный автомат

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


единственное входное воздействие:
символ, считанный с ленты
два выходных воздействия:
символ,

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

Слайд 28 1.3.2. Программирование на Машине Тьюринга
Реализация функции инкремент:
двигаться вправо,

1.3.2. Программирование 			на Машине ТьюрингаРеализация функции инкремент:двигаться вправо, пока не встретится

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

в текущей ячейке находится '1', заменять его на '0' и двигаться влево
если в текущей ячейке находится '0' или 'blank', записать в ячейку '1' и завершить работу

Слайд 29 1.3.3. Краткое описание поведение машины
Граф переходов, где:
вершины -

1.3.3. Краткое описание поведение машиныГраф переходов, где: вершины - состояния автоматадуги – переходы между состояниями

состояния автомата
дуги – переходы между состояниями


Слайд 30 1.3.4. Выводы по работе

1.3.4. Выводы по работе      машины ТьюрингаДля

машины Тьюринга
Для того,

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



Слайд 31 1.3.4. Выводы по работе машины Тьюринга
Состояния устройства

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

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

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

Слайд 32 1.3.5. Управляющие и вычислительные состояния
Управляющие состояния
Их относительно

1.3.5. Управляющие и 			 	вычислительные состоянияУправляющие состоянияИх относительно немногоКаждое из них

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

отличается от других
Они определяют действия, которые совершает сущность


Слайд 33 1.3.5. Управляющие и вычислительные состояния
Вычислительные состояния
Их количество

1.3.5. Управляющие и 			 	вычислительные состоянияВычислительные состоянияИх количество либо бесконечно, либо

либо бесконечно, либо конечно, но очень велико
Большинство из них

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

Слайд 34 1.3.6. Сущность со сложным поведением
Управляющая часть
управляющий автомат
отвечает за

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

логику поведения – выбор выполняемых действий, зависящий от текущего

состояния и входных воздействий, а также за переход в новое состояние

Слайд 35 1.3.6. Сущность со сложным поведением
Управляемая часть
объект управления
отвечает за

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

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

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


Слайд 36 1.3.6. Сущность со сложным поведением
Парадигма автоматного программирования состоит

1.3.6. Сущность со 			сложным поведениемПарадигма автоматного программирования состоит в представлении сущностей

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

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



  • Имя файла: avtomatnoe-programmirovanie.pptx
  • Количество просмотров: 130
  • Количество скачиваний: 0