The final year project is carried out under the supervision of one of the faculty members and involves – at a first stage – the identification of the subject/ technological problem to be addressed and the associated data collection. The output of the project, namely the description of the problem formulation, the solution definition and implementation and the illustration of results and final conclusions, is presented in the final year project thesis.
The final year project aims to
- Exercise and extend the student’s academic skills, by enabling in depth understanding of the context of (a part of) a discipline. This may be achieved by exploiting particular skills or knowledge acquired from taught courses.
- Exercise and extend professional skills by testing the student’s ability to research, organise, report and present the results if his/her work and develop initiative and independent thinking.
Learning Outcomes
The aim of the course is to study digital modulation and demodulation techniques in baseband and bandpass telecommunication systems. It presents the detection theory of transmitted communication signals using the method of matched filtering and correlation. The course also covers the analytical evaluation of the performance of digital modulations in additive white Gaussian noise (AWGN) channels in terms of symbol error and bit error probabilities. Finally, an introduction to OFDM multi-carrier transmission and reception is given.
Upon successful completion of the course the student will be able to:
- Understand the detection theory of digital transmission for baseband and bandpass communication systems.
- Understand the modulation techniques of ASK, FSK, M-FSK, PSK, DPSK, M-PSK, M-QAM and OFDM.
- Obtain analytical expressions for the probability of symbol error of various digital modulations in AWGN channel.
- Understand the pros and cons of various digital modulations in terms of achievable bit rate, error performance, and spectral efficiency.
- Understand the need of using OFDM in multipath channels.
- Make simulation models in Matlab/octave in order to evaluate the symbol and bit error probability performance of digital modulations in AWGN.
Course Contents
- Baseband transmission methods and probability of error for matched filter detection in AWGN.
- Binary passband modulations: ASK, FSK, and PSK.
- M-ary signalling: M-FSK, M-PSK, and M-QAM.
- Demodulation techniques for digital passband modulations and symbol error performance in AWGN channel.
- Spectral efficiency of digital modulations.
- Digital filters for zero intersymol interference at the receiver.
- Noise figure, composite noise figure and noise temperature, calculation of effective receiver temperature.
- Link budget analysis.
- Channel coding, convolutional codes and Viterbi algorithm.
- OFDM transmission and detection.
Recommended Readings
- Proakis J. & Salehi M. (2001): Communication Systems Engineering, 2nd Edition, Prentice Hall.
- Sklar B. & Harris F. (2020): Digital Communications: Fundamentals and Applications (Communications Engineering & Emerging Technology Series from Ted Rappaport), 3rd edition, Pearson.
Learning Outcomes
The course’s material includes the basic principles underlying the development of software projects, the most widely used Software Life Cycle Models, as well as methodologies, techniques and tools for the systematic analysis, design, development, testing, operation and maintenance of good quality software systems within a specific timetable and budget, following the structured and object-oriented approach.
Upon successful completion of the course, the students will be in position to:
- Explain the basic principles and techniques that constitute the model of object-oriented programming (indicatively: classes and objects, inheritance, polymorphism).
- Design and develop programs that implement specific algorithms in the object-oriented programming language Java.
- Test programs developed in Java in a specific integrated programming environment.
- Explain the basic concepts, methodologies and techniques used in each phase of the software life cycle.
- Evaluate and select the appropriate software life cycle model.
- Draw diagrams using the UML (Unified Modeling Language) modeling software for requirements analysis, design and development of software systems.
- Apply testing techniques for software systems testing (validation and verification).
Course Contents
- Introduction to Software Engineering, Software Engineering Principles, Problems in the development of software projects.
- Software life cycle models – Introduction, classification and critical assessment of their general qualitative characteristics.
- Requirements analysis and specifications – Requirements analysis using the Structured Analysis approach
- Software requirements models and document
- Methods of analysis and design of object-oriented systems, Unified Modeling Language (UML)
- Use case diagrams
- Class and object diagrams
- Interaction diagrams
- State diagrams
- Design of software systems, Architectural Design
- Coding – Desirable features – Writing techniques and good coding practices
- Software testing – debugging
- Software development tools (CASE tools)
- Applications with UML
Recommended Readings
- “Software Engineering”, Edition: 8th, Authors: R. Pressman, B.Maxim, Editors: A. Prentza, K. Saides, Publisher: Tziola, 2018 (1st Book)
- “Software Engineering – Theory and Practice”, Edition: 2nd, Author: S. L. Pfleeger, Publisher: Kleidarithmos Ltd, 2011 (2nd Book)
- Notes and course slides
Learning Outcomes
Upon successful completion of this course, students should be able to
- Explain fundamental concepts including agents, problem & state/action/ spaces, problem solving via search as a model of thinking, heuristics, knowledge representation and reasoning using logic.
- Select algorithms for problem solving based on problems characteristics, and characteristics of problem & state/action spaces.
- Evaluate usefulness, advantages and limitations of various algorithms and methods towards increasing computational effectiveness of problem solving
- Modelling problems as constraint satisfaction problems, or as problems in logic.
Course Contents
- Introduction to artificial intelligence, goals, advances, prospects, limitations, and basic notions regarding agents and problem solving.
- Blind search algorithms
- Informed search algorithms and proofs of finding optimal solutions
- Heuristic functions and their construction and selection
- Local search using hill climbing, simulated annealing, local beam search, genetic algorithms.
- Constraint problem solving: depth first, depth first with various forms of backtracking, forward checking, arc consistence, maintaining arc consistency, min conflicts.
- Knowledge representation and reasoning in logic: Propositional logic, entailment, , resolution, satisfiability, DPLL, local search for satisfiability.
Recommended Readings
- Stuart Russel and Peter Norvig. Artificial Intelligence: A Μodern Approach, Prentice Hall, 2nd edition (2003). http://aima.cs.berkeley.edu/. Το βιβλίο έχει εκδοθεί στα Ελληνικά από τις εκδόσεις Κλειδάριθμος με τον τίτλο «Τεχνητή Νοημοσύνη: Μια σύγχρονη προσέγγιση».http://aima.uom.gr/.
- Ι. Βλαχάβα, Π. Κεφαλά, Ν. Βασιλειάδη, Φ. Κόκκορα και Η. Σακελαρίου. Τεχνητή Νοημοσύνη. Εκδοτικός οίκος «Β. Γκιούρδας Εκδοτική – Μονοπρόσωπη ΕΠΕ».http://aibook.csd.auth.gr.
Learning Outcomes
The students upon the successful completion of the course will be able:
- to analyze a database design problem and collect the requirements for implementing a database system.
- to design a relational database at conceptual and logical level and create the appropriate data models
- to design and implement well structured databases based on normalization rules.
- to use the appropriate tools to design and implement a relational database
- to formulate SQL queries for defining and managing databases
Course Contents
- Introduction to Relational databases.
- Entity-Relationship Model: Basic concepts, Entity Sets, Relationship Sets; Design Issues: Keys, E-R Diagram, Design of an E-R Database Schema, Reduction of an E-R schema to tables.
- Relational model: Relations; Attributes; Relational schema; relational algebra (operations); relational calculus.
- Database design: Normalization, Integrity constraints, functional dependencies, decomposition, normal forms
- SQL: Basic structure, Set Operations, Aggregate Functions, Joins, Nested sub-queries, views, Modification of the Database (insert; update; delete), triggers.
Recommended Readings
- Vassilacopoulos G. (2011): Information Systems (in Greek).
- Ramakrishnan R. & Gehrke J. (2002): Database Management Systems, 3rd Edition, McGraw Hill.
- Elmasri B.R. & Navathe S.B. (2007): Fundamentals of Database Systems, 5th Edition, Addison-Wesley.
Learning Outcomes
This course provides an introduction to stochastic processes in communications, signal processing and digital and computer systems. Topics include continuous and discrete random processes, correlation and power spectral density, Markov chains, and queuing theory.
At the end of this course, students will have acquired advanced/in depth knowledge in the field of Stochastic Processes, with particular emphasis on Probabilities, Stochastic Analysis, Stochastic Modelling and design of systems and signals with stochastic behavior.
The students will be capable of formulating and processing problems using Stochastic Analysis tools, quantitatively and qualitatively assessing stochastic properties and applying these methodologies and design principles to real world problems in telecommunication networks, taking into account critical parameters, such as spectral efficiency requirements, noise spectral density, interference, signals and waveforms.
Course Contents
- Introduction: review of probability theory, Stochastic Processes, types of stochastic processes.
- Mean and ergodicity.
- Gaussian stochastic processes.
- Multi-variable stochastic processes.
- Independent, identically distributed random sequences.
- Discrete stochastic processes.
- Continuous stochastic processes.
- Markov chains: introduction to Markov chains, discrete-time Markov chains.
- Poisson processes: theory and applications.
- Stationary processes.
- Transmission of a random process through a linear time-invariant filter.
- Power spectral density.
Recommended Readings
- Papoulis A., Unnikrishna, S. Pillai (2002): Probability, Random Variables and Stochastic Processes, McGraw-Hill Education – Europe.
- Yates R. & Goodman D. J. (2004): Probability and Stochastic Processes, John Wiley & Sons.
Learning Outcomes
The course’s material includes mathematical definitions, fundamental concepts, results and reasoning methodologies that pertain to basic Statistical analysis objects and models underlying the foundations and applications of computer science. Moreover the relevant connections of probability theory to several more specific branches of computer science are presented. The course directly supports most of the curriculum subjects and lessons: Note that during the lesson, specific examples of application are discussed in some of the above curricular subjects such as applications in telecommunication systems, cryptography, digital services (e-learning, e-health) using new technologies with the help of programs such as Matlab, SPSS and R.
Upon successfully completion of the course the students will be in position to:
- Know, describe and handle the basic knowledge of Statistical Analysis (indicatively: descriptive statistics, sampling and sampling distributions, estimation (principle of maximum likelihood)), Statistical inference, confidence intervals, confidence tests and assumptions, fit, linear regression, analysis of variance, logistic regression, statistical analysis with software, applications in computer science).
- · Select the appropriate mathematical concepts of statistical analysis and be able to model the particular problem of computer science that it is called upon to solve. In addition to develop mathematical thinking and being able to analyze and adapt acquired knowledge to applications of computer science.·
- To define the types of conclusions drawn by statistical inference, to be able to know what is the appropriate model for data analysis, and to evaluate the accuracy of the results of statistical methods.·
- Know the Matlab, SPSS and R programs and can interpret the results from them.
Course Contents
- Sample theory, samples, replacement, random samples and numbers.
- Sampling distributions and statistical interrelations.
- Frequency and relative frequency.
- Cluster sampling, stratified sampling, systematic sampling, statistical estimations unbiased estimations.
- Reliability and confidence intervals.
- Hypotheses testing and importance of statistics hypotheses, significance level, normal distribution testing.
- Interpretation of criterion t for dependent and independent samples.
- Adaptation test x2.
- Adaptation curve, regression and cross-correlation adaptation curve, regression, least square.
- Multiple regression, estimation fault, factors of cross-correlation.
- Correlation and independence.
- Interpretation of indicators of cross-correlation, Pearson, Spearman, Biserial, φ.
- Propagation analysis, interpretation of propagation analysis.
- Multiple-variables statistical analysis.
Recommended Readings
- M. Filippakis, Statistical Methods & Regression Analysis for New Technologies, Tsotras Publications, Athens 2017, 1rst Edition.
- T.Papaioannoy-S.Loukas, Introduction to Statistics, Stamoulis Publications, Athens (2002).
- Teaching Notes.
Learning Outcomes
The aim of the course is to familiarize students with the description of continuous time and discrete time signals and linear systems. The student will acquire knowledge of various techniques for signal processing in the time and frequency domains. The signal processing theory will be used to the spectral analysis of signals and the transmission of OFDM signals.
Upon successful completion of the course the student will be able to:
- Analytically describe signals and systems in the time and frequency domains
- Obtain the transfer function and frequency response of digital filters
- Obtain the frequency response of filters and the filter output in the time domain using the Matlab/octave software tool.
- Understand the use of DFT in the spectral analysis of signals
- Understand how OFDM signals are generated using IDFT.
Course Contents
- Spectrum of continuous time energy signals, Fourier series of periodic signals, Parseval theorem.
- Transfer function of continuous time linear systems, bode plots, impulse response and convolution.
- Sampling theorem, spectrum of discrete time signals.
- Difference equations for discrete time systems, discrete time convolution.
- Z transform and Inverse-Z transform.
- Frequency response of discrete time signals and systems.
- Discrete Fourier Transform (DFT) and Inverse DFT
- Circular convolution using DFT/IDFT
- Linear convolution using DFT/IDFT
- Spectral analysis using DFT
- Creation of OFDM signal using IDFT
Recommended Readings
- Vinay Ingle & John Proakis, (2012) Digital Signal Processing using Matlab, 3rd edition, Cengage Learning.
- C. Ifeachor, B.W. Jervis, «DSP A Practical Approach», 2nd edition, Prentice Hall 2002, ISBN 0201-59619-9.
- Β. Mulgrew, P. Grant P. & J. Thomson, (2003): Digital Signal Processing Concepts and Applications, 2nd Edition, Palgrave Mackmillan.
The final year project is carried out under the supervision of one of the faculty members and involves – at a first stage – the identification of the subject/ technological problem to be addressed and the associated data collection. The output of the project, namely the description of the problem formulation, the solution definition and implementation and the illustration of results and final conclusions, is presented in the final year project thesis.
The final year project aims to
- Exercise and extend the student’s academic skills, by enabling in depth understanding of the context of (a part of) a discipline. This may be achieved by exploiting particular skills or knowledge acquired from taught courses.
- Exercise and extend professional skills by testing the student’s ability to research, organise, report and present the results if his/her work and develop initiative and independent thinking.
Learning Outcomes
Τhe course presents architectures and protocols used in the internet, analyzing concepts and design approaches across different layers in networking TCP/IP protocol stack (link, internet, transport and application layers). The interface between application layer and transport service when implementing internet applications is also introduced. The course offers a mixture of theoretical aspects, laboratory exercises and socket programming for developing networking applications.
Upon successful completion of the course, the students will be in position to:
- understand, analyze and evaluate the different design options and assumptions, and the performance of protocols at different layers of the TCP/IP stack (e.g. reliable transfer protocol TCP versus light transfer protocol UDP, distance-vector versus link-state routing protocols)
- comprehend how internet affects the operation and performance of network applications and the involved communication protocols
- understand and evaluate the performance of network applications that is due to the operation of internet protocols
- develop simple client/server architecture applications using the socket API in Python
- run and operate packet sniffing software and identify protocols interaction in packet traces
Course Contents
- Introduction to Internet main concepts.
- OSI and TCP/IP models.
- Application layer protocols Dynamic Host Configuration Protocol (DHCP). HyperText Transfer Protocol (HTTP). File Transfer Protocol (FTP). Simple Mail Transfer Protocol (SMTP), POP, IMAP. Domain Name Service (DNS). Peer-2-Peer protocols.
- Client-Server Architecture and programming. Sockets and Socket Programming.
- Transport layer protocols. Transmission Control Protocol (TCP). User Datagram Protocol (UDP).
- Internet layer protocols. IP Addressing. Internet Protocol (IPv4, IPv6). Internet Group Management Protocol (IGMP). Internet Control Message Protocol (ICMP). Routing Protocols, Autonomous Systems, Interior and Exterior protocols (RIP, OSPF, eBGP, iBGP)
- Link layer protocols. Address Resolution Protocol (ARP). Reverse Address Resolution Protocol (RARP).
- Multimedia networking. Multimedia applications, VoIP and Video over IP.
Recommended Readings
- Kurose, K. Ross, “Computer Networking: A top-down approach”
- Comer, “Internetworking with TCP/IP”
- Comer D., Stevens D. “Internetworking with TCP/IP vol3: Client-Server Programming and Applications”, Prentice Hall
- B. Forouzan, “TCP/IP Protocol”