Size: a a a

Язык программирования Julia / Julia programming language

2020 January 09

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Это же какие-то суровые np-полные задачи дискретной оптимизации 😢😢
источник

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Надо начинать искать с JuliaOpt
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
О, буквально пару дней назад кто-то спрашивал, как сделать такую задачу в JuMP
источник

✵M

✵ Muhammed ✵ in Язык программирования Julia / Julia programming language
да я тоже делаю на JuMP
источник

✵M

✵ Muhammed ✵ in Язык программирования Julia / Julia programming language
Андрей Оськин
О, буквально пару дней назад кто-то спрашивал, как сделать такую задачу в JuMP
в этой группе же??
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Нет, к сожалению не могу найти где.
источник

MV

Mitya Volodin in Язык программирования Julia / Julia programming language
✵ Muhammed ✵
Добрый вечер. Возможно кто то сталкивался с созданием расписания занятий в университете? может быть какую то примерную документацию видели. Заранее спасибо!
Сталкивался, но писал ещё не на julia в тот момент. А в чём проблема с JuMP? там же всё достаточно просто. Надо только солвер подтянуть, который хорошо с дискреткой работает
источник

MV

Mitya Volodin in Язык программирования Julia / Julia programming language
Задачи в общем случае суровые, но если у вас конкретный практический кейс, может быть её можно будет попроще формализовать.
источник
2020 January 10

MV

Mitya Volodin in Язык программирования Julia / Julia programming language
Кстати, благодарю, понял, что мне как раз сейчас очень пригодится оптимизация расписания для рабочей задачи )) Как-то вот она сама в голову не шла, а тут вдруг формализовалась. Писать буду на JuMP'e, потом могу поделиться
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Я нашёл ссылку, но там ничего интересного, к сожалению.
https://www.reddit.com/r/Julia/comments/emgjr1/seminar_scheduling_problem_modeling_julia/?utm_source=share&utm_medium=ios_app&utm_name=iossmf
источник

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Нормальный вроде совет там -- смотреть на пример судоку и медитировать )

https://github.com/JuliaOpt/juliaopt-notebooks/blob/master/notebooks/JuMP-Sudoku.ipynb
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Если кому-то поможет, буду рад 😊 К сожалению абсолютно ничего не знаю про JuMP, какие задачи он решает и как им пользоваться вообще.
источник

AT

Alexey Tarasov in Язык программирования Julia / Julia programming language
Я этим занимаюсь профессионально в том числе и на JuMP. Пишите в личку. Язык.моделирования несложный, а как будет работать зависеть от вашей задачи. Основные методы решения это дискретное линейное прогоаммироаание и программирование в ограничениях. JuMP это толькл обертка, главное какой за ним солвер.
источник

SV

Sergey Volkov in Язык программирования Julia / Julia programming language
Alexey Tarasov
Я этим занимаюсь профессионально в том числе и на JuMP. Пишите в личку. Язык.моделирования несложный, а как будет работать зависеть от вашей задачи. Основные методы решения это дискретное линейное прогоаммироаание и программирование в ограничениях. JuMP это толькл обертка, главное какой за ним солвер.
Мне кажется, что лучше не в личку, а сюда, если нет конфиденциальных сведений, конечно. Многим, думаю, будет интересно :)
источник

AT

Alexey Tarasov in Язык программирования Julia / Julia programming language
Просто это про дискретную оптимизацию а не Julia. Я экспериментирую в одном пректе с Jump, а вообще pyomo пока удобней.
источник

AT

Alexey Tarasov in Язык программирования Julia / Julia programming language
Ну а так если задача не требует суток работы, то нало просто аккуратно замоделировать. Это довольно быстро осваивается. В реальных расписаниях главная сложность обычно все требования выписать и ничегл не забыть. Типа что подростки любят поспать и им не надо ставить первый урок. Обычно на таких вещах все и сыпется, как в анекдотах про джиннов
источник

V

Vladimir in Язык программирования Julia / Julia programming language
Андрей Оськин
И в результате создатель Flux сейчас пишет Zygote, который должен делать то, что нужно.
Добрый! А в чем преимущество  Zygote перед Calculus и ForwardDiff? Я попытался сравнить эти три пакета и прямое использование дуальных чисел - для дифференцирования матриц быстрее всего оказался ForwardDiff.
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Если честно, я сам никогда не проверял, но в некоторых местах люди писали, что ForwardDiff быстро теряет свою скорость по мере увеличения количества параметров. И в современных DL системах, где количество параметров зачастую измеряется миллионами у него получается очень низкая производительность.

Но это не точно, за что купил, за то продаю 😊
Думаю, что какие-то мысли можно ещё почерпнуть из https://github.com/MikeInnes/diff-zoo
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Ага, вот откуда я эту информацию подцепил (последняя секция в README)

https://github.com/JuliaDiff/ReverseDiff.jl
источник

V

Vladimir in Язык программирования Julia / Julia programming language
Андрей Оськин
Если честно, я сам никогда не проверял, но в некоторых местах люди писали, что ForwardDiff быстро теряет свою скорость по мере увеличения количества параметров. И в современных DL системах, где количество параметров зачастую измеряется миллионами у него получается очень низкая производительность.

Но это не точно, за что купил, за то продаю 😊
Думаю, что какие-то мысли можно ещё почерпнуть из https://github.com/MikeInnes/diff-zoo
Спасибо! У меня как раз мало параметров. Думал если если переписать под дуальные числа быстрее будет, но нет. В итоге Optim + ForwardDiff для оптимизации REML функции оказались быстрее всего, надо конечно разные солверы для JuMP пробовать.
источник