Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В информатике , уменьшение частичного порядка представляет собой метод для уменьшения размера пространства состояний для поиска с помощью проверки модели или автоматизированного планирования и планирования алгоритма . Он использует коммутативность одновременно выполняемых переходов , которые приводят к одному и тому же состоянию при выполнении в разном порядке.

При явном исследовании пространства состояний частичное понижение порядка обычно относится к особой технике расширения репрезентативного подмножества всех включенных переходов. Этот метод также был описан как проверка модели с представителями ( Пелед, 1993 ). Существуют различные версии этого метода: так называемый метод упорных множеств ( Valmari 1990 ), метод обширных множеств ( Peled 1993 ) и метод постоянных множеств ( Godefroid 1994 ).

Обильные наборы [ править ]

Обильные наборы - это пример проверки модели с представителями. Их формулировка опирается на отдельное понятие зависимости . Два перехода считаются независимыми, только если всякий раз, когда они взаимно разрешены, они не могут отключить другой, и выполнение обоих приводит к уникальному состоянию независимо от порядка, в котором они выполняются. Переходы, которые не являются независимыми, являются зависимыми. На практике зависимость аппроксимируется с помощью статического анализа.

Обширные наборы для различных целей можно определить, задав условия относительно того, когда набор переходов является «обильным» в данном состоянии.

C0

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

Условия C0 и C1 достаточны для сохранения всех тупиков в пространстве состояний. Необходимы дополнительные ограничения, чтобы сохранить более тонкие свойства. Например, чтобы сохранить свойства линейной темпоральной логики, необходимы следующие два условия:

C2 Если каждый переход в обильном наборе невидим

C3 цикл не допускается , если она содержит состояние , в котором некоторые перехода включены, но никогда не включается в обильном (с) для любого состояния s на цикле.

Этих условий достаточно для обильного набора, но не обязательных ( Clarke 1999 ) .

Упрямые наборы [ править ]

Упрямые множества не используют явного отношения независимости. Вместо этого они определяются исключительно через коммутативность последовательностей действий. Множество (слабо) упорное в s, если выполняется следующее.

D0 , если выполнение последовательности возможно и приводит к состоянию , то выполнение последовательности возможно и приведет к состоянию .

D1 , либо является тупиковым, или таким образом, что , исполнение возможно.

Этих условий достаточно для сохранения всех взаимоблокировок , как и C0 и C1 в методе обильных множеств. Однако они несколько слабее и поэтому могут давать меньшие наборы. Условия C2 и C3 также могут быть дополнительно ослаблены по сравнению с тем, что они есть в методе обильного набора, но метод упорного набора совместим с C2 и C3.

Другое [ править ]

Существуют и другие обозначения редукции частичного порядка. Одним из наиболее часто используемых является алгоритм постоянной установки / перехода в спящий режим. Подробную информацию можно найти в диссертации Патриса Годфруа ( Godefroid, 1994 ).

При проверке символьной модели частичное снижение порядка может быть достигнуто путем добавления дополнительных ограничений (усиление защиты). Дальнейшие применения частичного сокращения порядка включают автоматическое планирование.

Ссылки [ править ]