Рефотека.ру / Информатика и програм-ие

Дипломная работа: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

Введение


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

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

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

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

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

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

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

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

В направлении информатизации сферы образования работают сейчас практически все гуманитарные и технические учебные заведения разных стран. Разработки в этом направлении ведутся и в Московском авиационном институте. Кафедра «Математическая кибернетика» факультета «Прикладная математика и физика» института в течении многих лет разрабатывает учебные материалы с использованием компьютерных технологий. За это время создан комплекс компьютерных пособий и учебников, охватывающих предметы, читаемые преподавателями кафедры. Комплекс, включающий в себя более 70 компьютерных учебников, поддерживает 8 разделов курса "Теория управления", 7 разделов курса "Системный анализ", 3 раздела курса "Линейная алгебра и аналитическая геометрия", а также курсы "Теория графов", "Теория функций комплексного переменного", "Линейное программирование", "Линейные дифференциальные уравнения" и другие. Также функционирует кафедральных сайт в интернете, позволяющий студентам и преподавателям института обмениваться информацией дистанционно. В настоящее время на кафедре ведется работа по созданию других средств обучения с применением информационных технологий.

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

В рамках дипломного проекта требуется:

Изучить описываемые методы оптимизации и составить документацию по ним в мультимедийной форме.

Разработать архитектуру практикума

Разработать пользовательский интерфейс

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

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

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

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

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


1. Теоретическая часть


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

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

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

квадратичной функции 2-х переменных:


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


овражной функции


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

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


Методы, реализованные в лабораторном практикуме


Прямые методы, представленные в практикуме имеют один и тот же алгоритм


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


где

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- текущая точка последовательности, причем Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"– задается из физического содержания задачи или произвольно;

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - последующая точка последовательности;

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- приемлемое направление перехода из точки в точку – направление спуска. Приемлемым при решении задачи поиска минимума функции будет только то направление, для которого Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", что обеспечивается выполнением условия Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы";

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг (число >0),

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

Алгоритм работы прямых методов схематически изображен на рис. 1.1


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

Рисунок 3.1. Алгоритм работы прямых методов


В практикуме реализованы:

методы первого порядка, использующие информацию о 1-х производных функции Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы":

метод градиентного спуска;

метод наискорейшего градиентного спуска;

метод покоординатного спуска;

метод Гаусса-Зейделя;

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

методы второго порядка, использующие для своей реализации информацию о 1-х и 2-х производных функции Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы":

метод Ньютона;

метод Ньютона-Рафсона;

метод Марквардта

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

В практикуме реализованы следующие методы нулевого порядка:

метод случайного поиска

метод деформируемого многогранника

метод конфигураций


Метод градиентного спуска

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


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


здесь:

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- направление антиградиента функции;

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг выбирается из условия убывания функции в точках последовательности Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

Геометрическая интерпретация метода:


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

Рисунок 3.1. Геометрическая интерпретация метода

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

Построение последовательности заканчивается в точке, для которой


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

где Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- заданное малое положительное число, здесь


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


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

Изменяемый параметр метода: величина шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы".


Особенности реализации алгоритма. Вопрос о величине шага на каждой итерации решается пользователем, причем шаг может быть, как уменьшен, если не выполняется условие Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", так и увеличен, если скорость сходимости алгоритма невысока (по субъективной оценке пользователя).

Рекомендации по выбору параметров метода. Согласно алгоритму метода, каждая последующая точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" в методе градиентного спуска ищется в направлении Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" направлении антиградиента функции, построенном в текущей точке Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". Поэтому, если направление антиградиента в текущей точке приблизительно совпадает с направлением на минимум (согласно чертежу), шаг следует увеличить, чтобы ускорить процесс сходимости, если же направление антиградиента сильно отличается от направления на минимум, шаг уменьшают, в противном случае функция может уменьшиться несущественно или даже возрасти.


Метод градиентного наискорейшего спуска

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


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


здесь

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - направление антиградиента функции

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг вычисляется из условия наибольшего убывания функции в точках последовательности:


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


Геометрическая интерпретация метода


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

Рисунок 3.1. Геометрическая интерпретация метода


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


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


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


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


Начальные параметры метода:


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


Изменяемые параметры метода: отрезок для уточнения шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы".

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

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

Проиллюстрируем ситуацию, при которой шаг Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" вычисляется численно методом дихотомии. Для этого построим график функции Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", которая в случае если Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" является квадратичной функцией, имеет вид:


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

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

Рисунок 3.1 Метод дихотомии


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

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

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


Метод покоординатного спуска

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

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


здесь:

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- проекция на ось Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" антиградиента функции

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг выбирается из условия убывания функции в точках последовательности:


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


Геометрическая интерпретация метода


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

Рисунок 3.1. Геометрическая интерпретация метода


Основной критерий окончания метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

Начальные параметры метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"


Изменяемые параметры метода: величина шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" и направление проекции антиградиента (здесь абсциссы – ось Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", ординаты – ось Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы")

Особенности реализации алгоритма.  Вопрос о величине шага на каждой итерации решается пользователем, причем шаг может быть, как уменьшен, если не выполняется условие Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", так и увеличен, если скорость сходимости алгоритма невысока (по субъективной оценке пользователя). Вопрос о выборе направления оси для проекции антиградиента, также решается пользователем на каждой итерации.


Метод Гаусса-Зейделя (наискорейшего покоординатного спуска)

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


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


здесь:

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- проекция на ось Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" антиградиента функции

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг вычисляется из условия наибольшего убывания функции в точках последовательности:


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


Геометрическая интерпретация метода


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

Рисунок 3.1. Геометрическая интерпретация метода

Основной критерий окончания метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

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


Изменяемые параметры метода: отрезок для уточнения шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы".

Особенности реализации алгоритма. Задача о поиске оптимального шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" (задача Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы") решается численно методом дихотомии на отрезке Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" с заданной точностью Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". Вопрос о границах отрезка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" на каждой итерации решается пользователем. Направление проекции градиента меняется циклически: сначала спуск в направлении оси абсцисс, затем – ординат и т.д.

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


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

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


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


здесь:


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

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

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


Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг вычисляется из условия наибольшего убывания функции в точках последовательности:

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


Геометрическая интерпретация метода


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

Рисунок 3.1. Геометрическая интерпретация метода


Согласно алгоритму, первая итерация метода сопряженных градиентов совпадает с первой итерацией метода наискорейшего спуска.

Вычисление величины Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"по формуле (5.4) обеспечивает для квадратичных функций построение последовательности H-сопряженных направлений Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", для которых Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". При этом в точках последовательности Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" градиенты функции Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"взаимно перпендикулярны, т.е.


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


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


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

Начальные параметры метода:


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


Изменяемые параметры метода: отрезок для уточнения шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы".

Особенности реализации алгоритма. Задача о поиске оптимального шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" (задача Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы") решается численно методом дихотомии на отрезке Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" с заданной точностью Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". Вопрос о границах отрезка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" на каждой итерации решается пользователем.

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

Рекомендации по выбору параметров метода.

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


Метод Ньютона

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


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


здесь:

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - направление спуска

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


Особенностью метода Ньютона является то, что при Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" метод позволяет отыскать минимум квадратичной функции за одну итерацию.

Геометрическая интерпретация метода для квадратичной функции:

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

Рисунок 3.1. Геометрическая интерпретация метода


Для неквадратичной функции метод Ньютона предполагает построение последовательности минимумов аппроксимирующих квадратичных функций Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы".


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

Рисунок 3.1. Последовательность минимумов


Основной критерий окончания метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

Начальные параметры метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"


Метод Ньютона-Рафсона

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


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


здесь:

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - направление спуска

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- шаг выбирается из условия убывания функции в точках последовательности:


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


Геометрическая интерпретация метода для квадратичной функции:


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

Рисунок 3.1. Геометрическая интерпретация метода


Основной критерий окончания метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

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

Изменяемый параметр метода: величина шага Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"


Метод Марквардта

Метод Марквардта (метод Ньютона с переменной матрицей), повторяет метод Ньютона. Отличие заключается в том, что точки строятся по закону:


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


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


Метод Нелдера-Мида (деформируемого многогранника)

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

1) Задается начальная система точек (многогранник), включающая в себя Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" точку:


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


для функции 2-х переменных задается три начальные точки:


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


2) Вычисляется значение функции во всех точках многогранника и выбирается:

лучшая точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы": Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" (здесь Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - номер итерации, Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- номер точки) худшая точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы": Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"


Далее заданная система из Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" точки перестраивается, для этого:

3) Строится центр тяжести системы заданных точек за исключением худшей:


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


(для функции 2-х переменных точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" - середина отрезка, соединяющего точки за исключением худшей)

4) Выполняется операция отражение худшей точки через центр тяжести:


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


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


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

Рисунок 3.1. Отражение


5) Формируется новая система точек (многогранник). Для этого в точке Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" вычисляется значение функции, полученное значение сравнивается с Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы":

если Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" выполняется операция растяжение:

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


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

Рисунок 3.1. Растяжение


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

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

если Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" выполняется операция сжатие:


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


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

Рисунок 3.1. Сжатие


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

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

если Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" выполняется операция редукции: при этом формируется новый многогранник, содержащий точку Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"с уменьшенными вдвое сторонами:


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


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

Рисунок 3.1. Редукция


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

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

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


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


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

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


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


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


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


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

Алгоритм работы метода Нелдера-Мида схематически изображен на рис. 1.15


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

Рисунок 3.1. Диаграмма работы метода Нелдера-Мида


Метод случайного поиска (адаптивный метод случайного спуска)

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

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

2) Строится система пробных точек (обычно 5-10 точек):


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


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

Построенные пробные точки оказываются лежащими на гиперсфере радиуса Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"(в случае двух переменных – на окружности радиуса Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы").

3) Для каждой пробной точки вычисляется значение функции Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"и выбирается наилучшаяРазработка компьютерного лабораторного практикума "Теория оптимизации и численные методы", для которой Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". Выбор может осуществляться как автоматически, так и при участии пользователя.

4) Проверяется условие:


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


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


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


4.2)  в направлении, соединяющем точки Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" и Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" делается ускоряющий шаг:


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


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

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

