Eduardo R. B. Marques
University of Porto
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Eduardo R. B. Marques.
europe oceans | 2009
Ricardo Martins; Paulo Sousa Dias; Eduardo R. B. Marques; José Cardoso Pinto; João Borges de Sousa; Fernando Lobo Pereira
This paper presents the Inter-Module Communication (IMC) protocol, a message-oriented protocol designed and implemented in the Underwater Systems and Technology Laboratory (LSTS) to build interconnected systems of vehicles, sensors and human operators that are able to pursue common goals cooperatively by exchanging real-time information about the environment and updated objectives. IMC abstracts hardware and communication heterogeniety by providing a shared set of messages that can be serialized and transferred over different means.
OCEANS 2007 - Europe | 2007
Hugo Ferreira; Ricardo Martins; Eduardo R. B. Marques; Jose R. Pinto; A. O. Martins; José Miguel Almeida; J.B. Sousa; Eduardo Silva
The design and development of the swordfish autonomous surface vehicle (ASV) system is discussed. Swordfish is an ocean capable 4.5 m long catamaran designed for network centric operations (with ocean and air going vehicles and human operators). In the basic configuration, Swordfish is both a survey vehicle and a communications node with gateways for broadband, Wi-Fi and GSM transports and underwater acoustic modems. In another configuration, Swordfish mounts a docking station for the autonomous underwater vehicle Isurus from Porto University. Swordfish has an advanced control architecture for multi-vehicle operations with mixed initiative interactions (human operators are allowed to interact with the control loops).
OCEANS 2007 - Europe | 2007
Eduardo R. B. Marques; Jose R. Pinto; Sean Kragelund; Paulo Sousa Dias; Luis Madureira; Alexandre Sousa; Márcio Correia; Hugo Ferreira; Rui Gonçalves; Ricardo Martins; D. P. Horner; A. J. Healey; Gil Manuel Gonçalves; João Borges de Sousa
Underwater acoustic networks can be quite effective to establish communication links between autonomous underwater vehicles (AUVs) and other vehicles or control units, enabling complex vehicle applications and control scenarios. A communications and control framework to support the use of underwater acoustic networks and sample application scenarios are described for single and multi-AUV operation.
IFAC Proceedings Volumes | 2012
José Pinto; Pedro Calado; José Braga; Paulo Sousa Dias; Ricardo Martins; Eduardo R. B. Marques; J.B. Sousa
Abstract This paper describes the layered control architecture and its software implementation developed and used at the Underwater Systems and Technology Laboratory. The architecture is implemented as a toolchain which consists on three main entities: DUNE onboard software, Neptus command and control software and a common IMC message-based communication protocol. The LSTS software toolchain has been tested throughout various field deployments where it was used to control heterogeneous autonomous vehicles like AUVs, ASVs, UAVs and ROVs in both single and multi-vehicle operations.
conference on object oriented programming systems languages and applications | 2015
Hugo A. López; Eduardo R. B. Marques; Francisco Martins; Nicholas Ng; César Santos; Vasco Thudichum Vasconcelos; Nobuko Yoshida
We present ParTypes, a type-based methodology for the verification of Message Passing Interface (MPI) programs written in the C programming language. The aim is to statically verify programs against protocol specifications, enforcing properties such as fidelity and absence of deadlocks. We develop a protocol language based on a dependent type system for message-passing parallel programs, which includes various communication operators, such as point-to-point messages, broadcast, reduce, array scatter and gather. For the verification of a program against a given protocol, the protocol is first translated into a representation read by VCC, a software verifier for C. We successfully verified several MPI programs in a running time that is independent of the number of processes or other input parameters. This contrasts with alternative techniques, notably model checking and runtime verification, that suffer from the state-explosion problem or that otherwise depend on parameters to the program itself. We experimentally evaluated our approach against state-of-the-art tools for MPI to conclude that our approach offers a scalable solution.
EuroMPI'12 Proceedings of the 19th European conference on Recent Advances in the Message Passing Interface | 2012
Kohei Honda; Eduardo R. B. Marques; Francisco Martins; Nicholas Ng; Vasco Thudichum Vasconcelos; Nobuko Yoshida
Developing safe, concurrent (and parallel) software systems is a hard task in multiple aspects, particularly the sharing of information and the synchronization among multiple participants of the system. In the message passing paradigm, this is achieved by sending and receiving messages among different participants, raising a number of verification problems. For instance, exchanging messages in a wrong order may prevent the system from progressing, causing a deadlock.MPI is the most commonly used protocol for high-performance, message-based parallel programs, and the need for formal verification approaches is well acknowledged by much recent work (e.g., see [1]).
arXiv: Distributed, Parallel, and Cluster Computing | 2013
Eduardo R. B. Marques; Francisco Martins; Vasco Thudichum Vasconcelos; Nicholas Ng; Nuno Nogueira Martins
The Message Passing Interface (MPI) is the de facto standard message-passing infrastructure for developing parallel applications. Two decades after the first version of the library specification, MPI-based applications are nowadays routinely deployed on super and cluster computers. These applications, written in C or Fortran, exhibit intricate message passing behaviours, making it hard to statically verify important properties such as the absence of deadlocks. Our work builds on session types, a theory for describing protocols that provides for correct-by-construction guarantees in this regard. We annotate MPI primitives and C code with session type contracts, written in the language of a software verifier for C. Annotated code is then checked for correctness with the software verifier. We present preliminary results and discuss the challenges that lie ahead for verifying realistic MPI program compliance against session types.
real-time systems symposium | 2009
Thomas A. Henzinger; Christoph M. Kirsch; Eduardo R. B. Marques; Ana Sokolova
The Hierarchical Timing Language (HTL) is a real-time coordination language for distributed control systems. HTL programs must be checked for well-formedness, race freedom, transmission safety (schedulability of inter-host communication), and time safety (schedulability of host computation). We present a modular abstract syntax and semantics for HTL, modular checks of well-formedness, race freedom, and transmission safety, and modular code distribution. Our contributions here complement previous results on HTL time safety and modular code generation. Modularity in HTL can be utilized in easy program composition as well as fast program analysis and code generation, but also in so-called runtime patching, where program components may be modified at runtime.
IFAC Proceedings Volumes | 2006
Eduardo R. B. Marques; Gil Manuel Gonçalves; J. B. Sousa
Abstract Seaware is a publish-subscribe middleware used in multi-vehicle networked systems composed of autonomous and semiautonomous vehicles and systems. Seaware provides a high level interface to network communications and may be deployed with a combination of heterogeneous components within a dynamic network. Seaware supports the RTPS (Real Time Publish Subscribe) protocol, underwater acoustic modems and other forms of network transport. This paper gives an overview of Seawares implementation and its application to multi-vehicle networked systems.
Proceedings of the 2nd Workshop on Middleware for Edge Clouds & Cloudlets | 2017
João Filipe Rodrigues; Eduardo R. B. Marques; Luís M. B. Lopes; Fernando M. A. Silva
In the last decade, technological advances and improved manufacturing processes have significantly dropped the price tag of mobile devices such as smartphones and tablets whilst augmenting their storage and computational capabilities. Their ubiquity fostered research on mobile edge-clouds, formed by sets of such devices in close proximity, with the goal of mastering their global computational and storage resources. The development of crowd-sourcing applications that take advantage of such edge-clouds is, however, hampered by the complexity of network formation and maintenance, the intrinsic instability of wireless links and the heterogeneity of the hardware and operating systems in the devices. In this paper we present a middleware to deal with this complexity, providing a building block upon which crowd-sourcing applications may be built. We motivate the development of the middleware through a discussion of real-world applications, and present the middlewares architecture along with the associated components and current development status. The middleware takes form as a Java API for Android devices that allows for the establishment of links using heterogeneous communication technologies (e.g., Wifi-Direct, Bluetooth), and the combination of these links to form a logical edge-cloud network. On top of this functionality, services for edge computation, storage, and streaming are also being developed.