Я работаю над приложением rails, которое требует постоянного сопоставления пользователей вместе. По сути, мне нужен алгоритм, который будет принимать в качестве входных данных список пользователей и возвращать список пар, которые лучше всего соответствуют. Пользователи считаются хорошими совпадениями по таким критериям, что у них больше общих интересов или расстояние между ними. В общем, мне нужно иметь возможность настроить то, что считается «хорошим соответствием», но мне просто нужно направление для алгоритма, который будет принимать набор пользователей и возвращать набор пар.
Если это поможет, у меня есть метод в модели пользователя, который принимает в качестве параметра другого пользователя и возвращает оценку его соответствия. Мне нужна помощь, чтобы использовать это в массовом сопоставлении.
Я планирую, чтобы пользователи заходили в таблицу, а затем периодически выполняли задание cron по списку, чтобы найти наилучшую пару для всех. У кого-нибудь есть идеи?
Большое спасибо!