2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки





Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 17:00 


02/04/16
29
Областной центр
Что лучше использовать для более быстрой разработки: R, Python или Matlab? Хочу попробовать применить deep learning к управлению дорожным движением на "манхэттанской решетке". "Манэттанская решетка" - это дорожно-транспортная сеть (ДТС) прямоугольной планировки, типа той, которая есть на Манхэттане и в центре Санкт-Петербурга. Нужно симулировать хотя бы грубо движение машины с заданным маршрутом по улицам и перекресткам этой решетки. Мат. модель с простейшем случае будет выглядеть так: машины двигаются либо с постоянной скоростью, либо разгоняются с постоянным ускорением, либо тормозят с постоянным ускорением, либо стоят на месте перед красным сигналом светофора, либо стоят перед стоящей впереди машиной. Задано расстояние между передними бамперами стоящих друг за другом машин, задано минимальное расстояние между передними бамперами движущихся друг за другом машинами, оно определяется расстоянием безопасного торможения. Машины могут проезжать регулируемые перекрестки на "зеленый свет" прямо, либо сворачивать на боковые улицы.
Цель работы - посмотреть, как будет работать моя идея с целью скорейшей публикации возможной статьи в журнале типа "Нейрокомпьютеры, разработка, применение" или подобного ему. Я знаю, что на Питоне есть графические библиотеки, с помощью которых можно наглядно показать движение машин по ДТС, но боюсь, что программная реализация будет довольно трудоемкой. Нельзя ли подобную систему, моделирующую движение машин по ДТС, реализовать с помощью языка программирования Matlab? Если да, то можно ли также на Matlab реализовать алгоритмы, реализующие deep learning?

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 17:12 


26/05/14
284
Посмотрите на python + TensorFlow.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 17:54 
Аватара пользователя


31/10/08
749
На данном форуме не приветсвуется халява. Студент 1 курса должен научится самостоятелному поску нужной информации.

Когда найдёте тогда и сможете решить каким языком пользоваться.
После когда устроитесь на работу будете писать эскизные проекты, навыки по поиску вам пригодятся.

На вашем месте я бы искал в средах Си++ или Java - они популярны. Следовательно на них написа больше библиотек, вероятность найти что-то готовое повышается.

И deel lening - это не алгоритм. Это игра слов означающий переход поисковиков от простых класификаторов к сложным.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 20:58 


02/04/16
29
Областной центр
Pavia в сообщении #1165466 писал(а):
На данном форуме не приветсвуется халява. Студент 1 курса должен научится самостоятелному поску нужной информации.

Когда найдёте тогда и сможете решить каким языком пользоваться.
После когда устроитесь на работу будете писать эскизные проекты, навыки по поиску вам пригодятся.

На вашем месте я бы искал в средах Си++ или Java - они популярны. Следовательно на них написа больше библиотек, вероятность найти что-то готовое повышается.

И deel lening - это не алгоритм. Это игра слов означающий переход поисковиков от простых класификаторов к сложным.

Вы неправильно меня поняли. Я - аспирант, мне пришла в голову одна любопытная идея по применению нейронных сетей в управлении дорожным движением. Хочется побыстрее проверить эту идею экспериментально на предмет возможной публикации научной статьи в научном журнале. Для этого нужно разработать моделирующий стенд, имитирующий движение машин например, по вот такой дорожно-транспортной сетке:

Изображение

В какой среде можно это сделать с наименьшими трудозатратами? Понятно, что это можно реализовать на Питоне, но меня интересует, можно ли реализовать это в среде Матлаба?

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 21:17 
Модератор
Аватара пользователя


09/05/12
9402
Кронштадт
Реализовать это можно на любом из трех рассматриваемых вариантов. Если Вы какой-то из трех языков/пакетов знаете, то им и воспользуйтесь. Если не знаете ни одного - воспользуйтесь тем, который знает научный руководитель или его коллеги, доступные Вам для общения.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 21:30 
Аватара пользователя


31/10/08
749
Quentin1 в сообщении #1165523 писал(а):
можно ли реализовать это в среде Матлаба?

Полнота по Тьюрингу и вычислимость по Чёрчу вам что-то говорит? Можно сделать всё. Вопрос что именно это? Нужна конкретика.
Quentin1 в сообщении #1165523 писал(а):
В какой среде можно это сделать с наименьшими трудозатратами?

