Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
Publications

Publications by HASLab

2020

EAGP: An Energy-Aware Gossip Protocol for Wireless Sensor Networks

Authors
Ferreira, BC; Fonte, V; Silva, JMC;

Publication
2020 28TH INTERNATIONAL CONFERENCE ON SOFTWARE, TELECOMMUNICATIONS AND COMPUTER NETWORKS (SOFTCOM)

Abstract
In Wireless Sensor Networks (WSN), typically composed of nodes with resource constraints, leveraging efficient processes is crucial to enhance the network lifetime and, consequently, the sustainability in ultra-dense and heterogeneous environments, such as smart cities. Particularly, balancing the energy required to transport data efficiently across such dynamic environments poses significant challenges to routing protocol design and operation, being the trade-off of reducing data redundancy while achieving an acceptable delivery rate a fundamental research topic. In this way, this work proposes a new energy-aware epidemic protocol that uses the current state of the network energy to create a dynamic distribution topology by self-adjusting each node forwarding behavior as eager or lazy according to the local residual battery. Simulated evaluations demonstrate its efficiency in energy consumption, delivery rate, and reduced computational burden when compared with classical gossip protocols as well as with a directional protocol.

2020

EAGP: An Energy-Aware Gossip Protocol for Wireless Sensor Networks

Authors
Ferreira, BC; Fonte, V; Silva, JMC;

Publication
CoRR

Abstract

2020

EAGP: An Energy-Aware Gossip Protocol for Wireless Sensor Networks

Authors
Ferreira, BC; Fonte, V; Silva, JMC;

Publication
28th International Conference on Software, Telecommunications and Computer Networks, SoftCOM 2020, Split, Croatia, September 17-19, 2020

Abstract

2020

ARx: Reactive Programming for Synchronous Connectors

Authors
Proença, J; Cledou, G;

Publication
Coordination Models and Languages - 22nd IFIP WG 6.1 International Conference, COORDINATION 2020, Held as Part of the 15th International Federated Conference on Distributed Computing Techniques, DisCoTec 2020, Valletta, Malta, June 15-19, 2020, Proceedings

Abstract
Reactive programming (RP) languages and Synchronous Coordination (SC) languages share the goal of orchestrating the execution of computational tasks, by imposing dependencies on their execution order and controlling how they share data. RP is often implemented as libraries for existing programming languages, lifting operations over values to operations over streams of values, and providing efficient solutions to manage how updates to such streams trigger reactions, i.e., the execution of dependent tasks. SC is often implemented as a standalone formalism to specify existing component-based architectures, used to analyse, verify, transform, or generate code. These two approaches target different audiences, and it is non-trivial to combine the programming style of RP with the expressive power of synchronous languages. This paper proposes a lightweight programming language to describe component-based Architectures for Reactive systems, dubbed ARx, which blends concepts from RP and SC, mainly inspired to the Reo coordination language and its composition operation, and with tailored constructs for reactive programs such as the ones found in ReScala. ARx is enriched with a type system and with algebraic data types, and has a reactive semantics inspired in RP. We provide typical examples from both the RP and SC literature, illustrate how these can be captured by the proposed language, and describe a web-based prototype tool to edit, parse, and type check programs, and to animate their semantics. © IFIP International Federation for Information Processing 2020.

2020

Implementing Hybrid Semantics: From Functional to Imperative

Authors
Goncharov, S; Neves, R; Proenca, J;

Publication
THEORETICAL ASPECTS OF COMPUTING, ICTAC 2020

Abstract
Hybrid programs combine digital control with differential equations, and naturally appear in a wide range of application domains, from biology and control theory to real-time software engineering. The entanglement of discrete and continuous behaviour inherent to such programs goes beyond the established computer science foundations, producing challenges related to e.g. infinite iteration and combination of hybrid behaviour with other effects. A systematic treatment of hybridness as a dedicated computational effect has emerged recently. In particular, a generic idealized functional language HYBCORE with a sound and adequate operational semantics has been proposed. The latter semantics however did not provide hints to implementing HYBCORE as a runnable language, suitable for hybrid system simulation (e.g. the semantics features rules with uncountably many premises). We introduce an imperative counterpart of HYBCORE, whose semantics is simpler and runnable, and yet intimately related with the semantics of HYBCORE at the level of hybrid monads. We then establish a corresponding soundness and adequacy theorem. To attest that the resulting semantics can serve as a firm basis for the implementation of typical tools of programming oriented to the hybrid domain, we present a web-based prototype implementation to evaluate and inspect hybrid programs, in the spirit of GHCI for HASKELL and UTOP for OCAML. The major asset of our implementation is that it formally follows the operational semantic rules.

2020

Work-In-Progress: a DSL for the safe deployment of Runtime Monitors in Cyber-Physical Systems

Authors
Nandi, GS; Pereira, D; Proenca, J; Tovar, E;

Publication
2020 IEEE 41ST REAL-TIME SYSTEMS SYMPOSIUM (RTSS)

Abstract
Guaranteeing that safety-critical Cyber-Physical Systems (CPS) do not fail upon deployment is becoming an even more complicated task with the increased use of complex software solutions. To aid in this matter, formal methods (rigorous mathematical and logical techniques) can be used to obtain proofs about the correctness of CPS. In such a context, Runtime Verification has emerged as a promising solution that combines the formal specification of properties to be validated and monitors that perform these validations during runtime. Although helpful, runtime verification solutions introduce an inevitable overhead in the system, which can disrupt its correct functioning if not safely employed. We propose the creation of a Domain Specific Language (DSL) that, given a generic CPS, 1) verifies if its real-time scheduling is guaranteed, even in the presence of coupled monitors, and 2) implements several verification conditions for the correct-by-construction generation of monitoring architectures. To achieve it, we plan to perform statical verifications, derived from the available literature on schedulability analysis, and powered by a set of semi-automatic formal verification tools.

  • 58
  • 247