Смекни!
smekni.com

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" (стр. 5 из 12)

Рисунок 1.17. Неудачная система пробных точек (слева - возможна повторная попытка, справа - необходимо уменьшить радиус)

5) Процедура 2)-4) повторяется до выполнения критерия окончания счета.

Основной критерий окончания метода:

Дополнительные критерии окончания метода:

- при выполнении предельного числа итераций:

- при однократном или двукратном одновременном выполнении двух условий:

где

- малое положительное число.

Алгоритм работы метода случайного поиска схематически изображен на рис. 1.18

Рисунок 1.18. Диаграмма работы метода случайного поиска

1.1.12 Метод конфигураций (Хука-Дживса)

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

Процесс поиска минимума функции всегда начинается с исследующего поиска.

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

.

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

Алгоритм метода:

1) Задается начальная точка

и начальные значение приращений
. Точка
называется точкой старого базиса.

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

вычисляется по алгоритму:

В результате исследующего поиска получается точка

.

Если при этом

, то
- точка нового базиса.

Если

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

Рисунок 1.19. Исследующий поиск (слева — удачный, справа - неудачный)

- точка старого базиса
- точка нового базиса

3) Из точки нового базиса может быть:

· продолжен исследующий поиск со старыми или новыми значениями приращений (шаг 2) алгоритма)

· проведен поиск по образцу по алгоритму:

Рисунок 1.20. Поиск по образцу (слева — удачный, справа - неудачный)

В точке

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

Если

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

4) Процедура 3) повторяется до выполнения критерия окончания счета.

Основной критерий окончания метода:

Дополнительные критерии окончания метода:

- при выполнении предельного числа итераций:

- при однократном или двукратном одновременном выполнении двух условий:

где

- малое положительное число.

Алгоритм работы метода конфигураций схематически изображен на рис. 1.21

Рисунок 1.21. Диаграмма работы метода конфигураций


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

Создание любого программного изделия, как и любая другая деятельность, делится на несколько взаимосвязанных этапов. В данном случае мы имеем дело с построением некоторой системы, которая будет выполнять определённые задачи. Значит, нам нужно определить, какие средства нам понадобятся для выполнения этих задач.

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

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

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

2.1 Анализ архитектур

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

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

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

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

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

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

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

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

Сервисно-ориентированная архитектура, которая опирается на набор стандартизированных сервисов, взаимодействующих между собой.

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