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

Назначение онлайн-сервиса "CADoptimizer". Этапы разработки программного модуля случайного поиска. Автоматизация процесса проектирования на основе методов оптимизации. Алгоритм метода ненаправленного случайного поиска (Монте-Карло) и его реализация.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 02.04.2016
Размер файла 1,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

А. Специальная часть

1. Введение

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

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

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

2.1 Назначение и структура онлайн-сервиса

По заданию на дипломный проект я участвовал в создании системы, которая позволяет определить оптимальные параметры для заданной пользователем математической модели. В мои задачи входила разработка двух программных модулей для этой системы. Один из модулей отвечает за работу математической модели пользователя, другой - реализует метод случайного поиска минимума целевой функции. Структура комплекса “CADoptimizer” представлена на рисунке 1.

2.1.1 Назначение онлайн-сервиса “CADoptimizer”

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

2.1.2 Цели создания сервиса

- Уменьшение временных затрат на проектирование объектов / процессов;

- Получение наиболее оптимальных параметров для объекта проектирования;

- Повышение точности вычислений.

2.1.3 Преимущества сервиса “CADoptimizer” перед аналогичными решениями

- Возможность оптимизации характеристик любого объекта или процесса, заданного в виде математической модели;

- Снижение требований к устройству пользователя за счет серверных вычислений (требуется только наличие доступа к интернету);

- Отсутствие необходимости установки прикладного программного обеспечения устройство пользователя (требуется только веб-браузер);

- Использование учетных записей пользователей для сохранения данных о процессе проектирования на сервере.

2.1.4 Структура и работа комплекса

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

- Пользовательский интерфейс;

- Математическая модель;

- Библиотека критериев;

- Случайный поиск;

- Прямой и градиентный поиск.

Пользовательский интерфейс.

- Ввод/вывод математической модели;

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

- Выбор из библиотеки и создание критериев для выходных параметров;

- Ввод параметров для работы модулей комплекса;

- Вывод результатов поиска;

- Регистрация и аутентификация пользователей;

Математическая модель.

- Создание внутренней подпрограммы на основе введенной пользователем информации;

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

Библиотека критериев.

- Выбор пользователем частных критериев оптимальности из библиотеки;

- Подключение пользовательских критериев в библиотеке;

- Расчет весовых коэффициентов критериев в зависимости от выбранного пользователем типа;

- Формирование целевой функции на основе выбранных критериев и установленных значений весовых коэффициентов;

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

Случайный поиск.

- Формирование массива векторов входных параметров удовлетворяющих ограничениям пользователя;

- Ранжирование сформированного массива по минимальному значению целевой функции;

- Вывод заданного пользователем количества наилучших результатов поиска;

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

Прямой и градиентный поиск.

- Поиск оптимальных входных параметров на основе выбранного пользователем метода;

- Вывод наилучшего результата поиска.

На рисунке 1 показано, как взаимодействуют модули разработанного комплекса. Разработанные мной модули выделены темно-серым цветом. Комплекс работает на удаленном сервере и доступен, как веб-сайт в интернете.

2.2 Техническое задание на дипломное проектирование

1. Разработать программный модуль случайного поиска, реализующий следующие функции:

- Прием списка входных параметров и их ограничений;

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

- Ранжирование массива по значению целевой функции;

- Вывод заданного пользователем количества наилучших результатов поиска;

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

2. Разработать программный модуль математической модели, реализующий следующие функции:

- Создание внутренней подпрограммы на основе введенной пользователем информации;

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

2.3 Этапы разработки

1. Исследование объекта проектирования - 28 февраля 2013г

2. Анализ методов прямого и градиентного поиска - 20 марта 2013г

3. Создание модулей, реализующих математическую модель пользователя и метод случайного поиска - 11 апреля 2013г

4. Создание модуля, реализующего методы градиентного поиска - 25 апреля 2013г

5. Отладка программных модулей - 10 мая 2013г

6. Оформление дипломного проекта - 20 мая 2013г

2.4 Порядок сдачи программы

Согласно ГОСТ 19301-79 ЕСПД "Порядок и методика испытаний, тестирования. Требования к содержанию и оформлению".

3. Автоматизация процесса проектирования на основе методов оптимизации

3.1 Процессы и этапы проектирования

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

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

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

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

Объект автоматизации проектирования - это действия работника, которые он совершает во время процесса проектирования. А то, что проектируется работником, называется объектом проектирования. Поэтому не стоит путать понятия объекта автоматизации проектирования и объекта проектирования.

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

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

