<<
>>

ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ РЕШЕНИЯ ЗАДАЧ

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

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

• исполнение роли средства подстановки и решения новых за- дач, не решаемых традиционными средствами, алгоритмами, тех- нологиями;

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

• исполнение роли средства моделирования для получения но- вых знаний;

« «обучение» новых моделей (самообучение моделей).

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

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

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

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

1. Постановка задачи:

« сбор информации о задаче;

• формулировка условия задачи;

• определение конечных целей решения задачи;

• определение формы выдачи результатов;

• описание данных (их типов, диапазонов величин, структуры и т.п.).

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

2. Анализ и исследование задачи, модели:

• анализ существующих аналогов;

• анализ технических и программных средств;

• разработка математической модели;

• разработка структур данных.

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

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

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

3. Построение компьютерной модели.

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

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

• построение алгоритма решения задачи и его кодирование на одном из языков программирования;

• построение компьютерной модели с использованием одного из приложений (электронных таблиц, СУБД и др.).

Разработка алгоритма:

• выбор метода проектирования алгоритма;

• выбор формы записи алгоритма (блок-схема, псевдокод и др);

• выбор тестов и метода тестирования;

• проектирование алгоритма.

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

Примером использования одного из приложений является раз- работанная нами информационная система «Колледж» (см.

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

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

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

• прогнозирование — поиск ответа на вопрос «Что будет через какое-то время?» или «Что будет, если...?»;

• определение влияния одних факторов на другие — поиск от- вета на вопрос «Как сильно влияет фактор Б на фактор Л?» или «Какой фактор — Б или В — влияет сильнее на фактор А?»;

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

4. Проведение компьютерного эксперимента.

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

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

• уточнение способов организации данных;

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

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

5. Анализ результатов.

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

Выполняется анализ результатов решения задачи и уточнение в случае необходимости математической модели с повтором эта- пов 2—5, перечисленных выше.

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

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

Отладка (от англ, debugging — вылавливание «жучков») и тести- рование (от англ, test — испытание) — это два четко различимых и непохожих друг на друга этапа:

• при отладке происходит локализация и устранение синтакси- ческих ошибок и явных ошибок кодирования;

• в процессе тестирования проверяется работоспособность про- граммы, не содержащей явных ошибок.

Тестирование устанавливает факт наличия ошибок, а отладка выясняет причину.

Термин «отладка» появился в 1945 г., когда один из первых компьютеров «Марк-1» прекратил работу из-за того, что в его электрические цепи попал мотылек и заблокиро- вал своими останками одно из тысяч реле машины.

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

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

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

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

• должна быть испытана каждая ветвь алгоритма;

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

• первый тест должен быть максимально прост, чтобы прове- рить, работает ли программа вообще;

• арифметические операции в тестах должны предельно упро- щаться для уменьшения объема вычислений;

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

• минимизация вычислений не должна снижать надежности кон- троля;

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

• усложнение тестовых данных должно происходить постепенно.

6. Адаптация модели (сопровождение программ).

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

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

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

<< | >>
Источник: Калмыкова Е. А.. Информатика. 2012

Еще по теме ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ РЕШЕНИЯ ЗАДАЧ:

  1. 9.1. Правовой режим информационных систем, информационных технологий и средств их обеспечения
  2. 9.3. Государственная политика в области создания информационных систем, информационных технологий и средств их обеспечения
  3. 2.2.4. Область создания и применения информационных систем, информационных технологий и средств их обеспечения
  4. 3.1.2. Информационная система и информационные технологии в управлении социальной сферой
  5. Николас Дж. Карр. Блеск и нищета информационных технологий., 2005
  6. 7. Каждый школьник – это сложнейший мир проблем и задач. Забота о своевременном решении этих проблем и задач составляет основу строительства новой школы
  7. 11.2.3. Область информационных технологий и средств их обеспечения в Интернет
  8. 9.2. Порядок разработки и внедрения информационных систем, технологий и средств обеспечения
  9. ЗАДАЧА: РЕШЕНИЕ
  10. § 3. СТРУКТУРА РЕШЕНИЯ ПЕДАГОГИЧЕСКИХ ЗАДАЧ
  11. Психологические особенности решения задач.
  12. § 3. Мышление, интуиция, воображение в решении задач
  13. Правило подчинения общения решению задач правового воспитания.
  14. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ ПО РЕШЕНИЮ ПСИХОЛОГО-ПЕДАГОГИЧЕСКИХ ЗАДАЧ
  15. Прием достижения момента истины в решении задач разговора.
  16. юридико-психологические исследования решения разных правоохранительных задач