Рисунок 3.1. Удачная система пробных точек


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


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

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


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

Основной критерий окончания метода: Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

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

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

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


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


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

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


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

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


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

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

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

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

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

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

1) Задается начальная точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"и начальные значение приращенийРазработка компьютерного лабораторного практикума "Теория оптимизации и численные методы". Точка Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" называется точкой старого базиса.

2) Проводится исследующий поиск, в результате которого каждая координата новой точки Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" вычисляется по алгоритму:


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


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

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

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


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

Рисунок 3.1. Исследующий поиск (слева — удачный, справа - неудачный) Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- точка старого базиса Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"- точка нового базиса

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

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

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


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


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

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

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

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

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

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


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


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

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

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


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


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

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


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

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


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


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

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

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

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


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


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

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

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

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

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

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

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

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

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

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


Локальная архитектура

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

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

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

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

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

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


Клиент-серверная архитектура

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

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

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

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

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

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

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


Многозвенная архитектура

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

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

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

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

Сервисно-ориентированная архитектура

OASIS (Организация по распространению открытых стандартов структурированной информации) определяет SOA следующим образом. Сервисно-ориентированная архитектура – это парадигма организации и использования распределенных информационных ресурсов таких как: приложения и данные, находящихся в сфере ответственности разных владельцев, для достижения желаемых результатов потребителем, которым может быть: конечный пользователь или другое приложение.

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

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

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


Архитектура одноранговой сети

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

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

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

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

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


Сравнение архитектур

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

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

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

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

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


Таблица 4.8. Сравнение программных архитектур

Архитектура Критерий Локальная Клиент-серверная Многозвенная SOA Одноранговая сеть
Затраты на разработку низкие средние высокие очень высокие высокие
Затраты на установку низкие сердние высокие высокие средние
Затраты на использование низкие низкие средние высокие высокие
Масштабируемость нет средняя хорошая хорошая хорошая
Рациональность исп. ресурсов высокая средняя высокая высокая низкая
Централизация нет есть есть есть ограни-ченно
Защита достоверности нет есть есть есть нет

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


Анализ программных средств


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

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


Свободное программное обеспечение

В дипломном проекте используется свободное (свободно распространяемое) программное обеспечение. В последнее время в мире все большее развитие получило движение за свободное программное обеспечение. «Свободное программное обеспечение» означает свободу, а не цену. «Свобода ПО» означает право пользователя свободно запускать, копировать, распространять, изучать, изменять и улучшать его.

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

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

Основными общественными организациями, продвигающими свободное программное обеспечение, являются международные Free software foundation (FSF) и проект GNU, цель которого — создание полностью свободной операционной системы. С большим количеством материалов по данной теме можно ознакомиться на сайтах этих организаций в интернете.


Серверные программные средства

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

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

Преимущества и недостатки этих двух подходов представлены для сравнения в таблице 2.2.


Таблица 4.8 Преимущества и недостатки готовых решений

Характеристика Разработка своими силами Использование готовых решений
Трудоемкость Высокая Низкая
Надежность Повышенная Низкая
Скорость работы Высокая Низкая
Требуемые знания Протоколы взаимодействия ОС Знание используемого продукта
Использование памяти Практически отсутствует Используется дополнительная память

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

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

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


Таблица 4.8 Сравнение HTTP-серверов

Характеристика Apache Microsoft IIS ngnix
Разработчик Apache Microsoft Игорь Сысоев
Условия распространения Свободно Совместно с MS Windows Свободно
Настройка Конфигурационные файлы Графический интерфейс Конфигурационные файлы
Трудоемкость настройки Высокая, требуются специальные знания Средняя Высокая, требуются специальные знания
Операционная система UNIX-подобные Microsoft Windows UNIX-подобные

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

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


Клиентские программные средства

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

Javascript

CSS

XSLT

Cookies

Данным требованиям удовлетворяют наиболее популярные веб браузеры, созданные в последнее время, работа программ тестировалась в браузерах Mozilla Firefox версий 2 и 3 и Microsoft Internet Explorer версий 6 и 7.

Javascript — это язык программирования, единственный в настоящее время, который используется в веб-браузерах для программирования действий на HTML страницах. Язык обладает богатыми возможностями, поддерживает работу с объектами и позволяет подключать дополнительные библиотеки, реализующие в готовом виде многие требуемые операции.

При создании форм приложений в формате HTML в составе программного продукта желательно, чтобы эти страницы имели одинаковое оформление элементов управления и отображения информации. В настоящее время для этого разработана технология CSS (Cascading Style Sheets), которая описывает задание общих параметров отображения на уровнях иерархии элементов управления.

Условия задания требуют отображения составленных программой графиков, но у различных веб-браузеров до сих пор нет единой реализации набора процедур для использования возможностей рисования. Наиболее распространенная модель, SVG, работает в большинстве браузеров, но не работает в Microsoft Internet Explorer. Поскольку данный браузер широко используется на практике, то игнорирование его недопустимо. Поэтому применяется специальная библиотека Dojo, которая реализует рисование графиков в любом веб-браузере, используя технологии SVG, VML, Silverlight, когда они доступны.

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


Описание практикума


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

