<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Pathplanning.ru_%3A%3A_%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BB%D0%B0%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D1%80%D0%B0%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B8_%282018%29_%28%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%29</id>
	<title>Pathplanning.ru :: автоматическое планирование траектории (2018) (проект) - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Pathplanning.ru_%3A%3A_%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BB%D0%B0%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D1%80%D0%B0%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B8_%282018%29_%28%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%29"/>
	<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=Pathplanning.ru_::_%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BB%D0%B0%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D1%80%D0%B0%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B8_(2018)_(%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82)&amp;action=history"/>
	<updated>2026-06-06T15:10:50Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://www.wikicshse.ru/index.php?title=Pathplanning.ru_::_%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BB%D0%B0%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D1%80%D0%B0%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B8_(2018)_(%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82)&amp;diff=555&amp;oldid=prev</id>
		<title>imported&gt;Kyakovlev: Migrated current public revision from wiki.cs.hse.ru</title>
		<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=Pathplanning.ru_::_%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D0%BB%D0%B0%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D1%80%D0%B0%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B8_(2018)_(%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82)&amp;diff=555&amp;oldid=prev"/>
		<updated>2018-10-11T07:23:56Z</updated>

		<summary type="html">&lt;p&gt;Migrated current public revision from wiki.cs.hse.ru&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Карточка_проекта&lt;br /&gt;
