Mlrose TSPOpt Geneti c Алгоритм функции собственных затрат - PullRequest
0 голосов
/ 29 марта 2020

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

Прежде всего, я создалordins_List, который выглядит следующим образом: [(49.321,8.213), [50.321,9.124 ] ...)

Затем я создал свою собственную фитнес-функцию, которая принимает массив предположений и возвращает число с плавающей точкой.

fitnessF =  mlrose.CustomFitness(coords_list)

Теперь я настроил mlRose:

problem_fit = mlrose.TSPOpt(length = len(coords_list),fitness_fn =fitnessF, maximize=False)
best_state, best_fitness = mlrose.genetic_alg(problem_fit, random_state = 2)

Это возвращает:

Exception: fitness_fn must have problem type 'tsp'.

Теперь я настроил код следующим образом:

fitnessF =  mlrose.TravellingSales(check_fitness)

Теперь он вернется:

object of type 'function' has no len()

Заранее спасибо

PS: Я также был бы готов поделиться своим блокнотом по электронной почте

1 Ответ

0 голосов
/ 31 марта 2020

Я мог бы понять, где проблема. Это правильно, что я должен определить свою пользовательскую функцию пригодности, но для TSP я должен добавить тип задачи:

fitnessF = mlrose.CustomFitness (ordins_list, "tsp")

Теперь это будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...