SlideShare a Scribd company logo
Формальные методы
в робототехнике
Дмитрий Мордвинов, СПбГУ
mordvinov.dmitry@gmail.com
Юрий Литвинов, СПбГУ
yurii.litvinov@gmail.com
Санкт-Петербург, 13.11.2015
2/38
Робототехника
Робототехника как научная область
● Навигация
● SLAM
● Path Planning
● Захват (grasp)
● Медицинские роботы
● Промышленные роботы
● Взаимодействие человека и
робота
● ИИ
● Трекинг и распознавание
● Тактильные сенсоры
● Биологически вдохновленные
роботы
● Нетрадиционные шасси (двуногие,
многоногие роботы)
● Микро- и нанороботы
● Управление группами роботов
● Робототехника в образовании
● Формальные методы и
верификация
3/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
4/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
5/38
Темпоральные логики и планирование
● Antoniotti Marco, Mishra Bud. Discrete event models + temporal logic = supervisory controller: Automatic
synthesis of locomotion controllers, 1995
6/38
“Visit room r2
, then room r1
and then cover
rooms r3
, r4
, r5
- all this while avoiding
obstacles o1
, o2
, o3
”
Карта + LTL-формула
LTS + условие
корректности
Контрпример
(дискретный план)
Непрерывное
управление
7/38
“Visit all rooms”
◊r1
∧ ◊r2
∧ ◊r3
∧ ◊r4
∧ ◊r5
∧ ◊r6
Темпоральные логики и планирование
● Fainekos Georgios E, Kress-Gazit Hadas, Pappas George J. Temporal logic motion planning for mobile
robots, 2005
● Верификация vs cинтез
● Задача синтеза по LTL-спецификации в общем виде сложна!
● Класс GR(1) формул LTL
○ Piterman Nir, Pnueli Amir, Sa’ar Yaniv. Synthesis of reactive (1) designs, 2006
○
○ O(n3
)
○ Корректное “по построению” поведение
8/38
Темпоральные логики и планирование
Темпоральные логики и планирование
● Kress-Gazit Hadas, Fainekos Georgios E, Pappas George J. Where’s Waldo? Sensor-based temporal logic
motion planning, 2007
⚬ Starting in region 1
⚬ Keep checking whether a baby is crying
in regions 2 or 4
⚬ If you find a crying baby, go look for an
adult in regions 6, 7 and 8. Keep looking
until you find him
⚬ After finding the adult, go back to
monitoring the babies and so on
9/38
Темпоральные логики и планирование
● Kress-Gazit Hadas, Fainekos Georgios E, Pappas George J. Temporal-logic-based reactive mission and
motion planning, 2009
○ Произвольные действия (включение/отключение видеокамеры)
○ Реактивное непрерывное управление
10/38
● Livingston Scott C, Murray Richard M. Just-in-time synthesis for reactive motion planning with temporal
logic, 2013
○ Синтез в онлайн-режиме
Темпоральные логики и планирование
● Towards manipulation planning with temporal logic specifications / Keliang He, Morteza Lahijanian, Lydia E
Kavraki и др., 2015
11/38
● Vasile Cristian Ioan, Belta Calin. Reactive sampling-based temporal logic path planning, 2014
○ Планирование действий робота-спасателя
● Raman Vasumathi, Kress-Gazit Hadas. Synthesis for multirobot controllers with interleaved motion, 2014
○ Мультиагентная система сбора отходов
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
12/38
Сети Петри
● 1962 г., Карл Петри
● Не тьюринг-полный формализм
● Анализ сетей Петри
○ Достижимость
○ Ограниченность
○ Безопасность
○ Живучесть
13/38
Сети Петри и робофутбол
● Costelha Hugo, Lima Pedro. Robotic Tasks
Modeling and Analysis Based on Petri Nets,
2003
● Costelha Hugo, Lima Pedro. Petri net robotic task
plan representation, 2010
14/38
Сети Петри и робофутбол
● A Robotic Soccer Passing Task Using Petri Net Plans. F. Palamara, V. Ziparo, L. Iocchi и др., 2008
⚬ Задача паса в робофутболе
⚬ Высокоуровневая сеть Петри как язык программирования мультиагентных
систем
⚬ Программирование одновременно нескольких роботов
15/38
Сети Петри как ЯП роботов
● Simon Jochen, Moldt Daniel. PyTri, a Visual
Agent Programming Language, 2010
● Kashima Hideharu, Masuda Ryosuke. Cooperative
Control of Mobile Roots Based on Petri Net, 2001
Сеть Петри как dataflow-язык программирования
мультиагентных систем
16/38
Визуальный редактор и дистанционное
управление с компьютера
Сети Петри и промышленные роботы
● Aguiar Adriano Jose Cunha, Villani Emilia. Petri
Nets and Graphic Simulation for the Validation of
Collaborative Robotic Cells in Aircraft Industry,
2010
⚬ Симулятор сетей Петри для верификации и
оптимизации технологических процессов
● Конюх В.Л. Опыт применения сетей Петри
для имитации поведения систем, ИММОД-
2009, пленарный доклад
⚬ Цветные сети Петри
⚬ Симуляция и генерация в код 3D-
симулятора
17/38
Сети Петри как база знаний
● Chang Guoting Jane, Kuli´c Dana. Robot Task Learning from Demonstration Using Petri Nets, 2013
● Человек-учитель перемещает предметы
● Стационарные состояния — позиции, перемещения — переходы
● Робот определяет кратчайшую последовательность перемещений анализом достижимости
18/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
19/38
Communicating Sequential Processes
● Алгебра процессов с операциями
→ Префикс
⊓ Недетерминированный выбор
▫ Детерминированный выбор
|| Параллельная композиция по пересечению
||| Параллельная композиция чередованием
; Последовательная композиция
 Сокрытие
