Я хотел бы реализовать собственный приемник в OptaPlanner, но нигде не смог найти минимального рабочего примера. Кто-нибудь знает, как это сделать?
Документация слишком расплывчата, чтобы решить мою проблему. Я продолжаю получать ForbiddenClassException
и не могу решить его даже с @XStreamAlias
(как здесь ответили: XStream ForbiddenClassException при использовании пользовательского фуражера с OptaPlanner ). Вероятно, это потому, что я почти ничего не знаю о XStream.
Причина, по которой я хочу это, - попытаться уйти от локальной оптимы. У меня есть два типа планирующих объектов X и Y в виде иерархических отношений: пара значений X-объекта и Y-объекта может вызывать конфликты, а X-объекты используются в нескольких (многих) парах. Из-за этого перемещения на X-сущностях вызывают множество конфликтов после оптимизации значений на Y-сущностях.
Акцептор, который я имею в виду, случайным образом войдет в состояние «сумасшествия», где он будет только принять ходы на X-сущностях и случайным образом go вернуться к нормальному поведению (например, в 10 раз больше шансов выйти, чем войти). Это просто случайная мысль, я бы хотел поэкспериментировать с этим. Я хотел бы использовать это вместе с Поиском Табу (например, принимать только ходы, принятые обоими акцепторами).
Кто-нибудь может помочь?