|
|
Informatics Engineering (MSc) - Course Units
From Computer Science, Informatics and Information Technology at the University of Lisbon, Portugal
Animation and Virtual Environments| Code | Acronym |
|---|
|
425109
|
AAV
| | Objectives |
|---|
|
Students will be able to identify the demanding challenges that involve the creation of virtual humans in virtual environments and the solutions that have been conceived to accomplish them.
Students will be capable of creating 3D virtual environments (using X3D) and simple animated models of characters (using Blender or a similar software tool)
| | Syllabus |
|---|
Lectures
Virtual Humans: face and body modelling and animation.
Cloth and hair simulation.
Behavioral Animation.
Crowd simulation
Virtual reality.
Practice Sessions
Introduction to X3D.
Introduction to Blender (or other 3D modelling software)
| | Reading List |
|---|
|
"Handbook of Virtual Humans" editado por N. Magnenat-Thalmann, D. Thalmann, John Wiley & Sons, 2004
"Virtual Reality Technology", 2ª ed.,G. C. Burdea, P. Coiffet, John Wiley & Sons, 2003
| | Other Readings |
|---|
|
Diversos artigos sobre os temas estudados.
Guiões das aulas (escritos em Inglês).
| | Teaching Method |
|---|
|
Teaching lessons including lab classes
| | Assessment |
|---|
|
One paper research assignment and Exam
or
One paper research assignment and one implementation assignment.
| | Teaching Language |
|---|
|
Portuguese and, occasionally, English ( if classes are attended by Erasmus students that are not able to understand Portuguese)
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Web Applications| Code | Acronym | URL |
|---|
|
425110
|
AW
| http://mocho.di.fc.ul.pt/p/AW | | Objectives |
|---|
|
The course presents, from an integrated perspective, several topics on the architecture of modern web applications, spanning protocols (HTTP), formats (XML) and services (SOA/REST/SOAP), the Semantic Web and Web 2.0. It gives an introduction to new interaction, communication and monetization models for web applications, with emphasis on the information selection model based on the information retrieval paradigm. Digital libraries, multimedia information handling based on the composition of distributed services, and information classification models based on meta-data and folksonomies are discussed. Finally, the course introduces methods for digital rights management and protection of information downloaded from the Web and charging for their use, as well as online payment services. The persentiation of these technologies is made in the context of their application to the contents publishing industry.
| | Syllabus |
|---|
Lectures
1. Enterprise Service Bus: Service-Oriented Architectures. Logic Architecture of applications. Model-View-Controller.
2. WebServices: SOAP and REST.
3. Web Architecture: HTTP; XML Infoset; XSD; SAX and DOM; XPATH, XSL,XQuery.
4. Architecture of the Semantic Web.
5. Web 2.0. AJAX. JSON. Mashups.
6. Perspectives on the future of the Web: da Web 3.0, immersive Web and Web of things.
7. RDF. Description Logics. Ontologies. OWL. SPARQL.
8. Information Retrieval: concepts and principles; models; systems; evaluation.
9. E-commerce. Charging for Information. Web payment systems
(MBNET/Paypal). Micro-payments.
10. Digital watermarks. Digital rights expression and management (DRM). XrML. Copyright law in the digital age. Fair Use. FairPlay.
Practice Sessions
Examples of implemented SOAP and RESTful webservices.
Use and integration of webservices. Example mashups.
Laboratory
Analysis, Design and Construction of RESTful Webservice.
- Analysis, Design and Construction of a AJAX mashup
| | Reading List |
|---|
|
Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to
Information Retrieval, Cambridge University Press. 2007 (módulo sobre busca de
informação)
Artigos na wikipédia, tutoriais online, documentação em sítios web
Mário J. Silva, Slides das aulas teóricas de Aplicações na Web, edição em 2 volumes do
Departamento de Informática da FCUL.
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
the class project involves the development of a web service interfacing a database management system + a mashup combining that webservice with others available from the Web, and showcasing an highly interactive user interface (AJAX).
| | Assessment |
|---|
|
Class Project (35%) + 2 tests (27,5% + 27,5%) + class participation (10%) or Project (35%) + exam (55%) + class participation (10%.
| | Teaching Language |
|---|
|
Portuguese
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Machine Learning| Code | Acronym | URL |
|---|
|
425216
|
AP
| http://mocho.di.fc.ul.pt/p/AP | | Objectives |
|---|
|
The aim of this course is to study different paradigms and methods for machine learning.
| | Syllabus |
|---|
Lectures
- Introduction to the different paradigms of machine learning.
- Induction of decision trees.
- Instance based learning.
- Clustering.
- Reinforcement learning.
- Bayesian learning.
- Learning sets of rules and inductive logic programming.
Practice Sessions
Solution of exercises applying the learned algorithms.
Use of the machine learning algorithms available in the Weka software tool.
| | Reading List |
|---|
|
- Data Mining - Practical Machine Learning Tools and Techniques with Java Implementations, Second edition, Ian H Witten e Eibe Frank, Morgan Kaufmann, 2005.
- Machine Learning, Tom M. Mitchell, McGraw-Hill, 1997
| | Other Readings |
|---|
|
- notas de apoio às aulas teóricas
| | Teaching Method |
|---|
|
Lectures, lab classes, and conventional classroom classes for applying and clarifying the learned concepts.
| | Assessment |
|---|
|
Short assignments solved at home, one project and a final exam
| | Teaching Language |
|---|
|
The lectures will be in English if there are non Portuguese students
registered. Otherwise, lectures will be in Portuguese.
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Advanced Artificial Intelligence| Code | Acronym | URL |
|---|
|
425112
|
CIA
| http://mocho.di.fc.ul.pt/p/CIA | | Objectives |
|---|
|
Present the fundamental results and methods for representation of human cognition . The main focus is on automatic planning as an advanced paradigm to artificial reasoning, knowledge representation and tool to approach several problem clusters.
| | Syllabus |
|---|
Lectures
Classic planning systems, genetic planning, state space planning. Planning in dynamic environments. Real world planning, monitoring and replanning.
Practice Sessions
| | Reading List |
|---|
- Artificial Intelligence: A Modern Approach (2nd Edition)
- by Stuart J. Russell, Peter Norvig.
- Programming Game AI by Example
- by Mat Buckland.
| | Other Readings |
|---|
- http://mc.di.fc.ul.pt/cia
- Automated Planning : Theory & Practice by Malik Ghallab, Dana Nau, Paolo Traverso
- Intelligent Techniques for Planning by Ioannis Vlahavas, Dimitris Vrakas
- http://www.csc.ncsu.edu/faculty/stamant/planning-resources.html
- http://planet.dfki.de/membership/index.html
- http://www.isi.edu/~blythe/cs541/
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Mobile Computing| Code | Acronym | URL |
|---|
|
425113
|
CM
| http://mocho.di.fc.ul.pt/p/CM | | Objectives |
|---|
|
The course presents the new computing environments that make use of wireless technologies and small-scale and low-cost devices, as seen from an information systems perspective. It is organized as a sequence of seminars dedicated to topics in networking, distributed systems, data bases, human interfaces and software engineering addressing the challenges posed by the new environment
| | Syllabus |
|---|
Lectures
Introduction to mobile computing. Mobility and its implications in communication systems, networks, distributed systems, computer applications and development methodologies; Information appliances; Information replication in mobile environments. Disconnected operation. Replication in weakly connected systems; Radiocommunications. Media access methods. Time/Frequency/Code division. Cellular networks; Mobile Services The GSM System. Satellite systems. Wireless LANs and Home Networks. Personal-area networks.; Mobility support in mobile networks. Mobile-IP and Mobile Ad-hoc networks. Geographic routing. Adapting TCP to mobile networks; Services and application protocols to support mobility. Location-based services. Network services location; Proxies as a fundamental mobile network paradigm. Web caching in mobile environments; Frameworks for mobile application development; Databases of moving objects. Sensor networks. Information dissemination models.
Practice Sessions
.NET Compact Framework. Pocket PCs.
User Interface - GUI.
Compact Framework: graphics
Compact Framework: data storage.
Compact Framework: data acess
Sockets. Bluetooth and IrDA communication.
| | Reading List |
|---|
|
Compilação de artigos
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
Theoric lectures and laboratory practices.
| | Assessment |
|---|
|
Project + Exam + Class work
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Parallel Computing| Code | Acronym | URL |
|---|
|
425114
|
CP
| http://mocho.di.fc.ul.pt/p/CP | | Objectives |
|---|
|
During the first part of the course, focus will be given on system support for concurrent programming, including operating system level support, programming languages support and specific support provided by programming libraries. This implies the study of fundamental paradigms of concurrent programming, both in multi-process and multi-processor systems, including inter-process communication (using shared memory and message passing) and synchronization mechanisms. After that, during the second part of the course, the students will learn several issues concerning parallel computing. This includes the study of multiprocessor architectures, cluster architectures, parallelization techniques, evaluation of parallel programs, pipelining, load-balancing and termination. Practical examples will be used to illustrate the presented techniques. The course includes the development of several projects to experiment the concepts of parallel programming. In particular, the students will be exposed to C and Java programming languages, and will use the PThreads programming library (for concurrent programming using shared memory) and the MPI programming framework (for concurrent programming based on message passing)
| | Syllabus |
|---|
Lectures
Introduction to concurrent programming; Concurrent programming in centralized systems; Processes and tasks; Communication and synchronization; Concurrency control; Deadlocks; Parallel architectures; Parallelization; Architectures to support parallelization; Message-passing interfaces (MPI); Partitioning; Pipelines; Synchronized computations; Load balancing; Termination detection
Practice Sessions
Practical works include the development of concurrent applications using programming libraries (Pthreads) and also using specific languag e support for concurrency (Java). Message passing based programming, using MPI , is also axploited.
| | Reading List |
|---|
|
- Barry Wilkinson and Michael Allen, Parallel Programming, Techniques and Applications Using Networked Workstations and Parallel Computers, Prentice Hall, 2nd Edition, 2004.
| | Other Readings |
|---|
|
- Abraham Silberchatz, Peter Galvin and Greg Gagne, Applied Operating System Concepts, John Wiley & Sons, 2000.
- A. Burns and A. Wellings, Real-Time System and Their Programming Languages, 3rd Ed., Addison-Wesley, International Computer Science Series, 2001
| | Teaching Method |
|---|
|
Theoretical lectures: the method is based on presentations by the teacher, complemented with examples and exercises. This aims to stimulate the students interest and discussion in the classroom.
Theoretical Pratical Lectures: realization of exercises that stimulate discussion of primary and alternative solutions for the presented problems.
| | Assessment |
|---|
|
Homeworks for the theoretical component. Projects for the Theoretical Practical component. Final exam.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Systems Configuration and Management| Code | Acronym |
|---|
|
425115
|
CGS
| | Objectives |
|---|
|
The objective of the course is to complement the concepts obtained in systems courses with a systemic view of the configuration of computer systems, distributed systems and computer networks, and their management and exploitation. The idea is to consolidate a set of notions in the areas of systems and network administration, giving them a broad coverage of truly strategic systems management.
| | Syllabus |
|---|
Lectures
Computer systems management. Network planning. Network administration. Distributed systems management. Systems specification and configuration.
Practice Sessions
Management and configuration tools. The SNMP model and protocol.
| | Reading List |
|---|
|
Paulo Veríssimo e Luís Rodrigues, Distributed Systems For System Architects, Kluwer, 2001.
Network and Distributed Systems Management, M. Sloman editor, Addison-Wesley, 1994.
| | Other Readings |
|---|
|
M. Sloman editor, Network and Distributed Systems Management, Addison-Wesley, 1994.
Mark A. Miller, Managing Internetworks with SNMP, 3rd edition, M&T Books, 1999.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Algorithms Design and Analysis| Code | Acronym |
|---|
|
425116
|
DAA
| | Objectives |
|---|
|
To provide advanced knowledge on algorithms analysis and design. This course covers many algorithms in considerable depth, presenting important algorithmic design techniques and algorithmic analysis, focusing important data structures. Application areas and related topics are discussed. Recent advances are also covered.
| | Syllabus |
|---|
Lectures
Recursive algorithms analysis, Amortized analysis (Cormen, chaps. 3,4,17)
Ordering (randomized quicksort, heapsort, linear sorting) and Order Statistics (Cormen, chaps. 6-9)
Dynamic Programming (Cormen, chap. 15)
Greedy Algorithms (Cormen, chap. 16)
Graphs (Cormen, cap. 22-24)
Solution search Backtracking, Branch&Bound, Best-First, Hill Climbing, Tabu Search, Simulated Annealing, Gradient Descent, Grasp, Flood Fill
Union-Find (Cormen, chaps. 21)
Strings (Cormen, chap. 32)
Trees (AVL, Splay Trees, Heaps, Treaps, Tries) (Cormen, chaps. 12,13)
Skip-Lists
Randomized Algorithms
Experimental Algorithmics
Practice Sessions
Recursive algorithms analysis, Amortized analysis (Cormen, chaps. 3,4,17)
Ordering (randomized quicksort, heapsort, linear sorting) e Order Statistics (Cormen, chaps. 6-9)
Dynamic Programming (Cormen, chap. 15)
Greedy Algorithms (Cormen, chap. 16)
Graphs (Cormen, cap. 22-24)
Solution search Backtracking, Branch&Bound, Best-First, Hill Climbing, Tabu Search, Simulated Annealing, Gradient Descent, Grasp, Flood Fill
Union-Find (Cormen, chaps. 21)
Strings (Cormen, chap. 32)
Trees (AVL, Splay Trees, Heaps, Treaps, Tries) (Cormen, chaps. 12,13)
Skip-Lists
Randomized Algorithms
Experimental Algorithmics
| | Reading List |
|---|
|
Cormen et al. - Introduction to Algorithms, 2ºEd. MIT Press, 2003.
| | Other Readings |
|---|
|
João Neto, lecture notes, 2006. (in Portuguese)
Ana Respício, lecture notes, 2008. (in Portuguese)
Cormen et al., lecture notes from the Open Course in Introduction to Algorithms, MIT, 2005. (in English)
Several scientific papers.
| | Teaching Method |
|---|
|
Lectures.
| | Assessment |
|---|
|
Research project (including design, analysis and implementation of an algorithm to approach a complex research problem) with production of a 10-page scientific paper and presentation of results. (100%)
| | Teaching Language |
|---|
|
Portuguese or English.
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Software Design| Code | Acronym |
|---|
|
425117
|
DS
| | Objectives |
|---|
|
| | Syllabus |
|---|
Lectures
Practice Sessions
| | Reading List |
|---|
|
[SG96] Software Architectures: Perspectives on an Emerging Discipline. Mary Shaw e David Garlan, Prentice Hall, 1996. ISBN: 0131829572.
[BCK03] Software Architecture in Practice. Len Bass, Paul Clements, Rick Kasman , Addison Wesley, 2003. ISBN: 0321154959.
[C03] Documenting Software Architectures: Views and Beyond, Paul Clements et al, Addison Wesley, 2003. ISBN: 0201703726.
[CN02] Software Product Lines: Practices and Patterns. Paul Clements e Linda Northrop, 2002. Addison-Wesley. ISBN: 0-201-70332-7.
| | Other Readings |
|---|
|
[PBL05] Software Product Line Engineering, K.Pohl, G.Bockle,F.Lindenm 2005. Springer.
[B03] Software Design. David Budgen, Addiosn-Wesley, 2003. ISBN: 0-201-72219-4.
e artigos da área
| | Teaching Language |
|---|
|
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Agent-Oriented Software Engineering| Code | Acronym | URL |
|---|
|
425119
|
ESBA
| http://mocho.di.fc.ul.pt/p/ESBA | | Objectives |
|---|
|
Learn how agent based approaches can be effectively used in software development. Have the ability to evaluate the adequacy of the approach to specific problems. Learn how to use different methodologies and tools to develop systems.
| | Syllabus |
|---|
Lectures
Introduction to intelligent agents and multiagent systems. Micro and macro levels. Methodologies for agent-based systems analysis and design (AUML, Gaia, MaSE, FAME, Prometheus-ROADMAP, SODA, etc). Communicating and sharing knowledge. Agent-based programming. Case studies.
Practice Sessions
Experimentation with tools for the analysis, design, and implementation of multiagent systems - agentTool.
| | Reading List |
|---|
|
Agent-Based Software Development. M. Luck, R. Ashri and M. dâInverno. Artech House, 2004.
Methodologies and Software Engineering for Agent Systems - The Agent-Oriented Software Engineering Handbook. Bergenti, Federico; Gleizes, Marie-Pierre; Zambonelli, Franco (Eds.). Springer, 2004.
Agent-Oriented Methodologies, Brian Henderson-Sellers, Paolo Giorgini, idea Group Publishing, 2005.
| | Other Readings |
|---|
|
An Introduction to Multiagent Systems. Michael Wooldridge. John Wiley & Sons, 2002.
- Intelligent Agent Software Engineering. Valentina Plekhanova, idea Group Publishing, 2003.
- Multiagent Systems: A Modern Approach to Distributed AI. G. Weiss (edt), MIT Press, 2000.
- Heterogeneous Agent Systems. V. Subrahmanian, et al, MIT Press, 2000.
- Readings in Agents. M. Huhns and M. Singh (edts), Morgan Kaufmann, 1998.
- Constructing Intelligent Agents Using Java. J. Bigus, John Wiley and Sons, 2001.
| | Assessment |
|---|
|
Project and exam.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Organizations Structure and Management| Code | Acronym |
|---|
|
425120
|
EGO
| | Objectives |
|---|
|
We envisage the student aquires knowledge about the role of informatics about how firms are managed and organized in today global situation. The function of informatics in organizations is discussed in the context of hard changes and progress.
| | Syllabus |
|---|
Lectures
Corporate Governance, Change Management, Stategic Planning, Organizational Dynamics, Dynamics of Groups, Knowledge Management, Emotional Intelligence, Virtual Firms, Learning Organizations.
Practice Sessions
Corporate Governance, Change Management, Stategic Planning, Organizational Dynamics, Dynamics of Groups, Knowledge Management, Emotional Intelligence, Virtual Firms, Learning Organizations.
| | Reading List |
|---|
|
Manuel Firmino, Gestão das Organizações, Conceitos e Tendências Actuais - 2ª Edição, Escolar Editora, 2007.
Precedências aconselhadas: Todas as disciplinas dos três primeiros anos da licenciatura.
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
Lectures envolving the incentive to discussion and debate. Discussion of papers presenteing controversial ideas. Invited lectures by especialists in the area.
| | Assessment |
|---|
|
Participation in classes and discussions. Project presentation and report. Exam.
| | Teaching Language |
|---|
|
Portuguese
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Project Management| Code | Acronym | URL |
|---|
|
425122
|
GP
| http://mocho.di.fc.ul.pt/p/GP | | Objectives |
|---|
|
Project management topics. Project planning methods and techniques. The role of the Project Manager. The project manager and the team. Project selection. Introduction to financial analysis. Project budgeting. Cost analysis and risk management. Scheduling and resource allocation. Project monitoring, auditing and conclusion
| | Syllabus |
|---|
Lectures
Project planning methods and techniques. The role of the Project Manager. The project manager and the team. Project selection. Introduction to financial analysis. Project budgeting, cost analysis and risk management. Scheduling and resource allocation. Project monitoring
Practice Sessions
Financial analysis; project selection; Budgeting; Scheduling; Resource allocation; project monitoruing
| | Reading List |
|---|
|
Mantel, SJ, Meredith, J, Shafer, SM, Sutton, MM, 2005 Project Management in Practice. 2nd Edition John Wiley and Sons. ISBN:0-471-22965-2
Stellman, A, Greene, J. 2006, Applied Software Project Management. O'Reilly Media. ISBN:0-596-00948-8
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
Exposition classes
Laboratoy classes with use of specific project management tools
| | Assessment |
|---|
|
Ellaboration of a Project over a specific subject
Exam
| | Teaching Language |
|---|
|
Portuguese
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Knowledge Management| Code | Acronym |
|---|
|
425123
|
GC
| | Objectives |
|---|
|
This course aims at the acquisition of capacities to discriminate between data, information, and knowledge. The student should become proficient in analyzing knowledge management in society, including societies of artificial agents, with special emphasis on knowledge as an economic product. Research competence in knowledge management will be developed, namely through case studies.
| | Syllabus |
|---|
Lectures
- data, information, knowledge
- tacit/explicit knowledge, Nonaka processes: socialization, externalization, combination, internalization
- knowledge economy
- knowledge representation
- knowledge as a tool vs. knowledge as a product
- social hierarchies and information flow
- knowledge acquisition; the CYC project
- aspects of knowledge management: Identify, Analyze, Specify, Review. Knowledge exchange in societies of artificial agents
- critique of knowledge management
Practice Sessions
- weekly written assignments with a critical review of the topics
- final project of in depth review of a theme related to the domain of the course
Laboratory
none
| | Reading List |
|---|
|
Don Tapscott e Anthony Williams. Wikinomics A Nova Economia das Multidões Inteligentes. QuidNovi, 2007
Donald Hislop. Knowledge Management In Organizations. Oxford University Press, 2005
António Serrano e Cândido Fialho. Gestão de Conhecimento: O novo paradigma das organizações. FCA - Editora de Informática, 2003
Ricardo Vidigal da Silva e Ana Neves (orgs.). Gestão de Empresas na Era do Conhecimento. Edições Sílabo, 2003
Richard F. Bellaver and John M. Lusa. Knowledge management strategy and technology. Artech House, 2001
Jay Liebowitz. Knowledge Management HandBook. CRC Publishers, 1999
Thomas H. Davenport and Laurence Prusak. Working knowledge: how organizations manage what they know. Harvard Business School Press, 1998
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
Theoretical and theoretical-practical classes
- Presentation of the final work by students
| | Assessment |
|---|
|
60% Final Project + 40% weekly assignments
| | Teaching Language |
|---|
|
Normally in Portuguese. In English if needed
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Information Integration and Analytic Data Processing| Code | Acronym |
|---|
|
425124
|
IPAI
| | Objectives |
|---|
|
Students are introduced to the concepts of data warehousing and data mining, namely data-preprocessing, ETL, and dimensional modeling. Several OLAP and data mining tools are introduced. Finally the integration of business intelligence tools in several types of decision support systems is discussed.
| | Syllabus |
|---|
Lectures
Preprocessing and data transformations. Multidimensional modeling. OLAP tools and techniques. Data mining methodologies and decision support system integration.
Practice Sessions
Preprocessing and data transformations. Multidimensional modeling. OLAP tools and techniques. Data mining methodologies. Use of specific tools.
| | Reading List |
|---|
|
Kimball, R. Ross, M. 2002. The Data Warehouse Toolkit. 2nd Edition. John Wiley and Sons. New York. ISBN:047120024
- Han, J. Kamber, M. 2006. Data Mining Concepts and Techniques 2nd Edition. Morgan Kaufmann Publishers. ISBN:1558609016
| | Other Readings |
|---|
|
Informação fornecida pelo docente
| | Teaching Method |
|---|
|
Exposition classes
Laboratory exercises using specific tools
| | Assessment |
|---|
|
Course project
Exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Artificial Intelligence for Games| Code | Acronym | URL |
|---|
|
425205
|
IAJ
| http://mocho.di.fc.ul.pt/p/IAJ | | Objectives |
|---|
|
In recent years the development of games become one of the success areas of the computer science. On the commercial level, the revenues generated for this class of applications reached the level of the cinematographic industry.
On a technical level, the performance requirements of this applications take the machines to their limits. The new features demanded in each new game force innovations to the level of interactivity and challenges presented for game strategies and intelligence, making a considerable pressure on the industry to reach and to keep these standards.
The course of " Artificial intelligence for Games" allows the students to contact with techniques in the development of the intelligent component of the games, specially in real time environments with human players. The main goal of this course is to give to the students the chance to widen the knowledge of Artificial Intelligence and to apply it in new real situations.
| | Syllabus |
|---|
Lectures
Practice Sessions
| | Reading List |
|---|
|
Ian Millington, Artificial Intelligence for Games, Morgan Kaufman, 2006
Mat Buckland, Programming Game AI by Example, Wordware publishing, 2005
Brian Schawab, AI Game Engine Programming, Charles River Media, 2004
Steve Rabin ed, AI Game Programming Wisdom 3, Charles River Media, 2006
Steve Rabin ed, AI Game Programming Wisdom 2, Charles River Media, 2004
Steve Rabin ed, AI Game Programming Wisdom 1, Charles River Media, 2002
M. Ghallab, D. Nau and P. Traverso, Automated Planning: Theory and Practice, Morgan Kaufmann, 2004
Stuart Russell and Peter Norvig, Artificial Intelligence: A Modern Approach, Prentice Hall, 2003
| | Other Readings |
|---|
|
Existem vários motores de jogos de domínio público
que podem ser usados para o desenvolvimento de aplicações (UT, Stratagus ou SCI)
que poderão ser usados em apoio às actividades da
disciplina. Pontualmente para ilustrar pequenos exemplos serão usadas outras
alternativas mais específicas (Player/Stage, Raven ou Webots).
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Natural Language Interaction| Code | Acronym |
|---|
|
425125
|
ILN
| | Objectives |
|---|
|
Acquaintance with the state-of-the-art in the realm of natural language technology and its applications. Acquisition of concepts, methodologies and techniques for the utilization of components and resources in systems and agents with increasing natural language abilities.
| | Syllabus |
|---|
Lectures
Natural, controled and artificial languages. Symbolic and quantitative modelling methodologies for natural languages. Families of applications, their performance and usability. Key modules for shallow processing: sentence splitters, tokenizers, phrase segmenters, pos taggers, named-entity recognizers and shallow parsers. Deep linguistic processing: computational grammars and dicitionaries. Speech processing. Semantic analysis and representation amd machine translation among natural languages and between natural and artificial llanguages. Natural language processing and information retrieval. Semantic web: goals and major components. Formal ontologies and thesauri. Word sense disambiguation. Current resources and tools for the computational processing of Portuguese.
Practice Sessions
| | Reading List |
|---|
|
Ruslan Mitkov (org.), Handbook of Computational Linguistics, Oxford, OUP, 2002.
Robert Dale, Hermann Moisl e Harold Sommers (orgs.), Handbook of Natural Language Processing, Marcel Dekker, 2000.
D. Jurafsky e L. Martin, Speech and Language Processing, Londres: Prentice Hall, 2000.
| | Other Readings |
|---|
|
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Interactive Games| Code | Acronym |
|---|
|
425126
|
JI
| | Objectives |
|---|
|
The students should acquire the fundaments of game design and development. Fundamental game components are addressed: Interaction techniques, Computer graphics, Artificial Intelligence,and Network Programming. Specific topics on game development for consoles are discussed
| | Syllabus |
|---|
Lectures
Game design, and game architecture. Fundamental game components: Interaction techniques, Computer graphics, Artificial Intelligence,and Network Programming. Specific topics on game development for consoles are discussed
Practice Sessions
Metodologias de concepção e design de jogos. A estruturação de um jogo. Exercícios de Interacção, programação gráfica em tempor real, Inteligência Artificial e programação em redes. Exercícios de desenvolvimento para consolas
| | Reading List |
|---|
|
Fullerton, T, Swain, C., Hoffman, S. 2004. Game Design Workshop - Designing, Prototyping and Playtesting Games. CMPBooks. ISBN 1-57820-222-1
Rabin, S. (Editor) 2005. Introduction to Game Development. Charles River Media. ISBN: 1-5840-377-7
| | Other Readings |
|---|
|
Documentação fornecida pelo docente
| | Teaching Method |
|---|
|
Exposition classes
Laboratory classes where specific tools are used
| | Assessment |
|---|
|
Project and implementation of a computer game
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Multimedia| Code | Acronym | URL |
|---|
|
425128
|
MM
| http://mocho.di.fc.ul.pt/p/MM | | Objectives |
|---|
|
To understand the concepts and technologies behind the construction of and interaction with multimedia information, with an emphasis on digital video.
Topics: Digital media types. Compression and coding, structure, and metadata; Processing and feature extraction. Authoring, technological and cognitive aspects on the integration and interaction in multimedia environments. New paradigms and applications.
| | Syllabus |
|---|
Lectures
1. Introduction: Concepts, History, Models, Technology, Applications, Challenges; 2. Digital Media Types: Digital representation, Digitization, Static and dynamic information types, Text, Vector Graphics, Bitmap Images, Video, Animation, Audio, Formats, Standards, Compression, Storage, Distribution; 3. Authoring: Paradigms, Tools, Design, Multimedia Projects; 4. Processing: Segmentation, Indexing, Metadata, Feature extraction, Information retrieval and authoring; 5. Perspectives: New paradigms and applications.
Practice Sessions
Development of a project and exercises about: Media Types : text, vector graphics, bitmap images, video, and compression techniques; Multimedia Authoring: with animations, audio, and video, in Flash and Smil; Processing: of images and video; Project presentations.
| | Reading List |
|---|
|
Ze-Nian Li & Mark S.Drew, Fundamentals of Multimedia (International Edition), Pearson Prentice Hall, 2004.
Nigel Chapman & Jenny Chapman, Digital Multimedia (2nd.ed), Wiley, 2004.
Tay Vaughan, Multimedia: Making it Work (7th.ed), McGraw Hill, 2006.
Nuno Ribeiro, Multimédia e Tecnologias Interactivas (2a.ed), FCA Editora de Informática, 2007.
| | Other Readings |
|---|
|
Complementares:
Kevin Jeffay, Hong Jiang Zhang (eds.), Readings in Multimedia Computing and Networking, Morgan Kaufmann, 2002.
Peter D. Symes, Video Compression, McGraw Hill, 1999. [cap:1-3]
J. Gibson, T. Berger, T. Lookabaugh, D. Lindberg, & R. Baker, Digital Compression for Multimedia: Principles & Standards, Morgan Kaufmann, 1998.
Artigos, Relatórios e Manuais.
| | Teaching Method |
|---|
|
lectures
class work and project
| | Assessment |
|---|
|
project
exam
participation in class
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Neurodynamics| Code | Acronym |
|---|
|
425129
|
ND
| | Objectives |
|---|
|
Deeper study of some of the topics introduced in the course Neural Networks.
Practical application of neural networks to technological problems.
Emphasis on a dynamical approach to biologically inspired neural processes,
learning algorithms and recurrent networks. Evaluation of the computational
power of recurrent and non-recurrent networks. Estimation of the temporal
and spatial efficiency of neural algorithms.
| | Syllabus |
|---|
Lectures
Biological neural paradigms - Hebbian learning; self-learning; learning through
examples; fault tolerance; parallel computing. Relation between biological
neurons and the formal neurons used in computation and engineering.
Feedforward vs. recurrent networks. Supervised vs. unsupervised learning.
Statistical aspects. Dynamical perspective of gradient descent methods.
ADALINE. Multi-layer Perceptron. MADALINE. Backpropagation. Auto-associative
networks. Hopfield and Boltzmann networks; application to content-addressable
memories and to the approximate solution of NP-complete problems.
Self-organization. Competition networks.
Practice Sessions
Biological neural paradigms - Hebbian learning; self-learning; learning through
examples; fault tolerance; parallel computing. Relation between biological
neurons and the formal neurons used in computation and engineering.
Feedforward vs. recurrent networks. Supervised vs. unsupervised learning.
Statistical aspects. Dynamical perspective of gradient descent methods.
ADALINE. Multi-layer Perceptron. MADALINE. Backpropagation. Auto-associative
networks. Hopfield and Boltzmann networks; application to content-addressable
memories and to the approximate solution of NP-complete problems.
Self-organization. Competition networks.
| | Reading List |
|---|
|
J. A. Anderson, An Introduction to Neural Networks, The MIT Press, 1995.
L. Fausett, Fundamentals of Neural Networks - Architectures, Algorithms and Applications, Prentice Hall, 1994.
M. H. Hassoun, Fundamentals of Artificial Neural Networks, The MIT Press, 1995.
S. Haykin, Neural Networks - A Comprehensive Foundation, 2nd edition, Prentice Hall, 1999.
R. Rojas, Neural Networks - A Systematic Introduction, Springer-Verlag, 1996.
J. Hertz, A. Krogh & R. G. Palmer, Introduction to the Theory of Neural Computation, Addison-Wesley, 1991.
D. Patterson, Artificial Neural Networks -- Theory and Applications, Prentice Hall, 1996.
P. Churchland e T. Sejnowski, The Computational Brain, The MIT Press, 1992.
| | Other Readings |
|---|
|
Ligações para informação diversa, disponível na internet.
| | Teaching Method |
|---|
|
Classroom lectures.
| | Assessment |
|---|
|
Programming projects.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Natural Language Processing| Code | Acronym |
|---|
|
425130
|
PLN
| | Objectives |
|---|
|
First introduction to fundamental results and methods in natural language processing. Major themes: Representation and computation of linguistic knowledge in its different dimensions. Methodologies for syntactic analysis. Overgeneration and selection of parsing results. Syntax semantics interface. Semantic representation and logical form. Grammar models. Major parsing algorithms. Natural language complexity. Participation of students with different background (Informatics, Linguistics, Mathematics, Psychology, ...) is encouraged
| | Syllabus |
|---|
Lectures
Chatter-bots and avatars: template systems and language understanding. Natural languages vs artificial and non human languages. Linguistic knowledge: representation and computation. Parsing and the DCG formalism. Modelling the key syntactic relations: constituency, agreement, subcategorization, long-distance dependencies. Coding lexical and structural ambiguity. Overgeneration and result selection. Semantic analysis. Representing meaning: FOL, lambda formalism, generalized quantifiers. Coding quantifier scope ambiguity. Key applications: natural languages interfaces, language translation. Grammar formalisms and scalability. Parsing algorithms: top-down, bottom-up, left-corner, chart parsing, Earley. Computational complexity of natural languages.
Practice Sessions
Use of the Prolog language to develop simple template and keyword systems. DCG parsing. Advanced use of the DCGs. Building semantic representations. Definition and coding of unification grammars. Parsing algorithms: top-down, bottom-up, left-corner, Earley. Final project involving the definition and use of a grammar that covers a wider range of linguistic phenomena.
| | Reading List |
|---|
|
Daniel. Jurafsky e James Martin, Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition, New Jersey: Prentice Hall, 2000.
Michael. Covington, Natural Language Processing for Prolog Programmers, Londres: Prentice Hall, 1994
| | Other Readings |
|---|
|
Mitkov, R. The Oxford Handbook of Computational Linguistics, Oxford University Press, 2003.
James Allen, Natural Language Understanding, Redwood: The Benjamin/Cummings,1995
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Distributed Systems Programming| Code | Acronym | URL |
|---|
|
425132
|
PSD
| http://mocho.di.fc.ul.pt/p/PSD | | Objectives |
|---|
|
The objective of this course is to provide a global perspective of the several architectures and models for the construction of and programming in distributed systems. This course assumes that students are familiar with fundamental concepts of distributed systems.
| | Syllabus |
|---|
Lectures
Introduction to distributed systems programming; Complements to distributed systems paradigms; Advanced distributed system services; Programming models in distributed environments; Distributed systems and platforms; ONC RPC (ex-SUN); AFS; NTP; X.509; DCE; CORBA; WWW; ISIS; TUXEDO
Practice Sessions
Introduction to distributed systems programming; Complements to distributed systems paradigms; Advanced distributed system services; Programming models in distributed environments; Distributed systems and platforms; ONC RPC (ex-SUN); AFS; NTP; X.509; DCE; CORBA; WWW; ISIS; TUXEDO
| | Reading List |
|---|
|
P. Veríssimo and L. Rodrigues, Distributed Systems for System Architects, Kluwer Academic Publishers, 2001.
G. Coulouris, J. Dollimore and T. Kindberg, Distributed Systems - Concepts and Design, 3rd Ed., Addison-Wesley, 2002
| | Other Readings |
|---|
|
Distributed Systems, 2nd Ed., Sape Mullender Ed., Addison-Wesley, 1993
- Building Secure and Reliable Network Applications, Kenneth Birman, Manning - P. Hall, 1996.
- OSF DCE: Guide to Developing Distributed Applications, H. Lockhart, IEEE CS, 1994.
- Advanced Concepts in Operating Systems, Mukesh Singhal, Niranjan Shivarafri, McGraw Hill
- Manuais do AFS
- The TUXEDO System, J. Andrade et al., Addison-Wesley, 1996.
- Java Programming with CORBA, 3rd Ed, G. Brose, A. Vogel, K Duddy, OMG Press, 2001.
- Teach Yourself CORBA in 14 Days, Jeremy Rosenberger, Sams Publishing, 1998.
- The Java Tutorial, M. Campione, K. Walrath, Sun, 1997.
- Manual do ORBacus
| | Assessment |
|---|
|
10% - Homeworks
40% - Project & Class participation
50% - Final exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Data Mining and Knowledge Discovery| Code | Acronym | URL |
|---|
|
425133
|
PDI
| http://mocho.di.fc.ul.pt/p/PDI | | Objectives |
|---|
|
Our current capacity to collect and store data largely exceeds our capacity to analyze that same data in order to characterize it and to extract useful knowledge from it. Data Mining and Knowledge Discovery is the scientific course that allows the automatic extraction of useful information from large collections of data. This course focuses on providing the student with specific skills in this area, through the study of the several steps of the data mining process, emphasizing machine learning algorithms originated in the areas of Artificial Intelligence, Statistics and Data Analysis and their application to the discovery of interesting patterns in data collections.
| | Syllabus |
|---|
Lectures
- Introduction and general concepts: tasks and problems of Data Mining, exploration and visualization of data, supervised and unsupervised machine learning methods
- Induction of decision trees
- Association rules
- Bayesian learning
- Clustering and Expectation-Maximization (EM) algorithm
- Data Preprocessing
- Evaluation of results and combination methods
- Regression models
- Support Vector Machines
Practice Sessions
Solution of exercises applying the algorithms studied.
Lab classes demonstrating the use of data mining library algorithms for the R language and their application to small data sets.
Discussion of scientific papers.
| | Reading List |
|---|
|
- Principles of Data Mining, David Hand, Heikki Mannila e Padhraic Smyth, MIT Press, 2001.
- Modern Applied Statistics with S - 4th Edition, W. N. Venables, B. D. Ripley, Springler, 2002.
| | Other Readings |
|---|
|
- notas de apoio às aulas teóricas
- - leituras sugeridas: lista de artigos científicos de vários autores para aprofundamento dos tópicos abordados
| | Teaching Method |
|---|
|
Lectures and lab classes.
Reading of suggested scientific papers, followed by their oral presentation and discussion by the students.
| | Assessment |
|---|
|
Solution of short exercises, presentation and discussion of a paper and a project
| | Teaching Language |
|---|
|
The lectures will be in English if there are students registered who do not speak Portuguese. Otherwise, lectures will be in Portuguese.
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Network Protocols| Code | Acronym | URL |
|---|
|
425134
|
PRD
| http://mocho.di.fc.ul.pt/p/PRD | | Objectives |
|---|
|
The course aims at providing an understanding of IP networks, specially, routing protocols used in the internet. The students learn the operation of interior and exterior routing protocols, constraint based routing, quality of service, traffic engineering, multicast routing and routing in mobile and ad hoc networks.
| | Syllabus |
|---|
Lectures
Network architectures. The IP model. Internet today (autonomous systems, backbone networks, service providers). IP addressing, Interior protocols (RIP, OSPF). Exterior protocols: (BGP). MPLS. Quality of service. Traffic engineering. IP multicast. Mobile IP. Ad hoc routing.
Practice Sessions
Configuration of network components (machines, switches, routers).
| | Reading List |
|---|
|
C. Huitema, Routing in the Internet, second edition Prentice-Hall 2000
| | Other Readings |
|---|
|
Jeff Doyle, Routing TCP/IP, Volume I (CCIE Professional Development), Cisco Press.
Jeff Doyle and Jennifer Carroll, Routing TCP/IP, Volume II (CCIE Professional Development), Cisco Press.
| | Assessment |
|---|
|
Test and Projects
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Software Quality| Code | Acronym | URL |
|---|
|
425135
|
QS
| http://mocho.di.fc.ul.pt/p/QS | | Objectives |
|---|
|
After completing this course, the students are able to:
Identify the unique characteristics of software as a product and as production process. Recognize the uniqueness of software quality assurance (SQA) and explain the environment for which SQA methods are developed.
Define software quality and software quality assurance and explain the objectives of software quality assurance activities.
Identify and explain the product quality models and assessment of their characteristics. Explain the structure of McCalls classic factor model and ISO/IEC 9126 factor model.
Identify and define the components of a SQA system: pre-project, project life cycle activities assessment, infrastructure, software quality management, standardization, certification and SQA system assessment and human components.
| | Syllabus |
|---|
Lectures
The software quality challenge, Software quality definition
Software quality factors: McCall and ISO/IEC 9126 models
Components of a software quality assurance system
- Pre-project components: development and quality plans
- Software project life cycle components
- Infrastructure components
- Management components
- SQA Standards, system certification components: SEI CMM, ISO 9001, 9000-3, IEEE 1012, ISO/IEC 12207, ISO/IEC 15504, PSP
- Human component
- Case Studies: Exposure to real situations
- Two seminars with invited speakers from the industry.
Practice Sessions
Personal Software Process: objectives and the improvement process
Time management
Tracking time
Period and product planing
Product size
Managing your time
Managing commitments
| | Reading List |
|---|
|
Daniel Galin, Software Quality Assurance, Addison Wesley, 2004, ISBN 0201709457.
Watts Humphrey, Introduction to the Personal Software Process,
Addison Wesley, 1997, ISBN 0201548097.
| | Other Readings |
|---|
|
Sami Zahran, Software Process Improvement: Practical Guidelines for Business Success, Addison Wesley, 1998, ISBN n.º 020117782X.
Stephen H. Kan, Metrics and Models in Software Quality Engineering, Addison Wesley, 1995, ISBN n.º 0201633396.
Mark Paulk, Charles Weber e outros, The Capability Maturity Model: Guidelines for Improving the Software Process, Addison Wesley, 1995, ISBN n.º 0201546647.
| | Teaching Method |
|---|
|
Each theoric classe have three parts:
- Reading: Self-study materials that students work
- Exposure and discussion: the topic is presented with more detail and discussed with students
- Evaluation: the student elaborate a resume and/or answer a question about the topic learned
Two theoric classes are seminars with invited speakers from the industry
Pratice classes: Each student group presents a part of the PSP
| | Assessment |
|---|
|
project (50%) + tests/exam (30%) + PSP exercices (20%)
| | Teaching Language |
|---|
|
Portuguese
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Multimedia Pattern Recognition| Code | Acronym |
|---|
|
425136
|
RPM
| | Objectives |
|---|
|
The goal is to provide the students methods and tools to deal with large non annotated corpus, with particular emphasis for audio, image and video signal corpora.
| | Syllabus |
|---|
Lectures
Feature extraction.
Supervised and unsupervised classification.
Parametric and non-parametric methods.
Sequence classification.
Evaluation.
Practice Sessions
Labs:
Feature extraction.
Supervised and unsupervised classification.
Parametric and non-parametric methods.
Sequence classification.
Evaluation.
Laboratory
project
| | Reading List |
|---|
|
Pattern Classification, Second Edition, R. Duda, P. Hart, D. Stork, John Wiley & Sons (October 2000).
| | Other Readings |
|---|
|
Reconhecimento de Padrões: Métodos Estatísticos e Neuronais, Jorge Salvador Marques, IST PRESS, (1999).
- An introduction to MCMC for machine learning, C. Andrieu, N. de Freitas, A. Doucet, and M. I. Jordan, Machine Learning, vol. 50, pp. 5--43, (Jan. - Feb. 2003).
- Statistical Pattern Recognition, 2nd Edition Andrew R. Webb, John Wiley & Sons; 2 edition (October 15, 2002).
- Pattern Recognition in Speech and Language Processing, Wu Chou, CRC Press (February 26, 2003).
-
| | Teaching Method |
|---|
|
Theoric lessons.
Discussion of project deliveries
Labs
| | Assessment |
|---|
|
project
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Speech Recognition and Synthesis| Code | Acronym |
|---|
|
425137
|
RSF
| | Objectives |
|---|
|
This course introduces several solutions for acoustical classification problems with particular emphasis in the scope of HCI and communication with Information Systems. Speech recognizers and text-to-speech systems are studied, namely their capabilities and limitations.
| | Syllabus |
|---|
Lectures
Speech representation.
Production and perception models
Main speech processing algorithms
Speech processing software packages
Speech recognition
Speech sinthesys
HCI applications
SI applications
VoiceXML
Practice Sessions
Speech processing software packages evaluation
VoiceXML systems evaluation
Laboratory
project
| | Reading List |
|---|
|
Livro: X. Huang, A. Acero, H. Hon (2001), Spoken Language Processing: A Guide to Theory, Algorithm and System Development (Prentice-Hall).
| | Other Readings |
|---|
|
Acetatos das aulas teóricas
Guias das aulas de laboratório
| | Teaching Method |
|---|
|
class + discussion of project deliveries + labs
| | Assessment |
|---|
|
project
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Text Mining and Retrieval| Code | Acronym |
|---|
|
425138
|
RPT
| | Objectives |
|---|
|
| | Syllabus |
|---|
Lectures
Practice Sessions
| | Reading List |
|---|
|
Colectânea de artigos científicos seleccionados pelo responsável pela disciplina.
Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to Information Retrieval, Cambridge University Press. 2007.
Ronen Feldman, James Sanger. The Text Mining Handbook: Advanced Approaches in Analyzing Unstructured Data, Cambridge University Press. 2007
| | Other Readings |
|---|
|
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Mobile Networks| Code | Acronym |
|---|
|
425207
|
RM
| | Objectives |
|---|
|
We envisage the student aquires knowledge about wireless and mobile networks so they can look at their challenges and opportunities. Although we present the main physical layer properties, our focus is on multiple access protocols as well as on network and transport protocol layers.
| | Syllabus |
|---|
Lectures
Physical layer properties. Multiple access protocols. Wireless LANs (IEEE802.11). Wireless PANs (IEEE802.15). Wireless MANs (IEEE802.16). Cellular networks. Satellite Communications. Wireless Internet: Mobile IP, TCP. Ad-hoc networks. Security.
Practice Sessions
Practical study on footprint of wireless networks.
Development of some protitype apllications for ad-hoc networks.
| | Reading List |
|---|
|
William Stallings. Wireless Communications and Networks, 2nd Edition, Prentice Hall, 2004.
C.Siva Ram Murthy and B.S.Manoj. Ad Hoc Wireless Networks - Architectures and Protocols, Prentice Hall, 2004.
| | Other Readings |
|---|
|
| | Assessment |
|---|
|
Test and projects
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Neural Networks| Code | Acronym | URL |
|---|
|
425140
|
RN
| http://mocho.di.fc.ul.pt/p/RN | | Objectives |
|---|
|
To understand the main neural network models and their learning algorithms. The students should obtain theoretical as well as practical acquaintance with neural network applicability conditions as well as with implementation tools.
| | Syllabus |
|---|
Lectures
Basic concepts - biological model and artificial neuron models. Learning processes. Simple perceptron. Multi-layer perceptron. Radial basis function networks. Support vector machines. Committee machines. Self-organised maps. Models based on Information Theory. Stochastic models. Temporal processing. Spiking neurons.
Practice Sessions
Solving illustrative problems and use of NN tools
Laboratory
not applicable
| | Reading List |
|---|
|
Simon Haykin, Neural Networks - a comprehensive foundation, 2nd edition, Prentice-Hall, 1999
W. Gerstner, W. M. Kistler, Spiking Neuron Models, Cambridge University Press 2002.
| | Other Readings |
|---|
|
software de RN e respectivos manuais
| | Teaching Method |
|---|
|
Theoretical classes for presentation of matters; theoretical-practical classes for supervision of scripted work; autonomous work outside classes
| | Assessment |
|---|
|
Scripted work (in theoretical-practical classes) + Autonomous work + Exam
| | Teaching Language |
|---|
|
Portuguese, or English if needed
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Mobile Robots| Code | Acronym | URL |
|---|
|
425208
|
ROBM
| http://mocho.di.fc.ul.pt/p/ROBM | | Objectives |
|---|
|
This course intends to provide the student with a broadening approach, covering the analysis and programming of embodied devices. These have a mechanical interaction with the environment and mobility in that environment. This type of interaction has sgnificant specifities and the acquisition of this type of knowledge is expected to benefit the student. His vision of the interaction of informatics with real world problems will be enriched.
| | Syllabus |
|---|
Lectures
Historic analysis; Components of a mobile robot; Morphology
Locomotion mechanisms in different enviroments; Energy storage and consumption
Measurement of physical values, passive and active, and their respective sensors; processing of sensorial data; sensorial integration
Actuation of the robot in function of its sensorial stimulus; stabilization of the robot; decision control
Behavioural architectures for decision control; comparison with functional architectures; hybrid architectures; reflexes; fixed action patterns; motor programs; robot autonomy
Simulation approaches for mobile robots; limitation and realismo of the simulations; simulation for debugging real robots programs
Representation and autonomous map discovery; static and dynamical environments; route planning
Robot teams; interference; emergent cooperation; teams of robots and humans
Practice Sessions
not applicable
Laboratory
Real robot programming in simple tasks. Experiments of interaction of mobile robots with unstructured environments and with other mobile agents, in particular humans and similar robots.
| | Reading List |
|---|
|
R.C. Arkin, Behavior-Based Robotics, MIT Press, 1998.
George A. Bekey, Autonomous robots from biological inspiration to implementation and control, MIT Press, 2005.
Roland Y. Siegwart and Illah Reza Nourbakhsh, Introduction to Autonomous Mobile Robots (Intelligent Robotics & Autonomous Agents), Bradford Books, 2004.
Steven M. LaValle, Planning Algorithms, Cambridge University Press, 2006.
V. Braitenberg, Vehicles, MIT Press, 1984.
Rodney A. Brooks, Cambrian intelligence: the early history of the new AI, MIT Press, 1999.
Rodney A. Brooks, Flesh and machines: how robots will change us, Vintage Books, 2002.
Stefano Nolfi and Dario Floreano, Evolutionary Robotics - The Biology, Intelligence, and Technology of Self-Organizing Machines, MIT Press, 2004.
Tucker Balch and Lynne E. Parker (eds.), Robot Teams: From Diversity to Polymorphism, AK Peters, Ltd., 2002.
| | Other Readings |
|---|
|
Artigos diversos; Manuais de robôs
| | Teaching Method |
|---|
|
Lecturing of new subjects, in theoretical classes.
Guidance to robot programming, and analysis and discussion of solutions, in practical classes.
| | Assessment |
|---|
|
80% Practical work + 20% Quiz test
| | Teaching Language |
|---|
|
Portuguese or English, if necessary
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Software Security| Code | Acronym | URL |
|---|
|
425141
|
SeS
| http://mocho.di.fc.ul.pt/p/SeS | | Objectives |
|---|
|
The number of cyber attacks observed in recent years has had an almost exponential growth (CERT - http://www.cert.org/stats/ ). As regards the integrity of systems and the confidentiality of data, it is becoming evident that the weakest link is the security of the computer, not the security of the communication (http://www.jya.com/paperF1.htm ).
This course studies the security of the machine vis-a-vis the security of the network/communication. It intends to approach the main topics required to understand the problem, including the discussion of a series of more advanced themes that are currently under research.
| | Syllabus |
|---|
Lectures
o Security and software development
- o Protection in general purpose operating systems
- o Buffer overflows
- o Input validation: DBMSs, Web
- o Race conditions
- o Testing attack injection
- o Testing static analysis
Practice Sessions
Hands-on classes on:
- o Security and software development
- o Protection in general purpose operating systems
- o Buffer overflows
- o Input validation: DBMSs, Web
- o Race conditions
- o Testing attack injection
- o Testing static analysis
| | Reading List |
|---|
- J. Viega, G. McGraw, Building Secure Software, Addison-Wesley, 2002.
- M. Howard, D. LeBlanc, Writing Secure Code, 2nd edition, Microsoft Press, 2003.
| | Other Readings |
|---|
- C. Pfleeger, S. L. Pfleeger, Security in Computing, 3rd ed., Prentice Hall, 2003.
- M. Dowd, J. McDonald J. Schuh, The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities, Addison-Wesley, 2006.
- C. Wysopal, L. Nelson, D. Zovi, E. Dustin, The Art of Software Security Testing, Addison-Wesley, 2006.
- B. Chess, J. West, Secure Programming with Static Analysis, Addison-Wesley, 2007.
- G. Hoglund, G. McGraw, Exploiting Software: How to Break Code, Addison-Wesley, 2004.
- M. Gasser, Building a Secure Computer System, Van Nostrand Reinhold, 1988.
- S. Garfinkel, G. Spafford, A. Schwartz, Practical Unix & Internet Security, 3rd ed., O'Reilly, 2003.
- David A. Wheeler, Secure Programming for Linux and Unix HOWTO, v3.010, 3 March 2003
- P. Maher and A. Mackman, The Developer Highway Code. Microsoft Corp, 2006.
- D. Bovet, M. Cesati, Understanding the Linux Kernel, 1st ed., OReilly, 2000
- OWASP Foundation. OWASP Top 10 - the ten most critical web application security vulnerabilities (2007 update). 2007
| | Assessment |
|---|
|
10% - Homework in the form of 5 exercises to be published every fortnight throughout the semester and handed in during the theoretical class the following week. There is a 6th virtual exercise whose mark depends on the number of exercises handed in. Each one adds 4 points to the mark of the virtual exercise. The final mark of this component corresponds to the average of the 6 exercises.
- 40% - Project & Class participation, including discussion of the results and reports of the projects
- Marks are made public upon conclusion of all discussions, for criteria homgeneity
50% - Final exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Social Simulation| Code | Acronym |
|---|
|
425143
|
SS
| | Objectives |
|---|
|
To contact with tools and methodologies appropriate to simulation of multiple, heterogeneous and autonomous agent systems; to install workbenches and develop projects in social simulation; to pose problems and assemble the means to attack them;to acquire practices in exploration oriented scientific experimentation; to contact with the social sciences reality and establish parallels with artificial intelligence.
| | Syllabus |
|---|
Lectures
To insert agents in context, allowing for a more realistic approach to the complexity associated with interactions dynamic. Computer as a tool and exploratory simulation as a methodology which allow to the social scientist to test models, rehearse experiments, put forward hypotheses; unveil new conjectures.
Multiagent systems: decision and rationality; autonomy; specification of agents and societies; development of programs and experimentation.
Notions of Social Sciences: object and methodologies; techniques of analysis of data and experimental results; simulation and empirism; computational simulation.
Methodologies of experimental work: exploratory simulation as another way of doing science; methodological problems with result analysis; metaphors and conjectures as scientific objects.
Practice Sessions
Development of small experiments: development of programs and use of simulation workbenches; critical analysis of results; confrotation with empirical results.
| | Reading List |
|---|
|
Nigel Gilbert and Klaus Troitzsch (1999). Simulation for the Social Scientist. Open University Press, UK.
Vanessa Stevens Collella, Eric Klopfer and Mitchell Resnick, Adventures in Modeling. Teachers College Press, New York, USA.
| | Other Readings |
|---|
|
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Embedded and Real-Time Systems| Code | Acronym | URL |
|---|
|
425209
|
SETR
| http://mocho.di.fc.ul.pt/p/SETR | | Objectives |
|---|
|
The course intends that the student acquires experience with specific problems of embedded and real-time systems, with emphasis on models of distributed computing in industrial systems. Architectural aspects, the specificity of networking and operating systems, and typical applications are some of the issues addressed.
| | Syllabus |
|---|
Lectures
1) Paradigms for embedded and real-time systems: fundamentals of dependability and real-time; order and time in real-time systems; reliable communication in real-time systems; scheduling; clock synchronization; input/output; real-time system models; adaptive and QoS related models; 2) Technologies and architectures: industrial protocols (MAP/TOP, MMS); industrial networks and fieldbuses; real-time operating systems; SCADA, continuous and discrete control architectures; 3) Case studies
Practice Sessions
1) Embedded and real-time systems:
- - Fieldbuses--- CAN, FlexRay
- - Real-time kernels--- RTAI, RTEMS
- - SCADA systems--- LabView
2) Practical projects
- - The students will develop 2 projects. The first one will use the Cheddar scheduling simulator, and the second will serve to learn how to build real-time applications over a real-time kernel, using RTAI.
| | Reading List |
|---|
|
- P. Veríssimo and L. Rodrigues, Distributed Systems for System Architects, Kluwer Academic Publishers, 2001.
| | Other Readings |
|---|
|
- H. Kopetz, Real-Time Systems, Kluwer Academic Publishers, 1997.
- Distributed Systems, 2nd Ed., Sape Mullender Ed., Addison-Wesley, 1993
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Hypermedia Systems| Code | Acronym | URL |
|---|
|
425144
|
SH
| http://mocho.di.fc.ul.pt/p/SH | | Objectives |
|---|
|
The course aims at providing knowledge on Hypertext and Hypermedia. Hypermedia systems and applications are used nowadays in the most variable setting, either as a technology that enables access to specifics computing systems, or as complete functional systems. Its flexible nature raises a large set of problems at the analysis, design and development level that must be dealt with systematic and model-based approaches that, nevertheless, allows space for creativity. The course presents design and development methodologies, design-patterns, data models, languages, architectures, navigation and interaction-patterns and evaluation approaches specific for Hypermedia Systems. It also unfolds the area of Adaptive Hypermedia and correlates Hypermedia with specific Multimedia, Cooperative Work and Cognition representation topics.
| | Syllabus |
|---|
Lectures
Hypertext and Hypermedia, Hypermedia Engineering, Methodologies for Hypermedia Design and Development, Hypermedia Data Models and Architectures, Navigation, Evaluation of Hypermedia Systems, Adaptive Hypermedia, Hypermedia & Multimedia, Hypermedia & Cognition, and Hypermedia & Cooperative Work.
Practice Sessions
Design and Development of a Hypermedia System, following one of the learned methodologies. The System should be characterized by a complex and heterogeneous information structure, targeted to a specific task, usage context and user group.
| | Reading List |
|---|
|
Selecção de artigos científicos.
David Lowe & Wendy Hall, "Hypermedia & the Web: An Engineering Approach", Wiley, 1999.
Jakob Nielsen, "Multimedia and Hypertext", Academic Press, 1995.
| | Other Readings |
|---|
|
Apresentações das aulas teóricas
| | Assessment |
|---|
|
Development of a pratical assignment, and oral presentation.
Studying, presentation and discussion of selected scientific papers.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Multi-Agent Systems| Code | Acronym | URL |
|---|
|
425146
|
SMA
| http://mocho.di.fc.ul.pt/p/SMA | | Objectives |
|---|
|
Agents, a general metaphor for interactions. Agent simulation for attacking complexity. Technologies, tools and techniques: organizational level, self-organization and complexity, trust and reputation, coordination, negotiation and communications, agent models and architectures, infrastructures and workshops, agent-based programming engineering, formal methods and interfaces. Electronic institutions and communities. Real applications: autonomous systems, semantic web, intelligent environments, ambient intelligence, service oriented computation, ubiquous and grid computing, peer-to-peer computing.
| | Syllabus |
|---|
Lectures
Presentation of the discipline within the context of Computing, Cognitive and Complexity Sciences. Multi-agent Systems. State of the art of Distribute Artificial Intelligence. Global overview of the teaching, learning and evaluation. Bibliography.
Research at FCUL, ICC, LabMAg and GIA.
Practice Sessions
Laboratory
Environments for supporting multi-agent systems. Platforms, Workbenches: open and constrained solutions. Examples of applications (Einstein, NetLogo). Practical exercises with NetLogo. Building uo agents based upon behaviours.
Workbenches for more complex and heterogeneous agents. Examples of Aglets and OAA. Practical exercise with OAA. Agent communication with KQML/ICL/ACL. Examples with Corrêa´s architectures. Programming in JADE for distributing computing. Games with Player/Stage. Agents for controlling robots.
Methodologies for agent based programming engineering.
| | Reading List |
|---|
|
Bradshaw, J. M. (ed.) - Software Agents, AAAI Press/The MIT Press, 1998.
Brenner, W., Zarnekow, R. e Wittig, H. - Intelligent Software Agents, Foundations and Applications, Springer-Verlag, 1998.
Coelho, H. - Inteligência Artificial em 25 Lições, Fundação Calouste Gulbenkian, 1995.
Coelho, H. - Teoria da Agência: Arquitectura e Cenografia, Edição do Autor, 2008.
Ferber, J. - Les Systèmes Multi-Agents, Vers une Intelligence Collective, InterEditions, 1995.
Gilbert, D. et al. - The Role of Intelligent Agents in the Information Infrastructure, IBM, 1995. {http://activist.gpl.ibm.com:81/WhitePaper/ptc2.htm}
Green, S. e Hurst, L. - Software Agents: A Review, {http://www.cs.tcd.ie/research_group/aig/iag/}
Huhns, M. N. e Singh, M. P. - Readings in Agents, Morgan Kaufmann, 1998.
Jennings, N. R. - Cooperation in Industrial Multi-Agent Systems, World Scientific, 1994.
Jennings, N. R. e Wooldridge, M. - Agent Technology, Foundations, Applications and Markets, Springer-Verlag, 1998.
Labrou, Y. e Finn, T. - A Proposal for a new KQML Specification, Technical Report CS-97-03, February 1997. {http://www.cs.umbc.edu/kqml/}
Müller, J. P. - The design of Intelligent Agents, Springer-Verlag, 1997.
Nilsson, N. - Artificial Intelligence, A New Synthesis, Morgan Kaufmann, 1998.
OHare, G. M. P. e Jennings, N. R. - Foundations of Distributed Artificial Intelligence, John Wiley, 1996.
Russell, S. e Norvig, P. - Artificial Intelligence, a Modern Approach, Prentice-Hall, 1995.
Tecuci, G. - Building Intelligent Agents, An Apprenticeship Multistrategy Learning Theory, Methodology, Tool and Case Studies, Academic Press, 1998.
Wooldridge, M. An Introduction to Multiagent Systems, John Wiley, 2002.
| | Other Readings |
|---|
|
| | Assessment |
|---|
|
Individual presentation of a selected topic, Agent programming and General Exam.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Socio-Technical Systems| Code | Acronym | URL |
|---|
|
425147
|
SST
| http://mocho.di.fc.ul.pt/p/SST | | Objectives |
|---|
|
| | Syllabus |
|---|
Lectures
Practice Sessions
| | Reading List |
|---|
|
| | Other Readings |
|---|
|
| | Teaching Language |
|---|
|
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Organizations Sociology| Code | Acronym | URL |
|---|
|
425148
|
SOC
| http://mocho.di.fc.ul.pt/p/SOC | | Objectives |
|---|
|
Understanding of the nature and role role of organisations by means of the various theoretical approaches and their evolution. Highlight the social, cultural and human dimension in organisations and in entreprises more specifically, either from the internal proint of view or from its interaction with the outside world.
| | Syllabus |
|---|
Lectures
Practice Sessions
| | Reading List |
|---|
|
Mary Jo Hatch & Ann L. Cunliffe, Organization Thory, 2nd Edition, Oxford University Press, 2006
| | Other Readings |
|---|
|
| | Assessment |
|---|
|
Exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Software Reliability| Code | Acronym |
|---|
|
425149
|
SF
| | Objectives |
|---|
|
This course aims to introduce the key formal methods that are currently used in the process of software development that support the verification of code or of the intermediary models. More traditional techniques s.a. testing will be also presented and the limitations and capabilities of the different methods will be analysed and compared. Furthermore, the students should develop hands-on skills with the model-checking tool SPIN
| | Syllabus |
|---|
Lectures
1 Logic and Automatic Theorem Prooving
2 Modelling of Software Systes
2.1 Sequential systems/ reactive systems/ concurrent systems
2.2 Non determinism
2.3 Fairness
3 Formal specification
3.1 Linear Temporal Logic
3.2 Buchi Automata
3.3 Safety and livenss propoerties
4 Automatic Verification (explicit-states based)
4.1 Automata
4.2 Model Checking
4.3 Use of abstractions
4.4 Static Analysis
4.5 Model extraction
5 Deductive Verification
5.1 Axiomatic verification for Sequential Systems
5.2 Deductive Verification for Concurrent Systems
6 Testing
Practice Sessions
| | Reading List |
|---|
|
Doron Peled, Software Reliability Methods, Springer-Verlag, 2001.
Gerard Holzmann, Spin Model Checker: Primer and Reference Manual, Addison Wesley, 2003
| | Other Readings |
|---|
|
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Advanced Interaction Techniques| Code | Acronym |
|---|
|
425151
|
TIA
| | Objectives |
|---|
|
The main objective of this course is to present and discuss with students the concepts and the technology available for non traditional interaction with computers. Students will gain knowledge on the multiple modes available for interaction, including gesture, speech, brain and muscle activity waves, haptics, smell, body movement, etc, about the concepts that underline those modes, the software architectures and technology that support them, and its application as a way to augment and sometimes enable the communication between humans and machines. The theory and practices of the combination of modes into multimodal interfaces is also presented and discussed with students, as well as the advantages and disadvantages of this diversity. Interaction-mode alternatives and cooperation and its proximity with human to human language are examined and its application to cope with individuals with special needs or critical and constrained environments is considered. The intelligence and adaptation nature inherent to this kind of communication is deepened. Examples of its application to games, particularly physical interaction ones ( Wii/Eye-toy like), and critical healthcare and education software are provided and students are encouraged to build systems in these domains.
| | Syllabus |
|---|
Lectures
Multimodal Intelligent and Adaptive User Interfaces; Architectures and Models for Advanced Interaction; Context-awareness in HCI; Universal Access and Accessibility; Ubiquitous Interfaces; Unusual Interaction Systems; Physical and Physiologic Interaction Games and Applications
Practice Sessions
Interactive systems with speech recognition and synthesis; Vision based interaction applications; Gesture, movement and facial expression recognition; Brain-computer Interaction; Using haptics, force, nose and other sensors for interaction; Augmented reality; Ubiquitous, multimodal, adaptive and context-aware systems; Web multimodalities; Games and Interaction; Interaction in critical systems; Interactive systems for elderly, children and other individuals with special needs.
| | Reading List |
|---|
|
Maybury Wahlster. Intelligent User Interfaces, 2nd Edition. Sage, 1998;
John M. Carroll (Eds) Human-Computer Interaction in the New Millennium, ACM Press, 2001;
Proceedings of the IEEE, Special Issue on HumanComputer Multimodal Interface, Vol. 91, N. 9, Setembro de 2003;
Communications of the ACM, Março de 2000 e de 2003.
| | Other Readings |
|---|
|
José del R. Millán, "ADAPTIVE BRAIN INTERFACES", COMMUNICATIONS OF THE ACM March 2003/Vol. 46, No. 3;
Tracy Westeyn, Helene Brashear, Amin Atrash, and Thad Starner. Georgia Tech Gesture Toolkit: Supporting Experiments in Gesture Recognition. ICMI03, November 57, 2003, Vancouver, British Columbia, Canada;
John Paulin Hansen, Kristian Tørning, Anders Sewerin Johansen, Kenji Itoh, Hirotaka Aoki. Gaze typing compared with input by head and hand. Proceedings of the Eye tracking research & applications symposium on Eye tracking research & applications. March 2004;
W.K. Teo, Liyanage C De Silva and Prahlad Vadakkepat. "Facial Expression Detection and Recognition System". Journal of The Institution of Engineers, Singapore. Vol. 44 Issue 3 2004 ;
...
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Tecnologias de Bases de Dados | Code | Acronym | URL |
|---|
|
425152
|
TBD
| http://mocho.di.fc.ul.pt/p/TBD | | Objectives |
|---|
|
The course presents the concepts and technologies of database management systems, with emphasis on relational databases. Database management systems are one of the most complex and employ many of the basic concepts in computer science. Many of the used techniques and solutions are prevalent in the development of other systems and computer applications. The
- course dissects the innings of a database engine illustrating how it applies many of the essential notions from the basic courses in informatics, from logic and algorithms to operating systems and software engineering.
| | Syllabus |
|---|
Lectures
Physical data organization and access methods. Query processing and optimization. Transctions, concurrency
- control, integrity, and recovery. Information security in database management systems. Architecture of client-server applications and development methods. Performance tunning. Parallel and distributed databases.
Practice Sessions
| | Reading List |
|---|
|
Raghu Ramakrishan e Gehrke J., Database Management Systems, McGraw-Hill, 3ª edição, ISBN 0072465638
| | Other Readings |
|---|
|
[Gray] Jim Gray e Andreas Reuter, Transaction Processing: Concepts and Techniques, Morgan Kaufmann, 1993, ISBN 1558601902;
[Steven] Steven Feuerstein, Oracle PL/SQL Programming, O'Reilly, 3ª edição, 2002, ISBN 0596003811;
[Gurry] Mark Gurry e Peter Corrigan, Oracle Performance Tuning, O'Reilly, 2ª edição, 1996, ISBN 1565922379;
[Navathe] Shamkant B. Navathe e Ramez E. Elmasri, Fundamentals of Database Systems, Addison Wesley, 3ª edição, 1999, ISBN 0201542633;
[Melton] Jim Melton e Alan R. Simon, Understanding the New SQL: a Complete Guide, Morgan Kaufmann, 1992, ISBN 1558602453;
| | Teaching Method |
|---|
|
A generic database server is dissected in the lectures throughout the semester,
In the practical classes, students develop and tune an application that must process a pre-specified load.
| | Assessment |
|---|
|
Class Project (35%) + 2 Midterms (27,5% + 27,5%) + class participation (10%)
or
Class project (35%) + final exam (55%) + class participation (10%)
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Middleware Technologies| Code | Acronym | URL |
|---|
|
425153
|
TM
| http://mocho.di.fc.ul.pt/p/TM | | Objectives |
|---|
|
Middleware is the generic designation of the software systems placed between the applications and the operating systems. The goal of middleware is to facilitate the development of distributed applications and the integration of legacy systems.
The course presents different algorithms, protocols and frameworks that have been used at the middleware level. It covers middleware technologies for different applications (point-to-point, multicast and broadcast) and execution environments (wired, wireless and hybrid networks).
| | Syllabus |
|---|
Lectures
Study of different middleware technologies such as: peer-to-peer networks, distributed hash tables, gossip, protocol composition frameworks, publish-subscribe, service discovery and web services. Whenever possible, a link between different requirements and implementation techniques for wired and wireless networks will be established.
Practice Sessions
Analysis of concrete middleware products. Application development.
| | Reading List |
|---|
|
Artigos e capítulos de livros disponibilizados pelo docente na página web da cadeira.
| | Other Readings |
|---|
|
| | Teaching Method |
|---|
|
Exposition of the concepts with presentations from both the teacher and the students. Study of the middleware products documentation and labs experiments of middleware products.
| | Assessment |
|---|
|
Students presentation, application prototype development and final examination.
| | Teaching Language |
|---|
|
The lectures will be in English if there are non Portuguese students registered. Otherwise, lectures will be in Portuguese.
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Security Technology| Code | Acronym | URL |
|---|
|
425154
|
TS
| http://mocho.di.fc.ul.pt/p/TS | | Objectives |
|---|
|
This course addresses a set of advanced topics related with the development of secure distributed systems, namely: symmetric and public-key cryptography, authentication protocols and secure communication protocols.
| | Syllabus |
|---|
Lectures
- Symmetric ciphers (AES, DES)
- Public-key encryption and hash functions (MD5,SHA,RSA)
- Authentication Protocols (Kerberos, RADIUS)
- Public-Key Infrastructure (PKI)
- Secure communication in open systems (IPsec, SSL/TLS, S/http, IEEE 802.11 and Bluetooth);
- Secure electronic mail (Secure MIME, PGP)
- Secure electronic transactions (SET, E-Cash, Millicent)
- Intrusion Detection
- Virus Detection
Practice Sessions
- Symmetric ciphers (AES, DES)
- Public-key encryption and hash functions (MD5,SHA,RSA)
- Authentication Protocols (Kerberos, RADIUS)
- Public-Key Infrastructure (PKI)
- Secure communication in open systems (IPsec, SSL/TLS, S/http, IEEE 802.11 and Bluetooth);
- Secure electronic mail (Secure MIME, PGP)
- Secure electronic transactions (SET, E-Cash, Millicent)
- Intrusion Detection
- Virus Detection
| | Reading List |
|---|
- W. Stallings, Cryptography and Network Security, Principles and Practice (Fourth Edition), Prentice Hall, November 2005
- D. R. Stinson, Cryptography, Theory and Practice (Third Edition), Chapman & Hall/CRC, 2006
- C. Kaufman, R. Perlman, M. Speciner, Network Security: Private Communication in a Public World (Second Edition), Prentice Hall, April, 2002.
| | Other Readings |
|---|
- B. Schneier, Applied Cryptography (Second Edition), John Wiley & Sons, 1996
- C. Adams, S. Lloyd, Understanding Public-Key Infrastructure: Concepts, Standards, and Deployment Considerations (Second Edition), MacMillan Technical Publishing, November, 2002
- D. O´Mahony, M. Peirce, H. Tewari, Electronic Payment Systems for E-Commerce (Second Edition), Artech House Computer Security Series, 2001
- S. Northcutt, Network Intrusion Detection: An Analysts Handbook, New Riders Publishing, 1999
- S. Northcutt et al, Inside Network Perimeter Security, News Riders Publishing, 2003
| | Assessment |
|---|
|
10% - Homeworks
40% - Project & Class participation
50% - Final exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Ambient Intelligence Technologies| Code | Acronym |
|---|
|
425211
|
TAID
| | Objectives |
|---|
|
This course addresses the technological aspects of ambient inteligence and pervasive computing, including availability of increasingly ubiquous computing resources making information access and processing easily available for everyone from anywhere at any time.
Together with the fundamental concepts this course addresses in detail the technological aspects of ambient intelligence and pervasive computing in dynamic environments: computational platforms and embedded devices; operating systems; networks and sensor networks; identification devices, etc.
| | Syllabus |
|---|
Lectures
Fundamental concepts in ambient inteligence and pervasice computing: decentralization; diversity; connectivity. Paradigms and models for dynamic adaptation in ambient intelligence. Context-awareness. Technologies for ambient
intelligence. Platforms and embedded devices. Identification devices. Sensors and actuators. Operating systems. Security and energy management. Communication and localization technologies. Wireless and sensor networks. Services. Position and location based services. Context-awareness and adaptation. Integration with
information technologies.
Practice Sessions
Technologies for ambient intelligence. Platforms and embedded devices. Identification devices. Sensors and actuators. Operating systems. Security and energy management. Communication and localization technologies. Wireless and sensor networks
| | Reading List |
|---|
|
Pervasive Computing: The Mobile World U. Hansmann, L. Merk, M.S. Nicklous, T. Stober. 2nd ed., 2003, Springer Professional Computing. ISBN: 978-3-540-00218-5
| | Other Readings |
|---|
|
Ambient Intelligence W. Weber; J.M. Rabaey; E. Aarts, E. (Eds.) 2005, Springer. ISBN: 978-3-540-23867-6
Ambient Intelligence: Impact on Embedded System Design T. Basten; M. Geilen; H. Groot (Eds.) 2004, Springer. ISBN: 978-1-4020-7668-8
| | Teaching Method |
|---|
|
Theoretical lectures: the method is based on presentations by the teacher, complemented when appropriate with other elements such as small video clips related with topics under study, etc. This aims to stimulate the students interest and discussion in the classroom.
Theorectical Pratical Lectures and Laboratory: realization of exercicies from a previously published guide. Use of interactive methods stimulate discussion of primary and alternative solutions for the presented problems.
| | Assessment |
|---|
|
Semester work/project assignments. Final exam.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Information Theory and Dynamical Systems| Code | Acronym |
|---|
|
425156
|
TISD
| | Objectives |
|---|
|
Dynamical description of systems, namely for information production.
Through a dynamical-probabilistic approach, the student should be able to
apply Information Theory concepts to the efficient processing of messages
and files. The complex behavior of natural and artificial systems is also
studied.
| | Syllabus |
|---|
Lectures
The concepts of entropy and information; symbols and meaning; statistical
aspects of theoretical models and of natural languages; ergodic information
sources. Channel capacity; redundancy; information transmission in faulty
systems. Coding and its applications to message compression and error
recovery.
Notion of dynamical system; phase space; discrete vs. continuous dynamical
systems. Invariant solutions; state stability; bifurcation theory;
attractors. Interval maps; symbolic dynamics; chaos.
Self-organization vs. central control; emergent behavior; cellular automata;
computability and complexity issues; self-reproducing automata.
Practice Sessions
The concepts of entropy and information; symbols and meaning; statistical
aspects of theoretical models and of natural languages; ergodic information
sources. Channel capacity; redundancy; information transmission in faulty
systems. Coding and its applications to message compression and error
recovery.
Notion of dynamical system; phase space; discrete vs. continuous dynamical
systems. Invariant solutions; state stability; bifurcation theory;
attractors. Interval maps; symbolic dynamics; chaos.
Self-organization vs. central control; emergent behavior; cellular automata;
computability and complexity issues; self-reproducing automata.
| | Reading List |
|---|
|
J. R. Pierce, An Introduction to Information Theory -- Symbols, Signals and Noise, Dover, 1980.
C. E. Shannon & W. Weaver, The Mathematical Theory of Communication, University of Illinois Press, 1963.
D. Kaplan & L. Glass, Understanding Nonlinear Dynamics, Springer-Verlag, 1995.
D. Peak & M. Frame, Chaos Under Control, Freeman, 1994.
R. L. Devaney, A First Course in Chaotic Dynamical Systems, Addison-Wesley, 1992.
S. Kauffman, At Home in the Universe -- The Search for Laws of Complexity, Oxford University Press, 1995.
T. M. Cover & J. A. Thomas, Elements of Information Theory, John Wiley & Sons, 1991.
K. Sayood, Introduction to Data Compression, Morgan Kaufman, 2000.
| | Other Readings |
|---|
|
C. Lourenço, cópias dos acetatos das aulas teóricas.
C. Lourenço, séries de exercícios para as aulas teórico-práticas.
| | Teaching Method |
|---|
|
Classroom lectures.
| | Assessment |
|---|
|
Final exam and/or computer project.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Distributed Fault Tolerance| Code | Acronym | URL |
|---|
|
425157
|
TFD
| http://mocho.di.fc.ul.pt/p/TFD | | Objectives |
|---|
|
The increasing usage of distributed systems in a number of applications raises two problems: i) the increasing number of components of the system raise concerns about their reliability; ii) the geographical distribution raises interesting possibilities of multi-host replication. The course introduces the concept of distributed fault tolerance, which makes use of several interconnected hosts to replicate software components in a less expensive and more flexible way than with dedicated hardware. The course addresses concepts, methodologies and mechanisms to build reliable networked systems.
| | Syllabus |
|---|
Lectures
Basic abstractions of distributed systems. Notion of process, distributed computation, link and temporal abstractions. Distributed systems models. Reliable broadcast and shared memory algorithms. Consensus and its applications.
Practice Sessions
Development of reliable applications using middleware frameworks. Practical applications and development of variation of the algorithms studied in the theoretical courses.
| | Reading List |
|---|
|
Introduction to Reliable Distributed Programming
Guerraoui, Rachid, Rodrigues, Luís
2006. ISBN: 978-3-540-28845-9
| | Other Readings |
|---|
|
Manuais da moldura de suporte ao desenvolvimento de aplicações tolerantes a faltas Appia. Guiões das aulas teórico-práticas dispnibilizados na página web.
| | Teaching Method |
|---|
|
Theoretical classes try to stimulate the involvement of the students by cooperatively devising algorithms that address the problems raised in the beginning of the class. In practical classes, students are invited to individual solve problems presented at the beginning of the class and to discuss their solution with the peers.
| | Assessment |
|---|
|
Final exam to evaluate theoretical knowledge. Blind review of reports made by other students. Development of a fault-tolerant application using a support framework.
| | Teaching Language |
|---|
|
The lectures will be in English if there are non Portuguese students registered. Otherwise, lectures will be in Portuguese.
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Computer Supported Cooperative Work| Code | Acronym |
|---|
|
425158
|
TCO
| | Objectives |
|---|
|
This course is intended to provide fundamental theorethical and practical knowledge about the CSCW (Computer Supported Cooperative Work) scientific area. The type of systems addressed by this course integrates and uses fundamental notions about distributed systems, multimedia systems and human-computer interaction; thus achieving a high level of synergy with other topics addressed by the Degree in Informatics. The course is organized in the following thematic blocks: fundamental properties of CSCW systems, CSCW support technologies, coordination, work processes and workflow, and decision processes
| | Syllabus |
|---|
Lectures
CSCW, Group Interaction, Information Sharing, Cooperative Architectures. Coordination and Colaboration. Workflows, Group decision and negotiation support. Electronic meetings.
Practice Sessions
Techniques for Multiuser interfaces. Group interaction, coordination and collaboration software. Workflow, group decision and negotiation systems.
| | Reading List |
|---|
|
P. Antunes, Groupware: Conceitos Fundamentais e Caracterização dos Principais Blocos Construtivos, Faculdade de Ciências da Universidade de Lisboa, DI-FCUL-TR-02-16, 2002.
Michel Beaudoin-Lafon. Computer Supported Co-operative Work. Wiley, 1999.
| | Other Readings |
|---|
|
S. Khoshafian, M. Buckiewicz. Introduction to Groupware, Workflow and Wourkgroup Computing, John Wiley & Sons, 1995.
U. Borghoff, J. Schlichter. Computer Supportted Cooperative Work. Springer, 2000.
I. Greif (ed.). Computer Supported Cooperative Work: A Book of Readings. Morgan Kaufmann Publishers Inc, 1988.
R. baecker (ed.), Readings in Groupware and CSCW, Morgan Kaufmann Publishers Inc, 1993.
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Software Verification and Validation| Code | Acronym |
|---|
|
425159
|
VVS
| | Objectives |
|---|
|
To design, analyze and execute a software verification and validation (V&V) plan for a software project. Examining the project's particularities; planning a V&V strategy that includes a selection of different techniques, the monitoring of the progress of the V&V activity, and the assessment of the plan and the techniques used.
| | Syllabus |
|---|
Lectures
Testing as an engineering activity;
Fundamentals of Software Testing;
Defect, hypothesis, and tests;
Strategies and methods for test case design;
Levels of testing;
Test goals, policies, plans, and documentation;
The test organization;
Controlling and monitoring the testing process.
Practice Sessions
Testing as an engineering activity;
Fundamentals of Software Testing;
Defect, hypothesis, and tests;
Strategies and methods for test case design;
Levels of testing;
Test goals, policies, plans, and documentation;
The test organization;
Controlling and monitoring the testing process.
| | Reading List |
|---|
|
Practical Software Testing. Ilene Burnstein. Springer 2003. ISBN: 0-387-95131-8.
| | Other Readings |
|---|
|
Software Testing, second edition. Ron Patton. Sams Publishing 2006. ISBN 0-672-32798-8
| | Assessment |
|---|
|
Three assigments: 7.5 points.
Exam: 12.5 points
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Artificial Life| Code | Acronym | URL |
|---|
|
425160
|
VA
| http://mocho.di.fc.ul.pt/p/VA | | Objectives |
|---|
|
Exposure to processing models based on emergent properties of multiple elements. Contact with the main perspectives of computation inspired on biological systems. Acquisition of capacity to consider self-organised systems as a viable solution to complex problems.
| | Syllabus |
|---|
Lectures
Introduction to Artificial Life and self-organised systems. Dynamical complex systems. Cellular automata. Evolutionary algorithms. Artificial Immune Networks. Swarm algorithms. Simulation of adaptive behaviour - mobile robots, multi-agents. Other topics - Virus and Worms, Re-writing systems and Morphogenesis, Algorithmic Chemistry. Evolutionary modelling of socio-economical systems
Practice Sessions
not applicable
Laboratory
Problems and discussion in class. Assignments extra class
| | Reading List |
|---|
|
Christopher Langton ed., Artificial Life: An Overview, MIT Press, 1995.
Mitchell, M., An Introduction to Genetic Algorithms, MIT Press, 1996.
R.C. Arkin, Behavior-Based Robotics, MIT Press, 1998
Leandro N. de Castro and Jonathan Timmis. Artificial Immune Systems: A New Computational Intelligence Approach, Springer, 2002
Correia, L., Vida Artificial, monografia, 2005
| | Other Readings |
|---|
|
indicados elementos específicos para cada capítulo da cadeira
| | Teaching Method |
|---|
|
Lectures in theoretical classes.
Presentation of demos and discussion, in practical classes.
Small research assignments about specific topics, extra-classes.
| | Assessment |
|---|
|
80% Final assignment + 20% Lightning test (20 questions in 20 minutes, multiple choice)
| | Teaching Language |
|---|
|
Portuguese or English as necessary
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
| Visualization| Code | Acronym |
|---|
|
425161
|
VIS
| | Objectives |
|---|
|
Study of visualization techniques, in both the Scientific Visualization and the Information Visualization domains.
| | Syllabus |
|---|
Lectures
Scientific Visualization: types of data structures; scalar, vector and tensor algorithms. Information visualization: selection, filtering and choice of representation; distorted views; most popular visualization paradigms.
Practice Sessions
Autocad Map 3D and the Visualization Toolkit (vtk) are used in laboratory classes and project work
| | Reading List |
|---|
|
Will Schroeder, Ken Martin and Bill Lorensen, The Visualization Toolkit, 3rd edition, Kitware, 2004
S. Card, J. Mackinlay, B. Shneiderman, Readings in Information Visualization - Using Vision to think, Morgan Kaufmann, 1999
Robert Spence Information Visualization: design for interaction, 2007
| | Other Readings |
|---|
|
guiões das aulas
| | Teaching Method |
|---|
|
Teaching lessons including lab classes
| | Assessment |
|---|
|
Two projects and an exam or two test replacing the exam
| | Teaching Language |
|---|
|
Portuguese or English
| | Department |
|---|
|
Dep. de Informática
| | Precedences |
|---|
|
|