( ) Образ
−1
( ) Прообраз
20/38
CSP и роботы
● Lankenau Axel, Meyer Oliver. Formal methods in robotics: Fault tree based verification, 1999
⚬ Bremen Autonomous Wheelchair
⚬ Fault Tree
⚬ Генерация Fault Tree в FDR2
⚬ Refinement Checking модели
автономного кресла
21/38
CSP и роботы
● Process-Oriented Subsumption Architectures in Swarm Robotic Systems. / Jeremy C Posso, Adam T Sampson,
Jonathan Simpson и др., 2011
⚬ Brooks`s Subsumption
Architecture
⚬ occam-π + Transterpreter +
Surveyor SRV-1
⚬ Мультиагентная система
сборки отходов
22/38
Алгебры процессов и роботы
● Varricchio Valerio, Chaudhari Pratik, Frazzoli Emilio. Sampling-based algorithms for optimal motion
planning using process algebra specifications, 2014
23/38
○ Планирование движения со спецификацией в Basic Process
Algebra
○ Альтернатива: “ + ”
○ Последовательная композиция: “ · ”
○ Параллельная композиция: “ || ”
○ Case Study со станцией зарядки электромобилей
○ “Переместиться либо сразу к станции зарядки, либо
занять одно из парковочных мест”
○ Φc
= s1
+ (⍵1
+ ⍵2
+ ⍵3
+ ⍵4
) · s1
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
24/38
Process Algebra for Robot Schemas (PARS)
● Performance Verification for Behavior-based Robot Missions, 2015
● A Software Tool for the Design of Critical Robot Missions with Performance Guarantees. Damian M. Lyons,
Ronald C. Arkin, Paramesh Nirmal и др., 2013
; Последовательное исполнение
| Параллельное исполнение до завершения всех
# Параллельное исполнение до завершения одного
= ( ⟨ , ⟩; | ⟨ , ⟩; ) Условный оператор
⟨ ⟩⟨ ⟩ = ⟨ ⟩⟨ ⟩; ⟨ ⟩ Хвостовая рекурсия
⟨ ⟩ Временная задержка
⟨ ⟩⟨ ⟩ Чтение данных из порта
⟨ , ⟩ Вывод данных на порт
⟨Φ⟩⟨ ⟩ Элемент случайности
25/38
Process Algebra for Robot Schemas (PARS)
○ Задача поиска предметов в помещении
○ Априорная вероятность успешности миссии
○ Более сотни экспериментов, предсказанные
значения соответствуют реальным
26/38
● Performance Verification for Behavior-based Robot Missions, 2015
● A Software Tool for the Design of Critical Robot Missions with Performance Guarantees. Damian M. Lyons,
Ronald C. Arkin, Paramesh Nirmal и др., 2013
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
27/38
Гибридные системы
● The algorithmic analysis of hybrid systems. Rajeev Alur, Costas Courcoubetis, Nicolas Halbwachs и др., 1995
● Henzinger T. A., Ho P. H. HyTech: The Cornell hybrid technology tool, 1995
28/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
29/38
Марковские процессы
● Марковские процессы принятия решений (MDP)
M = ( , , 0
, , , )
○ — конечное множество состояний
○ — конечное множество действий
○ 0
: → [0, 1] — начальное распределение
вероятности
○ : × × → [0, 1] — вероятность перехода
○ : × × → R — функция награды
○ ∈ [0, 1] — фактор скидки
30/38
Марковские процессы
● Частично обозримые марковские процессы принятия решений
(POMDP)
M = ( , , 0
, , , , , )
○ — конечное множество состояний
○ — конечное множество действий
○ 0
: → [0, 1] — начальное распределение
вероятности
○ : × × → [0, 1] — вероятность перехода
○ : × × → R — функция награды
○ — конечное множество наблюдений
○ : × → — отображение, сопоставляющее
состоянию наблюдение
○ ∈ [0, 1] — фактор скидки
31/38
Марковские процессы и роботы
● Fu Jie, Topcu Ufuk. Pareto efficiency in synthesizing shared autonomy policies with temporal logic
constraints, 2014
○ Система с гибридным управлением
○ Постановка задачи в терминах LTL
○ Представление с помощью MDP
⚬ Когнитивное состояние оператора
⚬ Автономный режим робота
○ Поиск парето-оптимума между стратегиями
автономной работы и операторского управления
32/38
Марковские процессы и роботы
● Qualitative analysis of POMDPs with temporal logic specifications for robotics applications. Krishnendu
Chatterjee, Martin Chmelik, Raghav Gupta и др., 2014
● Temporal Logic Motion Planning using POMDPs with Parity Objectives. Svoreňová M., Martin Chmelik и
др., 2015
○ Разрешимость качественного и количественного анализа POMDP
⚬ Улучшение оценки сложности качественного анализа
○ Постановка задачи в терминах LTL
○ Case Studies
⚬ Управление шаттлом
⚬ Cheese Maze
⚬ Grid of Locations
⚬ RockSample
⚬ Hallway problems
⚬ Maze navigation problems
⚬ Управление квадрокоптером 33/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
34/38
Integrated Behavior-Based Control (iB2C)
● Proetzsch Martin, Luksch Tobias, Berns Karsten. The Behaviour-Based Control Architecture iB2C for
Complex Robotic Systems. 2007
● Kiekbusch Lisa, Armbrust Christopher, Berns Karsten. Formal Verification of Behaviour Networks Including
Hardware Failures. 2014
○ Расширение архитектуры Брукса
○ Автоматическая генерация набора автоматов
○ Model checking
○ Эксперименты по отказу датчиков
35/38
План
● Темпоральные логики и планирование
● Сети Петри
● Алгебры процессов
○ Communicating Sequential Processes (CSP)
○ Process Algebra for Robot Schemas
● Гибридные системы
● Марковские модели
● Integrated Behavior-Based Control
● Динамическая верификация
36/38
Динамическая верификация
● Mitsch Stefan, Platzer Andre. ModelPlex: Verified
Runtime Validation of Verified Cyber-Physical
System Models, 2014
● ROSRV: Runtime Verification for Robots. Jeff
Huang, Cansu Erdogan, Yi Zhang и др., 2014.
○ Верифицированная модель робота и
окружающей среды уже дана
○ Генерация кода верификатора
○ Формальное доказательство корректности
и своевременности перехода на
аварийный режим работы
○ Монитор активности узлов ROS
○ Инициация аварийного поведения при
нарушении требований
○ Специальный язык описания монитора
○ Пример с контролем угла наклона
пейнтбольной пушки
37/38
В итоге
● Много научных групп, сотни цитирований
○ Спецификации задач в LTL
○ Синтез управления, корректного “по построению”
○ Сети Петри
○ Марковские процессы
○ Алгебры процессов
○ Гибридные подходы
● Множество менее распространенных формализмов
○ PARS
○ IB2C
○ … (см. полную работу)
38/38

More Related Content

PDF
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...
PPTX
TMPA-2015: Automated process of creating test scenarios for financial protoco...
PDF
Service Robotics in Science and Education
PPTX
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
PDF
Test Set Generation Based on a Management Stream Model
PPT
TMPA-2015: Information Support System for Autonomous Spacecraft Control Macro...
PPTX
TMPA-2013 Itsykson: Java Program Analysis
PDF
TMPA-2015: Multi-Module Application Tracing in z/OS Environment
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...
TMPA-2015: Automated process of creating test scenarios for financial protoco...
Service Robotics in Science and Education
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
Test Set Generation Based on a Management Stream Model
TMPA-2015: Information Support System for Autonomous Spacecraft Control Macro...
TMPA-2013 Itsykson: Java Program Analysis
TMPA-2015: Multi-Module Application Tracing in z/OS Environment

What's hot (20)

PDF
TMPA-2015: Automated Testing of Multi-thread Data Structures Solutions Lineri...
PDF
The Analysis of Test Scenario Coverage for a UCM-Model
PPTX
TMPA-2013 Petrenko Pakulin: Technical Solutions and Non-Technical Challenges ...
PDF
A runtime verification system for Software Defined Networks
PPT
TMPA-2015: ClearTH: a Tool for Automated Testing of Post Trade Systems
PDF
Approaches to the Fragmentation of a Paravirtualization System
PDF
Testing of a Risk Control System Implementation for High-Load Exchange and Br...
PPT
Tpo 06
PPTX
Применение статического анализа кода в преподавании и в разработке свободного ПО
PPT
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
PPT
TMPA-2013 Smirnov
PPT
Ptsp презентация
PPTX
технология и отладка по (47)
PPT
TMPA-2013 Sharov: Client Certification
PPT
лекция 6
PPT
Автоматизация тестирования как способ получения знаний
PPTX
Sqadays 2010 burmistrov_fomin_20101120(2)
PDF
Лекция №1. Введение. Предмет "Структуры и алгоритмы обработки данных"
PPTX
ковалев нестандатное нт
PPT
20120309 formal semantics shilov_lecture04
TMPA-2015: Automated Testing of Multi-thread Data Structures Solutions Lineri...
The Analysis of Test Scenario Coverage for a UCM-Model
TMPA-2013 Petrenko Pakulin: Technical Solutions and Non-Technical Challenges ...
A runtime verification system for Software Defined Networks
TMPA-2015: ClearTH: a Tool for Automated Testing of Post Trade Systems
Approaches to the Fragmentation of a Paravirtualization System
Testing of a Risk Control System Implementation for High-Load Exchange and Br...
Tpo 06
Применение статического анализа кода в преподавании и в разработке свободного ПО
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Smirnov
Ptsp презентация
технология и отладка по (47)
TMPA-2013 Sharov: Client Certification
лекция 6
Автоматизация тестирования как способ получения знаний
Sqadays 2010 burmistrov_fomin_20101120(2)
Лекция №1. Введение. Предмет "Структуры и алгоритмы обработки данных"
ковалев нестандатное нт
20120309 formal semantics shilov_lecture04
Ad

Viewers also liked (20)

PDF
TMPA-2015: The Verification of Functional Programs by Applying Statechart Dia...
PPT
TMPA-2015: FPGA-Based Low Latency Sponsored Access
PDF
TMPA-2015: Towards a Usable Defect Prediction Tool: Crossbreeding Machine Lea...
PDF
TMPA-2015: Kotlin: From Null Dereference to Smart Casts
PDF
TMPA-2015: A Need To Specify and Verify Standard Functions
PDF
TMPA-2015: Implementing the MetaVCG Approach in the C-light System
PDF
TMPA-2015: Software Engineering Education: The Messir Approach
PDF
TMPA-2015: The Application of Parameterized Hierarchy Templates for Automated...
PDF
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
PPTX
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
PPTX
TMPA-2015: Generation of Test Scenarios for Non Deterministic and Concurrent ...
PDF
TMPA-2015: Multi-Platform Approach to Reverse Debugging of Virtual Machines
PDF
TMPA-2015: Lexical analysis of dynamically formed string expressions
PDF
TMPA-2017: A Survey of High-Performance Computing for Software Verification
PDF
TMPA-2017: The Quest for Average Response Time
PDF
TMPA-2017: Modeling of PLC-programs by High-level Coloured Petri Nets
PDF
TMPA-2017: Evolutionary Algorithms in Test Generation for digital systems
PDF
TMPA-2017: Functional Parser of Markdown Language Based on Monad Combining an...
PDF
TMPA-2017: Layered Layouts for Software Systems Visualization
PDF
TMPA-2017: Stemming Architectural Decay in Software Systems
TMPA-2015: The Verification of Functional Programs by Applying Statechart Dia...
TMPA-2015: FPGA-Based Low Latency Sponsored Access
TMPA-2015: Towards a Usable Defect Prediction Tool: Crossbreeding Machine Lea...
TMPA-2015: Kotlin: From Null Dereference to Smart Casts
TMPA-2015: A Need To Specify and Verify Standard Functions
TMPA-2015: Implementing the MetaVCG Approach in the C-light System
TMPA-2015: Software Engineering Education: The Messir Approach
TMPA-2015: The Application of Parameterized Hierarchy Templates for Automated...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
TMPA-2015: Generation of Test Scenarios for Non Deterministic and Concurrent ...
TMPA-2015: Multi-Platform Approach to Reverse Debugging of Virtual Machines
TMPA-2015: Lexical analysis of dynamically formed string expressions
TMPA-2017: A Survey of High-Performance Computing for Software Verification
TMPA-2017: The Quest for Average Response Time
TMPA-2017: Modeling of PLC-programs by High-level Coloured Petri Nets
TMPA-2017: Evolutionary Algorithms in Test Generation for digital systems
TMPA-2017: Functional Parser of Markdown Language Based on Monad Combining an...
TMPA-2017: Layered Layouts for Software Systems Visualization
TMPA-2017: Stemming Architectural Decay in Software Systems
Ad

Similar to TMPA-2015: Formal Methods in Robotics (20)

PDF
BigData и Data Science: методы и инструменты
PPTX
Основы концептуального проектирования
PPTX
Моделирование транспортных процессов
PPTX
А.Левенчук -- Образование по машинному обучению
PDF
Geomarketing by SmartLoc #1
PDF
Geomarketing by SmartLoc #1
PDF
Алгоритмы и структуры данных BigData для графов большой размерности
PDF
ALMADA 2013 (computer science school by Yandex and Microsoft Research)
PDF
20140413 parallel programming_kalishenko_lecture09
PPT
Обзор современного состояния области алгоритмов и структур данных
PPT
Обзор современного состояния области алгоритмов и структур данных
PPT
лекция 35
PDF
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
PDF
Интерпретация моделей машинного обучения
PPTX
Представление знаний в технических системах
PPTX
Cостояние и перспективы российской робототехники
PPTX
Состояние и перспективы российской робототехники
PDF
HappyDev-lite-2016-весна 05 Евгений Тюменцев. Не все технологии одинаково по...
PPTX
Тьюториал "Введение в системную инженерию" (14 января 2013)
BigData и Data Science: методы и инструменты
Основы концептуального проектирования
Моделирование транспортных процессов
А.Левенчук -- Образование по машинному обучению
Geomarketing by SmartLoc #1
Geomarketing by SmartLoc #1
Алгоритмы и структуры данных BigData для графов большой размерности
ALMADA 2013 (computer science school by Yandex and Microsoft Research)
20140413 parallel programming_kalishenko_lecture09
Обзор современного состояния области алгоритмов и структур данных
Обзор современного состояния области алгоритмов и структур данных
лекция 35
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
Интерпретация моделей машинного обучения
Представление знаний в технических системах
Cостояние и перспективы российской робототехники
Состояние и перспективы российской робототехники
HappyDev-lite-2016-весна 05 Евгений Тюменцев. Не все технологии одинаково по...
Тьюториал "Введение в системную инженерию" (14 января 2013)

More from Iosif Itkin (20)

PDF
Foundations of Software Testing Lecture 4
PPTX
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
PDF
Exactpro FinTech Webinar - Global Exchanges Test Oracles
PDF
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
PDF
Operational Resilience in Financial Market Infrastructures
PDF
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
PDF
Testing the Intelligence of your AI
PDF
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
PDF
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
PPTX
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
PDF
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
PDF
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
PPTX
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
PDF
QA Community Saratov: Past, Present, Future (2019-02-08)
PDF
Machine Learning and RoboCop Testing
PDF
Behaviour Driven Development: Oltre i limiti del possibile
PDF
2018 - Exactpro Year in Review
PPTX
Exactpro Discussion about Joy and Strategy
PPTX
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
PDF
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
Foundations of Software Testing Lecture 4
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
Exactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
Operational Resilience in Financial Market Infrastructures
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
Testing the Intelligence of your AI
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QA Community Saratov: Past, Present, Future (2019-02-08)
Machine Learning and RoboCop Testing
Behaviour Driven Development: Oltre i limiti del possibile
2018 - Exactpro Year in Review
Exactpro Discussion about Joy and Strategy
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)

TMPA-2015: Formal Methods in Robotics

  • 1. Формальные методы в робототехнике Дмитрий Мордвинов, СПбГУ [email protected] Юрий Литвинов, СПбГУ [email protected] Санкт-Петербург, 13.11.2015
  • 3. Робототехника как научная область ● Навигация ● SLAM ● Path Planning ● Захват (grasp) ● Медицинские роботы ● Промышленные роботы ● Взаимодействие человека и робота ● ИИ ● Трекинг и распознавание ● Тактильные сенсоры ● Биологически вдохновленные роботы ● Нетрадиционные шасси (двуногие, многоногие роботы) ● Микро- и нанороботы ● Управление группами роботов ● Робототехника в образовании ● Формальные методы и верификация 3/38
  • 4. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 4/38
  • 5. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 5/38
  • 6. Темпоральные логики и планирование ● Antoniotti Marco, Mishra Bud. Discrete event models + temporal logic = supervisory controller: Automatic synthesis of locomotion controllers, 1995 6/38
  • 7. “Visit room r2 , then room r1 and then cover rooms r3 , r4 , r5 - all this while avoiding obstacles o1 , o2 , o3 ” Карта + LTL-формула LTS + условие корректности Контрпример (дискретный план) Непрерывное управление 7/38 “Visit all rooms” ◊r1 ∧ ◊r2 ∧ ◊r3 ∧ ◊r4 ∧ ◊r5 ∧ ◊r6 Темпоральные логики и планирование ● Fainekos Georgios E, Kress-Gazit Hadas, Pappas George J. Temporal logic motion planning for mobile robots, 2005
  • 8. ● Верификация vs cинтез ● Задача синтеза по LTL-спецификации в общем виде сложна! ● Класс GR(1) формул LTL ○ Piterman Nir, Pnueli Amir, Sa’ar Yaniv. Synthesis of reactive (1) designs, 2006 ○ ○ O(n3 ) ○ Корректное “по построению” поведение 8/38 Темпоральные логики и планирование
  • 9. Темпоральные логики и планирование ● Kress-Gazit Hadas, Fainekos Georgios E, Pappas George J. Where’s Waldo? Sensor-based temporal logic motion planning, 2007 ⚬ Starting in region 1 ⚬ Keep checking whether a baby is crying in regions 2 or 4 ⚬ If you find a crying baby, go look for an adult in regions 6, 7 and 8. Keep looking until you find him ⚬ After finding the adult, go back to monitoring the babies and so on 9/38
  • 10. Темпоральные логики и планирование ● Kress-Gazit Hadas, Fainekos Georgios E, Pappas George J. Temporal-logic-based reactive mission and motion planning, 2009 ○ Произвольные действия (включение/отключение видеокамеры) ○ Реактивное непрерывное управление 10/38 ● Livingston Scott C, Murray Richard M. Just-in-time synthesis for reactive motion planning with temporal logic, 2013 ○ Синтез в онлайн-режиме
  • 11. Темпоральные логики и планирование ● Towards manipulation planning with temporal logic specifications / Keliang He, Morteza Lahijanian, Lydia E Kavraki и др., 2015 11/38 ● Vasile Cristian Ioan, Belta Calin. Reactive sampling-based temporal logic path planning, 2014 ○ Планирование действий робота-спасателя ● Raman Vasumathi, Kress-Gazit Hadas. Synthesis for multirobot controllers with interleaved motion, 2014 ○ Мультиагентная система сбора отходов
  • 12. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 12/38
  • 13. Сети Петри ● 1962 г., Карл Петри ● Не тьюринг-полный формализм ● Анализ сетей Петри ○ Достижимость ○ Ограниченность ○ Безопасность ○ Живучесть 13/38
  • 14. Сети Петри и робофутбол ● Costelha Hugo, Lima Pedro. Robotic Tasks Modeling and Analysis Based on Petri Nets, 2003 ● Costelha Hugo, Lima Pedro. Petri net robotic task plan representation, 2010 14/38
  • 15. Сети Петри и робофутбол ● A Robotic Soccer Passing Task Using Petri Net Plans. F. Palamara, V. Ziparo, L. Iocchi и др., 2008 ⚬ Задача паса в робофутболе ⚬ Высокоуровневая сеть Петри как язык программирования мультиагентных систем ⚬ Программирование одновременно нескольких роботов 15/38
  • 16. Сети Петри как ЯП роботов ● Simon Jochen, Moldt Daniel. PyTri, a Visual Agent Programming Language, 2010 ● Kashima Hideharu, Masuda Ryosuke. Cooperative Control of Mobile Roots Based on Petri Net, 2001 Сеть Петри как dataflow-язык программирования мультиагентных систем 16/38 Визуальный редактор и дистанционное управление с компьютера
  • 17. Сети Петри и промышленные роботы ● Aguiar Adriano Jose Cunha, Villani Emilia. Petri Nets and Graphic Simulation for the Validation of Collaborative Robotic Cells in Aircraft Industry, 2010 ⚬ Симулятор сетей Петри для верификации и оптимизации технологических процессов ● Конюх В.Л. Опыт применения сетей Петри для имитации поведения систем, ИММОД- 2009, пленарный доклад ⚬ Цветные сети Петри ⚬ Симуляция и генерация в код 3D- симулятора 17/38
  • 18. Сети Петри как база знаний ● Chang Guoting Jane, Kuli´c Dana. Robot Task Learning from Demonstration Using Petri Nets, 2013 ● Человек-учитель перемещает предметы ● Стационарные состояния — позиции, перемещения — переходы ● Робот определяет кратчайшую последовательность перемещений анализом достижимости 18/38
  • 19. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 19/38
  • 20. Communicating Sequential Processes ● Алгебра процессов с операциями → Префикс ⊓ Недетерминированный выбор ▫ Детерминированный выбор || Параллельная композиция по пересечению ||| Параллельная композиция чередованием ; Последовательная композиция Сокрытие ( ) Образ −1 ( ) Прообраз 20/38
  • 21. CSP и роботы ● Lankenau Axel, Meyer Oliver. Formal methods in robotics: Fault tree based verification, 1999 ⚬ Bremen Autonomous Wheelchair ⚬ Fault Tree ⚬ Генерация Fault Tree в FDR2 ⚬ Refinement Checking модели автономного кресла 21/38
  • 22. CSP и роботы ● Process-Oriented Subsumption Architectures in Swarm Robotic Systems. / Jeremy C Posso, Adam T Sampson, Jonathan Simpson и др., 2011 ⚬ Brooks`s Subsumption Architecture ⚬ occam-π + Transterpreter + Surveyor SRV-1 ⚬ Мультиагентная система сборки отходов 22/38
  • 23. Алгебры процессов и роботы ● Varricchio Valerio, Chaudhari Pratik, Frazzoli Emilio. Sampling-based algorithms for optimal motion planning using process algebra specifications, 2014 23/38 ○ Планирование движения со спецификацией в Basic Process Algebra ○ Альтернатива: “ + ” ○ Последовательная композиция: “ · ” ○ Параллельная композиция: “ || ” ○ Case Study со станцией зарядки электромобилей ○ “Переместиться либо сразу к станции зарядки, либо занять одно из парковочных мест” ○ Φc = s1 + (⍵1 + ⍵2 + ⍵3 + ⍵4 ) · s1
  • 24. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 24/38
  • 25. Process Algebra for Robot Schemas (PARS) ● Performance Verification for Behavior-based Robot Missions, 2015 ● A Software Tool for the Design of Critical Robot Missions with Performance Guarantees. Damian M. Lyons, Ronald C. Arkin, Paramesh Nirmal и др., 2013 ; Последовательное исполнение | Параллельное исполнение до завершения всех # Параллельное исполнение до завершения одного = ( ⟨ , ⟩; | ⟨ , ⟩; ) Условный оператор ⟨ ⟩⟨ ⟩ = ⟨ ⟩⟨ ⟩; ⟨ ⟩ Хвостовая рекурсия ⟨ ⟩ Временная задержка ⟨ ⟩⟨ ⟩ Чтение данных из порта ⟨ , ⟩ Вывод данных на порт ⟨Φ⟩⟨ ⟩ Элемент случайности 25/38
  • 26. Process Algebra for Robot Schemas (PARS) ○ Задача поиска предметов в помещении ○ Априорная вероятность успешности миссии ○ Более сотни экспериментов, предсказанные значения соответствуют реальным 26/38 ● Performance Verification for Behavior-based Robot Missions, 2015 ● A Software Tool for the Design of Critical Robot Missions with Performance Guarantees. Damian M. Lyons, Ronald C. Arkin, Paramesh Nirmal и др., 2013
  • 27. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 27/38
  • 28. Гибридные системы ● The algorithmic analysis of hybrid systems. Rajeev Alur, Costas Courcoubetis, Nicolas Halbwachs и др., 1995 ● Henzinger T. A., Ho P. H. HyTech: The Cornell hybrid technology tool, 1995 28/38
  • 29. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 29/38
  • 30. Марковские процессы ● Марковские процессы принятия решений (MDP) M = ( , , 0 , , , ) ○ — конечное множество состояний ○ — конечное множество действий ○ 0 : → [0, 1] — начальное распределение вероятности ○ : × × → [0, 1] — вероятность перехода ○ : × × → R — функция награды ○ ∈ [0, 1] — фактор скидки 30/38
  • 31. Марковские процессы ● Частично обозримые марковские процессы принятия решений (POMDP) M = ( , , 0 , , , , , ) ○ — конечное множество состояний ○ — конечное множество действий ○ 0 : → [0, 1] — начальное распределение вероятности ○ : × × → [0, 1] — вероятность перехода ○ : × × → R — функция награды ○ — конечное множество наблюдений ○ : × → — отображение, сопоставляющее состоянию наблюдение ○ ∈ [0, 1] — фактор скидки 31/38
  • 32. Марковские процессы и роботы ● Fu Jie, Topcu Ufuk. Pareto efficiency in synthesizing shared autonomy policies with temporal logic constraints, 2014 ○ Система с гибридным управлением ○ Постановка задачи в терминах LTL ○ Представление с помощью MDP ⚬ Когнитивное состояние оператора ⚬ Автономный режим робота ○ Поиск парето-оптимума между стратегиями автономной работы и операторского управления 32/38
  • 33. Марковские процессы и роботы ● Qualitative analysis of POMDPs with temporal logic specifications for robotics applications. Krishnendu Chatterjee, Martin Chmelik, Raghav Gupta и др., 2014 ● Temporal Logic Motion Planning using POMDPs with Parity Objectives. Svoreňová M., Martin Chmelik и др., 2015 ○ Разрешимость качественного и количественного анализа POMDP ⚬ Улучшение оценки сложности качественного анализа ○ Постановка задачи в терминах LTL ○ Case Studies ⚬ Управление шаттлом ⚬ Cheese Maze ⚬ Grid of Locations ⚬ RockSample ⚬ Hallway problems ⚬ Maze navigation problems ⚬ Управление квадрокоптером 33/38
  • 34. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 34/38
  • 35. Integrated Behavior-Based Control (iB2C) ● Proetzsch Martin, Luksch Tobias, Berns Karsten. The Behaviour-Based Control Architecture iB2C for Complex Robotic Systems. 2007 ● Kiekbusch Lisa, Armbrust Christopher, Berns Karsten. Formal Verification of Behaviour Networks Including Hardware Failures. 2014 ○ Расширение архитектуры Брукса ○ Автоматическая генерация набора автоматов ○ Model checking ○ Эксперименты по отказу датчиков 35/38
  • 36. План ● Темпоральные логики и планирование ● Сети Петри ● Алгебры процессов ○ Communicating Sequential Processes (CSP) ○ Process Algebra for Robot Schemas ● Гибридные системы ● Марковские модели ● Integrated Behavior-Based Control ● Динамическая верификация 36/38
  • 37. Динамическая верификация ● Mitsch Stefan, Platzer Andre. ModelPlex: Verified Runtime Validation of Verified Cyber-Physical System Models, 2014 ● ROSRV: Runtime Verification for Robots. Jeff Huang, Cansu Erdogan, Yi Zhang и др., 2014. ○ Верифицированная модель робота и окружающей среды уже дана ○ Генерация кода верификатора ○ Формальное доказательство корректности и своевременности перехода на аварийный режим работы ○ Монитор активности узлов ROS ○ Инициация аварийного поведения при нарушении требований ○ Специальный язык описания монитора ○ Пример с контролем угла наклона пейнтбольной пушки 37/38
  • 38. В итоге ● Много научных групп, сотни цитирований ○ Спецификации задач в LTL ○ Синтез управления, корректного “по построению” ○ Сети Петри ○ Марковские процессы ○ Алгебры процессов ○ Гибридные подходы ● Множество менее распространенных формализмов ○ PARS ○ IB2C ○ … (см. полную работу) 38/38