
на первый
заказ
Курсовая работа на тему: Управления производственными процессами
Купить за 350 руб.Введение
Оптимизация как раздел математики существует достаточно давно. Оптимизация - это выбор, т.е. то, чем постоянно приходиться заниматься в повседневной жизни. Термином "оптимизация" в литературе обозначает процесс или последовательность операций, позволяющих получить уточненное решение. Хотя конечной целью оптимизации является отыскание наилучшего или "оптимального" решения, обычно приходится довольствоваться улучшением известных решений, а не доведением их до совершенства. Поэтому под оптимизацией понимают скорее стремление к совершенству, которое, возможно, и не будет достигнуто.Необходимость принятия наилучших решений так же стара, как само человечество. Испокон веку люди, приступая к осуществлению своих мероприятий, раздумывали над их возможными последствиями и принимали решения, выбирая тем или другим образом зависящие от них параметры - способы организации мероприятий. Но до поры, до времени решения могли приниматься без специального математического анализа, просто на основе опыта и здравого смысла.
Цель данной курсовой работы:
проанализировать и обработать теоретические и экспериментальные данные по теме "Метод наилучшей пробы";
анализ собранной информации;
сравнительный анализ с другими методами;
разработка программы, реализующая данный метод.
Оглавление
- Введение- Методы случайного поиска
- Методы наилучшей пробы
- Адаптивный метод случайного поиска
- Описание алгоритма
- Входные данные
- Блок-схема алгоритма метода Наилучшей пробы
- Описание программной части
- Выбор среды программирования
- Входные и выходные данные
- Описание программы
- Контрольный пример
- Результаты работы программы ЗАКЛЮЧЕНИЕ
- Список используемой литературы
- ПРИЛОЖЕНИЕ А - Руководство пользователя
- ПРИЛОЖЕНИЕ Б - Листинг программы
Список литературы
) Акулич И.Л. Математическое программирование в примерах и задачах: Учеб. пособие. - М.: Высш. шк., 1986.2) Белецкая С.Ю. Решение задач математического программирования: Учеб. пособие. - Воронеж, 2001.
3) Карманов В.Г. Математическое программирование. - М.: Наука, 1975.
4) Методы оптимизации в примерах и задачах: Учеб. пособ. А.В.Пантелеев, Т.А.Летова - 2-е изд., исправл. - М.:Высш. Шк., 2005. - 544с.
ПРИЛОЖЕНИЕ А
При запуске программы, для реализации решения "Метода наилучшей пробы" откроется окно, как представлено на рисунке А.1.
Рисунок А.1 - Главное окно программы
Если пользователь не введет ни одного значения, то появится ошибка, как показано на рисунке А.2.
Рисунок А.2 - Ошибка
Также если пользователь введет не все значения, то появится сообщение об ошибке, как показано на рисунке А.3.
Рисунок А.3 - Ошибка пустого поля
В случаи ввода коэффициента сжатия В<0 либо В>1, то появится сообщение об ошибки, как показано на рисунке А.4.
Рисунок А.4 - Ошибка ввода значения
При нажатии кнопки "Решить функцию" в окне richTextBox будет выведено решение "Метода наилучшей пробы" рисунок А.5.
Рисунок А.5 - Пример работы программы
Если необходимо очистить главные поля для ввода, а так же поле с решением данного алгоритма, можно воспользоваться кнопкой "Очистить главные поля" показанное на рисунке А.6, панели главного меню во вкладке "Меню".
Рисунок А.6 - Пункт меню программы "Очистить главные поля"
Для просмотра алгоритма "Метода наилучшей пробы" необходимо нажать "Справка" и в открывшейся вкладке выбрать "Алгоритм". На экране появится новое окно с алгоритмом метода.
Рисунок А.7 - Окно "Алгоритм"
Для просмотра информации об авторе, достаточно нажать "Справка" и в открывшейся вкладке выбрать "Об авторе".
Рисунок А.8 - Окно "Об авторе"
Для выхода из программы необходимо нажать кнопку "Меню" и в появившейся вкладке выбрать "Выход".
ПРИЛОЖЕНИЕ Б
Листинг программы
{.Show("Введите данные!!!", "Ошибка", MessageBoxButtons.ОК, MessageBoxI con.Error);
{.Show("Коэффициент сжатия должен быть в приделах: 0<В<1", "Ошибка", Message BoxButtons.ОК, MessageBoxIcon.Error);
{.Show("Не все поля были заполнены!!!", "Ошибка", MessageBoxButtons.ОК, MessageBoxIcon.Error);
{В = Convert.ToDouble(textBox1.Text);R = Convert.ToDouble(textBox4.Text);t = Convert.ToDouble(textBox3.Text);М = 3;N = Convert.ToInt32(textBox5.Text);kol = 0;j = 1;[] x = { 1, 2 };[] y1 = new double[2];[] y2 = new double[2];[] y3 = new double[2];[] ym = new double[2];X=0;Y1=0;Y2=0;Y3=0;Ym=0;kor1 = 0;kor2 = 0;kor3 = 0;("x0=(" + x[0] + ";" + x[1] + ")");("В=" + В);("М=" + М);("R=" + R);("N=" + N);("Положить к=0, j=1");[] v1 = new double[2];[] v2 = new double[2];[] v3 = new double[2];n = 0;:(n == 10)
AText("2)\nСлучайные вектора равны:");
kor1 = Math.Sqrt((Math.Pow(v1[0], 2) + Math.Pow(v1[1], 2)));//Вычесление длинны вектора
y1[0] = x[0] + t * (v1[0] / kor1);[1] = x[1] + t * (v1[1] / kor1);("Вектор 1=(" + v1[0] + ";" + v1[1] + ")");= Math.Sqrt((Math.Pow(v2[0], 2) + Math.Pow(v2[1], 2)));//Вычесление длинны вектора[0] = x[0] + t * (v2[0] / kor2);[1] = x[1] + t * (v2[1] / kor2);("Вектор 2=(" + v2[0] + ";" + v2[1] + ")");= Math.Sqrt((Math.Pow(v3[0], 2) + Math.Pow(v3[1], 2)));//Вычесление длинны вектора[0] = x[0] + t * (v3[0] / kor3);[1] = x[1] + t * (v3[1] / kor3);("Вектор 3=(" + v3[0] + ";" + v3[1] + ")");("3)\ny1=(" + y1[0] + ";" + y1[1] + ")");("y2=(" + y2[0] + ";" + y2[1] + ")");("y3=(" + y3[0] + ";" + y3[1] + ")");= Math.Round(Func(x[0], x[1]), 3);= Math.Round(Func(y1[0], y1[1]), 3);= Math.Round(Func(y2[0], y2[1]), 3);= Math.Round(Func(y3[0], y3[1]), 3);("f(y1)=" + Y1);("f(y2)=" + Y2);("f(y3)=" + Y3);(Y1 < Y2 && Y1 < Y3)
{("4)\nf(y)=" + Ym + "< f(x)=" + X + " Шаг удачный");.CopyTo(x, 0);//xк+1=ym++;("Проверяем условие окончания:");
{("к < N");= 1;Р;
{("к = N");("Поиск завершен\nх*=(" + x[0] + ";" + x[1] + ")\nF(x*)=" + Ym + "\nВсего итераций:" + kol);.Abort();
{("5)f(y)=" + Ym + ">= f(x)=" + X +"Шаг неудачный \nПроверяем условие окончания");(t <= R)
{("t <= R");("Поиск завершен\nх*=(" + x[0] + ";" + x[1] + ")\nF(x*)=" + Ym + "\nВсего итераций:" + kol);
{("t > R");= В * t;= 1;Р;
//Выходvoid Exit_Click(object sender, EventArgs е)
}void очиститьПоляToolStripMenuItem_Click(object sender, EventArgs е)
}void выходToolStripMenuItem_Click(object sender, EventArgs е)
}void алгоритмToolStripMenuItem_Click(object sender, EventArgs е)
}void обАвтореToolStripMenuItem_Click(object sender, EventArgs е)
или зарегистрироваться
в сервисе
удобным
способом
вы получите ссылку
на скачивание
к нам за прошлый год