<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Комментарии к публикации «AI на минималках: пишем свой Сокобан и учим компьютер его решать»]]></title>
    <link>https://habr.com/ru/articles/526842/</link>
    <description><![CDATA[Комментарии к публикации «AI на минималках: пишем свой Сокобан и учим компьютер его решать»]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Wed, 29 Apr 2026 13:31:47 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      

      
        
  
    <item>
      <title>11.11.2020 20:28:13 egryaznov</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22293656</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22293656</link>
      <description><![CDATA[На английкой вики в статье про сокобан пишут что апгрейд алгоритма A* до IDA* очень помогает: <a href="https://en.wikipedia.org/wiki/Sokoban#cite_note-9">en.wikipedia.org/wiki/Sokoban#cite_note-9</a>]]></description>
      <pubDate>Wed, 11 Nov 2020 20:28:13 GMT</pubDate>
      <dc:creator><![CDATA[egryaznov]]></dc:creator>
    </item>
  

  
    <item>
      <title>09.11.2020 14:58:31 Stecenko</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22281954</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22281954</link>
      <description><![CDATA[А* с отрезанием тупиковых ветвей облегчит ситуацию. Но все равно не спасает. <br>
Проверено :(.]]></description>
      <pubDate>Mon, 09 Nov 2020 14:58:31 GMT</pubDate>
      <dc:creator><![CDATA[Stecenko]]></dc:creator>
    </item>
  

  
    <item>
      <title>09.11.2020 12:25:15 egryaznov</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22281144</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22281144</link>
      <description><![CDATA[Количество меток конечно сильно ухудшает время работы, каждая метка это +1 к степени в асимптотике. Спасти может только А* с отрезанием заранее тупиковых ветвей.]]></description>
      <pubDate>Mon, 09 Nov 2020 12:25:15 GMT</pubDate>
      <dc:creator><![CDATA[egryaznov]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 18:28:34 Stecenko</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22275364</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22275364</link>
      <description><![CDATA[Upd. BoxWorld — 16 битное Windows приложение. В Windows XP запускалось через NTVDM.<br>
На Windows 10 64 NTVDM нет и нет возможности установить (на Windows 10 32 можно включить соответствующий легаси компонент).<br>
Но возможность запустить старичка на 64 битной системе все же есть — <a href="https://github.com/otya128/winevdm">WineVDM</a><br>
Саму игру взять можно <a href="https://archive.org/details/win3_BOXWORLD">здесь.</a><br>
Игра запоминала текущий уровень и результаты в файл c:\windows\boxworld.ini.]]></description>
      <pubDate>Sat, 07 Nov 2020 18:28:34 GMT</pubDate>
      <dc:creator><![CDATA[Stecenko]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 16:49:01 Stecenko</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22275106</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22275106</link>
      <description><![CDATA[Тема на хабре поднималась применительно к одному из клонов сокобана — <b>BoxWorld</b> от китайского разработчика: <a href="https://habr.com/ru/post/130417/">«Бот для игры в Sokoban брутфорсом»</a> — в 2011 году.<br>
К сожалению, это приложение работало в XP, но не работает в Win 7 64 и Win 10 64<br>
Но есть клон клона в Microsoft Store с одноименным названием.<br>
И есть картинка самого большого уровня в статье:<br>
<div class="spoiler" role="button" tabindex="0">
                        <b class="spoiler_title">Картинка</b>
                        <div class="spoiler_text"><img src="https://habrastorage.org/getpro/habr/post_images/d11/c4e/597/d11c4e5973aaa56ce71542e75a222ca5.jpg" alt="image"><br>
</div>
                    </div><br>
<a href="https://habr.com/ru/users/egryaznov/" class="user_link">egryaznov</a>, хороший вызов для Вашего бота? :-)]]></description>
      <pubDate>Sat, 07 Nov 2020 16:49:01 GMT</pubDate>
      <dc:creator><![CDATA[Stecenko]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 15:02:49 egryaznov</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22274850</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22274850</link>
      <description><![CDATA[1. Добавил решение в спойлере.<br>
2. Если брать BFS, то он будет за полиномиальное время со степенью, равной количеству меток. Поэтому чем больше меток, тем дольше выполнение.<br>
3. Не совсем понял о чём вы. Да, проверка есть, мы храним множество посещённых вершин.<br>
4. Под «AI» понимается BFS и A*, назвал статью «AI на минималках», т.к. это известные, чисто детерминированные алгоритмы без машинного обучения и прочих приблуд.]]></description>
      <pubDate>Sat, 07 Nov 2020 15:02:49 GMT</pubDate>
      <dc:creator><![CDATA[egryaznov]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 14:58:39 egryaznov</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22274832</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22274832</link>
      <description><![CDATA[Задача интересная, можно попробовать нагенерировать случайно много уровней, затем генетическими алгоритмами отобрать нужные, и т.д. в цикле. Через n поколений получим самые подходящие уровни.]]></description>
      <pubDate>Sat, 07 Nov 2020 14:58:39 GMT</pubDate>
      <dc:creator><![CDATA[egryaznov]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 12:25:37 neurocore</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22274462</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22274462</link>
      <description><![CDATA[Наверное можно алгоритмом коллапса волновой функции строить «приемлемые» позиции, которые в дальнейшем проверять солвером. Ну это так, с целью отбросить на раннем этапе заведомо непроходимые карты. На маленьких размерностях хватит наверное обычного рандома.]]></description>
      <pubDate>Sat, 07 Nov 2020 12:25:37 GMT</pubDate>
      <dc:creator><![CDATA[neurocore]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 11:53:15 DaneSoul</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22274378</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22274378</link>
      <description><![CDATA[Нельзя ли пойти от обратного: нагенерировать уйму случайных уровней с нужным размером поля и числом ящиков и пройдя по ним солвером считать количество ходов для каждого, отсеивая уровни не удовлетворяющие запросу или не решаемые?]]></description>
      <pubDate>Sat, 07 Nov 2020 11:53:15 GMT</pubDate>
      <dc:creator><![CDATA[DaneSoul]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 09:43:33 jaiprakash</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22274010</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22274010</link>
      <description><![CDATA[@. Это видно на анимации.]]></description>
      <pubDate>Sat, 07 Nov 2020 09:43:33 GMT</pubDate>
      <dc:creator><![CDATA[jaiprakash]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 05:09:57 andy_p</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22273366</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22273366</link>
      <description><![CDATA[1. Не нашёл решения 11-го уровня в конце статьи.<br>
2. Хотелось бы иметь оценки скорости работы и объёма памяти для более сложных уровней.<br>
3. Не вникал глубоко в код, поэтому вопрос — вершины в графе порождаются каждый раз динамически из родительской и сохраняются? Если сохраняются, то есть ли проверка, были ли мы в данной конфигурации? Сколько вершин в графе получается, когда решение найдено?<br>
4. Что понимается под AI в данном алгоритме? Поиск пути A*?<br>
5. «граф инцидентных клеток» — это какой-то неправильный термин. Лучше говорить о компонентах связности графа.<br>]]></description>
      <pubDate>Sat, 07 Nov 2020 05:09:57 GMT</pubDate>
      <dc:creator><![CDATA[andy_p]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.11.2020 04:46:25 ARad</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22273330</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22273330</link>
      <description><![CDATA[<blockquote> Решётка # это стена, через неё нельзя пройти и продвинуть ящик.<br>
 Буква O это ящик.<br>
 Буква X это метка, куда нужно переместить ящик.<br>
 Собака @ означает игрока.<br>
 Точка. означает пустое место.<br>
 Буква G это ящик на метке.<br>
</blockquote><br>
Какая буква обозначает игрока на месте куда надо переместить ящик (X и @ для одной и той же клетки)?<br>]]></description>
      <pubDate>Sat, 07 Nov 2020 04:46:25 GMT</pubDate>
      <dc:creator><![CDATA[ARad]]></dc:creator>
    </item>
  

  
    <item>
      <title>06.11.2020 20:38:05 mattheus</title>
      <guid isPermaLink="true">https://habr.com/ru/articles/526842/#comment_22272814</guid>
      <link>https://habr.com/ru/articles/526842/#comment_22272814</link>
      <description><![CDATA[Спасибо за статью, самому в юности нравилась задача написания солвера для Сокобана. Подскажите, приходилось ли решать обратную задачу: построение уровней для игры, с неким критерием оптимальности, например:<br>
<ul>
<li>максимальное число шагов оптимального решения при минимальном размере поля </li>
<li>максимального различия (разнообразия) генерируемых уровней </li>
<li>максимальной длины решения при минимальном числе ящиков на поле </li>
<li>и т.д.</li>
</ul><br>
Понятно, что критерии слабо формализованы, но суть их сводится к генерации «интересных и разнообразных» уровней. Есть ли общепринятые подходы к задачам генерации уровней для подобных головоломок?]]></description>
      <pubDate>Fri, 06 Nov 2020 20:38:05 GMT</pubDate>
      <dc:creator><![CDATA[mattheus]]></dc:creator>
    </item>
  

      

      

    
  </channel>
</rss>