- уменьшение временных затрат на проектирование и внедрение;

- сокращение количества ошибок;

- возможность изменения проектных решений;

- уменьшение временных затрат на тестирование.

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

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

На рисунке 2 представлена схема процессов проектирования, которая наглядно показывает, из каких процессов состоит проектирование.

Рисунок 2 «Схема процессов проектирования»

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

Обычно проектирование сложных технических систем делится следующие стадии:

- техническое задание на проектируемый объект;

- научно-исследовательская работа;

- эскизный проект;

- технический проект;

- рабочий проект;

- технология изготовления и испытания спроектированного объекта, внесения коррекции.

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

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

Этап НИР можно разделить на 3 стадии:

- предпроектные исследования;

- техническое задание;

- техническое предложение.

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

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

На стадии НИР решаются следующие задачи:

- Составление списка критериев качества и управления;

- Управление научным экспериментом;

- Пассивное или активное экспериментирование и обработка полученных результатов;

- Формирование математических моделей и их идентификация по данным экспериментов;

- Отработка технологических процессов изготовления объектов РЭС с целью поиска норм на параметры, обеспечивающих оптимальные выходные показатели качества;

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

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

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

- Разработка новых технических средств, в том числе средств контроля и измерений. [2]

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

3.2 Оптимизация

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

Задачами параметрической оптимизации являются:

1. Нахождение наиболее оптимальных значений параметров.

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

3. Параметрическая идентификация (уточнение параметров в модели блока объекта проектирования на основе данных испытания).

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

Проектные параметры - это независимые переменные параметры, которыми однозначно определяется задача проектирования.

x = (x1, ... , xn )T ,

где - одна из характеристик объекта.

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

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

Свойства, которые характеризуют количественные значения показателей объекта проектирования, называются характеристиками:

Математической моделью объекта оптимизации будем называть отображение между множествами параметров:

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

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

- Внутренние параметры, которые оказывают слабое влияние на техническую характеристику, не учитываются;

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

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

Целевая функция - это выражение, к минимуму или максимуму значения которого стремится человек, проектирующий объект. С помощью вычисления значения целевой функции становится возможным количественное сравнение двух решений. С математической точки зрения целевая функция является описанием некоторой (n+1)-мерной поверхности. Ее значение зависит от проектных параметров. Наиболее частыми примерами целевой функции, которые встречаются в инженерной практике, являются вес, прочность, габариты, стоимость, КПД.

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

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

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

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

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

Для того чтобы решить задачу оптимизации, требуется:

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

- выбрать критерий (критерии) оптимальности и составить целевую функцию;

- наложить на параметры возможные ограничения;

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

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

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

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

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

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

Постановка задачи может быть представлена следующим образом:

Нахождение решения задач многокритериальной оптимизации сводится к нахождению экстремума некоторой скалярной целевой функции F(Q), к которой тем или иным способом сводится векторная функция Ф(Q), на множестве параметров Q:

найти min F(Q),

Qmin ? Q ? Qmax при G(Q) ? 0,

где F(Q) У[Ф(Q)] - скалярная целевая функция;

У - оператор преобразования;

G(Q) - вектор ограничений, возникающий при сведении векторной функции в скалярную.

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

Причины, по которым возникают многокритериальные задачи:

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

где предельное значение i?го технического требования.

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

Здесь w ? весовой коэффициент, отвечающий за важность i-го ограничения:

Так решение системы неравенств сводится к решению задачи векторной оптимизации:

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

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

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

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

3. При постановке задачи оптимального проектирования один из главных вопросов - это вопрос о выборе критерия оптимальности Q (). С одной стороны, критерий должен обладать определенным физическим смыслом, а с другой - требуется, чтобы этот критерий как можно более полно описывал проектируемый объект. Однако вопрос о функциональной полноте сложно решить с помощью лишь одного скалярного показателя, в виду того, что он обычно описывает какое-либо конкретное свойство проектируемого объекта. Таким образом, приходится рассматривать совокупность показателей (Q1…Qs), каждый из которых имеет наглядную физическую интерпретацию и дает возможность оценить качество оптимального решения с различных точек зрения.

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

