Goals: The objective of this course is to provide the students with high-level capabilities and skills in programming and problem solving, enabling them to execute projects and implement algorithms in the upcoming courses.
Description: The course will cover implementing different algorithms using a specific programming language (e.g., Python). Topics will include introduction to the elements and data structures of the programming language, implementation of AI related algorithms and problem solving strategies, Review of AI related libraries and packages, and practical projects chosen form the AI domain.
ILOs:
-
Strengthen the students’ capabilities in programming and problem solving.
-
Introduce the AI-related libraries and enable the students to master code reuse.
-
Enable the students to design and implement solutions for AI-related problems.
-
Enable the students to evaluate and enhance the performance of AI related algorithms.
IS602. Probability and Statistics for Intelligent systems
Goals: This course aims to introduce the fundamentals of probability and statistics applicable to intelligent systems (IS). Its objective is to provide the students with the necessary mathematical tools to analyze and develop probabilistic and statistical models related to estimation and testing.
The course covers the following topics: fundamentals of probability, random variables and processes, conditional distributions, Bayesian analysis, representations for stochastic processes and Markov processes. Descriptive statistics (graphs, tables, and descriptive measures including measures of central tendency and measures of dispersion), Inferential statistics (Conference interval, Hypothesis testing and Regression analysis). Understand the concepts needed for data science with Python and R.
ILOs:
-
The students will be able to differentiate and use probability models.
-
They will learn to make decisions based on probability and statistics.
-
How to utilize statistical software to visualize and analyze data.
-
How to study the association between different types of variables using regression analysis.
IS603. Artificial Intelligence
Goals: This course aims to provide a broad knowledge to the field of AI, covering main topics and applications in the field.
Description: Covered topics include introduction and history of AI, problem solving using search techniques, Knowledge representation and logic programming, production systems, handling uncertainty, introduction to machine learning, selected topics in machine vision, case studies in recent advancements in AI.
ILOs:
-
Understand the development and various applications of artificial intelligence.
-
Familiarize with propositional and predicate logic and their roles in logic programming.
-
Design and implement and analyze various searching and game playing algorithms to solve search based problems.
-
Gaining fundamental knowledge in declarative programming and how it works (e.g., Prolog)
-
Basic understanding of machine learning concepts, its importance, and different models.
-
Analyze and implement the different AI algorithms and machine learning concepts.
-
Evaluate the performance of different AI paradigms.
Goals: This course aims to introduce the students with broad information to machine learning. It includes different types of supervised learning unsupervised learning and reinforcement learning.
Description: Different machine learning approaches will be discussed including non-parametric learning, neural networks, ensemble methods, support vector machines, clustering approaches, dimensionality reduction, kernel methods, feature selection approaches. Machine learning evaluation approaches including cross validation and ROC. The course will also discuss recent applications of machine learning in robotic control, data mining, autonomous navigation and others
ILOs:
-
Distinguish between the different machine learning paradigms.
-
Design and implement different classification, clustering ,regression and reinforcement techniques
-
Choose and utilize machine learning techniques based on the problem to solve.
-
Tune the machine learning parameters for best performance and accuracy.
-
Evaluate the performance of the machine learning approach systematically.
IS605. Intelligence and Society
Goals: Artificial intelligence and machine learning in particular will have profound impact on our lives. This includes for example ethical, societal, economic, labour, legal, and privacy aspects. The goal of this course is to enhance the awareness of students to these impacts and to prepare them to deal with them in the future.
Description: This course discusses in depth societal issues related to artificial intelligence and autonomous intelligent systems. This includes ethical and legal aspects as well as impact on work, education, and economy. Case studies such as liability of driverless cars, algorithmic ethics of autonomous systems, and privacy will be studied. Students will be directed to review and present recent relevant publications and to do in depth research regarding specific issues.
ILOs:
-
Be aware of and appreciate the impact of artificially intelligent and autonomous systems on the society
-
Understand the scope of legal issues related to the licensing and operation of autonomous systems
-
Be able to ethically reason and judge on matters related to the deployment and operation of autonomous and intelligent systems
Goals: The course introduces students to the human intelligence to enable them to understand the differences to artificial intelligence and to develop nouvelle (or improve existing) technical intelligent techniques to solve technical problems. The second goal is to introduce students with biological-intelligence principles at large and to focus on certain aspects and examples. This serves as the scientific foundation for understanding and appreciating biological intelligence. The goal of this is to enable students to mimic such systems and aspects as well as to develop bio-inspired solutions and designs to specific problems.
Description: The course covers two main themes related to natural intelligence. The first deals with human cognition where topics from cognitive neuroscience and cognitive psychology are tackled. Brain functions as vision, speech recognition, memory, sensorimotor control are discussed in details. The other theme is biological intelligence. Here, topics such as animal behaviour, interaction, communication, and group intelligence are discussed.
ILOs:
-
Be aware of basic physiology of the human brain in relation to cognition and sensorimotor control
-
Be aware of basic computational neuroscience related to simplified cognitive tasks and sensorimotor tasks
-
Understand the underlying and unifying principles of biological intelligence
-
Be able to analyze (with the purpose of mimicking) a certain case of biological intelligence
Data Science Track Courses
Goals: In this course, the students learn the different types of data and databases. The course introduces the non-relational database/content, content-oriented applications, and tools. The goal is to give the students the professional skills in NoSQl, Linked Data, and Semantic Web and some of their technologies and tools.
Description: The students will be introduced to non-relational databases that are found in the core of many data science solutions. The architecture of the non-relational database servers in contrast to the relational database systems. The course focuses on three related tracks that complement each other (Tools, Concepts, Research) In the tools, students will learn about MarkLogic server, XQuery, SPARQL. In the conceptual part, students will learn about NoSQL database, NoSql query and indexing, Ontology engineering, Triples, and Turtle serialization, RDF and RDF queries, and how to utilize all those concepts in Semantics and Semantic Web.
In the research part, students will learn about what people have done in ontology in different domains.
ILOs:
-
Understand and implement NoSQL database concepts, use enterprise NoSQL database servers and tools and NoSQL query languages.
-
Understand OWL, RDF, and ontology serializations.
-
Understand ontology standards.
-
Model and engineer ontology for your own data.
-
Define the semantic web and linked data together.
-
Design and implement the research concept in ontology and RDF.
IS612. Data mining and Big Data
Goals: Modern information processing is defined by vast repositories of data that cannot be handled by traditional database systems. This course covers latest technologies developed and used by industry leaders to solve this problem in the most efficient way. In addition, the course introduces data mining that is concerned with the extraction of novel knowledge from large amounts of data.
Description: The big data part covers MapReduce algorithms, MapReduce algorithm design patterns, HDFS, Hadoop cluster architecture, YARN, computing relative frequencies, secondary sorting, web crawling, inverted indexes and index compression, Spark algorithms and Scala.
the data mining part covers studies, concepts, issues, tasks and techniques of data mining including data mining overview, data preparation, cleaning and feature selection, classification, clustering, evaluation and validation, scalability, dimensionality reduction, outlier detection, association models, spatial and sequence mining, applications and selected case studies.
ILOs:
-
Understand the concept of big data and its technology importance
-
Build knowledge and skills in working on big data including collect, manage, store, query, and analyze various form of big data.
-
Gain skills on large scale data tools and how to use them to solve big data problems.
-
Understand the impact of big data for business decisions and strategy
-
Define what data mining is and what it can be applied for.
-
Determining the different steps followed in data mining and pre-processing for Data mining.
-
Apply and evaluate different data mining concepts for different applications.
IS613. Data Visualization
Goals: The intent of the course is to provide students with the concepts and skills of producing graphical representation of numeric data, which should achieve clear and effective communication of results and deeper insights and data analysis. Students should gain an overview of data modelling, representation, and rendering.
Description: The course introduces fundamental and advanced topics in information visualization, including an introduction to the graphical rendering pipeline, visualization goals and quality criteria, visualization-oriented data structures and representations, and data mapping. In addition to an overview of human visual system and perception, special topics in scientific and medical visualization will be covered, e.g., surface-, volume-, flow-, and uncertainty visualization. An introduction to visual analytics will also be included.
ILOs:
-
Investigate different data sources.
-
Understand the concepts and methods of data modelling and representation.
-
Compare between the different data visualization approaches.
-
Gain fundamental knowledge in visual analytics.
Goals: The main objective of this course is to introduce basic and recent techniques used to retrieve useful information from large repositories such as the Web. It focuses on fundamental theories, models, and methods for information retrieval.
Description: Topics covered are introduction, goals and motivations of IR, standard concepts in information retrieval such as document representation, queries, collections, and relevance, efficient indexing (e.g., inverted files), Boolean and vector-space retrieval models, tf–idf, relevance feedback, document clustering and classification, text representation, performance measures (e.g., Precision, Recall), applying text-based approaches in other modalities (e.g., images and videos).
ILOs:
-
Understand and deploy efficient techniques for the indexing of document objects that are to be retrieved.
-
Evaluate information retrieval algorithms.
-
Differentiate between clustering and classification for IR problems.
-
Apply information retrieval principles to locate relevant information in large collections of data.
IS615. Natural Language Processing
Goals: The course aims at introducing techniques and methods used to represent human languages as computational systems and create useful applications of such systems.
Description: Topics covered include introduction and overview, alignment of sequences, dynamic programming, Language modeling and sequence tagging, Vector Space Models of Semantics, semantic analysis, Information Extraction, machine translation, text classification and summarization.
ILOs:
-
Understand basic concepts in NLP.
-
Analyze and compare different language models.
-
Apply different NLP concepts on real-world problems.
IS616. Software Engineering for Data Scientists
Goals: This course aims to introduce recent software engineering techniques and practices that a data scientist must master in order to implement data science projects in a teamwork environment and in an efficient way. Present the agile process as an up-to-date standard that software engineers must comprehend and provide the automated tools used in that process.
Description: Topics include introduction and overview of the software engineering, data oriented problems, agile concepts, Scrum process, code versioning, temporal data, ticketing software systems, automated testing frameworks, data-oriented testing, deployment frameworks. In addition, the students are assigned a data science project to work on and practice the software engineering standards.
ILOs:
-
Understand the agile process.
-
Practice different software engineering tools.
-
Practice teamwork.
IS617. Business Analytics
Goals: This course will provide the students with the hands-on skills and knowledge essential to analyze, present findings, and make meaningful conclusions about data in a business setting and enable them to offer valuable insights by recognizing, interpreting, and summarizing business data.
The course covers key subjects related to business analytics and business intelligence including data collection, data visualizations, descriptive statistics, statistical inference, and creating linear models. In addition, the course offers practical sessions on using data analytics software and business intelligence tools,
ILOs:
-
Gain knowledge of business analytics and business intelligence.
-
Create business models from the data using up to date tools.
-
Utilize descriptive statistics and statistical inference in real-life business projects.
-
Derive business decision from statistical data.
Intelligent Robotic Systems Track Courses
IS621. Robot Dynamics and Control
Goals: To equip students with background knowledge, skills, and tools necessary to deal with different types of robotic mechanisms and manipulators. This includes scientific background in mathematics, physics and control. Students will be able to transfer their acquired knowledge and skills to other application domains such as mobile robots and autonomous robots, vehicles, and mechanisms.
Description: This course is dedicated to robotic manipulators especially those used in the industry. The course covers in depth foundation topics such as geometry, kinematics (position and velocity, forward and inverse), and kinetics (Newton-Euler and Lagrange formulation) of robotic manipulators. Sensors and actuators used traditionally for those manipulators are presented. Based on that trajectory planning, control architectures, and motion control are established. MATLAB is used as a simulation, analysis, and design tool.
ILOs:
-
Be able to derive kinematic and kinetic models for manipulator arms of different types and to analyse their kinematic and dynamic properties
-
Be able to design and implement linear and nonlinear control architectures for for manipulator arms of different types
-
Be able to simulate the dynamics of manipulator arms and use existing simulation tools and packages
-
Be able to select suitable sensors, actuators, drivers, and computational architectures for nouvelle manipulators
Goals: To make students familiar with different types of mobile robots including legged, wheeled, swimming, and aerial. Further, this course aims at equipping students with knowledge and skills to choose among different mobile robot configuration as well as at making them able to design, simulate, build, and control such robots.
Description: This course covers the basic concepts and techniques used within the field of mobile robotics. Although it discusses the general concepts of locomotion, it concentrates on wheeled mobile robots. It covers two levels of mobile robotics. The first deals with the configuration and mechatronic design of mobile robots. The second considers the issues of kinematic and dynamic modelling and feedback control. Note that the third level which is concerned with perception, localization, mapping, and planning is covered in a separate course.
ILOs:
-
Be familiar with the types of mobile robots and their applications
-
Be able to derive the kinematic and dynamic models of different mobile robots
-
Be able to design and implement linear and nonlinear control architectures for mobile robots
-
Be able to simulate the dynamics of mobile robots and use existing simulation tools and packages
-
Be able to select suitable sensors, actuators, drivers, and computational architectures for mobile robots
-
Be able to program mobile robots to perform tasks in their environments depending on their sensors and using open-source available tools and packages
IS623. Robot Vision and Perception
Goals: To familiarize students with sensing devices and algorithms used for robot perception in indoor and outdoor environments. This includes different vision systems, sonars, laser range finders, and landmark-based sensing.
Description: Topics include the basics of computer vision, image representation, image acquisition, homogeneous transformations, perspective projection, camera technologies, and vision systems design. The course introduces the students with colour models, filtration, edge detection, feature extraction, segmentation, morphological operators, camera model, camera calibration, stereovision, and registration. Selected applications include real-time objects detection recognition and tracking, motion estimation, and biomedical imaging. The course as well covers topics related to laser range finders (LIDARS) together with sonars and landmark-based sensing.
ILOs:
-
Be familiar with existing technologies used in robot perception
-
Understand the basics of laser range finder (LIDARS)
-
Understand the basics of image processing algorithms
-
Design and implement different image processing algorithms using both grayscale and colour images
-
Realize real-time robot vision applications such as localization and object tracking.
IS624. Localization, Mapping, and Planning
Goals: To provide students with in-depth knowledge and skills to use and program mobile robots that act autonomously in complex environments. This included implementing available and developing nouvelle algorithms. It serves as well as a solid introduction to self-driving cars.
Description: This course covers topics related to the useful usage of mobile robots in complex and uncertain environments. This includes image processing, robot localization, environment mapping, motion planning, and collision avoidance. The course is based on a probabilistic approach.
ILOs:
-
Understand the problems of localization, mapping, and planning applied to mobile robots
-
Be familiar with passive and active approaches, feature-based and volumetric approaches, topological and metric approaches applied to the SLAM (simultaneous localization and mapping) problem
-
Be able to use Kalman filters, information filters, and particle filters in solving SLAM problem
-
Be able to implement these solutions on real systems by using open-source available tools and packages
IS625. Intelligent Robotic Systems
Goals: To give student the chance to apply artificial intelligence and machine learning techniques to robotic systems. By this, students will be imposed to real-life and current problems where autonomous robots interact and intelligently in their environments and with humans.
Description: This course covers topics related to the application of artificial intelligence and machine learning algorithms to problems other than mapping, localization and navigation (covered in a previous course). Case studies and projects include human-machine interaction, assistive robots, teleoperation, human tracking, and task learning.
ILOs:
-
Be able to apply artificial intelligence and machine learning techniques to robot systems
-
Develop deep knowledge and competency in certain application domains
-
Be able to integrate different subsystems and solutions to meet real-life needs in an intelligent robotic system
IS626. Self-Driving Cars
Goals: To prepare students to work in the emerging area of self-driving cars. The course will serve as a capstone course towards solving industry-level research and development problems. It relies on learned methods in previous courses and aims at applying them to this specific domain.
Description: This course covers an introduction to self-driving cars and problems facing them. Topics include using vision systems and machine learning to find lane line on difficult road and to track vehicles, using deep learning to classify traffic signs, using extended Kalman filtering in sensor fusion, using Markov models in car localization, and using data-driven approaches in path planning. The course as well discusses control issues related to self-driving cars and how to integrate the different solutions in a practical way.
ILOs:
-
Be familiar with the concepts of self-driving cars and problems facing their development
-
Be able to apply acquired knowledge and skills in previous courses in implementing solutions related to lane finding, vehicle tracking, signs classification, sensor fusion, localization, mapping, and planning
-
Be able to work with available data sets and using open-source available tools and packages related to the above problems
IS627. Autonomous Flying Robots
Goals: To introduce students to autonomous flying robots which have gained popularity in recent years. Students will understand the principle of operation and mechanics of those robots and will be able to derive dynamic models for them. Further they will be able to design suitable controllers and implement 3D motion planning techniques.
Description: This course covers an introduction to flying robots that operate autonomously in cluttered indoor and outdoor environments. This includes the mechatronic design and operation. The course extends the ideas of localization, mapping, planning, and navigation to the three-dimensional case corresponding to flying robots. For designing and implementing suitable controllers, the course covers the mechanics of propeller aerial vehicles and derives corresponding dynamic models.
ILOs:
-
Be familiar with the concepts of autonomous flying robots and problems facing their development
-
Be able to apply acquired knowledge and skills in previous courses in implementing solutions related to localization, mapping, planning, and control.
-
Be able to design and build flying robot prototypes.