В 2009 году я разместил на вики робофорума:
http://roboforum.ru/wiki/RoboBrain_Interchange_LanguageТам есть интересные элементы, например, PredefinedMsgType, которых 22 шт. По сути они определяют виды сообщений: вопрос, утверждение, просьбу и т.д. Весьма интересно в плане формализации не только программирования, но и обычного общения с роботом.
Вся документация FIPA находится здесь:
http://www.fipa.org/repository/standardspecs.htmlЕсли же заняться общением хотя бы двух роботов между собой по любому каналу связи, даже речевому, то тут русский язык становится некоторой помехой ввиду неоднозначности большинства слов и выражений. Тогда можно было бы рассмотреть язык FIPA SL (Semantic Content Language):
http://www.fipa.org/specs/fipa00008/SC00008I.htmlВ этом документе есть описание самого простого подмножества этого языка:
4.1 FIPA SL0: Minimal Subset
Возвращаясь к предложенному Scorpio голосовому редактору правил, отмечу, что он обладает некоторыми недостатками:
1. При всей простоте человеку необходимо помнить и четко соблюдать при произношении синтаксис и семантику этого языка программирования правил. В голове у человека перед произношением должно сформулироваться и держаться в словесной форме все правило, т.к. по ходу произношения ничего уже нельзя будет изменить. А т.к. люди могут запомнить только простые словесные конструкции, то сложные правила вряд ли можно будет использовать. Это заметно сужает возможности применения данного редактора.
2. Этот голосовой редактор правил полностью эквивалентен обычному написанию продукционных правил на любом языке программирования.
А, как известно, применение сотен и тысяч правил в роботах и диалоговых системах не дали хорошего результата ввиду противоречивости базы этих правил. И чем больше эта база, тем больше неочевидных и очевидных противоречий в ней появляется. По существу, некоторые наборы правил противоречат другим и у робота при этом отсутствует эффективный механизм по разруливанию этих противоречий в момент принятия окончательного решения.
Главным плюсом данного редактора является прикольность обучения робота простейшим командам, лежа на диване.