Продолжение оптимизации после крэша

 

Подскажите (возможно, скорее разработчики), если во время длительной оптимизации завис или перезагрузился компьютер, можно ли в принципе корректно продолжить оптимизацию?

Дело в том, что значимые для меня результаты я в файл сохраняю, но оптимизируемые параметры «гуляют» на входе генетически. И вот можно ли и как продолжить процесс не повторяя предыдущих проходов? Ну и тот же вопрос без генетики...

 
В принципе возможно, если конечно все проходы сохраняются. Но генетика тогда глючить может начать. В инит сделать проверку файла. Были или нет такие параметры
 
Vinin писал(а) >>
В принципе возможно, если конечно все проходы сохраняются. Но генетика тогда глючить может начать. В инит сделать проверку файла. Были или нет такие параметры

Представьте, скажем пару миллионов проходов. Сохранять их параметры и делать проверку были или нет такие, весьма и весьма ресурсоемко будет.
Есть еще варианты?

 
voltair >>:

Есть еще варианты?

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

 
TheXpert писал(а) >>

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

Имеется в виду не зависание MT, а зависание компа. Как после его перезагрузки что-то может остаться в кэше?

 

Всем привет!

На мой взгляд, решением проблемы может быть реализация перебора параметров в самом эксперте!

Но для этого в нем нужно реализовать генетику.

Кто-нибудь знает алгоритм, который применяют metaquotes ?

 
voltair писал(а) >>

Но для этого в нем нужно реализовать генетику.

Кто-нибудь знает алгоритм, который применяют metaquotes ?

При использовании генетических алгоритмов главное - функция оценки приспособленности.

Я выкладывал пару месяцев назад свою реализацию на C++. Ищите тут: 'Нейронные сети для фундаментального анализа' Если понадобятся другие способы мутации для особей - сделать их будет несложно.

 
lea писал(а) >>

При использовании генетических алгоритмов главное - функция оценки приспособленности.

Я выкладывал пару месяцев назад свою реализацию на C++. Ищите тут: 'Нейронные сети для фундаментального анализа' Если понадобятся другие способы мутации для особей - сделать их будет несложно.

Спасибо большое за инфу, lea! Учту в будущем!

А пока это все же требует и от собственного подхода отклоняться и в реализации не так просто.

Я же нашел очень простой способ решить проблему для случаев без использования генетики.

В двух словах - каждый раз в init() пишем в файл номер прохода оптимизации (iter), который

обнуляем в начале оптимизации и инкрементируем самостоятельно. Если сбойнуло, то мы теперь

знаем на каком проходе (например 100000) и начинаем все снова, но в начале start()'а пишем

if (iter<100000) return(0); таким образом время на старые проходы практически не тратится.

Но вообще, просьба к разработчикам как-то решить проблему с возможностью продолжения

оптимизации после крэша принципиально.

Причина обращения: