Регистрация | Последние сообщения | Персональный список | Поиск | Настройка конференции | Личные данные | Правила конференции | Список участников | Top 64 | Статистика раздела | faq | Что нового v.2.3 | Чат
Skunk Forum - Техника, Наука, Общество » Форум разработчиков РЭА »
Нейросеть (страница 1)

Версия для печати (настроить)
Страницы: 1 2

Новая тема | Написать ответ

Подписаться

Автор Тема:   Нейросеть
andrew_kv
Junior Member

Сообщений: 17
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 27 Октября 2004 14:23ИнфоПравкаОтветитьIP

Необходимо реализовать нейроблок(на ПЛИС) выбора оптимального направления судна(при движении к цели), с учетом его(корабля) мат модели и модели окружающей среды.

Подскажите какой-нибудь форум(если есть такой), где сидят ярые "нейросетевики". Или ссылки интересные по адаптации нейронов, сетям Хопфилда и т п
Заранее спасибо.
(и почему я редко ходил на "нейрокомпьютеры"...)

Dikoy
Member

Сообщений: 574
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 28 Октября 2004 14:31ИнфоПравкаОтветитьIP

andrew_kv
В смысле, блок-эмулятор? Типа, чтобы он думал, что он корабль, и плыл к цели?
При чём тут нейросеть?.. Что то я не врубаюсь...

andrew_kv
Junior Member

Сообщений: 18
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 30 Октября 2004 08:31ИнфоПравкаОтветитьIP

[q]Dikoy писал:
andrew_kv
В смысле, блок-эмулятор?
Нет, не эмулятор. На вход платы подаются данные о внешней среде(гидродинамическая и аэродинамические составляющие) Необходимо исходя из этого расчитать оптимальный вектор направления. Дальше необходимо двигаться по курсу, но при 'незначительных' изменениях адаптироваться к текущему курсу. При более серьезных изменениях расчитать новый вектор направления.


При чём тут нейросеть?.
Если движение по прямой, по-моему очень удобно просто реализовать нейрон с адаптацией по входу(правда есть еще над чем подумать). Сложнее с поворотом. Вот для этого и хотелось восстановить знания по нейросетям.
Т.О. Все необходимо реализовать в ПЛИС
Кстати забыл. Под кораблем еще есть батискаф, который является задающим в данном случае(на него не действуют аэродинамические состовляющие, и корабль должен ориентироваться и на него)
То есть это ничто иное как исследование акватории с помощью батискафа.

Vadd
unregistered
написано 01 Ноября 2004 22:58  ПравкаОтветитьIP

А что мужики авторулевой, как яхте, поставмть слабо? Он и направление ветра учитывает и GPS есть. Плыви - не хочу.

Dikoy
Member

Сообщений: 577
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 02 Ноября 2004 14:38ИнфоПравкаОтветитьIP

andrew_kv
Про ПЛИС и алшгоритмы здесь уже Бумер вопрошал. Немного не та тема,но почитать стоит.
Не понимаю, зачем нейрон и нейросеть... Если я помню биологию, то простейший нейрон (спинной мозг), это типа транзистора - вход управления и два "контакта" "нагрузки". Более же сложные, это наши И и ИЛИ элемнты...
Имхо, простейший алгоритм адаптации можно написать на С за неделю и грузануть в какую нибудь Мегу. И её 16 МГц хвати с лихвой - помню систему стабилизаци морского гравиметра делал на 2313 с внешним АЦП, которое давало всего 300 выборок/с. И всё рапотало, т.к. частота качки не более 5 Гц... Да и верер меняется не молниеносно...

Чем обусловлен выбор ПЛИС? (только честно ).

andrew_kv
Junior Member

Сообщений: 19
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 03 Ноября 2004 08:13ИнфоПравкаОтветитьIP

цитата:
Dikoy писал:
andrew_kv

Не понимаю, зачем нейрон и нейросеть...
Очень удобно, в том плане, что она учитывает ВСЕ возможные внешние возмущения, и как оказалась довольно проста в реализации, и позволяет совершать маневры по любой 'фигуре'. Я имею ввиду не простой нейрон(от него я отказался), а сеть нейроэлементов(не нейронов). Просто выделяем коридор движения, и далее возбуждение передаваемое целью будет постоянно корректировать курс. По моему очень удобно. Но остался вопрос. У меня помимо корабля есть батискаф. Курсы должны быть у них одинаковы, а воздейсвия разные.!На кого мне ориентироваться при выборе вектора направления?...

