Курсовая работа: Метод наискорейшего спуска
по дисциплине «Методы и алгоритмы обработки изображений»
тема: Метод наискорейшего спуска
2004
1. Техническое задание
Быстрое развитие вычислительных средств, расширение их возможностей, а также (как следствие) постоянное снижение цен на них являются главным фактором всё более широкого их внедрения в различные сферы научной и практической деятельности.
Одним из видов практической деятельности, где используется компьютер, является решение задач оптимизации. Использование вычислительной техники для решения таких задач обусловлено так же и тем, что в ходе вычислений возникает повторяемость одних и тех же операций над различными данными и трудностью представления решения в графическом виде.
Общую постановку задачи оптимизации можно описать следующим образом:
Задачей многомерной оптимизации является минимизация функции U=f(x1,x2,..xm) от m переменных x1,x2,…xm. Если нет ограничений на параметры x1,x2,…xm, то говорят о глобальной минимизации, если ограничения есть, то говорят об условной минимизации. Вектор g(x) называется градиентом функции f(x) и обозначается g(x)=gradf(x)=(df/dx1)*e1+…+(df/dxm)*em.
Вектор g(x) указывает направление наискорейшего возрастания функции, а вектор –g(x) называется антиградиентом и указывает направление наискорейшего убывания функции.
Метод наискорейшего спуска.
Из начальной точки x0 перпендикулярно линии уровня то есть в направлении градиента (антиградиента), двигаются до тех пор, пока функция возрастает (убывает), то есть решают одномерную задачу минимизации для функции F(a)=f(x0-a*gradf(x0)), где a выступает в качестве параметра.
В результате находится значение x1=x0-a* gradf(x0) соответствующее максимальному (минимальному) значению функции на выбранной прямой. Затем вычислительный процесс повторяется для точки x1 и так далее. Критерием окончания является условие f’ (xm)=|df/dxi|<=ε, i=1,…,m.
Данное программное изделие (далее по тексту именуемое «программа») носит название «Метод наискорейшего спуска» – это одна из задач оптимизации.
Основания для разработки
Разработка ведется на основании задания по курсовой работе.
Назначение разработки
Программное изделие разрабатывается с целью реализации задачи оптимизации методом наискорейшего спуска.
Функциональное и эксплуатационное назначение изделия
Перечень требований пользователя к программному изделию
Программное изделие должно реализовывать задачу оптимизации методом наискорейшего спуска.
Рассмотренные альтернативы
При постановке задачи на разработку данного программного изделия рассматривались следующие альтернативы:
1. Программная платформа. Язык Delphi доступен в операционных системах Windows 95/98/Me, WindowsNT/2000/XP. Выбрана была система Windows 2000/NT в связи с высоким качеством программного кода, надёжностью и наличием расширенных возможностей разработки программного обеспечения под эту платформу.
2. Средства разработки. Любой компилятор для системы Windows 2000 мог быть использован для написания данного программного продукта. Из наиболее распространенных, таких как MicrosoftVisual С++, WebGainVisualCafe, Borland C++, Borland C++ Builder, BorlandDelphi, PowerBuilder, BorlandJBuilder был выбран компилятор BorlandDelphi. Выбор обоснован широким распространением, удобством использования, высоким качеством генерируемого кода данной среды.
Требования к программе или программному изделию
Стандарты
Разработка программной документации и программного продукта должна производится согласно ГОСТ 19.701-90, ГОСТ 2.304-88.
Информационная совместимость
Модули программного комплекса должны быть совместимы между собой на уровне исходного языка, а также форматов используемых данных.
Программные ограничения, совместимость
--> ЧИТАТЬ ПОЛНОСТЬЮ <--