Хорошая программа "Здравствуй, мир" для планировщика слюн - PullRequest
1 голос
/ 16 января 2012

Я пытаюсь внедрить Drools Planner для распределения расписаний.На данный момент у меня низкий уровень владения шаблоном проектирования Java и JavaBean, и мне нужно что-то простое для практики на .

Есть ли проблема оптимизации AI , которая

  1. известно, что он очень хорошо решается с помощью алгоритма 'X'
  2. модель данных легко может быть выражена в шаблоне проектирования JavaBean простым способом
  3. использует наименьшее количестводополнительные функции (например, сложность планирования объекта)

Такая проблема была бы хороша, чтобы порезаться мне в Drools Planner.


Я сейчас пытаюсь решить проблему N-Queens, котораякажется самым простым из них.Поэтому я ищу что-то из этой лиги.

Ответы [ 2 ]

1 голос
/ 16 января 2012

Обновление : См. CloudBalancingHelloWorld.java в примерах optaplanner (Drools Planner переименован в OptaPlanner).

Вы также можете попробовать реализовать расписание ITC2007 для учебной программы самостоятельно, а затем сравнить его с исходным кодом примера в Drools Planner . Если вы хотите, чтобы все было просто, но также добились приличных результатов, следуйте этому рецепту и перейдите к First Fit, а затем к Tabu Search.

Еще одна хорошая идея - присоединиться к к конкурсу планирования ITC2011 : он все еще открыт до 1 мая 2012 года и очень похож на пример планирования курса обучения.

0 голосов
/ 20 января 2012

Я пытаюсь 2X2 Sudoku (генерировать и решать) как нечто простое.Вы можете смоделировать это на коде Nqueens.В то время как 2x2 судоку решаются легко, 3x3 судоку могут застрять.Таким образом, вы можете реализовывать ходы подкачки.

Еще одна интересная проблема - это суммы сегментов.Дано 10 блоков, каждый из которых может содержать 5 номеров и 50 номеров;создайте программу для распределения чисел таким образом, чтобы сумма чисел в каждом сегменте была более или менее равномерной.

Bucket Bucket0 3 6 19 16 11  =55
Bucket Bucket1 8 2 5 25 15  =55
...
Bucket Bucket7 3 25 4 16 8  =56
Bucket Bucket8 12 20 12 9 2  =55
Bucket Bucket9 4 9 11 12 20  =56

Это имеет практические последствия, например, равномерное распределение задач различной прочности в течение недели.


Сборник некоторых задач: http://eclipseclp.org/examples/index.html

...