В марте 2022 ключевые зарубежные поставщики объявили об уходе с российского рынка. Среди них оказались американские программы-солверы. Из-за этого бизнес оказался в непростой ситуации выбора: пользоваться опенсорсными решениями или вообще отказаться от солверов. Разберемся, что это такое и как лучше поступать в сложившихся обстоятельствах.
Что такое солверы и где их используют
Солвер – это программно-аппаратный комплекс, с помощью которого можно решать сложные математические задачи по оптимизации. В соответствии с набором условий солверы перебирают варианты решения и выбирают наилучшее. Их используют в различных отраслях:
- в логистике солверы решают задачи построению оптимальных маршрутов доставки, а также рассчитывают оптимальную загрузку транспортных средств (ТС);
- в ритейле солверы помогают составлять графики рабочих смен сотрудников;
- в промышленности они решают задачи по оптимальному составу продукции с учетом имеющегося сырья, или же оптимизируют порядок выполнения действий на производстве с учетом технических ограничений, приоритетов и наличия сырья.
SketchCalculator — Microsoft Math Solver
Польза таких комплексов заключается в том, что с ними задачи решаются быстрее, а показатели компании увеличиваются за счет оптимальных решений. Чтобы понять, насколько быстрее, приведу пример: некоторые задачи математической оптимизации, которые сегодня можно решить за одну секунду, в 1991 году потребовали бы 55 лет для решения.
Ещё одно преимущество солверов состоит в том, что с их помощью можно сгенерировать множество сценариев по типу “что-если”, оценить и сравнить потенциальное влияние на бизнес-процессы, а также определить наилучший. Например, Национальная футбольная лига (НФЛ) использует математическую оптимизацию для автоматического создания и анализа более 50 000 возможных сценариев составления расписания. Помогает им в этом солвер, который быстро создает огромную выборку расписаний-кандидатов для выбора.
Виды солверов
В зависимости от задач, которые способны решать солверы, их можно разделить на два типа. Первый – промышленные или универсальные солверы, которым посильны задачи различной направленности. Самые известные из них – это Gurobi и IBM.
Ещё есть специализированные солверы, которые дешевле промышленных, но могут работать в рамках своей специфики с ограниченным набором данных. В России примером такого солвера является Яндекс.Маршрутизация.
Помимо этих решений существуют общедоступные Open Source-солверы: COIN-OR, SCIP, GLPK и другие. Недостаток опенсорсных солверов заключается в том, что они работают в несколько раз медленнее, чем их коммерчерские аналоги, и решают меньшее количество моделей. Например, опенсорсный решатель сможет решить 48 из 87 моделей, а коммерческий – 86.
Иными словами, в открытых солверах сложнее замоделировать и решить задачу, нужен математик, который сформулирует задачу нужным образом. Ну, и конечно же, подобные решения не лишены ошибок, на исправление которых нет постоянной техподдержки. Это тоже стоит учитывать при выборе опенсорсного солвера.
Как за год накопить крупную сумму
Что сейчас
Когда с российского рынка ушли известные зарубежные солверы, это означало только одно – возросшую необходимость компаний переходить на отечественные аналоги. Основная проблема заключается в том, что сейчас в России пока еще нет солвера, который мог бы сравниться с гигантами вроде IBM или Gurobi. Разработать подобные решения с нуля – задача, которую можно выполнить только за несколько лет, но никак не месяцев. Известно, что попытки создать российский аналог предпринимаются – например, на одной из кафедр МФТИ уже разрабатывают кастомное решение для оптимизационных задач ВТБ.
Компании, ранее использовавшие зарубежные промышленные солверы, сейчас вынуждены переходить на бесплатные аналоги. Но, как говорилось выше, это не является наилучшим выходом из ситуации.
Оптимизация оптимизатора, или что не так с университетами
Сейчас порог входа на решение математических задач стал выше. Раньше компания могла обратиться с задачей к студенту, который бы написал модель и она бы решилась на коммерческом солвере. Сейчас такой вариант не сработает — доступные решения требуют не только университетского уровня знаний по математике, но еще и специфического опыта. В связи с этим у бизнеса появляется запрос на услуги профильных команд, которые специализируются на математике.
Особенность таких команд в том, что они уже имеют нужную экспертизу в решении похожих задач, а заодно математические формулировки, которые доказали свою эффективность в разных проектах. Задача же команды будет заключаться в том, чтобы правильно сформулировать задачу и применить имеющийся опыт так, чтобы даже опенсорсные солверы с ней справились. Поэтому если у компании есть необходимость в решении оптимизационных задач, то в текущих условиях лучше обращаться не к университетам, но к командам математиков, которые давно работают на рынке и специализируются в решении таких задач. Это поможет сохранить бюджет и получить максимальный эффект от оптимизации.
Если у вас есть задача, для решения которой необходима математическая оптимизация, вы можете проконсультироваться по проекту здесь.
Источник: vc.ru
Математические методы, которые использует Поиск решения (Solver) в Excel
Solver — важная надстройка в Excel, которая помогает решать экономические задачи продвинутого уровня (ранее такая функциональность была доступна только в специализированных компьютерных программах). Данный инструмент использует достижения такого раздела математики, как методы оптимизации (mathematical optimization), или по-другому, математическое программирование (Mathematical Programming, к обычному программированию компьютерных программ эта наука не имеет прямого отношения).
В экономике, как на уровне фирмы, так и на уровне государства, часто возникала проблема оптимального распределения ресурсов. Например, необходимо максимизировать прибыль, управляя ассортиментом выпускаемых изделий, при этом определенные ресурсы (количество имеющегося оборудования, сотрудников необходимой квалификации) зафиксированы. Или, к примеру, распределить доступный бюджет между различными видами рекламы, чтобы добиться максимального контакта с аудиторией. В математическую экономику такая задача вошла под названием задачи о размещении (распределении ресурсов) — также широко известно название Wyndor Glass Company problem.
Особенно ярко это проблема стояла перед социалистическими экономиками, где имелась возможность централизованно регулировать распределение ресурсов между отраслями. Поэтому неудивительно, что методы математического программирования были разработаны советским математиком Леонидом Канторовичем, который позднее получил за это Нобелевскую премию мира по экономике. И хотя в Советском Союзе они не помогли справиться с дефицитом и другими традиционными проблемами плановых экономик, на более низком уровне планирования разработанный математический аппарат оказался востребованным.
Основная задача математического программирования в общем виде
Основная задача математического программирования — максимизировать (или минимизировать) целевую функцию при условии выполнения определенных ограничений.
f1(X1,X2. XN) 0 и X 8 — квадратичная). Обычно в файлах Excel непрерывность нарушается при использовании конструкций вида IF и VLOOKUP (важно, чтобы аргументом этих расчетов была изменяемая переменная, во всех остальных случаях такие конструкции в файле не являются проблемой). В этом случае функция не будет непрерывной (и, как следствие, гладкой). А это значит, что GRG Nonlinear использовать нельзя.
GRG — достаточно быстрый метод. В его основе лежит расчет градиента — градиент функции в данной точке показывает направление ее наибольшего роста (снижения) в этой точке. Главная проблема этого метода — он останавливается в тот момент, когда находит локальный минимум функции. Например, возможна такая ситуация:
Ложный (локальный) минимум при поиске решения методом GRG Nonlinear
При поиске минимума данной функции метод может ложно остановиться в точке А (локальном минимуме функции), в то время как настоящий (глобальный) минимум функции находится в точке С. Таким образом, результат функции очень сильно зависит от начальных значений изменяемых переменных, и при разных начальных условиях Excel будет возвращать разный результат (не всегда правильный). При этом локальные минимумы и максимумы могут возникать у многих видов функций, например, у полиномов разной степени (Х 3 ,X 4 ,X 5 и пр.). Чтобы использовать данный метод, нужно быть уверенным в непрерывно возрастающем или убывающем характере функции.
Если линейное программирование и градиентный метод не подходят, то можно использовать вариант Evolutionary. Этот метод реализует сложный итерационный вариант перебора возможных значений.
Отметим также, что существует компромиссный вариант между GRG и Evolutionary. Выбрав вариант GRG Nonlinear, можно зайти на вкладку Option и там указать опцию «Use multistart». В этом случае GRG стартует с нескольких начальных точек (система сама генерирует выборку распределенных случайным образом стартовых значений), далее выполняя свою стандартную процедуру поиска оптимального решения. В этом случае нахождение глобального максимума не гарантировано, но вероятность, что программа вернет именно его, существенно повышается.
Почему одни страны, города или компании добиваются экономического успеха, а другие — вынуждены влачить жалкое существование? Почему экономический рост такой слабый, а неравенство доходов все выше? Как новые технологии могут изменить глобальный экономический ландшафт? Присоединяйтесь к нашей группе ВКонтакте, чтобы получать больше информации о долгосрочных трендах в экономике и бизнесе.
Комментарии:
Авторизация через:
Здесь пока нет комментариев. Чтобы их оставить, авторизуйтесь вверху страницы или с помощью аккаунта ВКонтакте либо зарегистрируйтесь .
Источник: welfare-economy.com
Солвер в Excel (Примеры) — Как использовать Solver Tool в Excel?
Если ваш ответ НЕТ, то это идеальная статья для вас, чтобы изучить концепцию SOLVER в Excel.
Решатель — это не что иное, как инструмент, который решает проблему для вас. SOLVER может выполнить сложное моделирование, с которым мы боремся вручную.
Например, если у вас есть уравнение X + Y = 50. Нам нужно определить, что такое X и что такое Y.
В этом случае X может быть 25, а Y может быть 25. Это просто. Однако, что если X должно быть положительным целым числом, X должно быть больше, чем равно 30, Y должно быть положительным целым числом, а Y должно быть больше или равно 25.
Можем ли мы решить это уравнение вручную? Я думаю, что это займет много времени, чтобы сделать перестановку и комбинации.
Однако инструмент Excel SOLVER может решить это уравнение за считанные секунды.
Где найти SOLVER в Excel?
Инструмент Excel SOLVER находится на вкладке «Данные»> «Пакет анализа»> «Solver».
Если вы не можете увидеть инструмент SOLVER в вашем Excel, выполните следующие действия, чтобы включить эту опцию в вашем Excel.
Шаг 1: Сначала перейдите к File и Options в левой части Excel.
Шаг 2. Выберите надстройки после параметров
Шаг 3: Внизу вы увидите надстройки Excel , выберите их и нажмите « Перейти».
Шаг 4: Выберите Solver Add-in и нажмите OK.
Шаг 5: Это включит опцию SOLVER Add-in для вас .
Как использовать Солвер в Excel?
Решающий инструмент очень прост в использовании. Давайте теперь посмотрим, как использовать инструмент Solver в Excel с помощью нескольких примеров.
Вы можете скачать этот Солвер инструмент Excel Шаблон здесь — Солвер инструмент Excel Шаблон
Пример № 1
Как я объяснил в начале, мы выполним расчет X + Y = 50, чтобы начать наш путь SOLVER в Excel.
Цель: X + Y = 50
условия:
- X должен быть положительным целочисленным значением
- Х должно быть> = 30
- Y должно быть положительным целочисленным значением
- Y должно быть> = 25
Шаг 1: Запишите простое уравнение в таблице Excel.
Я упомянул X Y. Функция SUM добавляет эти два значения в ячейку и дает сумму.
Шаг 2: Перейдите на вкладку Данные> Солвер
Шаг 3: Как только вы нажмете на Solver, откроется диалоговое окно ниже. Здесь нам нужно поставить перед собой цель, дать множество критериев и решить проблему.
Шаг 4. В поле « Задача» укажите ссылку на ячейку, которую мы хотим изменить. В этом примере ячейка, которую мы хотим изменить, является ячейкой B3
Шаг 5: В разделе To: выберите Value of: и введите 50 в качестве значения. В этом случае X + Y должно быть равно 50.
Шаг 6: Теперь, изменяя ячейки переменных: выберите ячейки, значения которых вы хотите изменить, чтобы получить сумму 50. В этом примере нам нужно изменить переменные X =,
Рекомендуемые статьи
Это руководство к инструменту Excel Solver. Здесь мы обсудим, как использовать инструмент Solver в Excel, а также с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи —
- Как создать полосу прокрутки в Excel
- Использование функции Excel ODD
- Руководство по подсчету функций в Excel
- ЧАСТОТА Excel с примерами
Источник: ru.education-wiki.com