• Nenhum resultado encontrado

Código 30 – Resultado da verificação formal do desvio pela esquerda

5.1 TRABALHO FUTUROS

A partir dos resultados obtidos, os seguintes trabalhos podem ser realizados dando con- tinuidade ao estudo das áreas apresentadas:

∙ Expansão dos cenários de atuação do agente implementado, como a inclusão de cruzamentos;

∙ Implementação de diferentes tipos de sensores para detecção de novos elementos no ambiente, como cruzamentos e calçadas;

∙ Implementação de conceitos de velocidade e aceleração na condução do veículo autônomo;

∙ Extensão da ferramenta SAE para lidar com obstáculos dinâmicos; ∙ Verificação formal das ações de desvio de obstáculos dinâmicos; ∙ Implementação de técnicas de desvio de obstáculos;

∙ Extensão do ambiente para lidar com rotas onde seu destino é definido pelo usuário; ∙ Implantação do projeto para regras de trânsito urbano.

REFERÊNCIAS

AASHTO, A. Policy on geometric design of highways and streets. American Association of

State Highway and Transportation Officials, Washington, DC, v. 1, n. 990, p. 158, 2001.

ADMINISTRATION, National Highway Traffic Safety et al. Preliminary statement of policy concerning automated vehicles. Washington, DC, p. 1–14, 2013.

BAIER, Christel; KATOEN, Joost-Pieter; LARSEN, Kim Guldstrand. Principles of model

checking. [S.l.]: MIT press, 2008.

BERTONCELLO, Michele; WEE, Dominik. Ten ways autonomous driving could

redefine the automotive world. McKinsey&Company, 2015. Acesso em: 04 abr. 2017.

Disponível em: <http://www.mckinsey.com/industries/automotive-and-assembly/our-insights/ ten-ways-autonomous-driving-could-redefine-the-automotive-world>.

BORDINI, Rafael H; HÜBNER, Jomi Fred; WOOLDRIDGE, Michael. Programming

multi-agent systems in AgentSpeak using Jason. [S.l.]: John Wiley & Sons, 2007. v. 8.

BORDINI, Rafael Heitor; VIEIRA, Renata. Linguagens de programação orientadas a agentes: uma introdução baseada em agentspeak (l). Revista de informática teórica e aplicada. Porto

Alegre. Vol. 10, n. 1 (2003), p. 7-38, 2003.

BRATMAN, Michael. Intention, plans, and practical reason. 1987.

BRATMAN, Michael E. What is intention. Intentions in communication, p. 15–32, 1990. BRODBECK, Pedro. Para economizar combustível, carros ficam

cada vez mais leves. Gazeta do Povo, 2014. Acesso em: 12 mai.

2017. Disponível em: <http://www.gazetadopovo.com.br/economia/

para-economizar-combustivel-carros-ficam-cada-vez-mais-leves-ef0jthtzw25twro0rc0g5c0ni>. CAMERON, Oliver. Challenge #1: 3D Model for Camera Mount. 2016.

Acesso em: 25 abr. 2018. Disponível em: <https://medium.com/udacity/ challenge-1-3d-model-for-camera-mount-f5ffcc1655b5>.

. Challenge #2: Using Deep Learning to Predict Steering Angles. 2016. Acesso em: 25 abr. 2018. Disponível em: <https://medium.com/udacity/ challenge-2-using-deep-learning-to-predict-steering-angles-f42004a36ff3>.

. Challenge #3: Image-Based Localization. 2016. Acesso em: 25 abr. 2018. Disponível em: <https://medium.com/udacity/challenge-3-image-based-localization-5d9cadcff9e7>.

. Challenge #4: Self-Driving Car Android Dashboard. 2016. Acesso em: 25 abr. 2018. Disponível em: <https://medium.com/udacity/ challenge-4-self-driving-car-android-dashboard-83a2a5c8b29e>.

. We’re Building an Open Source Self-Driving Car. 2016. Acesso em: 22 abr. 2018. Disponível em: <https://medium.com/udacity/ were-building-an-open-source-self-driving-car-ac3e973cd163>.

CAMPBELL, Mark et al. Autonomous driving in urban environments: approaches, lessons and challenges. Philosophical Transactions of the Royal Society of London A: Mathematical,

CAMPOS, Andre. Agentes inteligentes. 2007. Acesso em: 16 abr. 2017. Disponível em: <https://www.dimap.ufrn.br/~andre/sma/agente.pdf>.

CBINSIGHTS. 33 Corporations Working On Autonomous Vehicles. 2016. Acesso em: 04 abr. 2017. Disponível em: <https://www.cbinsights.com/blog/ autonomous-driverless-vehicles-corporations-list/>.

. 44 Corporations Working On Autonomous Vehicles. 2017. Acesso em: 04 abr. 2017. Disponível em: <https://www.cbinsights.com/blog/ autonomous-driverless-vehicles-corporations-list/>.

CLARKE, Edmund M; GRUMBERG, Orna; PELED, Doron. Model checking. [S.l.]: MIT press, 1999.

DENNIS, Louise; FISHER, Michael. Draft Verifiable Autonomous Systems. 2016.

DENNIS, Louise et al. Model checking agent programming languages. Automated Software

Engineering, v. 19, n. 1, p. 5–63, 2012. ISSN 0928-8910.

DENNIS, Louise A. The MCAPL Manual: Covering the Agent Infrastructure Layer (AIL)

and Agent Java Pathfinder (AJPF). 2017.

DENNIS, Louise A; FARWER, Berndt. Gwendolen: A bdi language for verifiable agents. In:

Proceedings of the AISB 2008 Symposium on Logic and the Simulation of Interaction and Reasoning, Society for the Study of Artificial Intelligence and Simulation of Behaviour.

[S.l.: s.n.], 2008. p. 16–23.

DENNIS, Louise A et al. A flexible framework for verifying agent programs. In:

INTERNATIONAL FOUNDATION FOR AUTONOMOUS AGENTS AND MULTIAGENT SYSTEMS. Proceedings of the 7th international joint conference on Autonomous agents

and multiagent systems-Volume 3. [S.l.], 2008. p. 1303–1306.

DILL, David L. What’s between simulation and formal verification? In: IEEE. Design

Automation Conference, 1998. Proceedings. [S.l.], 1998. p. 328–329.

FERBER, Jacques. Multi-agent systems: an introduction to distributed artificial

intelligence. [S.l.]: Addison-Wesley Reading, 1999. v. 1.

FERNANDES, Lucas Emanuel Ramos. Implementação e verificação formal de planos de

um agente racional modelado para condução de um veículo autônomo. 2017.

FIEB, FEDERAÇÃO DAS INDÚSTRIAS DO ESTADO DA BAHIA. CNI:

Falta de mobilidade nas cidades afeta competitividade da indústria. 2012.

Acesso em: 02 abr. 2017. Disponível em: <http://www.fieb.org.br/Noticia/1168/ cni-falta-de-mobilidade-nas-cidades-afeta-competitividade-da-industria.aspx>.

FIGUEIREDO, Cândido de et al. Novo diccionário da língua portuguesa. AM Teixeira, 1913. FISHER, Michael. A survey of concurrent metatem—the language and its applications.

Temporal Logic, Springer, p. 480–505, 1994.

FITZSIMMONS, Michelle. Waymo: everything you need to know from Google until now. 2018. Acesso em: 27 abr. 2018. Disponível em: <https://www.techradar.com/news/waymo>.

FRAGA, Nayara; CARVALHO, Pedro. A nova era dos veículos guiados por computador. 2016. Acesso em: 04 abr. 2017. Disponível em: <http://epocanegocios.globo.com/Tecnologia/ noticia/2016/12/nova-era-dos-veiculos-guiados-por-computador.html>.

G1. Carro autônomo do Uber tomba em acidente nos EUA; testes são suspensos. 2017. Acesso em: 22 mar. 2018. Disponível em: <http://g1.globo.com/carros/noticia/ uber-suspende-teste-de-carros-autonomos-apos-acidente-nos-eua.ghtml>.

GIACOMO, Giuseppe De; LESPÉRANCE, Yves; LEVESQUE, Hector J. Congolog, a concurrent programming language based on the situation calculus. Artificial Intelligence, Elsevier, v. 121, n. 1-2, p. 109–169, 2000.

GILLIN, Paul. Self-Driving Cars Solving 21st Century Problems. Connected Futures, 2016. Acesso em: 11 mai. 2017. Disponível em: <http://www.connectedfuturesmag.com/a/W16C15/ selfdriving-cars-solving-21st-century-problems/#.WTrjVze1vQo>.

GOOGLE. Waymo. 2017. Acesso em: 03 mai. 2017. Disponível em: <https://waymo.com/>. GREENE, Tristan. Google and Waymo are tackling the biggest obstacles on the

way to truly autonomous vehicles. 2018. Acesso em: 29 abr. 2018. Disponível em:

<https://thenextweb.com/artificial-intelligence/2018/05/08/google-announces/>.

HAVELUND, Klaus; PRESSBURGER, Thomas. Model checking java programs using java pathfinder. International Journal on Software Tools for Technology Transfer (STTT), Springer, v. 2, n. 4, p. 366–381, 2000.

HINDRIKS, Koen V et al. Agent programming with declarative goals. In: SPRINGER.

International Workshop on Agent Theories, Architectures, and Languages. [S.l.], 2000. p.

228–243.

. Formal semantics for an abstract agent programming language. In: SPRINGER.

International Workshop on Agent Theories, Architectures, and Languages. [S.l.], 1997. p.

215–229.

HOEK, Wiebe Van der; WOOLDRIDGE, Michael. Towards a logic of rational agency. Logic

Journal of IGPL, Oxford Univ Press, v. 11, n. 2, p. 135–159, 2003.

HOWDEN, Nick et al. Jack intelligent agents-summary of an agent infrastructure. In: 5th

International conference on autonomous agents. [S.l.: s.n.], 2001.

HUBER, Marcus J. Jam: A bdi-theoretic mobile agent architecture. In: ACM. Proceedings of

the third annual conference on Autonomous Agents. [S.l.], 1999. p. 236–243.

INRIX. INRIX | Los Angeles Tops INRIX Global Congestion Ranking. 2017. Acesso em: 03 abr. 2017. Disponível em: <http://inrix.com/press-releases/ los-angeles-tops-inrix-global-congestion-ranking/>.

JENNINGS, Nicholas R; SYCARA, Katia; WOOLDRIDGE, Michael. A roadmap of agent research and development. Autonomous agents and multi-agent systems, Kluwer Academic Publishers, v. 1, n. 1, p. 7–38, 1998.

JOHNSON, Leif. Uber self-driving cars: everything you need to know. 2018. Acesso em: 27 abr. 2018. Disponível em: <https://www.techradar.com/news/uber-self-driving-cars>.

KINNY, David. The 𝜓 calculus: An algebraic agent language. In: SPRINGER. International

Workshop on Agent Theories, Architectures, and Languages. [S.l.], 2001. p. 32–50.

KUMAR, Sanjeev; COHEN, Philip R; HUBER, Marcus J. Direct execution of team

specifications in staple. In: ACM. Proceedings of the first international joint conference on

Autonomous agents and multiagent systems: part 2. [S.l.], 2002. p. 567–568.

LEITE, João Alexandre; ALFERES, José Júlio; PEREIRA, Luís Moniz. Minerva-a dynamic logic programming agent architecture. In: SPRINGER. International Workshop on Agent

Theories, Architectures, and Languages. [S.l.], 2001. p. 141–157.

NVIDIA. NVIDIA DRIVE Enables Automakers to Create Self-Driving Vehi-

cles That Can Operate Safely Even When Faults Are Detected. 2018.

Acesso em: 22 abr. 2018. Disponível em: <https://nvidianews.nvidia.com/news/ nvidia-announces-worlds-first-functionally-safe-ai-self-driving-platform>. OWEN, Malcolm. Self-driving cars and ’Project Titan’ still a big

focus at Apple, according to patent filings. 2018. Acesso em: 27

abr. 2018. Disponível em: <https://appleinsider.com/articles/18/03/22/

self-driving-cars-and-project-titan-still-a-big-focus-at-apple-according-to-patent-filings>. OZGUNER, Umit; ACARMAN, Tankut; REDMILL, Keith Alan. Autonomous ground

vehicles. [S.l.]: Artech House, 2011.

PEDEN, Margie et al. World report on road traffic injury prevention. [S.l.]: World Health Organization Geneva, 2004.

PERCIVAL, Gil Alexander. The Nature of Intention. Tese (Doutorado) — UCL (University College London), 2014.

POKAHR, Alexander; BRAUBACH, Lars; LAMERSDORF, Winfried. Jadex: A bdi reasoning engine. Multi-agent programming, Springer, p. 149–174, 2005.

PULLEN, John Patrick. You Asked: How Do Driverless Cars Work? 2015. Acesso em: 03 mai. 2017. Disponível em: <http://time.com/3719270/you-asked-how-do-driverless-cars-work/>. RAO, Anand. Agentspeak (l): Bdi agents speak out in a logical computable language. Agents

breaking away, Springer, p. 42–55, 1996.

RAO, Anand S; WOOLDRIDGE, Michael. Foundations of rational agency. In: Foundations of

rational agency. [S.l.]: Springer, 1999. p. 1–10.

REIS, Thiago. Com aumento da frota, país tem 1 automóvel para cada 4 habitantes. 2014. Acesso em: 15 abr. 2017. Disponível em: <http://g1.globo.com/brasil/noticia/2014/03/ com-aumento-da-frota-pais-tem-1-automovel-para-cada-4-habitantes.html>.

RIEMSDIJK, Birna van; HOEK, Wiebe van der; MEYER, John-Jules Ch. Agent programming in dribble: from beliefs to goals using plans. In: ACM. Proceedings of the second international

joint conference on Autonomous agents and multiagent systems. [S.l.], 2003. p. 393–400.

RODRIGUES, JC. A imprevisibilidade aceitável na direção autônoma: Porque a ausência de respostas éticas não deve impedir a adoção de carros autônomos. 2017.

SANGHAVI, Alok. What is formal verification? EE Times_Asia, 2010.

SCHONBERGER, Viktor Mayer. The last things that will make us uniquely human. 2017. SHOHAM, Yoav. Agent-oriented programming. Artificial intelligence, Elsevier, v. 60, n. 1, p. 51–92, 1993.

SILBERG, Gary et al. Self-driving cars: The next revolution. White paper, KPMG LLP &

Center of Automotive Research, 2012.

SUBRAHMANIAN, Ventatramanan S. Heterogeneous agent systems. [S.l.]: MIT press, 2000.

SURMENOK, Pavel. Self-driving Cars are New Rocket Science. 2018. Acesso em: 22 abr. 2018. Disponível em: <https://medium.com/@surmenok/ self-driving-cars-are-new-rocket-science-451dcb14d825>.

TESLA. Autopilot. 2018. Acesso em: 05 mai. 2017. Disponível em: <https://www.tesla.com/ autopilot>.

TITLOW, John Paul. Self-Driving Cars Will Be The Biggest Auto Safety Innovation

Ever. Fast Company, 2015. Disponível em: <https://www.fastcompany.com/3043273/

self-driving-cars-will-be-the-biggest-auto-safety-innovation-ever>.

UBER. Steel City’s New Wheels. 2016. Acesso em: 05 mai. 2017. Disponível em: <https://www.uber.com/blog/pittsburgh/new-wheels/>.

UDACITY. An Open Source Self-Driving Car. 2016. Acesso em: 22 abr. 2018. Disponível em: <https://www.udacity.com/self-driving-car>.

. Udacity/self-driving-car. 2018. Acesso em: 25 abr. 2018. Disponível em: <https://github.com/udacity/self-driving-car>.

ULBRICH, Simon et al. Towards a functional system architecture for automated vehicles.

arXiv preprint arXiv:1703.08557, 2017.

VANCIN, Paulo Henrique. Fusão de imagens e sensores inerciais para a estimação e

controle de veículos autônomos. Dissertação (Mestrado) — Pontifícia Universidade Católica

do Rio Grande do Sul, 2016.

WINIKOFF, Michael. Implementing commitment-based interactions. In: ACM. Proceedings

of the 6th international joint conference on Autonomous agents and multiagent systems.

[S.l.], 2007. p. 128.

WINIKOFF, Michael et al. Declarative and procedural goals in intelligent agent systems. In: MORGAN KAUFMAN. International Conference on Principles of Knowledge

Representation and Reasoning. [S.l.], 2002.

WOOLDRIDGE, Michael. Intelligent Agents. [S.l.]: The MIT Press, 1999.

. An Introduction to MultiAgent Systems. 2nd. ed. New York: J. Wiley, 2009. ISBN 978-0-470-51946-2.

WOOLDRIDGE, Michael; JENNINGS, Nicholas R. Intelligent agents: Theory and practice.

WORLAND, Justin. Self-Driving Cars Could Help Save the Environment—Or

Ruin It. It Depends on Us. TIME, 2016. Acesso em: 12 mai. 2017. Disponível em:

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()), ~B(car,obs1Close()), ~A(car,go_left()),~T R ~A(car,go_left()), T U B(car,obs1Close()),

True in next State: ~T R ~A(car,go_left()),T U B(car,obs1Close()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,obs1Close()),~A(car,go_left()), ~T R ~A(car,go_left()), T U B(car,obs1Close()),

True in next State: ~T R ~A(car,go_left()),T U B(car,obs1Close()),

Number: 10

Incoming States: 3,6,

True in this State: B(car,obs1Close()),~A(car,go_left()), ~T R ~A(car,go_left()), T U B(car,obs1Close()),

True in next State: ~T R ~A(car,go_left()),

Number: 12

Incoming States: 10,12,20,

True in this State: ~A(car,go_left()),~T R ~A(car,go_left()), True in next State: ~T R ~A(car,go_left()),

Number: 20

Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()), B(car,obs1Close()),~A(car,go_left()),~T R ~A(car,go_left()), T U B(car,obs1Close()),

True in next State: ~T R ~A(car,go_left()),

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()),

~B(car,obs1Close()),~A(car,run()),T U B(car,obs1Close()),T U A(car,run()), True in next State: T U B(car,obs1Close()),T U A(car,run()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,obs1Close()),~A(car,run()), T U B(car,obs1Close()),T U A(car,run()),

True in next State: T U B(car,obs1Close()),T U A(car,run()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,run()),~B(car,obs1Close()), T U B(car,obs1Close()),T U A(car,run()),

True in next State: T U B(car,obs1Close()),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,obs1Close()),T U B(car,obs1Close()), True in next State: T U B(car,obs1Close()),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,obs1Close()),T U B(car,obs1Close()),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,obs1Close()),~A(car,run()), T U B(car,obs1Close()),T U A(car,run()),

True in next State: T U A(car,run()),

Number: 22

Incoming States: 20,22,39,

True in next State: T U A(car,run()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,run()),T U A(car,run()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,obs1Close()),A(car,run()), T U B(car,obs1Close()),T U A(car,run()),

Number: 34

Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()),A(car,run()), ~B(car,obs1Close()),T U B(car,obs1Close()),T U A(car,run()),

True in next State: T U B(car,obs1Close()),

Number: 39

Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()),

B(car,obs1Close()),~A(car,run()),T U B(car,obs1Close()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 43

Incoming States: 0,

True in this State: B(car,change_lane()),B(car,in_lane1()), B(car,obs1Close()),A(car,run()),T U B(car,obs1Close()), T U A(car,run()),

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,trafficLightRed()),

~B(car,trafficLightClose()),~A(car,run()),T U B(car,trafficLightClose()), T U A(car,run()),

True in next State: T U B(car,trafficLightClose()), T U A(car,run()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()), T U A(car,run()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,run()),~B(car,trafficLightClose()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,trafficLightClose()), T U B(car,trafficLightClose()),

True in next State: T U B(car,trafficLightClose()),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,trafficLightClose()), T U B(car,trafficLightClose()),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U A(car,run()),

Number: 22

Incoming States: 20,22,39,

True in this State: ~A(car,run()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,run()),T U A(car,run()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 34

Incoming States: 0,

True in this State: B(car,trafficLightRed()),A(car,run()), ~B(car,trafficLightClose()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U B(car,trafficLightClose()),

Number: 39

Incoming States: 0,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), ~A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 43

Incoming States: 0,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()),

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,trafficLightRed()),~B(car,trafficLightClose()), ~A(car,run()),T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()), T U A(car,run()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()), T U A(car,run()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,run()),~B(car,trafficLightClose()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,trafficLightClose()), T U B(car,trafficLightClose()),

True in next State: T U B(car,trafficLightClose()),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,trafficLightClose()), T U B(car,trafficLightClose()),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 22

Incoming States: 20,22,39,

True in this State: ~A(car,run()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,run()),T U A(car,run()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 34

Incoming States: 0,

True in this State: B(car,trafficLightRed()),A(car,run()), ~B(car,trafficLightClose()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U B(car,trafficLightClose()),

Number: 39

Incoming States: 0,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), ~A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 43

Incoming States: 0,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()),

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,trafficLightRed()),~B(car,trafficLightClose()), ~A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),T U A(car,run()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),T U A(car,run()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,run()),~B(car,trafficLightClose()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,trafficLightClose()), T U B(car,trafficLightClose()),

True in next State: T U B(car,trafficLightClose()),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,trafficLightClose()), T U B(car,trafficLightClose()),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 22

Incoming States: 20,22,39,

True in this State: ~A(car,run()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,run()),T U A(car,run()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,trafficLightClose()),A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 34

Incoming States: 0,

True in this State: B(car,trafficLightRed()),A(car,run()), ~B(car,trafficLightClose()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U B(car,trafficLightClose()),

Number: 39

Incoming States: 0,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), ~A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 43

Incoming States: 0,

True in this State: B(car,trafficLightClose()), B(car,trafficLightRed()),A(car,run()),

T U B(car,trafficLightClose()),T U A(car,run()),

[INFO] Number: 2 Incoming States: 0,2,

True in this State: ~B(car,trafficLightGreen()),

T U B(car,trafficLightClose()) /\ B(car,trafficLightRed()) /\ T U A(car,run()) R ~B(car,trafficLightGreen()),

True in next State: T U B(car,trafficLightClose()) /\ B(car,trafficLightRed()) /\ T U A(car,run()) R ~B(car,trafficLightGreen()),

Number: 7

Incoming States: 0,2,

True in this State: B(car,trafficLightRed()),

~B(car,trafficLightClose()),~B(car,trafficLightGreen()), ~A(car,run()),T U B(car,trafficLightClose()) /\

B(car,trafficLightRed()) /\ T U A(car,run()) R

~B(car,trafficLightGreen()),T U B(car,trafficLightClose()), T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),T U A(car,run()),

Number: 10

Incoming States: 7,10,

True in this State: ~B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),T U A(car,run()),

Number: 14

Incoming States: 7,10,

True in this State: A(car,run()),~B(car,trafficLightClose()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U B(car,trafficLightClose()),

Number: 16

Incoming States: 14,16,38,

True in this State: ~B(car,trafficLightClose()), T U B(car,trafficLightClose()),

True in next State: T U B(car,trafficLightClose()),

Number: 19

Incoming States: 14,16,38,

T U B(car,trafficLightClose()),

Number: 20

Incoming States: 19,20,29,32,47, True in this State:

Number: 24

Incoming States: 7,10,

True in this State: B(car,trafficLightClose()),~A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

True in next State: T U A(car,run()),

Number: 26

Incoming States: 24,26,43,

True in this State: ~A(car,run()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 29

Incoming States: 24,26,43,

True in this State: A(car,run()),T U A(car,run()),

Number: 32

Incoming States: 7,10,

True in this State: B(car,trafficLightClose()),A(car,run()), T U B(car,trafficLightClose()),T U A(car,run()),

Number: 38

Incoming States: 0,2,

True in this State: B(car,trafficLightRed()),A(car,run()), ~B(car,trafficLightClose()),~B(car,trafficLightGreen()), T U B(car,trafficLightClose()) /\ B(car,trafficLightRed()) /\ T U A(car,run()) R ~B(car,trafficLightGreen()),

T U B(car,trafficLightClose()),T U A(car,run()), True in next State: T U B(car,trafficLightClose()),

Number: 43

Incoming States: 0,2,

True in this State: B(car,trafficLightClose()),

B(car,trafficLightRed()),~B(car,trafficLightGreen()), ~A(car,run()),T U B(car,trafficLightClose()) /\

B(car,trafficLightRed()) /\ T U A(car,run()) R

~B(car,trafficLightGreen()),T U B(car,trafficLightClose()), T U A(car,run()),

True in next State: T U A(car,run()),

Number: 47

Incoming States: 0,2,

True in this State: B(car,trafficLightClose()),B(car,trafficLightRed()), A(car,run()),~B(car,trafficLightGreen()),T U B(car,trafficLightClose()) /\ B(car,trafficLightRed()) /\ T U A(car,run()) R

~B(car,trafficLightGreen()),T U B(car,trafficLightClose()), T U A(car,run()),

APÊNDICE G - Log da verificação formal da ação ao detectar um pedestre atravessando a

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,pedestrianWalking()),~B(car,crosswalkClose()), ~A(car,run()),

T U B(car,crosswalkClose()),T U A(car,run()),

True in next State: T U B(car,crosswalkClose()),T U A(car,run()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,crosswalkClose()),~A(car,run()), T U B(car,crosswalkClose()),T U A(car,run()),

True in next State: T U B(car,crosswalkClose()),T U A(car,run()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,run()),~B(car,crosswalkClose()), T U B(car,crosswalkClose()),T U A(car,run()),

True in next State: T U B(car,crosswalkClose()),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,crosswalkClose()), T U B(car,crosswalkClose()),

