powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Изменение шага итерации для решателя.
13 сообщений из 13, страница 1 из 1
Изменение шага итерации для решателя.
    #36701012
Mozok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Использую надстройку Solver для поиска минимума целевой функции.
Проблема в том, что у меня переменные величины x 1 , x 2 ,..., x n должны принимать целочисленные значения (либо 0, либо 1). А Solver дклает итерации с шагом в 0.0000001 и выдает дробное решение. Если ставлю ограничение на целочисленность ответа, не получаю вообще никакого решения. Можно ли как-то увеличить шаг итерации до 1?
-------------
Festina lente
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36701934
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну, а исходный код поменять нек пробовали? там должно быть всё не сложно..
только пароль aopr-ом снимите..
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36707116
ZVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исходный код к Solver.dll ? :-)

Поиск решения позволяет в ограничениях указывать двоич. только при этом ожидается тупой перебор бинарных вариантов, т.е. решения можно и не дождаться – зависит от числа n и Вашего возраста.
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36707542
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mozok,

А какая у Вас задача, может Вам солвер и не нужен...
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36707547
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mozok,

А если в ы поставите, что xi >=0;<=1; int. Поидее все Ваши параметры выполнятся независимо от шага....
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36707908
Mozok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZVI
Поиск решения позволяет в ограничениях указывать двоич. только при этом ожидается тупой перебор бинарных вариантов, т.е. решения можно и не дождаться – зависит от числа n и Вашего возраста.
Пробовал я это ограничение, Solver все равно делает дробные шаги и не находит решения.

bbx1389А какая у Вас задача, может Вам солвер и не нужен...
Книга с задачей во вложении. Целевая ячейка - В47, нужно найти её минимум.
Изменяемые ячейки - D2:D42 (общее число вариантов - 2 41 ).
Дополнительное условие - А76 = В76.
bbx1389А если в ы поставите, что xi >=0;<=1; int. Поидее все Ваши параметры выполнятся независимо от шага....

См. первый пост.
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36708113
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mozok,

А у Вас 2003 excel нет?

А Вы на все переменные поставли?
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36708276
Mozok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bbx1389
А у Вас 2003 excel нет?

Нет, но, если надо, могу пересохранить в формате xls.
bbx1389
А Вы на все переменные поставли?

Ставил сразу на диапазон D2:D42 = integer.
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36709617
ZVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Использование формул ЕСЛИ() означает разрывы первой производной целевой функции.
При этом, если не использовать специальные программы/алгоритмы, то остается тупой перебор бинарных вариантов.
Оценим максимальное время перебора вариантов.
Переменных бинарных ячеек 41 шт.
Количество вариантов: 2^41 = 2 199 023 255 552
На моем компе пересчет листа Publications.xlsx выполняется не за 0.2 миллисекунды.
Для измерения времени пересчета использовалась надстройка RangeCalc .
Тогда время перебора всех вариантов составит:
439 804 651 секунд = 122 168 часов = 5 090 суток = 14 лет
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36709621
ZVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZVI не за 0.2 миллисекунды
Читать: не менее, чем за 0.2 миллисекунды
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36712391
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К сожалению не знаю какая у вас целевая функция, но предлагаю Вам решить её "руками".

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

Или можете попробывать методы координатного или градиентного спуска....
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36712539
Mozok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bbx1389,

понимаете, это не так уж просто, учитывая, что целевая функция представляет собой
набор ступенек (разрывы первого рода), а первая производная - набор бесконечностей.
...
Рейтинг: 0 / 0
Изменение шага итерации для решателя.
    #36712598
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mozokbbx1389,

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

Я целевую функцию из-за формата файла не могу посмотреть, поэтому предлагаю "на ощупь"....

Может попробовать не в excel это проделать, в матлабе каком-нибудь....

Хотя мне всёравно кажется, что задачу можно свести к более решабельному варианту...
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Изменение шага итерации для решателя.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]