22.07.2017, 19:20
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
На досуге реализовал astar-algorithm алгоритм.
Найдете баги, пишите
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
22.07.2017, 20:18
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
nerv_,
а что это astar-algorithm?
|
|
23.07.2017, 08:40
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
23.07.2017, 10:03
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
nerv_,
|
|
24.07.2017, 23:50
|
|
Профессор
|
|
Регистрация: 18.05.2011
Сообщений: 1,207
|
|
nerv_,
it('should work', function () { })
. Вообще, на мой взгляд, способ задания графа неудобный. Слишком много информации нужно подготовить. Если рассматривать эту задачу как поиск проезда от остановки А к остановке Б в городе с количеством остановок ~ 200, то такой вариант задания входных параметров просто неприемлим. А ведь все можно решить простым заданием матрицы весов, start, end.
|
|
25.07.2017, 08:50
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
destus,
1) в прошлом году я реализовывал агоритм дейкстры, где на вход подается матрица смежности. В паблике его нет
2) чем плох способ с матрицей? Тем, что он требует задания сразу всей матрицы. (хотя для дейксты это как раз то, что нужнно)
3) моя реализация astar-algorithm'а, как ты мог заметить, основана на коллбеках: достаточно задать начальную, конечную точки, определить коллбеки, в том числе "порождающий" коллбек getSuccessors и дело в шляпе.
4) что касается тестов, то я их на коленке мастерил =) Иными словами: работа алгоритма не завязана на именно такое представление данных.
Цитата:
|
An almost universal implementation of A* search algorithm in JavaScript.
|
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Последний раз редактировалось nerv_, 25.07.2017 в 08:55.
|
|
25.07.2017, 09:33
|
|
Профессор
|
|
Регистрация: 18.05.2011
Сообщений: 1,207
|
|
nerv_,
В любом случае спасибо за найденный алгоритм . В институте данный алгоритм мы не рассматривали. Реализовывали различные алгоритмы дискретной математики: Дейкстры, Флойда, транспортная задача, различные поиски на графе в глубину / ширину, но точно не A*.
В своем проекте мы используем как раз таки алгоритм Дейкстры, для поиска вариантов проезда из одной точки в другую. Если вкратце, то есть целый регион РФ, со своей автомобильной / жд / воздушной / водной развязками, и у пользователя через карту есть возможность найти варианты проезда из точки А в точку Б.
|
|
25.07.2017, 22:21
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
nerv_, чего матрица? почему не граф?
Эх вспомнил как страдал на плюсах в универе с разными алгоритмами, не помню почему но дейкстра на графе доставил мне большего всего боли)
Даже что-то тут на форуме спаршивал https://javascript.ru/forum/offtopic...ena-monet.html)
Сообщение от nerv_
|
4) что касается тестов, то я их на коленке мастерил =)
|
У нас для алгоритмов была песочница и показывало только что прошло тесты или нет и когда не мог найти ошибку у себя, то брал готовые популярные реализации алгоритмов и заганял рандомные данные в свою реализацию и в те что я взял и автоматически проверял результат и так до песконечности пока не нахоидл разницу в результате. Это я к чему, можно сделать такие тесты что бы проверить твой реализацию)
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
Последний раз редактировалось cyber, 25.07.2017 в 22:29.
|
|
26.07.2017, 09:25
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от destus
|
В любом случае спасибо за найденный алгоритм
|
эм... даже не знаю что сказать... он достаточно известен Это вершина айсберга под названием Artifical Intelligence
---
Сообщение от cyber
|
чего матрица? почему не граф?
|
1) матрица может задавать граф
2)
Сообщение от nerv_
|
работа алгоритма не завязана на именно такое представление данных
|
см. этот и этот посты
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
29.07.2017, 20:56
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
Сообщение от nerv_
|
1) матрица может задавать граф
|
Знаю)
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
|
|