Чем обусловлен выбор ПЛИС? (только честно
Сеть нейроэлементов помоему довольно просто и удобно разместить именно в плис. Можно конечно имулировать ее, но помоему это никчему
Да и задачи такого плана всегда решались именно на этой основе.
(Была такая задачка, управление адаптивным мобильным роботом, на основе ее и пришло в голову сделать что то похожее и для корабля)
Насчет Бумера-вы имеете ввиду ген. алгоритмы?Интересно, но у к меня к счастью нет ни обучения сети, ни тем более модификации структуры.


Добавление от 03 Ноября 2004 08:17:

[Q]Vadd писал:
Он и направление ветра учитывает и GPS есть. Плыви - не хочу.



Можно поподробнее?

[Это сообщение изменил andrew_kv (изменение 03 Ноября 2004 08:34).]

Dikoy
Member

Сообщений: 578
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 03 Ноября 2004 15:33ИнфоПравкаОтветитьIP

andrew_kv
Это такой автопилот для яхты. Стоит, правда, как пол яхты, но про структуру (образно) можно почитать на сайтах разных яхтклубов.

Добавление от 03 Ноября 2004 15:43:

На кого мне ориентироваться при выборе вектора направления?...
Батискаф важнее и менее манёвренен (?), значит на него.

Всё равно, эта система мне очень напоминает систему самонаведения первых ракет: ИК фотодиод разделён на 5 секторов: центр и 4 вокруг. инза фокусирует излучение от цели в точку, которая проецируется лищь на один сектор. За сектором - сразу усилитель и руль (крест накрест). Вот и получается, что если засвечен левый сектор, срабатывает правый руль. Правый сектор - левый руль. Так вот ракета и рыскает по вектору цели (классическая астатическая система стабилизации), стремясь бесконечно приблизится к прямолинейному движению на цель.
А вот амплидуда рысканья (без которого никак) зависит уже от скорости качества аппаратуры Ну, и инертности объекта управления конечно.

andrew_kv
Junior Member

Сообщений: 20
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 03 Ноября 2004 16:40ИнфоПравкаОтветитьIP

Я так понимаю много различных реализаций данного подхода(так к примеру делали наш лунаход). У меня просто вместо фотодиодов элементы,которые либо возбуждаются, либо тормозятся(если препятствие). И движение возможно не только по прямой.
Вопрос:
К примеру у меня слабое гидродинамическое воздействие, и сильное аэродинамическое. То в такой ситуации на кого ориентироваться. И как вообще разграничить такие случаи?Может что-то типа значимость*воздействие и сравнить результаты для батискафа и корабля?...

Dikoy
Member

Сообщений: 582
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 07 Ноября 2004 02:49ИнфоПравкаОтветитьIP

andrew_kv
элементы,которые либо возбуждаются, либо тормозятся(если препятствие).
Акселерометры нешто?
И движение возможно не только по прямой.
Дык и ракеты летали не по прямой - цель то движется, да ещё и увернуться пытается... Просто в каждый момент времени есть некая прямая, связывающая текущее положение ракеты и цель. Вот к ней ракета и стремиться приблизиться. В итоге ракета летит по своей случайной траэктории, но при этом совершает колебания вокруг неё (авиационный термин - рысканье), т.к. принцип астатической системы лежит на перерегулировании. Это когда всегда есть некая "ошибка" между текущим положением ракеты и направлением на цель. Система наведения (аки стабилизации) стремится эту ощибку убрать, но, поворачивая, например, влево, ракета неминуемо проскочит идеально точное направление. Возникнет противоположная ошибка. Ракета станет поворачивать вправо и опять проскочит. Так она и будет колебаться, пока не впилится в цель.
Насколько я понял, тебе оно и надо - при 'незначительных' изменениях адаптироваться к текущему курсу. То есть простая система стабилизации. А вот что значит "расчитывать новый курс", я не понял... Если идёт исследование, то маршрут, как правило, проложен изначально, загружен в комп корабля и он (корабль) следует этому маршруту. И ничего расчитывать не должен - лишь отрабатывать внешние воздействия так, чтобы оставаться на маршруте.
Причём, учитывая инертность корабля и низкую его скорость (не ракетные 900 км/ч), амплитуду рысканья можно свести к нескольким сантиметрам...
Вопросы:
Курс следования корабля предварительно заложен, или выбирается самим кораблём (оператором) в процессе?
Батискаф и корабль должны идти друг над другом?
Они идут одним курсом, или корабль должен следовать за батискафом?
Что это за аэродинамические и гидродинамические воздействия? Ветер и течение?

Может что-то типа значимость*воздействие и сравнить результаты для батискафа и корабля?...
Как говаривал дедушка Ньютон: главное правильно выбрать точку отсчёта.
Смотри, если мы разместим точку на лопатке турбины самолёта, то при его полёте и фиксации положения точки с земли мы получим сложное трёхмерное движение в виде спирали. С борта же самолёта мы получим два простых одномерных движения - вращательное и колебательное. Т.е. правильно выбранная точка отсчёта способна сократить число отрабатываемых воздействий.
Например, если ты будешь фиксировать положение корабля со спутника по GPS, то тебе вообще пофих, какие воздейсвия идут на твой корабль. Есть ось Х и ось Y. И координатная сетка. Вот и отрабатывай себе эти две координаты
Здесь или на Иксбите (не помню) уже обсуждалась тема контроля над таксистами и дальнобойщиками (и моя, за поездами). Так там как раз GPS модуль стоял, который имел интерфейс с мк. А тот уже либо протоколиловал координаты через период T, либо отправлял из в виде SMS через GSM модем.
Реши для себя, какой объект и относительно чего надо стабилизировать. И относительно него "смотри на мир"

andrew_kv
Junior Member

Сообщений: 22
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 07 Ноября 2004 08:03ИнфоПравкаОтветитьIP


Вопросы:
Курс следования корабля предварительно заложен, или выбирается самим кораблём (оператором) в процессе?

Курс корабля выбирается самим кораблем(что бы были наименьшие воздействия на него, а дальше исследуемые карты склеиваются)

Батискаф и корабль должны идти друг над другом?

Да

Что это за аэродинамические и гидродинамические воздействия? Ветер и течение?

Да

Кстати, а как быть с точностью GPS. Насколько я помню это порядка 15 метров. Никак его нельзя компенсировать?

AlexOr
Member

Сообщений: 437
Откуда: СПб
Регистрация: Май 2003

написано 08 Ноября 2004 04:25ИнфоПравкаОтветитьIP

Dikoy
принцип астатической системы лежит на перерегулировании
Система называется астатической, если при постоянной величине задания ошибка регулирования равна к нулю.
Есть еще понятие астатизма высших порядков это когда ошибка нулевая даже при неравенстве нулю производных задания.

andrew_kv
Сеть нейроэлементов помоему довольно просто и удобно разместить именно в плис.
Только ради скорости, а это всяко не та задача.
Имхо вы попались на вузовские сказки.

Dikoy
Member

Сообщений: 585
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 11 Ноября 2004 15:20ИнфоПравкаОтветитьIP

andrew_kv
Кстати, а как быть с точностью GPS. Насколько я помню это порядка 15 метров. Никак его нельзя компенсировать?
Сейчас наши Глонас мастерят. Там, вроде, 2м обещают...
Кроме того, точность можно повысить более качественной приёной аппаратурой. Мне, наапример, трудно представить морское судно, не снабжённое сейчас GPS... Даже на буксиры их ставят...

Батискаф и корабль должны идти друг над другом?
Да

Тогда, ИМХО, надо делать две отдельные системы: курсовая для корабля, и стабилизации (слежения) для батискафа относительно корабля. Т.е. батискаф привязан к кораблю, а тот сам по себе.

Курс корабля выбирается самим кораблем
Ну, это уже искуственный интеллект получается Я так понимаю, корабль бороздит залив, стараясь выбирать курс по местам с наименьшим течением и ветром. Вот только узнать, какое там течение и ветер, он может только попав туда (идею с микророботами-зондами откинем). Значит, он должен как та ракета, метаться по заливу в поисах тех самых "точек минимального воздействия"... Чо то я совсем запутался...

AlexOr
Только ради скорости, а это всяко не та задача.

Весельчак У
Moderator

Сообщений: 6041
Откуда: Санктъ-Питербурхъ
Регистрация: Декабрь 2000

написано 12 Ноября 2004 02:06ИнфоПравкаОтветитьIP

Dikoy
Сейчас наши Глонас мастерят. Там, вроде, 2м обещают...
Только в совместных системах GPS+Глонас.

andrew_kv
Junior Member

Сообщений: 23
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 13 Ноября 2004 21:41ИнфоПравкаОтветитьIP

[q]Dikoy писал:
andrew_kv

Значит, он должен как та ракета, метаться по заливу в поисах тех самых "точек минимального воздействия"... Чо то я совсем запутался...

Не совсем. Не надо находить никаких "точек минимального воздействия". Необходимо определить ВЕКТОР НАПРАВЛЕНИЯ движения из текущей точки и двигаться по нему, далее параллельным курсом исслдовать следующую полосу и т д Таким образом получится карта дна. А если условия резко меняются, то расчитываем новый вектор и начинаем новую карту, а потом их склеиваем(карты).

Добавление от 13 Ноября 2004 21:49:

цитата:
AlexOr писал:

andrew_kv
Сеть нейроэлементов помоему довольно просто и удобно разместить именно в плис.
Только ради скорости, а это всяко не та задача.
Имхо вы попались на вузовские сказки.



Я так понял вы предлагаете реализовать нейросеть програмно? Или как? Что то я плохо понимаю... А чем не подходит ПЛИС-реализация?
Не совсем понял насчет вузовских сказок.

Dikoy
Member

Сообщений: 587
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 14 Ноября 2004 00:28ИнфоПравкаОтветитьIP

andrew_kv
определить ВЕКТОР НАПРАВЛЕНИЯ движения из текущей точки
Главный вопрос: куда? Куда из текущей точки? Вот этого я и понять не могу, ибо понятие оптимального курса весьма растяжимо...
То есть корабль должен двигаться из этой точки куда угодно, лижь бы это направление было самым лёгким по преодолению? А потом, если началось волнение, драпать в тихую гавань? И всё это без участия человека? А в батискафе люди есть?

Отвечаю за AlexOr-а, надеюсь, не обидется
Я так понял вы предлагаете реализовать нейросеть програмно?
А в ПЛИС ты её как организовывать собрался? Ассеблер и верилог - вот языки плис...
А на С указанный алгоритм сделать, ИМХО, гораздо проще, чем эмулировать работу мозга, да ещё на таких бешеных ПЛИСовых скоростях, что в морских системах совсем не нужно...

А чем не подходит ПЛИС-реализация?
У тебя предполагается много математики. А ПЛИС, чтобы это потянула хотя бы по объёму "памяти" (это понятие - чисто условное), нужна штук за 10р... Оно надо? ATmega за 93р имеет от 8 до 128 кб флеш ПЗУ и 16 МГц тактовой частоты, что при производительности 1 MIPS даёт 16 миллионов инструкций в секунду, что соизмеримо с мощьностью компьютера Искра. Прогу пишем на С и грузим туда, и всё будет нормально. А ПЛИС сейчас применяются только там, где нужно минимум функций и мексимуми скорости, типа драйверов PCI шины, т.к. скорость,это единственное, чем они превосходят МК.

Не совсем понял насчет вузовских сказок.
Просто в наших вузах, за счёт их инерционности, учат, как правило, с 20 летним отставанием. 20 лет назад МК ещё небыло, а то, что было, назвать МК трудно... Вот и делали всё на ПЛИС. А сейчас картина изменилась...

AlexOr
Member

Сообщений: 440
Откуда: СПб
Регистрация: Май 2003

написано 14 Ноября 2004 03:42ИнфоПравкаОтветитьIP

Dikoy

andrew_kv
Junior Member

Сообщений: 24
Откуда: Таганрог, Россия
Регистрация: Январь 2004

написано 14 Ноября 2004 12:22ИнфоПравкаОтветитьIP

[Q]Dikoy писал:
andrew_kv

Главный вопрос: куда? Куда из текущей точки? Вот этого я и понять не могу, ибо понятие оптимального курса весьма растяжимо...
То есть корабль должен двигаться из этой точки куда угодно, лижь бы это направление было самым лёгким по преодолению? А потом, если началось волнение, драпать в тихую гавань?

Нет. Выбираем направление которое было 'самым лёгким по преодолению' а далее идем по нему определенное расстояние, поворачиваем обратно,идвижемся параллельным курсом(ширина между курсами зависит от эхолота и глубины, предполагается использовать 100-лучевой эхолот). Такимо бразом получаем карту морского дна. А если условия меняются, меняем вектор и начинаем новую карту, далее их склеиваем...


А на С указанный алгоритм сделать, ИМХО, гораздо проще, чем эмулировать работу мозга, да ещё на таких бешеных ПЛИСовых скоростях, что в морских системах совсем не нужно...

Я же говорил, что я не использую нейронов как таковых. И я не 'эмулирую работу мозга'. У меня сеть нейроэлементов, не нейронов(очень простых). Они и нейроэлементами то называются с натяжкой. Просто элемент передает возбуждение в 4 направлениях соседним элементам, а препятствие тормозит распространение.
Данную схему УДОБНЕЕ реализовать не на языке, а графически!(как ни странно). Написал эмулятор сети на си и полсе этого решил все делать графически.


У тебя предполагается много математики.
Как раз математики немного(даже мало)-только при выборе вектора.

А ПЛИС, чтобы это потянула хотя бы по объёму "памяти" (это понятие -
чисто условное), нужна штук за 10р...

Памяти надо тоже 'немного' я думаю обойдусь сотней макроячеек(может две)- это под сеть.
Насчет ATmega. Фишка схемы в том, что она работает параллельно. Если писать на языке, то все усложняется и нарастает ненужными деталями.

[Это сообщение изменил andrew_kv (изменение 14 Ноября 2004 12:34).]

Dikoy
Member

Сообщений: 592
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 14 Ноября 2004 13:37ИнфоПравкаОтветитьIP

andrew_kv
Написал эмулятор сети на си и полсе этого решил все делать графически.
Так в том то и дело, что писать эмулятор сети на С не придётся... Сеть, она для ПЛИС, а в МК всё можно математикой решить.

Ну, например: у тебя есть два прибора, фиксирующих направление и величину векторов течения и ветра. То есть от них ты получаещь инфу типа a,x1,y1, где a - величина вектора в каких нить единицах, а x и y - некие координаты точки конца вектора на эмпирическом круге вокруг корабля (начало вектора - точка установки измерительного прибора). Или, a,b, где b - угол поворота прибора относительно курсовой оси корабля... Это уже не столь важно.
Далее, надо знать парусность надводной и подводной части корабря. В упрощении, она может быть выражена плоской проекцией корабля с данной "точки зрения" (то есть по вектору направления воздействия). Площадь этой поверхности есть площадь паруса. Т.к. корабль, наверняка, будет не очень большой, то зависимостью силы ветра от высоты можно пренебреч.
Вот тебе и мат. модель - библиотека площадей с разных точек зрения. Получается путём фотографирования корабля по кругу с интервалом, например, 10 градусов.
Зная силу воздействия и его направление можно, взяв значение парусности для этого направления, расчитать силу F, воздействующую на корабль по каждому направлению (т.е. с какой силой и в каком направлении каждое воздействие "давит" на корабль). А уж зная её легко прогнозировать смещение К с курса и другие нехорошие вещи. Тут уже школьная физика работает и векторная алгебра.
Ну и что, такой алгоритм трудно реализовать на С? Да тут ATmega8 хватит с головой...
У неё ещё есть встроенный 8-и канальный 10 битный АЦП, что позволит снимать параметры ветра и течения с уже установленных на корабле приборов...

Кстати, мега ещё и имеет встроенный флеш для программной записи информации. Его можно использовать для самообучения системы. Как? Да просто: например, расчитал ты оптимальный курс. Направил туда свой пепелац, потом программа быстренько прогнозирует, какое смещение курса произойдёт при таких вот воздействиях, исходя из библиотеки твоих констант. Если реальное смещение через время Т отличается от расчётного, константа пересчитывается. Так можно через пару дней плаваний по заливу скорректировать библиотеку констант (заметь, без твоего участия), исходя из парусных характеристик конкретного корабля.


Могу прислать примеры кодов работы с АЦП и т.д. Кстати, они в Экзамплах КодеВижна есть

Добавление от 14 Ноября 2004 13:41:

Фишка схемы в том, что она работает параллельно
Вон, у AlexOr-а спроси про многозадачность

Если писать на языке, то все усложняется и нарастает ненужными деталями.
Как раз наоборот

Ваш ответ:

Коды форума
Смайлики


Ник:    Пароль       
Отключить смайлики
Страницы: 1 2

Все время MSK

Склеить | Разбить | Закрыть | Переместить | Удалить

Новая тема | Написать ответ
Последние сообщения         
Перейти к:

Свяжитесь с нами | skunksworks.net

Copyright © skunksworks.net, 2000-2018

Разработка и техническая поддержка: skunksworks.net


Рейтинг@Mail.ru Яндекс.Метрика