Клиентская часть практикума обеспечивает работу пользовательского интерфейса и позволяет пользователям подключаться к серверной части и выполнять выданное им задание (рис 2.1).

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

Рисунок 3.1 Клиент-серверная архитектура


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


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

Рисунок 3.1.Алгоритмическая часть


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

Также в состав практикума входит справочная система, содержащая основные сведения по работе с практикумом.

Общая последовательность операций при работе с практикумом представлен на рис. 2.3


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

Рисунок 3.1. Функциональная схема практикума


Описание серверной части

Серверная часть состоит из набора HTML-страниц программ на языке PHP. HTML-страницы обеспечивают отображение пользовательского интерфейса и справочной системы, а PHP-программы — хранение информации о проводимых работах, произведение математических расчетов и ведение отчетности.

Для работы серверной части необходимо установить ее на HTTP-сервер, поддерживающий выполнение программ на языке PHP версии 4 со следующими дополнительными модулями:

XSLT

domxml

session

PHP Сессии должны быть включены.

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


Описание пользовательского интерфейса

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

Экранные формы передаются на клиентскую часть в формате HTML, поэтому необходимо иметь программу, отображающую HTML формы. Динамическое отображение информации на формах обеспечивается с помощью языка программирования Javascript, поэтому требуется его поддержка. Также программа должна поддерживать следующие технолонии:

CSS

XSLT

XHR

Для начала работы нужно запустить программу-клиент и указать адрес сервера (это может быть автоматизировано). Работа пользоватеся с лабораторным практикумом начинается с окна приветствия (рис 2.4)


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

Рисунок 3.1. Окно приветствия


За окном приветствия следует окно регистрации(рис 2.5), на котором фиксируются:

фамилии и инициалы (допускается более одного выполняющего);

учебная группа по маске ##-###;

дата и время выполнения;

Регистрационные данные заносятся в память сервера.

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

Рисунок 3.1. Окно регистрации


Если в окне приветствия выбрать пункт «Помощь», то откроется окно справочной системы.

После ввода сведений о пользователе в окне регистрации, следующее окно служит для выбора типа минимизируемой функции. На странице представлено название функции и ее общий вид. (рис 2.6)

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

Рисунок 3.1. Окно выбора типа функции


На следующем этапе работы студентов с лабораторным практикумом обеспечивается ввод числовых коэффициентов для выбранной функции и ввод начальной точки, с проверкой на корректность(рис 2.7).


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

Рисунок 3.1. Окно задания параметров функции


Для квадратичной функции обеспечивается предоставление информации о знакоопределенности матрицы Гессе по критерию Сильвестра

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


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

Рисунок 3.1. Отображение сетки


После задания параметров, нужно нажать кнопку «Методы» На следующих этапах работы лабораторный практикум обеспечивает выбор метода поиска безусловного экстремума и задание параметров счёта: точности и предельного числа итераций, а также специальных параметров для выбранного метода, если таковые требуются (рис.2.9, 2.10).


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


Рисунок 3.1. Выбор метода оптимизации

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

Рисунок 3.1. Задание параметров метода


Открываемая на следующем этапе рабочая форма для каждого выбранного метода содержит(рис 2.11):

Секцию «Результаты вычислений», включающую:

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

значение функции в ней

градиент функции в ней

норму градиента в ней

Область чертежа, включающую:

график линии (линий) уровня

траекторию спуска

кнопку управления сеткой

кнопку управления отображением градиента (рис 2.12)

Секцию «Изменяемые параметры», включающую:

окно задания шага для вычисления следующей точки (для метода градиентного спуска, Ньютона-Рафсона и Марквардта)

окна задания границ отрезка для вычисления оптимального шага (для методов наискорейшего спуска и метода сопряженных градиентов) и кнопку «показать функцию f̃(t) на [a,b]», при нажатии на которую выводится график соответствующей функции (рис 2.13)

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

а также другие параметры (для методов нулевого порядка)


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

Рисунок 3.1. Основное рабочее окно шага

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

Рисунок 3.1 Метод покоординатного спуска


На каждой итерации поиска экстремума студент помимо задания параметров вычисления имеет возможность:

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

просмотреть текущее состояние протокола счёта (временный протокол);

обратиться за справочной информацией;

получить координаты стационарной точки минимизируемой функции (рис 2.15)

воспользоваться калькулятором.


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

Рисунок 3.1 Отображение стационарной точки

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

Если заданное количество итераций выполнено, но критерий окончания счёта для выбранного метода не достигнут (рис 2.16), предусматривается возможность продолжить вычисления.


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

Рисунок 3.1. Увеличение количества итераций


Эти особенности реализации численных вычислений обеспечивают «игровой» эффект для студента и стимулируют выработку понимания теоретического материала.

По завершении расчета, сведения о произведенных вычислений заносятся в протокол, который отображается на экране.


Описание формы отчетности

Протоколы успешно произведенных вычислений сохраняются на сервере и выводятся на экран по завершении расчетов (рис 2.17).


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

Рисунок 3.1 Протокол работы


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

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

Накопляющиеся на сервере протоколы возможно перемещать в другое место или удалять. Эти действия производит администратор сервера. Также администратор сервера имеет возможность непосредственно просматривать протоколы с локального диска.

