Динамический ДСМ.
Моделирование некоторых простейших форм поведения: от условных рефлексов к индуктивной адаптации
Характер поведения робота задается оценочной функцией, которая в общем виде описывает, что робот должен делать. При изменении вида оценочной функции получаются различные положительные гипотезы, соответствующие разным алгоритмам движения по полосе. В данном случае использовался метод с запретом на контрпримеры — полученная положительная гипотеза не должна вкладываться в отрицательные примеры… Читать ещё >
Динамический ДСМ. Моделирование некоторых простейших форм поведения: от условных рефлексов к индуктивной адаптации (реферат, курсовая, диплом, контрольная)
Классификацию входных сигналов можно осуществлять с помощью ДСМ метода [2]. В отличие от классического ДСМ метода, который работает с замкнутым множеством исходных примеров и заранее определенными их свойствами, динамический ДСМ метод позволяет работать в открытой среде с неизвестным заранее количеством примеров и автоматической классификацией примеров с помощью оценочной функции.
Множество обучающих примеров — это множество пар вида.
E={ei}={(Xi, ui)},.
где Xi — вектор сигналов рецепторов, ui — вектор управления (состояние исполнительных механизмов). Элементы векторов сигналов и управления представляются парами двоичных значений:
включено = {01}, выключено = {10}.
Такое представление необходимо для корректного выполнения операций пересечения и вложения над битовыми строками.
Гипотезы представляются в виде множества пар вида:
G={gi}=[1],.
где xi — часть вектора сигналов рецепторов, yi — требуемый вектор управления (необходимое действие). Гипотезы существуют двух видов: положительные гипотезы определяют, при каком входном воздействии выполнять действия, приводящие к положительному результату; отрицательные гипотезы определяют, какие действия не нужно делать при данном входном воздействии.
Для классификации обучающих примеров используется оценочная функция, которая относит пример либо к положительным, либо к отрицательным. Оценочная функция задается в виде комбинации логических условий на значения вектора входных сигналов и вектора управления. Например, для движения по полосе можно задать следующую оценочную функцию:
F = (Photo1=ON) AND ((MotorLeft=ON) OR (MotorRight=ON)),.
т. е. робот должен видеть полосу первым фотодатчиком и должен двигаться — один из двигателей должен быть включен.
Алгоритм управления представляет собой бесконечный цикл:
Принятие решения для нового состояния.
— если вкладывается (+) гипотеза, то изменяем управление в соответствии с ней иначе это (t) пример, задать случайный вектор управления с учетом (-) гипотез Считывание датчиков, запоминание предыдущего состояния Ждем изменения состояния или тайм-аута Применение оценочной функции:
если удовлетворяет функции или приводит к ее удовлетворению, то это (+) пример иначе — это (-) пример Получение гипотез с помощью ДСМ, фальсификация гипотез Переход к п. 1.
Первоначально множества примеров и гипотез пусты, т. е. робот ничего не умеет. В процессе обучения робот совершает некоторые случайные действия, которые могут как приводить, так и не приводить к успешному результату.
Достижение результата определяет оценочная функция. При достижении успеха пример классифицируется как положительный, и на основе положительных примеров формируются положительные гипотезы с помощью стандартных ДСМ процедур.
Если успех не достигнут, то пример считается отрицательным и на основе отрицательных примеров формируются отрицательные гипотезы. Фальсификация полученных гипотез необходима для отсеивания «шума», т. е. лишних гипотез, которые неизбежно возникают в процессе выполнения операций получения сходства.
В данном случае использовался метод с запретом на контрпримеры — полученная положительная гипотеза не должна вкладываться в отрицательные примеры, и наоборот — отрицательная гипотеза не должна вкладываться в положительные примеры [3].
При изменении состояния входных датчиков происходит принятие решения. Если это входное состояние известно роботу, т. е. в него вкладывается положительная гипотеза, то робот должен действовать в соответствии с ней. Если же ни одной положительной гипотезы не найдено, то это неизвестное состояние — (t)пример, для которого нужно сформировать случайный вектор управления.
При формировании случайного вектора учитываются отрицательные гипотезы, которые в свою очередь определяют, что не нужно делать для данного входного состояния, тем самым сокращая время обучения.
Характер поведения робота задается оценочной функцией, которая в общем виде описывает, что робот должен делать. При изменении вида оценочной функции получаются различные положительные гипотезы, соответствующие разным алгоритмам движения по полосе.