- Conference: Barcamp PT 2008
- Implementing a RESTful Web API with Python & Flask
- Designing a RESTful Web API
Humanoid Robot Soccer (Robocup)
Optimizing Simulated Humanoid Robot Skills, MSc Thesis, Faculdade de Engenharia da Universidade do Porto, January, 2010
Rei, L., Reis, L.P., Lau, N.: Optimizing a humanoid robot skill. In Lima, P., Cardeira, C., eds.: Proceedings of the 11th International Conference on Mobile Robots and Competitions (2011) 78–83 (Best Paper Award)
Luís Cruz and Luís Paulo Reis and Luís Rei: Generic Optimization of Humanoid Robots’ Behaviours. In Proceedings of the 15th Portuguese Conference on Artificial Intelligence. Luis Antunes, H. Sofia Pinto, Rui Prada, Paulo Trigo (Eds.) ISBN: 978-989-95618-4-7 (2011) 385-397 (PDF)
- L.Rei, L.P.Reis. “Brain: A Deliberative CiberMouse Agent”, 10th Conf. on Mobile Robots and Competitions - ROBOTICA 2010, Leiria, Portugal, pp. 35-40.
See also: Luis Rei: Brain: An Autonomous Agent for Cooperative Navigation in a Simulated Environment, CiberMouse@RTSS 2008 Team Reports, The 29th IEEE Real-Time Systems Symposium (2008) 9-10 (PDF)
Selected Course Work
(sadly, the rest is in portuguese)
- Course: Knowledge Extraction and Machine Learning
- Description: Fine Needle Aspirate (FNA) is a diagnostic procedure used to investigate superficial lumps or masses. In this technique, a thin, hollow needle is inserted into the mass to extract cells that, after being stained, will be examined under a microscope. The procedure serves as an alternative to usual biopsy methods that require major surgery. This work explores the use of data mining algorithms to enhance early detection of breast cancer by diagnosing breast masses from magnified images of FNAs
Willy: A Sokoban Solving Agent, June 2009
- Course: Methods for Planning and Scheduling
- Code: github
- Abstract: Sokoban is a classical, widely acclaimed, logic computer puzzle game. Despite it’s simple set of rules the complexity of its mazes is overwhelming. This paper describes Willy, our first attempt to solve Sokoban puzzles, and our study of the underlying implementation difficulties of a Sokoban search agent: the very large search space and the state transitions that create unsolvable situations. Willy uses a search algorithm, IDA* and a good heuristic, Minmatching and then uses techniques to reduce the search space: removal of unsafe positions from the map, hash tables to prevent loops, macro moves to merge together multiple states into a single state and finally relevance cuts to attempt to make only relevant moves.
A Look at Dynamic Languages, November 2007
- Course: Software Engineering
- Abstract: This paper aims to present an overview of Dynamic Languages in comparison with the more traditional languages, namely Java and C++. The definition of the term “dynamic language” is given and what is commonly understood nowadays when the term is used. Then one lists the most common features of these languages and the advantages and disadvantages pointed by their proponents and opponents. Furthermore is enumerated some of the domains in which dynamic languages have been more successful and explain the reasons that justify it, as well as the domains in which there are few or no reports of success. Finally, some common examples of fanaticism sorrounding dynamic languages are given.
- Course: Artificial Intelligence
- Code: github
- Objective: The objective of this project is to present a solution to a simple learning task. The task chosen was signature recognition and the solution was to use an Artificial Neural Network (ANN). ANN is a computational model that tries to simulate aspects of biological neural networks. To use an ANN it is necessary first to design its structure, define how it functions and to train it to perform the task at hand, in this case, to recognize signatures.