Переполнение памяти в Maple

Форум пользователей пакета Maple

Модератор: Admin

Sunrise
Сообщения: 1
Зарегистрирован: Пт мар 20, 2015 11:41 am

Переполнение памяти в Maple

Сообщение Sunrise » Пт мар 20, 2015 11:49 am

Здравствуйте!
Подскажите, пожалуйста, в чем проблема.
Пишу программу в Maple.(вывод графов(деревьев)и еще реализуется разбиение множества вершин на подмножества).
Для n=3 и n=4 (n количество вершин) все прекрасно считает и выдает правильный результат.
Для n=5(125 деревьев(графов)) программа не считает , происходит накопление памяти до 1гб и программа перестает работать.
Работаю в Maple18.
Подскажите, пожалуйста.

Markiyan Hirnyk
Сообщения: 1323
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Большой объем результата

Сообщение Markiyan Hirnyk » Сб мар 21, 2015 8:40 am

Не видя кода и не зная конкретно, что именно находит ваша программа, на поставленный вопрос ответить не могу. Предполагаю, что объем результата стремительно возрастает вместе с n, например, как 2^(2^(3n)). Ср. 2^8=256 , 2^64= 18446744073709551616 и 2^512= 13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096. В этих случаях алгоритм не реализируем, ибо зачастую результат больше количества атомов в Солнечной системе.
Такие попытки делают наивные студенты младших курсов.

Aivar
Сообщения: 48
Зарегистрирован: Вт июл 13, 2004 4:00 pm

Сообщение Aivar » Сб мар 21, 2015 10:38 am

Maple имеет очень слабый механизм динамического управления памятью в своей рабочей области. Именно поэтому у него, в частности, зачастую проблемы при работе с длинными списками, требуя перехода к векторам. Эту проблему обозначил еще для более ранних версий Аладьев в своих книгах. В Mathemarica ситуация куда лучше.

Markiyan Hirnyk
Сообщения: 1323
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Экстасенс

Сообщение Markiyan Hirnyk » Сб мар 21, 2015 11:25 am

Aivar писал(а):Maple имеет очень слабый механизм динамического управления памятью в своей рабочей области. Именно поэтому у него, в частности, зачастую проблемы при работе с длинными списками, требуя перехода к векторам. Эту проблему обозначил еще для более ранних версий Аладьев в своих книгах. В Mathemarica ситуация куда лучше.

Откуда известно, что код вопрошателя работает со списками?

Aivar
Сообщения: 48
Зарегистрирован: Вт июл 13, 2004 4:00 pm

Сообщение Aivar » Вс мар 22, 2015 11:27 am

Вы так и не поняли суть моего поста, а списки указаны в контексте "в частности", ибо именно с ними возникают, в основном, проблемы такого рода. Список же - одна из базовых структур и в Maple, и особенно в Mathematica. Я сотрудничаю с Wolfram Research и знаком с системой достаточно глубоко, идеология же Maple в значительной степени пересекается с идеологией первой, у них даже однотипных ошибок довольно много. Если же вас интересуют эти вопросы, дискутировать следует не на пользовательском, а на системном уровне.