| |
Special Topics and Advanced Courses
Computer Science
Computer Engineering
Electrical Engineering
Spring 2005
revised October 2004
The following is a selection of special topics courses and advanced courses
to be be offered by the UMBC CSEE Department for the Spring 2005 semester.
Some are cross listed with other departments and programs and some are
offered for both undergraduate and graduate credit. Undergraduates can
always enroll in a graduate course with the permission of the instructor.
For more information on the content, scope or expected workload for any
of these courses, please contact the instructor.
An introduction to cryptology the science of making and breaking codes
and ciphers. Topics include: conventional and public-key cryptosystems,
including DES, RSA, shift register systems and selected classical systems;
examples of cryptanalytic techniques; digital signatures, pseudorandom
number generation, cryptographic protocols and their applications; and
an introduction to the theories of cryptographic strength based on information
theory and complexity theory. Prerequisite: CMSC 341, MATH 221 and STAT
355.
This is a practical, hands-on course in how to program interactive 2D
graphical user interfaces using the X11/Motif package and OpenGL. Graphical
user interfaces are taken here to mean not just standard widget sets,
but also various interactive, pointerbased techniques that comprise the
modern desktop metaphor. This course also will introduce some of the concepts
and software techniques used to implement such applications. In addition,
it briefly will review some of the larger issues, history and future directions
of programming graphical interfaces. While the primary emphasis of the
course is on 2D interfaces, there will be a short introduction to some
of the 3D capabilities of OpenGL, as well as a discussion of 3D interaction
and virtual reality. Prerequisite: CMSC 341 and MATH 221.
This course is an introduction to software design patterns. Each pattern
represents a best practice solution to a software problem in some context.
The course will cover the rationale and benefits of object-oriented software
design patterns. Several example problems will be studied to investigate
the development of good design patterns. Specific patterns, such as Observer,
State, Adapter, Strategy, Decorator and Abstract Factory will be discussed.
Programming projects in the Java language will provide experience in the
use of these patterns. In addition, distributed object frameworks, such
as RMI and Jini, will be studied for their effective use of design patterns.
Prereqisits: CMSC 331 and 341.
CMSC 466/666 Electronic commerce
MW 5:30-6:15pm Yelena
Yesha
This course is designed to prepare students to be e-commerce developers.
It introduces the students to the changing and competitive landscape of
e-commerce technology, products and solutions. It begins with an introduction
to WWW technology and an overview of Web applications and services. It
further discusses networking technologies with the view towards mobile
and wireless commerce and object orientation and Web programming. An overview
of Java language and relational databases is given. Database-Web connectivity
is discussed. The course proceeds with the study of inter-process communications
in a distributed environment concentrating on Java RMI and COBRA technologies.
Development of interactive Web-pages with JavaScript and dynamic HTML,
one of the basic skills in the area of e-commerce development, is covered.
Prerequisites: CMSC 461 and 481. Recommended: CMSC 421 and 465.
CMSC 477/677 Agent architectures and multi-agent systems
TuThr 4:00-5:15pm desJardins
This class focuses on fundamental techniques for developing intelligent
agents and multi-agent systems. In the first part of the class, we will
study a wide variety of architectures for building intelligent agents, including
cognitive, logic-based, reactive, and belief-desire-intention architectures.
We will read, discuss, and compare research papers on each of the models.
In the second part of the class, we will learn about key issues in designing
and implementing multi-agent systems, including inter-agent communication
languages and protocols, distributed problem solving, planning, and constraint
satisfaction methods, distributed models of rational behavior, and learning
and adaptation in multi-agent systems. Coursework includes a programming
project, an in-depth survey paper on one of the course topics, and an in-class
presentation of the survey paper. This course does not yet have a website,
but the syllabus will be similar to CMSC
491M/691M, which was taught in Spring 2003.
CMSC 691B Basic Research Methods
MW 5:30-6:45pm Nicholas
Students will learn basic skills that are essential to becoming a successful
researcher. The objective of the course is to teach research skills in a
systematic fashion, early in a student's graduate program. Lecture topics
will include research methodology, experimental design, career options,
professional ethics and academic integrity, and oral and written presentation
techniques. CMSC faculty members will give short invited presentations on
their own research. Students will be required to perform a literature survey
(on a topic in their own research area), construct a research proposal that
includes an experimental design, and write a paper summary in the style
of a formal scientific paper. Additional assignments will include giving
an oral presentation in the class, attending technical talks, writing a
CV, and creating a personal web site.
CMSC 491/691D Foundations of Datamining
MW 3:30-4:15pm Kargupta
Datamining, also known as knowledge-discovery in databases (KDD), is the
practice of automatically searching large stores of data for patterns. To
do this, data mining uses computational techniques from statistics, machine
learning and pattern recognition. This special topics course will review
the the foundations of datamining, fundamental algorithms and techniques
and classes of applications. Specific topics will include distributed and
ubiquitous data mining: algorithm and experimental system development, privacy
issues in mining multi-party distributed data and applications to bioinformatics.
Procedural shading is a computer graphics technique
in which short procedures are written to describe the appearance of rendered
objects. Recent advances in graphics hardware have enabled procedural
shading for interactive graphics, where all shading computations must
be completed within the rendering time for one frame, typically 1/30 sec.
or less. This course covers graphics hardware architecture changes and
software techniques that have made real-time shading possible, as well
as shading algorithms and design strategies that make the real-time goal
possible. In the process, students will learn the basics of graphics architecture,
shading compiler design, and advanced reflectance models. Readings will
come from the text, and a number of recent papers.
Pre-requisite: CMSC
435 or CMSC 634.
CMSC 491I
Special Topics in Computer
Science: Information Assurance
Th 4:00-6:30pm Wagoner
This course will cover a variety of issues and techniques related to
the maintenance of information systems, particularly software systems,
including impact analysis, cost estimation, managing maintenance, planned
evolution, and information gathering strategies. The course will be a
combination of a seminar and a project-based course. There will be a small
group project that involves performing maintenance of some kind on a real
system (but not all students will be required to do programming). Students
will also participate in and take turns leading class discussions and
exercises based on assigned readings.
CMSC 491N/691N Introduction ot network security
TuTh 10:00-11:15am Sivalingam
The objective of this course is teach the fundamental concepts of network
security. Topics covered include: Basics of cryptography; Threat models
including DOS attacks and buffer overflows; Authentication and Authorization
Mechanisms and Standards including AAA and RADIUS; Packet Filtering, Firewalls,
Intrusion Detection, and Virtual Private Networks; Network layer security
including IPSec and Network attribution Traceback; Transport layer security
including SSL; PKI and digital certificates including X.509; application
level and web security including PGP and Electronic Mail Security. Pre-requisites:
CMSC 341 and CMSC 481.
CMSC 491/691R Advanced robotics
TuThr 1:00-2:15pm Oates
Mobile robots range from the teleoperated Sojourner
on the Mars Pathfinder mission to cleaning robots in the Paris Metro.
Introduction to Autonomous Mobile Robots offers students an overview of
the technology of mobility--the mechanisms that allow a mobile robot to
move through a real world environment to perform its tasks--including
locomotion, sensing, localization, and motion planning. We will cover
all facets of mobile robotics, including hardware design, wheel design,
kinematics analysis, sensors and perception, localization, mapping, and
robot control architectures.
Permission required.
CMSC 491/691S Introduction to real-time systems
TuThr 1:00-2:15pm Younis
Real-time applications such as factory automation, avionics and remote sensing
are distinguished by the fact that their functional semantic is coupled
with temporal correctness. In recent years there has been a significant
increase in the use of embedded computers in such real-time systems. This
course provides a broad introduction to real time systems and their programming.
Covered topics include time management, language and tool support, real
time operating systems, scheduling and communication, and related fault
tolerance issues. Pre-requisites: CMSC 411 & CMSC 421.
CMSC 491/691W also CMPE 491/691W Wearable computing
TuThr 1:00-2:15pm Segall
This is an invitation to explore the future of mobility through the added
dimensions of Wearable Information System research. Our research agenda
will includes the exploration of human aware computer models able to proactively
serve the user by taking clues from human emotions, human physiology and
human situations. Our exploration will be in the context of searching for
solutions for sample societal challenges, social practices and experimenting
with new modes of expression. Our goal is to conceptualize and prototype
innovative Wearable Information Models and Systems.
CMPE 691C CAD algorithms
TuThr 1:00-2:15pm Tehranipoor
The future of VLSI systems depends critically on the research and development
of Physical Design Automation tools. This course is designed to introduce
students with Physical Design Automation (DA) of VLSI systems. DA related
issues for the current state of the art will familiarize students with existing
techniques in VLSI design. Data structures and algorithms related to DA
will provide insight into design of CAD tools. Students will understand
the relationships between DA algorithms and various constraints posed by
VLSI fabrication and design technology. Critical performance related parameters
and their importance in DA tools will be introduced. This course will also
cover partitioning, placement, floorplanning, pin assignment, routing and
compaction. The material will be presented in technology independent style
and will prepare students for design and development of DA tools. Another
key goal of this course is to prepare students for research in physical
design automation of VLSI systems.
CMPE 691M Mixed signal/RF design
TuThr 1:00-2:15pm Darwish
This course covers the fundamental concepts
and techniques of analog circuit design, and frequency response. Topics
include: large and small signal analysis of CMOS transistors, single-stage,
cascode, and differential amplifiers, current mirror basics, feedback,
frequency response of amplifiers, and operational amplifiers.
CMSC 771 Heuristics and knowledge representation
TuThr 5:30-6:15pm Nirenburg
This course will cover some basic techniques and algorithms for representing
and reasoning about information and knowledge. It is designed to be useful
and relevant for students interested in artificial intelligence, databases,
and web-based information systems. Topics will include: rule-based systems,
frame-based representation languages, description logics, constraints, truth
maintenance systems, representing and reasoning about time, processes, uncertainty,
etc, using and marinating ontologies, knowledge sharing, etc. We'll also
look at how some of these techniques are being used in in support of intelligent
agents, advanced databases, ecommerce applications, advanced web systems,
and software engineering tools. Students will learn to use one of more advanced
software tools for building and maintaining large ontologies and we'll examine
several large general purpose ontologies.
EENE 728 Topics in communications: Problems in Information Transmission
MW 2:00-3:15pm
Thomas
This course will present topics of current interest in communications under
one of the following two categories depending on student interest: (i) Stochastic
networks, including queues, large deviation techniques, delay calculus,
congestion control analysis, and wireless network design (ii) Information
physics and the links between statistical inference, Shannon theory, and
statistical physics
EENE 785 Topics in optical networks
TuThr 5:30-6:45pm
Yan
Independent component analysis (ICA) is a method used for discovering hidden
factors, "sources", in sets of signals, "mixtures". As such, it is useful
in both the analysis and representation of multivariate data from various
sources. It has been a very active research topic for the last decade and
has found application in a wide range of areas, such as biomedical data
analysis, bioinformatics, speech and music analysis, radar and communications
applications, and many others. In this course, we will review basic principles
of ICA, study different approaches and algorithms to achieve ICA, and study
a number of applications. Prerequisite: Probability and Random Processes
(ENEE 620 or equivalent). |
 |