|name=Pathplanning.ru :: автоматическое планирование траектории (2018)&lt;br /&gt;
|mentor=Константин Яковлев&lt;br /&gt;
|mentor_login={{URLENCODE:Kyakovlev|WIKI}}&lt;br /&gt;
|semester=Осень 2018&lt;br /&gt;
|course=2&lt;br /&gt;
|summer=on&lt;br /&gt;
|number_of_students=10&lt;br /&gt;
|categorize=yes&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Что это за проект? ===&lt;br /&gt;
[https://yadi.sk/i/0NbslDLmZCvAmA Презентация проекта] &lt;br /&gt;
&lt;br /&gt;
Планирование траектории - одна из основополагающих способностей любого интеллектуального агента (робота, персонажа в компьютерной игре и т.д.), поэтому методам планирования пространственных перемещений всегда уделялось (и продолжает уделяться) большое внимание в искусственном интеллекте. Несмотря на кажущуюся простоту это нетривиальная (challenging) задача, для решение которой необходимо не только уверенное знание математических и компьютерных наук, но и изобретательность.&lt;br /&gt;
&lt;br /&gt;
[[Файл:Pplru-robo.jpg|320px]]&lt;br /&gt;
&lt;br /&gt;
В научной лаборатории, в которой я работаю, мы с коллегами уже не первый год занимаемся этой интересной тематикой: ведем научные исследования, публикуемся в научных журналах, делаем доклады о наших новых разработках на конференциях и семинарах. Предлагаю и вам познакомиться с областью path finding и овладеть базовыми алгоритмами, которые в дальнейшем можно будет развивать, совершенствовать и применять в реальных системах (навигационные сервисы, робототехника и др.).&lt;br /&gt;
&lt;br /&gt;
[[Файл:Pplru-1.png|320px]][[Файл:Pplru-2.png|320px]]&lt;br /&gt;
&lt;br /&gt;
В рамках предлагаемого проекта вы познакомитесь с основными &amp;#039;&amp;#039;&amp;#039;методами планирования траектории на плоскости&amp;#039;&amp;#039;&amp;#039;, такими как A*, Theta*, JPS, изучите теоретические основы их работы, а также программно их реализуете.&lt;br /&gt;
&lt;br /&gt;
В дальнейшем возможно развитие проекта с его трансформацией в дипломную работу (выпускную квалификационную работу бакалавра) высокого уровня, содержащую как научную часть (методы и алгоритмы интеллектуального планирования траектории), так и практическую – программную реализацию алгоритмов. В дальнейшем также возможно участие в научных исследованиях и проектах по этой тематике (написание статей, поездки на конференции и т.д.).&lt;br /&gt;
&lt;br /&gt;
PS: Пример системы, разработанной моими студентами в рамках проектных/курсовых/дипломных работ: &amp;#039;&amp;#039;&amp;#039;[http://pathplanning.ru pathplanning.ru]&amp;#039;&amp;#039;&amp;#039; (используется привязка к реальным данным Openstreetmaps + собственноручно реализованные алгоритмы планирования).&lt;br /&gt;
&lt;br /&gt;
PPS: Обратите также внимание на проекты [http://wiki.cs.hse.ru/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Panov.ai А.Панова].&lt;br /&gt;
&lt;br /&gt;
=== Чему вы научитесь? ===&lt;br /&gt;
* алгоритмам эвристического поиска на практике&lt;br /&gt;
* основам ООП на практике (работа с классами)&lt;br /&gt;
* современным технологиям разработки ПО (IDE, отладка и др.)&lt;br /&gt;
* основам разработки кросс-платформенных приложений&lt;br /&gt;
&lt;br /&gt;
=== Какие начальные требования? ===&lt;br /&gt;
* базовая математическая и алгоритмическая подготовка.&lt;br /&gt;
* С/С++.&lt;br /&gt;
* основы ООП.&lt;br /&gt;
* технический английский (для чтения руководств, статей и пр. научно-технической литературы).&lt;br /&gt;
&lt;br /&gt;
=== Какие будут использоваться технологии? ===&lt;br /&gt;
* C++ в качестве языка программирования.&lt;br /&gt;
* Qt.Creator в качестве IDE.&lt;br /&gt;
* XML в качестве формата входных/выходных данных.&lt;br /&gt;
&lt;br /&gt;
=== Темы вводных занятий ===&lt;br /&gt;
* О проблеме планирования траектории, ее месте в искусственном интеллекте и робототехнике&lt;br /&gt;
* О планировании траектории, как о задаче поиска пути на графе специального вида (формальная постановка задачи, основные методы и алгоритмы)&lt;br /&gt;
* О среде разработки Qt.Creator, об используемых форматах входных/выходных данных&lt;br /&gt;
* Об эвристических алгоритмах поиска пути на графе специального вида&lt;br /&gt;
* О программной реализации алгоритмов семейства A* (декомпозиция на функциональные блоки, выбор структур и контейнеров для хранения данных поиска)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Занятия будут проводится в течении всего срока выполнения проекта и соответствовать текущей фазе (сначала - общие вопросы, потом - специализированные).&lt;br /&gt;
&lt;br /&gt;
=== Направления развития ===&lt;br /&gt;
* Планирование в 3D&lt;br /&gt;
* Any-angle и angle-constrained планирование (ANYA*, LIAN и др.)&lt;br /&gt;
* Многоагентное планирование (M*, CBS и др.)&lt;br /&gt;
* Планирование в динамической среде (D*, D* Lite)&lt;br /&gt;
* Алгоритмы семейства RRT&lt;br /&gt;
* Разработка GUI-утилит для систем планирования (редакторы карт, трассировщики, отладчики, визуализаторы и др.)&lt;br /&gt;
&lt;br /&gt;
Отдельное направление развития - интеграция разработанных методов в системы управления мобильными роботами. Как первый шаг в этом нарпавлении - интеграция с ROS, Gazebo (для TurtleBot). После успещного выполнения проекта возможент перенос алгоритма на реального робота.&lt;br /&gt;
&lt;br /&gt;
=== Критерии оценки ===&lt;br /&gt;
4-5: Функционал A* (и Dijkstra) реализован в программном коде, все опции (разрешенные движения, вес  и тип эвристики, разрешенные движения и пр.) hard-coded, проект компилируется и корректно работает (выходной файл требуемого формата, результат работы алгоритма совпадает с эталоном).&lt;br /&gt;
&lt;br /&gt;
6: Функционал A* (и Dijkstra) реализован в программном коде, поддерживаются все необходимые опции поиска (разрешенные движения, вес и тип эвристики и пр.), проект компилируется и корректно работает (выходной файл требуемого формата, результат работы алгоритма совпадает с эталоном).&lt;br /&gt;
&lt;br /&gt;
7: Функционал A* (и Dijkstra) реализован в программном коде, поддерживаются все необходимые опции поиска (разрешенные движения, вес и тип эвристики и пр.), проект компилируется и корректно работает (выходной файл требуемого формата, результат работы алгоритма совпадает с эталоном). Поддерживаются разные уровни логирования (вывода промежуточной информации).&lt;br /&gt;
 &lt;br /&gt;
8: То же, что и на оценку 7 + реализован алгоритм Theta*. &lt;br /&gt;
&lt;br /&gt;
9: То же, что и на оценку 8 + реализован алгоритм Jump Point Search.&lt;br /&gt;
&lt;br /&gt;
10: Вполнено дополнительное индивидуальное задание по согласованию с ментором (это может быть реализация более продвинутого алгоритма, перенос алгоритма на реального робота и пр.).&lt;br /&gt;
&lt;br /&gt;
=== Ориентировочное расписание занятий ===&lt;br /&gt;
По договренности:&lt;br /&gt;
ПН 16:40-18:00;&lt;br /&gt;
ПТ 16:40-18:00;&lt;br /&gt;
&lt;br /&gt;
+ телеграмм-группа 24/7 для максимально-оперативного решения вопросов.&lt;/div&gt;</summary>
		<author><name>imported&gt;Kyakovlev</name></author>
	</entry>
</feed>