True in next State: T U B(car,crosswalkClose()),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,crosswalkClose()), T U B(car,crosswalkClose()),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,crosswalkClose()),~A(car,run()), T U B(car,crosswalkClose()),T U A(car,run()),

Number: 22

Incoming States: 20,22,39,

True in this State: ~A(car,run()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,run()),T U A(car,run()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,crosswalkClose()),A(car,run()), T U B(car,crosswalkClose()),T U A(car,run()),

Number: 34

Incoming States: 0,

True in this State: B(car,pedestrianWalking()),A(car,run()), ~B(car,crosswalkClose()),

T U B(car,crosswalkClose()),T U A(car,run()), True in next State: T U B(car,crosswalkClose()),

Number: 39

Incoming States: 0,

True in this State: B(car,crosswalkClose()),B(car,pedestrianWalking()) ,~A(car,run()),

T U B(car,crosswalkClose()),T U A(car,run()), True in next State: T U A(car,run()),

Number: 43

Incoming States: 0,

True in this State: B(car,crosswalkClose()),B(car,pedestrianWalking()), A(car,run()),

T U B(car,crosswalkClose()),T U A(car,run()),

[INFO] Number: 3 Incoming States: 0,

True in this State: B(car,maxVelocity(5.0)),

~B(car,velocity(5.0)),~A(car,accelerate()),T U B(car,velocity(5.0)), T U A(car,accelerate()),

True in next State: T U B(car,velocity(5.0)),T U A(car,accelerate()),

Number: 6

Incoming States: 3,6,

True in this State: ~B(car,velocity(5.0)),~A(car,accelerate()), T U B(car,velocity(5.0)),T U A(car,accelerate()),

True in next State: T U B(car,velocity(5.0)), T U A(car,accelerate()),

Number: 10

Incoming States: 3,6,

True in this State: A(car,accelerate()),~B(car,velocity(5.0)), T U B(car,velocity(5.0)),T U A(car,accelerate()),

True in next State: T U B(car,velocity(5.0)),

Number: 12

Incoming States: 10,12,34,

True in this State: ~B(car,velocity(5.0)),T U B(car,velocity(5.0)), True in next State: T U B(car,velocity(5.0)),

Number: 15

Incoming States: 10,12,34,

True in this State: B(car,velocity(5.0)),T U B(car,velocity(5.0)),

Number: 16

Incoming States: 15,16,25,28,43, True in this State:

Number: 20

Incoming States: 3,6,

True in this State: B(car,velocity(5.0)),~A(car,accelerate()), T U B(car,velocity(5.0)),T U A(car,accelerate()),

True in next State: T U A(car,accelerate()),

Incoming States: 20,22,39,

True in this State: ~A(car,accelerate()),T U A(car,accelerate()), True in next State: T U A(car,accelerate()),

Number: 25

Incoming States: 20,22,39,

True in this State: A(car,accelerate()),T U A(car,accelerate()),

Number: 28

Incoming States: 3,6,

True in this State: B(car,velocity(5.0)),A(car,accelerate()), T U B(car,velocity(5.0)),T U A(car,accelerate()),

Number: 34

Incoming States: 0,

True in this State: B(car,maxVelocity(5.0)),A(car,accelerate()),

~B(car,velocity(5.0)),T U B(car,velocity(5.0)),T U A(car,accelerate()), True in next State: T U B(car,velocity(5.0)),

Number: 39

Incoming States: 0,

True in this State: B(car,maxVelocity(5.0)),B(car,velocity(5.0)), ~A(car,accelerate()),T U B(car,velocity(5.0)),

T U A(car,accelerate()),

True in next State: T U A(car,accelerate()),

Number: 43

Incoming States: 0,

True in this State: B(car,maxVelocity(5.0)),B(car,velocity(5.0)), A(car,accelerate()),T U B(car,velocity(5.0)),T U A(car,accelerate()),

Documentos relacionados