Структура протокола приведена на рис. 2.18

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

Рисунок 3.1. Структура протокола


Описание справочной системы

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


Организационно-экономическое обоснование проекта


В ходе дипломного проекта был разработан компьютерный лабораторный практикум по курсу «Теория оптимизации и численные методы». В данном разделе рассмотрена экономическая сторона проекта. Рассмотрены следующие вопросы:

сетевая модель

расчёт затрат на создание КЛП

оценка эффективности


Сетевая модель


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

Наиболее удобным средством планирования сложной совокупности работ по создания нового ПИ является сетевая модель (сетевой график).

Сетевой график — это упорядоченный список работ, упорядоченная последовательность событий и перечень их условий (зависимостей). Сетевой график рассматривается как перспективный план проектных работ и одновременно как календарный график проектирования новых изделий.

Работа — это проектное задание функциональной единице (например, группе испытанный) с чётко определёнными моментами его начала и окончания.

Событие — это момент начала или окончания деятельности. Момент начала работы обозначается i, момент окончания — j.

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

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


Перечень событий и работ

Составим полный перечень событий и работ по разработки электронного учебника. Каждая работа имеет определённую продолжительность. Однако не всегда заранее известно точное время выполнения работ, поэтому дадим продолжительности каждой работы две вероятностные оценки: tmin - минимальную и tmax - максимальную. Эти величины являются исходными для расчёта ожидаемого времени выполнения работ tож:


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


Рассчитаем также дисперсии работ по формуле:


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


Таблица 4.8. Перечень событий и работ

Наименование событий Код работы Наименование работы Продолжительность (дней)

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





tmin tmax tож
1 2 3 4 5 6 7 8
0 Начало работ по созданию КЛП 0 – 1 Анализ ТЗ и составление плана разработки КЛП 1 3 1,8 0,16
1 Завершение анализа ТЗ 1 – 2 Разработка и согласование концепции КЛП 2 4 2,8 0,16


1 – 3 Выбор программных средств для создания КЛП 1 3 1,8 0,16


1 – 4 Анализ учебных материалов по курсу и выбор сведений для включения в КЛП 1 1 1 0
2 Завершение разработки концепции КЛП 2 – 3 Разработка структуры КЛП 2 4 2,8 0,16
3 Завершение проектиро-вания 3 – 5 Разработка интерфейса КЛП 8 12 9,6 0,64
4 Завершение анализа учебных материалов 4 – 5 Программирование меодов минимизации 7 10 8,2 0,36


4 – 6 Подготовка тестовых заданий 1 3 1,8 0,16


4 – 7 Подготовка справочной информации 1 3 1,8 0,16
5 Завершение разработки библиотеки алгоритмов КЛП 5 – 8 Программирование системы ведения отчетов 5 9 6,6 0,64
6 Завершение работ по выбору упражнений для тестирований 6 – 8 Реализация тестового модуля КЛП 7 12 9 1
7 Завершение разработки справочного материала для КЛП 7 – 8 Создание справочного раздела в КЛП 5 8 6,2 0,36
8 Завершение работ по созданию КЛП 8 – 9 Тестирование и отладка КЛП 3 5 3,8 0,16
9 Завершение работ по отладке КЛП 9 – 10 Составление технической документации 4 7 5,2 0,36
10 Документация на КЛП составлена 10 – 11 Сдача КЛП в эксплуатацию 3 6 4,2 0,36
11 Внедрение КЛП в учебный процесс






Сетевой график, соответствующий этой сетевой модели, имеет соответственно 12 событий и 11 работ.


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

Рисунок 3.1.Сетевая модель


Расчет параметров сетевой модели

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

Для событий рассчитывают следующие основные характеристики:

Ранний срок наступления события

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


Трi = max tожij. (3.25)


Поздний срок наступления события

