Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 01.04.2010, 12:05   #1
eugrita
Пользователь
 
Регистрация: 01.04.2010
Сообщений: 11
По умолчанию Гавённость надстройки поиск решения

Я конечное понимаю, что MS Excel вошел в "обязательный репертуар" студентов ВУЗов и менеджеров. Студенты сдают курсовые работы на тему оптимизации в задачах линейного программирования и т.п.На тему этой надстройки написаны десятки книг и методических пособий.
Но так ли хорош Поиск Решения?
В процессе работы я не раз обнаруживал либо зацикливание программы либо вываливалось сообщение типа "Найдено ошибочное решение" с отказом от решения.
Конкретный пример : безусловная оптимизация найти max LOG10(5-1/x).
Функция не очень сложная, однако ее особенность - ее О.О. двухсвязна
т.е X<0 ИЛИ X>0.2
В Поиск Решения как известно нельзя задавать составные логические условия.
Ладно, выкрутимся: пусть x хранится в ячейке A2
В ячейку A3 запишем формулу: =ABS(A2-0.1)
(при этом условие A3>=0.1 или A3>=0.01 или A3>=0.001 и т.п
эквивалентны заданию подмножества О.О.)
Вводим в Надстройку исходные данные
Целевая ячейка A2 . Поиск max
Задаем единственное ограничение A3>=0.1 и... тот самый случай - выдается сообщение: "Найдено ошибочное решение".
При этом текущее значение ячейки A2 может быть например 0.05
которое не удовлетворяет введенному нами же ограничению
Создается впечатление, что программа Поиск решение составлена разработчиками неграмотно, т.е перед вычислением очередной итерации не проверяет попадание текущей точки в область ограничений
а а сообщение указанного типа - уже обработка аварийной ситуации, которой могло бы не быть.
Я конечно выкрутился из этой ситуации, разбив исходную задачу на 2 подзадачи
1-я с О.О A2>0.201 2-я с О.О A2<0.01 и решение сошлось
Но если даже на простой задаче пришлось приложить столько усилий
то в более сложной многосвязной О.О сложнее во 100 крат.
Проще видимо писать собственную программу оптимизации или воспользоваться MathCad, Mapple и т.п (только это конечно не для менеджеров)

Последний раз редактировалось eugrita; 01.04.2010 в 12:17.
eugrita вне форума
Старый 01.04.2010, 12:09   #2
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

А тему нормально назвать можно было?
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума
Старый 01.04.2010, 14:04   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

очень похоже на открытое письмо Биллу Гейтсу.
Ответит ли...

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

Приходится снова вспоминать Чака Нориса, только он может решить ваши задачи, ибо он единственный, кто сосчитал до бесконечности... дважды
Есть еще один отличный персонаж, отвечающий на ваш вопрос:
Сидит Кай на куске айсберга и по-всякому перекладывает 4 ледяных буквы. Прилетает Снежная Королева, опускается рядом. Кай:
- Королева, смею утверждать, что из букв "П", "О", "Ж", "А" невозможно составить слово "бесконечность".

Перечитывайте математику - это точная наука.

А поиск решений не находит решений:
1.когда их нет
2.когда заданы взаимоиключающие ограничения
3.и наконец, чаще всего, когда человеком допущены ошибки, при припдготовке данных и вычислении промежуточных результатов
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 01.04.2010, 14:12   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Название темы аморально. Закрыто.
I'm learning to live...
Stilet вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск решения kzld Microsoft Office Excel 4 10.02.2010 10:14
Поиск решения cortes Microsoft Office Excel 1 02.02.2010 19:56
поиск решения Aqil_f Microsoft Office Excel 9 19.05.2009 23:13
Поиск решения Giulietta Microsoft Office Excel 15 05.05.2009 13:58
Поиск решения Slavik Microsoft Office Excel 0 02.05.2009 14:50