где Dx - допустимая область работоспособности схемы, Q1(- нагрузочная способность; Q2(, Q3( - статическая помехоустойчивость в закрытом состоянии к отпирающей по напряжению помехе и к запирающей по току, действующей в открытой схеме, соответственно, Q4(- рассеиваемая мощность, Q5(- среднее время задержки сигнала. Оптимальный вариант логической схемы обязан иметь экстремумы значений для каждого из частных критериев (Q1,...Qs).

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

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

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

Вывод

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

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

1. Структура и назначение разработанных модулей

1.1 Модуль случайного поиска

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

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

В качества алгоритма был выбран метод ненаправленного случайного поиска (Метод Монте-Карло). В основе метода лежит следующий итерационный процесс:

где бk - величина шага, о = (о1,..., оn) - одна из реализаций n-мерного случайного вектора о.

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

1.1.2 Реализация метода случайного поиска в рамках комплекса “CADoptimizer”

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

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

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

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

- Получение из библиотеки критериев массива значений целевых функций и запись их в общий массив (вместе с соответствующими векторами входных и выходных параметров);

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

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

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

1.2 Модуль математической модели

1.2.1 Математическая модель

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

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

1.2.2 Реализация математической модели в рамках комплекса “CADoptimizer”

В комплексе “CADoptimizer” математическая модель представляет собой отдельный модуль, который выполняет две основные функции:

- Формирование внутренней подпрограммы из введенной пользователем информации (списка входных и выходных параметров и уравнений связей между ними);

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

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

Пример такой структуры изображен на рисунке 4. Она состоит из 4-х основных частей:

- Список входных параметров;

- Список выходных характеристик;

- Код подпрограммы (уравнения математической модели);

- Дополнительные данные о модели (имя, описание и т.д.).

Рисунок 3 «Функция математической модели пользователя»

Рисунок 4 «Пример структуры математической модели»

1.2.3 Требования к математической модели пользователя

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

- Имена всех параметров математической модели (и входящих, и выходящих) не должны совпадать между собой;

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

- Код подпрограммы должен быть написан на языке PHP (необходимые инструкции находятся на сайте сервиса в разделе «Помощь»).

2. Технические средства

2.1 Используемые языки программирования и технологии

2.1.1 HTML

HTML (HyperText Markup Language) - язык разметки (маркировки) гипертекста. Не стоит путать HTML с языками программирования, т.к. он был создан именно для разметки веб-страниц. Не что иное, как язык разметки, передает браузеру необходимые инструкции по отображению текстов и других элементов страницы на мониторе. Стоит помнить, что не только различные браузеры, но их разные версии могут воспринимать и отображать на экране HTML-код по-разному.

Язык HTML был разработан приблизительно в 1986--1991 годах в Европейском Центре ядерных исследований в Женеве (Швейцария). Изначально HTML разрабатывался как язык для обмена технической и научной документацией, подходящий для использования людьми, не являющимися специалистами в вопросах вёрстки. HTML мог успешно справляться с проблемами сложности SGML с помощью определения небольшого набора структурных и семантических элементов -- дескрипторов. Дескрипторы обычно называют «тегами». При помощи HTML можно довольно просто и быстро создать относительно несложный, но прилично оформленный документ. Помимо упрощения структуры документа, в HTML присутствует поддержка гипертекста. Мультимедийная функциональность была добавлена позднее.

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

2.1.2 CSS

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

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

CSS -- это одна из технологий, которые были одобрены консорциумом W3C и получили общее название «стандарты Web». В 1990-х годах был поднят вопрос о стандартизации Web-технологий, создании каких-то единых правил, по которым веб-дизайнеры и программисты проектировали бы свои сайты. Так возникли языки HTML 4.01 и XHTML, и формальный язык CSS.

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

2.1.3 Javascript

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

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

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

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

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

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

2.1.4 PHP

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

Аббревиатура PHP означает “Hypertext Preprocessor (Препроцессор Гипертекста)". Синтаксис языка берет начало из C, Java и Perl. Преимуществом PHP является то, что он дает веб-разработчикам возможность быстро создавать динамически генерируемые веб-страницы.

Большим достоинством языка PHP в отличие от таких языков, как Perl и C, является возможность создания HTML документов с внедренными командами PHP.

В отличие от какого-либо кода, обрабатывающегося на клиентской стороне, например, JavaScript, PHP-скрипты выполняются на сервере.

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

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

Возможности языка PHP огромны. Главным образом, область применения PHP сосредоточена на написании скриптов, которые выполняются на стороне сервера; т.е. PHP способен делать всё то, что делает любая другая программа CGI(обрабатывать информацию из форм, создавать динамические страницы, отправлять и принимать cookies). Однако PHP позволяет решать и множество других задач.

Существуют три основных области, где используется PHP:

- Написание скриптов, выполняющихся на стороне сервера;

- Написание скриптов, выполняющихся в командной строке;

- Разработка приложений GUI, которые выполняются на стороне клиента.

PHP работает с большинством операционных систем, такими как Microsoft Windows, Linux, большинство модификаций Unix (такие, как HP-UX, Solaris и OpenBSD), Mac OS X, RISC OS, и многие другие. Также в PHP есть поддержка всех основных современных веб-серверов, например Microsoft Internet Information Server, Personal Web Server, Apache, серверов Netscape и iPlanet, серверов Oreilly Website Pro, Caudium, Xitami, OmniHTTPd и множества других. Для большей части серверов PHP поставляется в виде модуля, для других серверов, котрые поддерживают стандарт CGI, PHP может функционировать в качестве процессора CGI.

PHP способен выдавать не только. Возможности PHP включают формирование файлов PDF, изображений, и даже роликов Flash (с использованием libswf и Ming), создаваемых "на лету". Он также может выдавать различные текстовые данные, такие, как XHTML и другие XML-файлы и осуществлять автоматическую генерацию таких файлов и сохранять их в файловой системе сервера, не отдавая клиенту, организуя, таким образом, кэш динамического содержания, который находится на стороне сервера.

Одним из главных достоинств PHP является поддержка большинства баз данных. Текущая версия PHP поддерживает такие базы данных, как Direct MS-SQL, Sybase, Adabas D, Ingres, Oracle (OCI7 и OCI8),Empress, FrontBase, PostgreSQL, FilePro (только чтение), mSQL, Solid, Hyperwave, IBM DB2, MySQL, Velocis, Informix, ODBC, dBase, InterBase, Ovrimos, Unix dbm.

Языком PHP также поддерживается связь с другими сервисами с помощью таких протоколов, как LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (на платформах Windows) и многих других.

Немаловажной является поддержка различных расширений, реализующих функции поисковой машины mnoGoSearch, функции IRC Gateway, функции для работы со сжатыми файлами (gzip, bz2), функции календарных вычислений, функции перевода и многое другое. [6]

2.1.5 Apache

Apache HTTP-сервер - это бесплатный веб-сервер. Apache - это кроссплатформенное программное обеспечение, которое поддерживает большинство операционных систем, таких как Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS.

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

Apache HTTP Server поддерживает модульность. На данный момент есть более 500 модулей, выполняющих различные функции. Эти модули могут быть как включенными в состав сервера в момент компиляции, так и загруженными динамически, через директивы конфигурационного файла. В этих модулях могут быть реализованы такие функции, как:

- Поддержка языков программирования;

- Добавление различных функций;

- Исправление ошибок или изменение основных функций;

- Усиление секьюрности данных.

Apache обладает различными средствами обеспечения безопасности и разграничения доступа к данным. Основными механизмами являются следующие:

- Ограничение доступа к каким-либо файлам или папкам;

- Механизм авторизации пользователей для доступа к директории на основе HTTP-аутентификации (mod_auth_basic) и digest-аутентификации (mod_auth_digest);

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

- Запрет доступа к каким-либо типам файлов для всех или для определенной части пользователей, например? запрет доступа к файлам настроек и файлам СУБД;

2.2 Используемое программное обеспечение

2.2.1 Notepad++

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

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

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

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

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

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

2.2.2 phpDesigner

phpDesigner - многофункциональный программный пакет, который позволяет создавать, редактировать, отлаживать, анализировать и публиковать веб-страницы и приложения на языке PHP (и не только). Данный программный пакет примечателен тем, что кроме PHP в нем реализована поддержка HTML, MySQL, XML, CSS, JavaScript, VBScript, JAVA, C, Python и Ruby. За счет поддержки автоматической подсветки кода, редактор phpDesigner хорошо подходит WAMP/LAMP- и AJAX-разработчикам. Помимо этого программа содержит полезные библиотеки, включающие в себя более 3000 функций, доступ к которым довольно просто осуществляется в ходе написания программного кода.

Основные функции программы phpDesigner:

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

- Проверка синтаксиса для таких языков, как PHP, HTML и CSS;

- Завершение кода автоматически для JavaScript, PHP, HTML и CSS;

- Поддержка наиболее популярных JavaScript-библиотек (JQuery, Ext JS, Dojo, MooTools, Prototype и YUI);

- Система подсказок для JavaScript и PHP;

- Инспектор HTML-кода;

- Обозреватель кода для JavaScript, PHP и CSS;

- Переход к любому объявлению JavaScript, PHP и CSS;

- Профилирование и отладка PHP-скриптов при помощи Xdebug;

- Поддержка TortoiseSVN, FTP и SFTP;

- Простая и удобная навигация по объектам кода;

- Встроенные помощники;

Данное ПО использовалось для долгой работы со всеми файлами проекта.

2.2.3 Denwer

Название Денвер (аббревиатура «Д.н.w.р») расшифровывается, как «Джентльменский набор Web-разработчика». Он представляет собой локальный сервер (Apache, PHP, MySQL, Perl и т.д.) и программную оболочку, которые используются веб-разработчиками для создания и отладки сайтов на локальном компьютере с установленной ОС Windows без необходимости доступа к интернету. Основное преимущество Денвера -- это простота и удобство удаленной работы сразу над несколькими различными проектами и возможность размещения веб-сервера на flash-накопителе.

В базовый пакет Денвер входят:

- Установщик (также поддерживается установка на flash-накопитель);

- Apache, mod_rewrite, mod_php, SSL, SSI;

- PHP5 с поддержкой MySQL, sqLite, GD;

- MySQL5 с поддержкой транзакций;

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

- Система запуска, завершения и перезагрузки всех компонентов Денвера;

- Система управления базами MySQL при помощи веб-интерфейса - phpMyAdmin;

- Эмулятор SMTP-сервера и sendmail.

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

программный модуль поиск онлайн

Вывод

В главе было приведено понятие математической модели и описана её реализация в рамках онлайн-сервиса “CADoptimizer”. Также был рассмотрен алгоритм метода ненаправленного случайного поиска (метод Монте-Карло) и его программная реализация, как модуля для онлайн-сервиса.

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

В. Охрана труда

1. Основные понятия

В Трудовом кодексе Российской Федерации (глава 33, статья 209) определены следующие понятия, связанные с охраной труда:

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

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

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

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

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

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

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

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

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

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

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

2. Безопасность труда при работе с ЭВМ

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

В ГОСТ 12.0.003-74 (99) “ССБТ. Опасные и вредные производственные факторы. Классификация” приведены следующие вредные и опасные факторы при работе с персональным компьютером:

- повышенная температура поверхностей ПК;

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

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

- повышенная или пониженная влажность воздуха;

- повышенный или пониженный уровень отрицательных и положительных аэроионов;

- повышенное значение напряжения в электрической цепи, замыкание;

- повышенный уровень статического электричества;

- повышенный уровень электромагнитных излучений;

- повышенная напряженность электрического поля;

- отсутствие или недостаток естественного света;

- недостаточная искусственная освещенность рабочей зоны;

- повышенная яркость света;

- повышенная контрастность;

- зрительное напряжение;

- монотонность трудового процесса;

- нервно-эмоциональные перегрузки.

Конфигурация моего компьютеризированного рабочего места:

1. Системный блок, содержащий следующие устройства:

- Процессор Intel Core 2 Duo E8500, 3166 МГц;

- ОЗУ DDR2 4096 Мб 800 МГц;

- жестких диска емкостью 150 Гб и 500 Гб;

- Видеоплата ATI RadeonHD 4870;

- Блок питания 600 Вт;

2. Монитор Samsung SyncMaster T200 (20”):

- Разрешение 1680х1050 пикселей;

- яркость - 300 кд/м2;

- частота вертикальной развертки - 56-60 Гц;

- частота горизонтальной развертки - 30-81 кГц;

3. МФУ Epson Stylus Photo RX640;

4. Устройства ввода-вывода.

3. Методы и средства защиты от воздействия опасных и вредных факторов при работе с ЭВМ

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

- Средства защиты от удара электрическим током в результате прикосновения к металлическим нетоковедущим частям, оказавшимся под напряжением из-за повреждения изоляции (ГОСТ 12.1.019-96): защитное заземление, система защитных проводов, зануление, защитное отключение, компенсация токов замыкания на землю, изоляция нетоковедущих частей, контроль изоляции, электрическое разделение сети, средства индивидуальной защиты;

- Средства защиты от поражения статическим электричеством (ГОСТ 12.4.124-83): заземляющие устройства, анти-электростатические вещества, увлажняющие устройства, экранирующие устройства, нейтрализаторы, средства индивидуальной защиты;

- Методы защиты от электромагнитных излучений (на основе СанПиН 2.2.4/2.1.8.055-96): время работы - не более 4 часов, расстояние до пользователя - не менее 50 см от источника, экранирование источников ЭМИ или рабочих мест при помощи отражающих или поглощающих экранов, отсутствие других рабочих мест в радиусе 1.2 м, использование средств индивидуальной защиты, проведение лечебно-профилактических мероприятий.

4. Освещенность рабочего места

...

Подобные документы

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

    курсовая работа [2,8 M], добавлен 22.01.2015

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

    магистерская работа [4,9 M], добавлен 27.06.2014

  • Алгоритмы поиска динамических шумов и их компенсации на основе метода Motion estimation. Разработка программного продукта для детектирования движения капель дождя и их удаления на видеопоследовательностях, и его реализация среде Microsoft Visual Studio.

    магистерская работа [6,6 M], добавлен 09.02.2013

  • Назначение и классификация методов поисковой оптимизации. Эффективность поискового метода. Методы поиска нулевого порядка: исходные данные, условия, недостатки и применение. Структура градиентного метода поиска. Основная идея метода наискорейшего спуска.

    лекция [137,8 K], добавлен 04.03.2009

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

    презентация [377,0 K], добавлен 30.10.2013

  • Теоретические сведения об алгоритмах поиска подстроки в строке. Глобализация информации в сети Internet. Интеллектуальный поиск. Алгоритм последовательного (прямого) поиска, Рабина и их применение. Анализ алгоритмов. Реализация программного кода.

    курсовая работа [230,8 K], добавлен 12.02.2009

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

    автореферат [296,5 K], добавлен 31.01.2012

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

    курсовая работа [708,8 K], добавлен 25.12.2008

  • Характеристика основных методов для решения различных задач с помощью случайных последовательностей. Реализация и проверка эффективности метода Монте-Карло при его применении на различных примерах. Алгоритм метода имитации. Издержки неопределенности.

    курсовая работа [98,9 K], добавлен 04.05.2014

  • Методика моделирования случайного процесса по заданной корреляционной функции и математическому ожиданию с использованием MatLab. Вычисление передаточной функций формирующего фильтра. Реализация случайного процесса. Значения корреляционной функции.

    контрольная работа [1012,0 K], добавлен 23.12.2012

  • Эвристические и теоретические методы прямого поиска. Алгоритм поиска значения по симплексу и по образцу. Основная идея метода сопряженных направлений Пауэлла. Ознакомление с преимуществами и недостатками методов безусловной многопараметровой оптимизации.

    презентация [862,9 K], добавлен 30.10.2013

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

    отчет по практике [444,8 K], добавлен 17.06.2012

  • Нахождение стационарной точки. Расчет безусловного экстремума функции методами прямого поиска. Графическое пояснение метода равномерного симплекса. Метод поиска Хука-Дживса. Метод сопряженных направлений Пауэлла. Разработка программного модуля расчетов.

    курсовая работа [1,4 M], добавлен 16.09.2012

  • Принцип метода случайного поиска. Методы наилучшей пробы и его результаты. Блок-схема алгоритма метода наилучшей пробы. Выбор среды программирования, входные и выходные данные, описание программы и результаты её работы. Использование в работе языка C#.

    курсовая работа [812,8 K], добавлен 14.06.2012

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

    дипломная работа [1,1 M], добавлен 21.09.2016

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

    реферат [717,1 K], добавлен 15.07.2012

  • Обоснование выбора языка программирования. Описание разработки структуры программы. Спецификация переменных и процедур. Руководство оператора, словесный алгоритм. Состав информационной системы поиска квартир и характеристика её программных интерфейсов.

    отчет по практике [2,2 M], добавлен 15.09.2014

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

    курсовая работа [684,8 K], добавлен 05.04.2015

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

    курсовая работа [384,0 K], добавлен 10.01.2015

  • Основы метода Монте-Карло и его применение. Разработка и тестирование программного модуля для ПК BRAND, позволяющего строить двумерные и трехмерные изображения для сложных геометрических объектов для обеспечения контроля за качеством сборки конструкций.

    дипломная работа [5,2 M], добавлен 10.10.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.