Обсуждение:A*

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Непонятен вот этот блок:

Добавление: Вышенаписаннное утверждение ошибочно. В оригинальной версии Color Lines, реализованной Олегом Деминым на Паскале, применялся алгоритм поиска в ширину или по-простому - метод волны. Волну пускали из точки назначения. 75.148.16.68 14:15, 8 мая 2014 (UTC)[ответить]

Иллюстрации

[править код]

Файл:ЛОЛ.gif - вполне могла бы хорошо дополнить имеющиеся. Fractaler 07:23, 1 июня 2011 (UTC)[ответить]

Не вижу в чем она дополняет старую картинку Файл:Astar progress animation.gif, где то же самое, но больше, нагляднее и симпатичнее. Нахожу новую картинку неприятной по эстетическим соображения: 1) не вписывается в статью по цвету фона, 2) у меня на экране она налезает на кнопку "править" рядом раздела "История", смотрится жутко. -- X7q 15:21, 1 июня 2011 (UTC)[ответить]
  • Эстетика - 1) понятие растяжимое 2) информации не даст (картинка даст). Ср. содержимое клеток на обоих изображениях - различие в масштабе. Информацию об этой картинке читателю нужно предоставить обязательно (хотя бы просто зашить в виде ссылки). Fractaler 11:38, 2 июня 2011 (UTC)[ответить]

Псевдокод

[править код]

Приведённый в статье псевдокод мне кажется слишком упрощённым. Хочется 1) добавить в псевдокод упоминание о вычислении и применении f(x), да и упоминание о переборе соседей не помешает; 2) ссылку на викиучебник перенести в раздел "описание алгоритма", а то не очевидно, что существует более подробное изложение (надеюсь, это не противоречит обычаям википедии по оформлению статей с алгоритмами). --Dalka 17:42, 6 декабря 2015 (UTC)[ответить]

  • Спасибо за проявленный интерес. Обсуждение Обсуждение_проекта:Информационные_технологии#Конкретные предложения, а об оформлении листингов — Проект:Информационные технологии/Статьи об информационных технологиях. Собственно, по всей видимости, не имеет значения, где будет ссылка. Обычно, конечно, располагается где-то внизу, но этого, кажется, в правилах и даже в черновике, созданном в рамках проекта, не регламентировано. Что касается псевдокода, то перед ним есть описание, в котором указано, что используется очередь с приоритетом, в которой функция и задействована. Дана викиссылка на статью об этой очереди. Не думаю, что стоит дублировать очередь с приоритетом в псевдокоде, но, может быть, нужно как-то подчеркнуть интерфейс работы с очередью (make_queue, remove_first, enqueue), так как там есть непонятки (например, что делает enqueue(q, p, y)?) РоманСузи 18:06, 6 декабря 2015 (UTC)[ответить]
  • Собственно, немного изменил псевдокод (задав функцию f явно) и добавил объяснение. РоманСузи 18:36, 6 декабря 2015 (UTC)[ответить]
    • В самом деле, непонятно, что значат make_queue, enqueue, path, add_to_path? Например, remove_first(open) — находит первый open и удаляет его, или из open удаляет первый элемент? Для второго варианта на привычных мне языках было бы написано open.remove_first(). Если f — функция стоимости, то что конкретно делает make_queue(f) — создаёт пустую очередь, которая в дальнейшем будет отсортирована по результатам применения этой функции? А что будет типом элементов этой очереди — узлы или пути? По тексту псевдокода следует, что это пути, а вот в аналогичной очереди развёрнутого примера на викиучебнике содержатся узлы… Или это эквивалентные формулировки?
Пока писал эти вопросы, засомневался, стоит ли их задавать, так как кажется, что я лично уже и разобрался во всём. С другой стороны, может, я не один такой непонятливый — и для упреждения проблем будущего читателя стоит внести дополнительные пояснения. --Dalka 19:31, 6 декабря 2015 (UTC)[ответить]
Прямо к вопросу не относится, но добавил в Викиучебник набор ссылок на реализации на многих языках. РоманСузи 14:24, 12 декабря 2015 (UTC)[ответить]