В статье рассматривается процесс решения задач линейного и целочисленного программирования в среде Scilab. Автор описывает теоретические основы оптимизации, структуру функции linpro и особенности работы с расширением quapro-1.0. Приведены примеры постановки задачи, листинги кода для настройки среды и реализации алгоритма, а также анализ полученных результатов. Материал будет полезен студентам и специалистам, использующим Scilab для решения экстремальных математических задач.
РЕШЕНИЕ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ В СИСТЕМЕ КОМПЬТЕРНОЙ МАТЕМАТИКИ SCILAB
Студент Старкова Е.В., научный руководитель к.т.н. Топольский Д.В.
В системе компьютерной математики Scilab решаются различные виды задач, в том числе и задачи оптимизации. Оптимизацией называют процесс выбора наилучшего варианта из всех возможных.
В данном случае, рассматривается задача целочисленного программирования. Целочисленное программирование – раздел математического программирования, в котором на все или некоторые переменные дополнительно накладываются ограничение целочисленности. Простейший метод решения задачи целочисленного программирования – сведение ее к задаче линейного программирования с проверкой результата на целочисленность. В свою очередь, линейное программирование – область математического программирования, посвященная теории и методам решения экстремальных задач, характеризующихся линейной зависимостью между переменными.
Постановка задачи: Найти значения переменных x1, x2, x3, x4, при которых функция цели достигает своего максимального значения, и удовлетворяются ограничения:
(1)
(1)
Решение:
(2)
(2)Для решения задач линейного программирования в Scilab предназначена функция linpro следующей структуры:
Здесь с – массив (вектор-столбец) коэффициентов при неизвестных функции цели, длина вектора n совпадает с количеством неизвестных x.
А – матрица при неизвестных из левой части системы ограничений, количество строк матрицы равно количеству ограничений m, а количество столбцов совпадает с количеством неизвестных n.
b – массив (вектор-столбец), содержащий свободные члены системы ограничений, длина вектора m.
ci – массив (вектор-столбец) размерности n, содержащий нижнюю границу переменных (cij ≤ xj); если таковая отсутствует, указывают [].
cs – массив (вектор-столбец) длиной n, содержит верхнюю границу переменных (csj ≥ xj); если таковая отсутствует, указывают [].
k – целочисленная переменная, используется, если в систему ограничений кроме неравенств входят и равенства, в матрице они будут находиться в k первых строках, оставшиеся l строк займут неравенства, т.е. m = k+l.
x0 – вектор-столбец начальных приближений длиной n.
Функция linpro возвращает массив неизвестных x, минимальное значение функции f и массив множителей Лагранжа kl.
При решении данной задачи возникают проблемы именно с реализацией функции linpro. Изучение состояния вопроса показало, что для использования этой функции в версии программы Scilab 5.1.1 нужно дополнительное расширение — quapro-1.0. При правильной загрузке данного расширения в окне программы появляется данный текст:
Листинг 1 Правильная загрузка расширения quapro-1.0
Startup execution:
loading initial environment
Start quapro toolbox
Load macros
Load gateways
Load help
Выполнение завершено.
Программа готова к решению поставленной задачи. Приступим к реализации исходной задачи.
Листинг 2 Решение задачи
—>C= [1,-5,4,0;
—> 1,-2,-3,0;
—> 1,6,5,0;
—> 0,1,1,0];
—>b=[5;4;4;1];
—>p=[1;1;3;-1];
—>ci=[0;0;0;0];
—>cs=[0;0;0;0];
—>[x,lagr,f]=linpro(p,C,b,ci,cs)
Листинг 3 Результаты решения задачи
f =
0.
lagr =
— 1.
— 1.
— 3.
1.
0.
0.
0.
0.
x =
0.
0.
0.
0.
Вывод: Получается, что только при всех нулевых значениях x функция цели принимает максимальное значение, удовлетворяя при этом заданным условиям.
или напишите нам прямо сейчас:
Требуется пройти тест по немецкому языку в личном кабинете Синергия
Антон, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Здравствуйте можете выполнить практическую здание, информационные технология на транспорте для заочного обучения могу скинуть личный кабинет.
Владимир, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Ищу помощь с выполнением проекта по обж на тему: Первая помощь при различных видах кровотечений во время работы с острыми кромками вращающихся частей машин и механизмов.
Екатерина, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Прошу помочь написать выпускную квалификационную работу + 2 отчета к ней
Петя, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Нужен ответ на Практическое задание на тему «Процесс защиты персональных данных в кадровой службе»
Оля, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Учебная и производственная практика для колледжа МФЮА
Надежда, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Вступительные дистанционные тесты в мти. Русский, история, обществознание
Мария, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Практическое занятия 1 __Тема:Логистики как наука и сфера профессиональнной деятельности. __Практическое занятия 2__Тема 2.Анализ полной стоимости в логистики.
Сергей, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Помощь в написании пояснительной записки
Дмитрий, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Выполнить 4 практических задания по дисциплине Технические средства управления офисом
Александр, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Колледж развития инновационных технологий__Сдать сессию 38.01.02 Продавец, контролер-кассир
Валентина, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Очень много Долгов надо сделать за 5 дней все
Галина, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Требуется выполнение работы (преддипломная практика) ДЛя уточнения информации прошу обратной связи по почте
Аня, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Курсовая на тему ПЕРСОНАЛ ПРЕДПРИЯТИЯ И ПУТИ ПОВЫШЕНИЯ ЭФФЕКТИВНСТИ ИСПОЛЬЗОВАНИЯ РАБОЧЕЙ СИЛЫ
Евгений, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
У меня есть готовая курсовая, в которой препод придрался к одной короткой главе с непонятными требованиями на счет DFD и IDEF0 нотаций, мне нужно поправить только эту главу (там буквально полторы странички) Направление Прикладная информатика
Роман, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Ответы на тесты с темы детско-родительские отношения, конфликты…. и до финального теста
Ксения, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Решение теста Правовые основы оперативно-розыскной деятельности
Кирилл, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Курсовая работа по предмету Архитектура гражданских и промышленных зданий, на тему Индивидуальный жилой дом коттедж (вариант 1)
Андрей, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Дипломная работа на тему Аптечный ассортимент: особенности сезонных колебаний
Катя, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Добрый день. Подскажите стоимость теста на время дистанционно по дисциплине сопротивление материалов. 40 минут 11-15вопросов.
Алена, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!
Практические задания по дисциплинам. Специальность Историко-культурный туризм.
Арсений, здравствуйте! Поможем с подготовкой материалов для Вашего учебного проекта. Прошу Вас прислать подробное задание (методичка, заданий от кафедры, бланки, комментарии — всё, что есть) на почту 3227505@mail.ru. Я посмотрю и напишу Вам ответ на почту в самые сжатые сроки. Спасибо!