Метод итераций (последовательного приближения)
Процесс проектирования ведется в условиях информационного дефицита, который проявляется в следующем:
невозможность заранее точно указать условия работы проектируемого объекта, не зная его конкретного вида и устройства (исходные данные зависят от вида конечного решения);
выявление в процессе проектирования противоречивых исходных данных, то есть невозможность достижения технического решения при первоначально предложенных данных, оказавшихся взаимоисключающими;
появление в процессе проектирования необходимости учета дополнительных условий и ограничений, которые ранее считались несущественными;
перераспределение по степени важности показателей качества, так как может выясниться, что показатель, ранее считавшийся второстепенным, очень важен (и наоборот).
Такая неопределенность устраняется посредством выполнения итерационных процедур:
первоначально задача решается при предположительных значениях исходных данных и ограниченном числе учитываемых факторов (первый цикл итераций, так называемое «первое приближение»);
далее возвращаемся в начало задачи и повторяем её решение, но уже с уточненными значениями исходных данных и перечнем факторов, найденными на предыдущем этапе (второй цикл итераций, «второе приближение»).
и т. д.
Число циклов итераций зависит от степени неопределенности начальной постановки задачи, её сложности, опыта и квалификации проектировщика, требуемой точности решения. В процессе приближений возможно не только уточнение, но и отказ от первоначальных предположений.
Если хотят подчеркнуть, что первоначальное решение задачи выполнялось в условиях полной или большой неопределенности, первый цикл итераций называют «нулевым приближением».
Хотя итерационный метод решения задачи часто связан с большими затратами времени и средств (и чем больше циклов итераций, тем больше затраты), ещё ни одна техническая система (а также законопроект, книга и т. д.) не была создана с первого раза. С другой стороны, желательно не увлекаться итерациями при выполнении дорогих или продолжительных проектных работ.
Итерационный подход широко применяется в конструировании. Например, при разработке эскиза узла сначала детали и их расположение показывают предположительно, а затем анализируют получившееся изображение и вносят в него необходимые изменения (согласовываются формы и расположение поверхностей деталей, проверяется нормальное функционирование, увязывается с требованиями стандартов).
В частном случае, когда нет никаких предположений по решению задачи, метод последовательных приближений можно сформулировать в виде совета:
Если не известно, что и как делать (нет идей, данных, определенности и т. п.), возьмите в качестве исходного решения любое известное (идею, схему, данные,…) или предположите какое-нибудь (но желательно разумное) решение задачи. Проанализировав выбранное решение на соответствие условиям задачи, станет видно, что вас в нём не устраивает и в каком направлении его надо улучшать.
- Тема 1 Основные понятия и определения
- Тема 3 Проектирование программных продуктов.
- Основные группы методов
- Эвристические методы
- Метод итераций (последовательного приближения)
- Метод декомпозиции
- Метод контрольных вопросов
- Тема 4 Структура и формат, статические и динамические данные.
- Тема 5 Стандартизация программных продуктов
- Стандартизация программных продуктов
- Система качества пп
- Тема 6 Модульное программирование
- Тема 6 Модульное программирование
- 2. Минимизации количества передаваемых параметров
- Тема 7 Эффективность и оптимизация программ
- 1. Эффективность и технологичность. Способы экономии памяти. Способы уменьшения времени выполнения
- 2. Правила оптимизации программ
- Жертвуем памятью ради скорости
- Жертвуем скоростью ради памяти
- Логические правила
- Составление процедур
- Составление выражений
- Тема 8 Требования и спецификация качества к программных продуктов
- Тема 9 Защита программ
- Тема 10 Инструментальные средства разработки программ
- Тема 11 Коллективная разработка программных средств
- 1.1 Структура управления разработкой программных средств.
- Тема 12 Объектный подход к разработке программных продуктов
- Тема 13 Факторы надежности программных продуктов
- Тема 14 Структурное программирование программных продуктов
- Тема 15 Объектно-ориентированное программирование (ооп)
- Тема 15 Объектно-ориентированное программирование (ооп)
- Тема 16 Стиль программирования
- Тема 16 Стиль программирования
- Тема 17 Отладка, тестирование, сопровождение программ
- 2.Тестирование «белым ящиков»
- 6.Виды сопровождения и отладок пп.
- Тема 18 Экономические аспекты создания и использования программных средств
- Тема 20 Пакеты прикладных программ
- Тема 21 Язык программирования Турбо-Пролог
- Язык Пролог
- Тема 22 Списки и структуры в Прологе.
- Списки в Прологе
- Тема 23 Работа с файлами и динамическими базами данных в Прологе
- Работа с файлами
- Работа с файлами
- 3.6.3. Динамические базы данных