Приведите, для вашей программы схему деления на составные части до 3 уровня.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение02.11.2016, 22:59 


12/08/14
150
Python

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 00:03 
Заслуженный участник
Аватара пользователя


01/09/13
1193
Quentin1 в сообщении #1165523 писал(а):
можно ли реализовать это в среде Матлаба?

Рекомендую - по причине большей "интерактивности" - лучше других подходит когда надо "попробовать" или "разобраться".

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 02:09 
Заслуженный участник


31/12/05
1012
С интерактивностью хорошо у всех трех (для R есть RStudio, для Python - Jupyter).

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 11:02 
Аватара пользователя


31/05/15
18
tolstopuz в сообщении #1165604 писал(а):
С интерактивностью хорошо у всех трех (для R есть RStudio, для Python - Jupyter).


К слову, Jupyter поддерживает R Kernel не хуже, чем "питоновское". Более того, пакеты R можно установить при помощи conda.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 19:13 


02/04/16
29
Областной центр
Geen в сообщении #1165586 писал(а):
Quentin1 в сообщении #1165523 писал(а):
можно ли реализовать это в среде Матлаба?

Рекомендую - по причине большей "интерактивности" - лучше других подходит когда надо "попробовать" или "разобраться".

Думаю, что в Матлабе возникнут проблемы с производительностью. Нужно смоделировать одновременно движение десятков транспортных средств на дорожно-транспортной сети города, а это потребует больших временных затрат. Здесь можно было бы использовать C++ или Java, но тут возникает проблема с трудоемкостью программирования. Интересно, как обстоит дело с быстродействием у Питона? Так же, как и у других процедурных языков?

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 19:36 


26/05/14
284
Питон - интерпретатор. Код на Питоне будет работать в 10-100 раз медленнее чем код на C++ или Java. Я бы начал с питона, прототип на нём вы напишете в пять-десять раз быстрее чем на C++. Если этот прототип не уложится в требования по производительности, то покажете его здесь, и вам опишут точный рецепт для решения задачи.
И ещё: Обычно задачи моделирования решаются с помощью специальных библиотек. Тоже относится и к обучению нейронных сетей. Многие из этих библиотек имеют интерфейс в Питоне. Тогда скорость работы языка отходит на второй план.
И ещё: Если вы хотите получить более точный ответ, надо привести больше сведений о задаче:
Что вы моделируете?
Сколько объектов в модели?
Какую задачу решаете?
Каким способом?

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 20:51 
Аватара пользователя


18/06/12

499
планета Земля
В порядке похожего, но другого вопроса: если бы мне нужно было сделать кое-что очень похожее (множество точек на карте, моделирующее автомобильный трафик в городе), только изначально многопоточное и с возможным прицелом перенести как можно большую часть вычислений на CUDA или на кластер - какие советы в этом случае? Автору советов не буду давать т.к. не специалист, но хочу узнать, из каких бы инструментов примерно делал свой выбор абстрактный всезнающий программист для того, чтобы получить, скажем так, ОЧЕНЬ много таких точек?

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 21:59 
Аватара пользователя


31/10/08
749
Eimrine
Вы тоже не говорите конкретику.
Советую вам брать инструменты, которые содержать необходимые структуры и алгоритмы, поддерживают многопоточность, CUDA.
Для кластера брать кластерную фабрику.
Язык с высокой производительностью выдаваемого кода.
Если работаете один, то тот язык который лучше знаете из тех которые подходят под предыдущие пункты. Если в команде, то стоит приглядеться к Си#.

 Профиль  
                  
 
 Re: Что лучше использовать для более быстрой разработки системы?
Сообщение03.11.2016, 22:32 


02/04/16
29
Областной центр
Хотелось бы получить нечто подобное:

(симуляция на Матлабе)
https://www.youtube.com/watch?v=NH6R3RH_ZDY

- но на более крупной городской дорожно-транспортной сети (5-20 улиц, больше 25 перекрестков).

-- 04.11.2016, 00:38 --

slavav в сообщении #1165811 писал(а):
Какую задачу решаете?
Каким способом?

Непосредственно про задачу я лучше не буду говорить, потому что она очень простая и решение ее тоже довольно простое. У меня уже бывали случаи, когда у меня "уводили" задачи. :D :facepalm: А эта задача для меня важна тем, что ее потенциально можно вынести на защиту кандидатской. :-)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.

Модераторы: Toucan, maxal, Karan, PAV, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group