Поздний срок наступления события (Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы") – максимально допустимый срок наступления данного события, при котором сохраняется возможность соблюдения ранних сроков наступления последующих событий, равен разности между продолжительностью критического пути и наибольшего из путей, ведущих от завершающего события к данному.


Тпi = Ткр - max tож. (3.25)


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

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

Ri = Тпi - Трi. (3.25)


Для всех работ на основе Трi и Тпi рассчитывают следующие показатели:

Ранний срок начала работы

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


Трнij = Трi. (3.25)


Ранний срок окончания работы

Ранний срок окончания работы равен сумме раннего срока начала и продолжительности данной работы.


Троij = Трi + tij. (3.25)


Поздний срок начала работы

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


Тпнij = Тпj - tij. (3.25)


Поздний срок окончания работы

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


Тпoij = Тпi. (3.25)


Полный резерв времени

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

Rпij = Тпj - Трj - tij. (3.25)


Свободный резерв времени

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


Rcij = Тpj - Трi - tij. (3.25)


Критический путь сети (Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы") – путь наибольшей продолжительности от исходного события 0 до завершающего события 15.

Результаты расчета основных параметров сетевой модели представлены в Таблице 3.2.


Таблица 4.8. Основные параметры сетевой модели

Код
Ранний срок Поздний срок Резервы
работы Тож Трн Тро Тпн Тпо Rп
1 2 3 4 = 2 + 3 5 = 6 - 2 6 7 = 5 – 3 8
0-1 1,8 0 1,8 0 1,8 0 0
1-2 2,8 1,8 4,6 1,8 4,6 0 0
1-3 1,8 1,8 3,6 5,6 7,4 3,8 3,8
1-4 1 1,8 2,8 1,8 2,8 0 0
2-3 2,8 4,6 7,4 4,6 7,4 0 0
3-5 9,6 7,4 17 7,4 17 0 0
4-5 8,2 2,8 11 8,8 17 6 6
4-6 1,8 2,8 4,6 2,8 4,6 0 0
4-7 1,8 2,8 4,6 2,8 4,6 0 0
5-8 6,6 17 23,6 17 23,6 0 0
6-8 9 4,6 13,6 14,6 23,6 10 10
7-8 6,2 4,6 10,8 17,4 23,6 12,8 12,8
8-9 3,8 23,6 27,4 23,6 27,4 0 0
9-10 5,2 27,4 32,6 27,4 32,6 0 0
10-11 4,2 32,6 36,8 32,6 36,8 0 0

Критический путь состоит из следующих событий:


0-1-2-3-5-8-9-10-11


Рассчитаем продолжительность критического пути:


Ткр = Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 1,8 + 2,8 + 1,8 + 9,6 + 6,6 + 3,8 + 5,2 + 4,2 = 36,8 (3.25)


Продолжительность критического пути — 36,8 дней


Анализ и оптимизация сетевой модели

Проведем анализ сетевого графика на основе рассчитанных выше временных характеристик.

Проверим, не превышает ли длина критического пути Ткр продолжительности заданного директивного срока Тд. Если Ткр > Тд, то необходимо принять меры по уплотнению графика работ. В нашем случае директивный срок выполнения работ по созданию КУ Тд = 50 дней, а продолжительность критического пути Ткр = 36,8 дн., т.е. Ткр  Тд.

Вычислим сумму значений дисперсий работ критического пути:


Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"0,16 + 0,16 + 0,16 +

+ 0,64 + 0,64 +0,16+ 0,36 + 0,36 = 2,64. (3.25)


Тогда среднеквадратическое отклонение для длины критического пути:


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


Определим доверительный интервал для срока выполнения всего комплекса работ:

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


Определим вероятность P наступления завершающего события в заданный срок. Для этого с помощью таблицы определяется значение функции Лапласа Ф(Х):


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


Таким образом, вероятность завершения комплекса работ в срок составляет 99,99%.


Расчет затрат на создание учебно-методического комплекса


Разработку программного комплекса можно разбить на следующие этапы:

Анализ задания на дипломную работу;

Выбор и изучение программного обеспечения для создания КЛП;

Анализ и подготовка учебно-методического материала;

Формирование КЛП;

Отладка и тестирование КЛП;

Внедрение КЛП в учебный процесс.

Одной из основных статей расходов является заработная плата персонала, занятого в исследованиях при проведении данной дипломной работы. Заработная плата сотрудников приведена в Таблице 3.3.


Таблица 4.8 Заработная плата сотрудников


ИТР Количество часов Средняя з.п. (руб/ч) Зарплата (руб.)
1 Руководитель 24 125 3000
2 Консультант по экономич. части 2 125 250
3 Консультант по части "Охрана труда и БЖД" 2 125 250
4 Дипломник 624 6 3744
Итого 7244

Расходы на заработную плату персонала Sзп = 7244 (руб.).

Суммарные затраты на разработку КЛП SКЛП (руб.) определим по формуле:


SКЛП = Sзп  [(1 + ωд)(1 + ωс) + ωн], (3.25)


где

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

ωд = 0,2 – коэффициент, учитывающий дополнительную заработную плату (премии в размере 20% от ЗП),

ωс = 0,26 – коэффициент, учитывающий отчисления на оплату единого социального налога (ставка 26%),

ωн= 0,6 – коэффициент, учитывающий накладные расходы.


Sклп = 7244  [(1 + 0,2)(1 + 0,26) + 0,6] = 15284,84 руб. (3.25)


Цена разработанного КЛП определяется по формуле:


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


где

Рн – норматив рентабельности, учитывающий часть чистого дохода, включенного в цену (может быть принят равным 0,2),

n = 1 – количество организаций, которые могут купить программу.

Капитальные вложения, связанные с внедрением новой программы, определим по формуле:


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


где

Кэвм = 10000 руб.– капитальные вложения, связанные с приобретением ПЭВМ, на которой будет разработан КЛП,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 300 ч.– годовое машинное время ПЭВМ, необходимое для применения КЛП,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 18431,80 руб. – цена разработанного КЛП,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 1300 ч. – полный годовой фонд рабочего времени ПЭВМ.

Расходы, связанные с эксплуатацией КЛП определим по формуле:


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


где

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 1500 руб. – затраты на эксплуатацию КЛП,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 7 руб./час – себестоимость одного часа машинного времени,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 10 лет – срок службы программы,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 300 ч. – годовое машинное время ПЭВМ, необходимое для применения КЛП.


Оценка экономической эффективности


Компьютерный лабораторный практикум разрабатывается для кафедры 805 Московского авиационного института. По сравнению с проведением занятий и лабораторных работ преподавателями кафедры, КЛП обеспечивает существенную экономию времени сотрудников, которую можно оценить примерно в 60% на одно занятие. Рассчитаем экономию средств на зарплаты преподавателей.


Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" =90 часов/семестр, (3.25)

где

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 60 – количество занятий в год,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 2,5 ч. – продолжительность одного занятия,

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 0,6 – коэффициент экономии времени

Годовая экономия эксплуатационных расходов потребителя определим по формуле:


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


где

Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 100 руб./ч. - средняя заработная плата преподавателя.

Срок окупаемости капитальных вложений определяется по формуле:


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


Рассчитанный срок окупаемости для данной отрасли является экономически оправданным (эффективным).

Расчётный коэффициент эффективности капитальных вложений:


Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы" = 0,43 (3.25)


Данный коэффициент характеризует эффективность вложений в разработанное программное изделие.

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


Охрана труда и безопасность жизнедеятельности


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

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

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

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

В данном разделе дипломного проекта рассматриваются наиболее распространённые в бытовых условиях вредные воздействия. Это:

Параметры освещения

Климатические показатели

Уровень шума

Производственные вибрации

Эргономические требования к рабочему месту

Режим труда

Параметры освещения


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

Освещение делят на три типа — естественное, искусственное, а также совмещённое освещение (то есть естественное и искусственное освещение совмещено).

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

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

Совмещённое освещение - когда недостаточное или не соответствующее принятым нормам естественное освещение дополняют искусственным.

В свою очередь, искусственное освещение делится на рабочее освещение, аварийное, эвакуационное и охранное освещение. Рабочее освещение делят на общее и комбинированное. Общее освещение — это когда источники света размещаются наверху помещения равномерно. Местное освещение — когда источники света располагаются непосредственно на рабочем месте. При комбинированном освещении общее освещение дополняется местным освещением рабочего помещения.

СНиП предписывает в вычислительных центрах применять системы комбинированного освещения помещений и рабочих мест.

При работах высокой категории точности коэффициент естественного освещения должен быть не менее 1,5%, а при зрительных работах средней категории зрительной точности КЕО не должен быть менее 1,0%.

В помещениях вычислительных центров, где установлены компьютеры, предъявляемые требования к освещённости рабочих мест таковы: в случае выполнения зрительных работ высокой категории зрительной точности общая и комбинированная освещённости должны быть 300лк и 750лк соответственно; при выполнении работ средней категории зрительной точности — соответственно 200 и 300лк.

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


Климатические показатели


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

Источником существенных выделений тепла является вычислительная техника. Это обстоятельство может привести к чрезмерному повышению температуры в помещении и к снижению влажности. Также в вычислительных центрах, где установлены компьютеры, необходимо соблюдение определённых параметров микроклимата. Санитарные нормы устанавливают величины параметров, которые обеспечивают комфортные условия для работников. Они установлены в зависимости от следующих параметров: время года, характер трудового процесса и характер производственного помещения (таблица 4.1).

Объем помещения вычислительного центра, не должен быть меньше 19,5м3/чел., считая сотрудников, работающих в одну смену. Подача свежего воздуха в помещения производится в соответствии с нормами, приведёнными в таблице 4.2


Таблица 4.8. Параметры микроклимата для помещений, где установлены компьютеры

Период года Параметр микроклимата Величина
Холодный

Температура воздуха в помещении

Относительная влажность

Скорость движения воздуха

22…24°С

40…60%

до 0,1м/с

Теплый

Температура воздуха в помещении

Относительная влажность

Скорость движения воздуха

23…25°С

40…60%

0,1…0,2м/с


Таблица 4.8. Нормы подачи свежего воздуха в помещения, где расположены ЭВМ

Характеристика помещения Объемный расход подаваемого в помещение свежего воздуха, м3 /на одного человека в час

Объем до 20м3 на человека

20…40м3 на человека

Более 40м3 на человека

Не менее 30

Не менее 20

Естественная вентиляция


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


Уровень шума


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

Эти нарушения вызывают ухудшение эмоционального состояния работников вплоть до стрессовых состояний. Под воздействием шума нарушается концентрация , ослабляются физиологические функции организма, психическое напряжение, вызванное повышенными энергетическими затратами, вызывает появление усталости. В результате этого работоспособность снижается, производительность труда падает. В результате длительного воздействия шума интенсивностью выше 80 дБ(А) может произойти его частичная или полная потеря. Предельные уровни звука, которые безопасны для работников, указаны в таблице 4.3.


Таблица 4.8. Предельные уровни звука (дБ)

Категория напряженности труда Категория тяжести труда

Легкая Средняя Тяжелая Очень тяжелая
Мало напряженный 80 80 75 75
Умеренно напряженный 70 70 65 65
Напряженный 60 60 - -
Очень напряженный 50 50 - -

В соответствии с таблицей уровень шума на рабочих местах математиков-программистов должен быть не более 50дБА

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

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

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

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

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


Таблица 4.8 Уровни звукового давления различных источников

Источник шума Уровень шума, дБ
Жесткий диск 25
Вентилятор 19
Монитор 10
Клавиатура 15
Принтер 40
Сканер 30

Подставив значения из таблицы в формулу общего звукового давления, получим:


L=10·lg(102,5+101,9+101,0+101,5+104,0+103,0)=40,6 дБ


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


Производственные вибрации


Общая вибрация на местах не должна превышать предельно допустимых величин, установленных ГОСТ 12.1.012-90 и СН 3044-84 «Санитарные нормы вибрации рабочих мест» (таблица 4.5).

Требования к уровню вибрации на рабочих местах, оборудованных ПЭВМ:

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


Таблица 4.8. Допустимые нормы вибрации на всех рабочих местах с ЭВМ

Среднегеометрические частоты полос, Гц Допустимые значения

По виброускорению По виброскорости

Мс-2 дБ мс-1 дБ

Оси X,Y
2 5,3х10 25 4,5х10 79
4 5,3х10 25 2,2х10 73
8 5,3х10 25 1,1х10 67
16 1,1х10 31 1,1х10 67
31.5 2,1х10 37 1,1х10 67
63 4,2х10 43 1,1х10 67

Для снижения уровня вибрации в рабочих помещениях ВЦ оборудование можно устанавливать на виброизоляторы.


Эргономические требования к рабочему месту


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

Основные параметры, учитываемые с точки зрения эргономики при проектировании рабочего места оператора ЭВМ:

высота рабочей поверхности

размеры пространства для ног

характеристики кресла

регулировки рабочего места

Основное положение при работе — сидя. В этом положении организация рабочего места должна противодействовать утомлению пользователя.

Нормы, которым должен удовлетворять стол, представлены в таблице 4.6


Таблица 4.8. Параметры стола

Параметр Нормативные значения
Высота рабочей поверхности, мм 680 – 800 для столов с регулируемой высотой, 725 для столов с нерегулируемой высотой
Ширина рабочей поверхности, мм 800, 1000, 1200 или 1400
Глубина рабочей поверхности, мм 800 или 1000
Пространство для ног:
- высота, мм 600
- ширина, мм 500
- глубина на уровне колен, мм 450
- глубина на уровне вытянутых ног, мм 650

Существенное значение имеют характеристики рабочего кресла (таблица 4.7)


Таблица 4.8. Параметры кресла

Расстояние спинки от переднего края сидения, мм Регулируемое в пределах 260-400
Размеры подлокотников, мм Длина не менее 250,ширина 50 - 70

Характеристики экрана:

расстоянием от 0,6 до 0.7м

регулировка по высоте

регулировка наклона

Соотношение яркости фона и символов - 1:2 … 1:15

верхняя часть экрана на уровне глаз или чуть ниже

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

Наклон головы не более чем 20,

плечи расслаблены,

локти согнуты под углом от 80100,

предплечья и кисти — параллельны полу.


Режим труда


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

Требования к продолжительности перерывов представлены в таблице 4.8


Таблица 4.8. Время регламентированных перерывов при работе на компьютере

Категория работы с ВДТ или ПЭВМ Уровень нагрузки за рабочую смену при видах работы с ВДТ Суммарное время регламентиро­ванных перерывов, мин

Группа А, количество знаков Группа Б, количество знаков Группа В, часов При 8-часовой смене При 12-часовой смене
I до 20000 до 15000 до 2,0 30 70
II до 40000 до 30000 до 4,0 50 90
III до 60000 до 40000 до 6,0 70 120

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

Выводы


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

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

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


Заключение


В ходе настоящей дипломной работы разработан компьютерный лабораторный практикум по курсу «Теория оптимизации», в возможности которого входит:

Предоставление обучаемым графической иллюстрации работы методов оптимизации

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

Ведение протокола работы

Работа в локальных сетях и через Интернет

Предоставление справочной информации по запросу

Централизованность программ и данных

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

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

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

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

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

Похожие работы:

  1. Позиционные системы счисления
  2. • "Звезды прелестные" в поэзии Пушкина и его современников
  3. • Меркантилизм и доктрина А. Смита
  4. • Восточные славяне в древности
  5. • Краткий курс истории Московского троллейбуса
  6. • Формування маркетингової стратегії ЗАТ "Оболонь"
  7. • Охрана труда при работе на компьютере
  8. • "Звезды прелестные" в поэзии Пушкина и его современников
  9. • "Звезды прелестные" в поэзии Пушкина и его современников
  10. • Технология HTML
  11. • Публий Теренций Афр
  12. • Решения задачи планирования производства симплекс ...
  13. • Словник слів іншомовного пожодження економічного ...
  14. • Латинский язык: Практические задания для студентов заочного ...
  15. • Основы латинского языка
  16. • Основы здорового образа жизни студента. Физическая культура в ...
  17. • Проект концептуального анализа развития туризма в ...
  18. • Способы отрицания в современном немецком языке
  19. • Исследование уровня безопасности операционной системы Linux
  20. • Changes and specimens of the English language
Смотреть все похожие работы
Рефетека ру refoteka@gmail.com