Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Prolog и DSP
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
sevstels
Хочу прояснить вопрос компиляции с Prolog под BlackFin DSP.
Имел ли кто аналогичный опыт, или где можно посмотреть методику?
DRUID3
Prolog это ЙОзыГ такой? 07.gif
А с чего вдруг возникла потребность? В НИИ нашли древний фолиант с исходниками ИИ на "прологе" но требующим заоблачных для конца 80-х 800 MIPS? biggrin.gif biggrin.gif biggrin.gif
Напишите транслятор в C. И то будет проще чем свой корявый компилер.
Для bf можно писать на asm, C/C++ и fortran. Причем последний только исполняемые из под Linux файлы дает.

добавил!:
Забыл-забыл-забыл!!! biggrin.gif
Еще на FORTH можно!
sevstels
Вроде как в умных книжках пишут, что Prolog сильно упрощает и многократно ускоряет разработку систем ИИ. Или уже существует более мощный язык?
fontp
Цитата(sevstels @ Dec 24 2009, 10:47) *
Вроде как в умных книжках пишут, что Prolog сильно упрощает и многократно ускоряет разработку систем ИИ. Или уже существует более мощный язык?



LISP рулит 08.gif

Они в большинстве своём интерпретаторы. Но можете найти в исходниках "Open GNU Prolog" компилятор и портировать.
Только он будет тормоз на DSP. Насколько он ускоряет эксперту разработку, на столько он и замедляет real-time обработку. Задачи ИИ - это перебор по дереву решений, выполняемый Прологом (или Лисп) незаметно для эксперта рекурсивно. И хотя язык позволяет формулировать правила усечения дерева, делает он это на уровне прикладных объектов эксперта, т.е. не очень то эффективно. Не говоря уже о том, что рекурсия не есть очень хорошая идея для процессоров с длинным конвейером и коротким стеком.

Смысл Пролога в том, чтобы эксперт сам писал экспертную систему без программистов, просто формулирую предикаты в своей предметной области. А реализация по быстродействию как получится, делается искусственным интеллектом. Я не думаю, что в этом есть какой-то смысл для DSP. Разве что у вас есть готовая уникальная экспертная система, и её нужно куда-то портировать сохранив её "знания"
sevstels
Цитата
замедляет real-time обработку

Быстро молотить не надо ... надо хорошо и с минимальными писательскими "экспериментами".
DSP потому, что ставить ещё один процессор на плату под эту короткую задачу экономически не целесообразно.

-
fontp
Цитата(sevstels @ Dec 24 2009, 11:03) *
Быстро молотить не надо ... надо хорошо и с минимальными писательскими "экспериментами".
DSP потому, что ставить ещё один процессор на плату под эту короткую задачу экономически не целесообразно.

-


Поиск в Гугле даёт три GNU-шных компилятора Prolog. А кодогенератор под DSP сами напишете?
Мне кажется идея не очень. Большая система не полезет в DSP, а маленькую проще запрограммировать на С
DRUID3
Цитата(sevstels @ Dec 24 2009, 09:47) *
Вроде как в умных книжках пишут, что Prolog сильно упрощает и многократно ускоряет разработку систем ИИ. Или уже существует более мощный язык?



biggrin.gif biggrin.gif biggrin.gif конечно! "Мозго..б" по-нашему biggrin.gif ...

А если серьезно то:

1) причем тут bf? 07.gif Ему это-то зачем?
2) AI это ну о-о-очень расплывчатое понятие. Перехватывать сетевой трафик и парсить в нем тексты писем - это совсем другой ИИ чем распознавать пьяные рожи с видеоустройства. Ну о-о-очень другой.
3) В книжках пишут много всякой белиберды. Помните этот костер в виде свастики? smile.gif Не скажу за все, что тогда туда бросали, но "эти"(где утверждается, что "пролог" это то что так долго ждали разработчики ИИ) можно смело в него бросить.

В годы моего детства(как раз времена пролога) можно было прочесть 2-е книжки и стать компетентным в большинстве аспектов программирования(ну для СССР имеется ввиду). С тех времен возникло столько языков, парадигм, паттернов и приемов... написаны тоны книг...
Пески времени замели Ваш пролог. sad.gif

Чем плох C? (из него растут ноги практически у всех современных языков - C++,Java,ObjC,C#,etc)
Что-то на нем не можете выразить? Что?

!!! отвечал не видя сообщений fontp biggrin.gif
sevstels
Хорошо, а что Вы можете посоветовать использовать для опознавания простейших геометрических фигур на рисунке, из доступных источников как тут? Чтоб потестить сначала на PC, потом перенести на плату.
DRUID3
Попробуйте OpenCV.
Но я - не пробовал. Очень большой для меня, обломался изучать...

Вот еще хороший проект(кажется он и юзает OpenCV). Нет времени в нем покопаться sad.gif ...

Попал я на эти проекты с ресурса нашего соучаснеГа, за что ему отдельное спасибо! wink.gif
sevstels
Да, действительно интересная либа.
Займусь после НГ вплотную, спасибо. smile.gif
DRUID3
Кстати насчет LISP'а будет по-проще намного... Вот для этого диалекта существует доступный транслятор на язык C... Так что если в НИИ завалялись уникальные наработки - есть шанс перенести их на любую современную платформу...
sevstels
Да не, ничего не завалялось. Просто хотелось решить проблему минимальными усилиями.
В принципе, OpenCV оптимальный вариант на первый взгляд. Как реально она будет работать, пока затруднясь предположить. Хотя демки с Ютуба меня впечатлили.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.