Проблемы комбинаторной оптимизации в Docker или AWS - PullRequest
0 голосов
/ 24 мая 2018

Я атакую ​​проблему комбинаторной оптимизации, аналогичную проблеме множественных ранцев.Задача имеет оптимальное решение, и я предпочитаю не соглашаться на приблизительное решение.

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

Мой опыт работы в распределенных системах (фокус на .NET, Java, Kafka, Docker контейнеры и т. Д ...), поэтому я обычно склонен решать сложные проблемы путем параллельной обработки на кластере машин(через масштабирование на докерном кластере или AWS).Тем не менее, эта конкретная проблема не может быть решена методом грубой силы, так как пространство проблемы слишком велико (возможно приблизительно 100 ^ 1000 комбинаций).

У меня ограниченный опыт работы с «большими данными», но я учусь изучать рюкзаки, генетические алгоритмы, обучение с подкреплением и некоторые другие подходы AI / ML.Учитывая мое ограниченное знакомство с этой областью, как бы я порекомендовал мне заняться такой проблемой?

  1. Я предпочитаю максимально использовать подход, заключающийся в использовании существующих фреймворков / библиотек.Отличная идея?Или можно порекомендовать использовать Accord.Net, ML.Net или какую-то другую библиотеку для создания собственной модели?
  2. Если существующие фреймворки - это путь, какие-нибудь конкретные фавориты?tensorflow?Есть какие-нибудь мысли по поводу инструментов Google ИЛИ: https://developers.google.com/optimization/ Что-нибудь в пространстве AWS?
  3. Какие-нибудь хорошие учебники, видео или подкасты, которые помогут мне быстро создать прототип?(имея в виду мою цель развертывания и проверки модели на докерном кластере)

Спасибо за любую помощь и руководство!

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Спасибо всем за ваше понимание выше.Я смотрю на optaplanner и google-OT, а также на несколько других решателей.

Чтобы ответить на этот вопрос, если бы мне пришлось ослабить ограничение, что я хочу получить оптимальный ответ, и позволитьдля «приблизительных» решений это изменит ваше руководство или рекомендуемый набор инструментов (библиотеки / структуры) каким-либо образом?

0 голосов
/ 24 мая 2018

Проблема Балансировка облака в OptaPlanner (с открытым исходным кодом, Java) - это проблема, связанная с множеством ранцев.Для этого есть руководство для пользователя.Многие пользователи используют реализации OptaPlanner в Docker (обычный открытый образ JDK 8) и AWS. Вот реализация списка сотрудников , которая развернута в OpenShift Dedicated (которая генерирует образ докера, который она запускает в AWS) - она ​​предоставляет REST API (который даже задокументирован Swagger).

...