| Advanced Course in Computers 1 -
EECE 207 |
| |
Mathematics, image processing,
signal processing, image reconstruction, and imaging systems in medical
imaging applications. EECE 207 and EECE 208 may not both be used to meet
master’s requirements in EECE. Offered every fall at the General
Electric Medical Systems facility.
Prereq: Cons. of instr.; GE employee. |
| Advanced
Course in Computers 2 - EECE 208 |
| |
Problem solving methodology, software
engineering tools and environment
(typical topics: UNIX, C, data structures, object oriented paradigm,
programming strategies), and hardware engineering tools (typical topics:
analog and digital CAD, PALs, VME, applications). EECE 208 and EECE 211
may not both be used to meet degree requirements. EECE 207 and EECE 208
may not both be used to meet master’s degree requirements in EECE.
Offered every spring at the General Electric Medical Systems facility.
Prereq: Cons. of instr; GE employee. |
| Algorithm Analysis and Applications -
EECE 211 |
| |
I ntroduction
to the analysis of algorithms.
Topics include:
asymptotic complexity notation, recursion analysis, basic and advanced
data structures, sorting methodologies, dynamic programming, and graph
algorithms, including heuristic search techniques such as best-first and
A-star algorithms. Advanced topics include NP-completeness theory and
linear programming.
Prereq:
COEN 30 or equiv. and COEN 120 or equiv and MATH 81 or equiv.; or COEN
30 or equiv. and COSC 154 or equiv. and MATH 81 or equiv |
| Pattern Recognition - EECE 212 |
| |
Theory and application of pattern recognition and learning machines.
Correlation methods, discriminant analysis, maximum likelihood decisions,
minimax techniques, feature extraction, preprocessing, clustering, nonsupervised
learning. Syntactic pattern recognition techniques. Offered
occasionally. Prereq: EECE 206. |
|
Information & Coding Theory -
EECE 214 |
| |
Introduction to information
measure, mutual information, self-information, entropy, encoding of
information, discrete and continuous channels, channel capacity,
error detection, error correcting codes, group codes, cyclic codes,
BCH codes, convolution codes, and advanced codes. Offered alternate
years. |
| Neural Networks & Neural Computing -
EECE 215 |
| |
Introduction to artificial
neural networks and neural computing. Multilayer perceptron models
and back propagation. Recurrent and feedforward associative neural
networks. Kohonen models and counterpropagation networks. Adaptive
resonance theory and Boltzmann machines. Simulated annealing.
Applications include optimization, pattern recognition in signal
processing and control algorithms. Offered spring term, alternate
years. Prereq: COEN 30 or COSC 148. |
| Artificial Intelligence -
EECE 216 |
| |
Introduction to artificial
intelligence and expert systems. Knowledge presentation and the
knowledge base. Knowledge acquisition inference engines. Forward and
backward chaining. Case-based reasoning and hybrid expert systems.
Applications for expert systems. Offered spring term, alternate
years. Prereq: COEN 30; or COSC 148. |
| Computer Architecture -
EECE 217 |
| |
Review of basic computer
architecture. Evaluation of architecture performance. Design and
evaluation of instruction sets, pipeline processors and instruction
scheduling, vector processors, memory hierarchy and design,
including cache, main and virtual memories, memory protection
schemes, input/output and its relation to system performance.
Offered fall term. Prereq: COEN 171 |
| Digital Image Processing -
EECE 226 |
| |
Theory and practice of image
digitization, processing, coding and analysis. Representations of
images, image models. Techniques of image enhancement and
restoration. Image compaction and coding. Segmentation and image
understanding. Offered occasionally.
Prereq: EECE 157. |
| Computer Networks I -
MSCS 209 |
| |
An intensive study of computer
networking and networking standards with hands-on experience.
Following the ISO-OSI model, the first term concentrates on the
lower four layers (physical, datalink, networking, and transport)
and the second on the upper four (transport, session, presentation,
and application). Offered regularly. Prereq: COSC 125. |
| Computer Networks II -
MSCS 210 |
| |
An intensive study of computer
networking and networking standards with hands-on experience.
Following the ISO-OSI model, the first term concentrates on the
lower four layers (physical, datalink, networking, and transport)
and the second on the upper four (transport, session, presentation,
and application). Offered regularly. Prereq: COSC 125. |
| Design & Analysis of Algorithms -
MSCS 224 |
| |
Approaches for creating solutions
to problems and determining the space and time efficiency of those
solutions. Design techniques are covered, such as divide and
conquer, heuristic, randomized, and induction. Analysis of time and
space complexity may include applications of the Master Theorem,
amortized analysis, probabilistic arguments, etc. Complexity theory
such as NP and PSPACE completeness is also considered. Offered
yearly. Prereq: MSCS 222 or equiv. |
| Paradigms for Software Development I -
MSCS 226 |
| |
The imperative and object-oriented
programming approaches to software design and development are
experienced using software engineering principles appropriate for
each paradigm. These two paradigms are four of the main paradigms
used in software development. Offered occasionally.
Prereq: COSC 61 or equiv. and COSC 66 or equiv. and two
terms of upper division computer science courses. |
| Paradigms for Software Development II -
MSCS 227 |
| |
The functional and declarative
programming approaches to software design and development are
experienced using software engineering principles appropriate for
each paradigm. These two paradigms are four of the main paradigms
used in software development. Offered occasionally.
Prereq: COSC 61 or equiv. and COSC 66 or equiv. and two terms of
upper division computer science courses. |
| Data Mining -
MSCS 228 |
| |
Techniques for extracting
“interesting” relationships and knowledge hidden in data, such as
decision trees, association rules, clustering, neural networks,
Bayesian classifiers, feature selection, pattern assessment,
inductive logic programming, outlier analysis, data imputation, and
data integration. Offered occasionally.
Prereq: COSC 55 and COSC 153; or COSC 55 and COSC 159; or COSC 55
and MATH 164; or equiv. |
| Component Architecture -
MSCS 236 |
| |
Focuses on designing and
implementing software components, and ways of specifying their
interconnection and interaction. The primary technology is Java
Beans, although other approaches such as ActiveX are also
considered. General notions relating to specifying and identifying
components and the general distribution of resources are examined. |
| Distributed Computing -
MSCS 237 |
| |
Focuses primarily on the
interconnection of software components, both in the way they
communicate with one another, and in the way they are themselves
distributed. The concentration is not as much on the technical
detail of standards such as Corba, Java RMI, and Distributed Network
Architecture, but on the ways these technologies can be used to
construct dynamic infrastructures for welding diverse local
environments into one community of cooperating parts. The emphasis
is very much upon allowing heterogeneity, and on solving business
problems related to distributed concentrations of data. |
| Enterprise Architecture -
MSCS 238 |
| |
Focuses totally on the server side
of communications, and on the ways of using software components as
wrappers of all kinds of objects, so they can participate in highly
distributed environments involving security and transactions.
Attention is paid to establishing universal environments for naming
resources and finding them, and to ways of managing the life cycle
of both data and program components. The main technology considered
is Enterprise Java Beans. |
| Information Representation -
MSCS 239 |
| |
Focuses on using special grammars
and their associated language for communicating business information
universally amongst very diverse systems. The attention is not on
the formalities of the grammars, but on the ways one can take
advantage of knowing that documents are valid with respect to those
grammars. The particular technology primarily considered is XML, and
many current standards from the XML community are considered and
used. Offered regularly. |
| |
| Computing Undergraduate Courses: |
| |
| Operating Systems -
COSC 125 |
| |
Fundamental concepts of
operating systems including memory management, time sharing, device
management, file systems, networking, security, and system
performance. Offered every term.
Prereq: COSC 65 and COSC 66; or
COSC 154. |
| Numerical Analysis -
COSC 146 |
| |
Numerical solution of algebraic
and transcendental equations, linear systems and the algebraic
eigenvalue problem, interpolation and approximation, numerical
integration, difference equations, numerical solution of
differential equations, and finite difference methods. Offered fall
term. Prereq: COSC
65, COSC 66,
and either MATH 71 or MATH 81; or COSC 154 and
MATH 81; or COEN 51 and MATH 81. Credit will not be given for both
MATH 146 and COSC 146. |
| Programming Languages -
COSC 152 |
| |
A comparative study of
programming paradigms and representative programming languages.
Topics include binding times, control of data, control of execution,
execution environment, the role of language as an organizational
tool, modularization, and the concept and significance of universal
programming languages. Offered fall term.
Prereq: COSC 66; or COSC
154. |
| Principles of Database Systems -
COSC 153 |
| |
The internal, conceptual, and
external levels of database systems as reflected in various popular
database models (including relational and object-oriented). Query
languages. Security. Principles and methods for database design.
Offered fall term.
Prereq: COSC 66 or COSC
154. |
| Formal Languages & Computability -
COSC 157 |
| |
Regular languages, finite state
automata, and lexical analysis; context free languages, pushdown
automata, parsing, and the rudiments of LL and LR parsers; general
phrase-structure languages, Turing machines, the Chuch-Turing
thesis, the halting problem, universal programming languages.
Offered occasionally. Prereq: COSC
126. |
| Software Design & Analysis -
COSC 158 |
| |
I ssues
involved in the design and implementation
of large software
systems. Software lifecycle, software design methodologies, human
factors analysis, project management. Offered spring term.
Prereq: COSC 66 or COSC 154. |
| Fundamentals of Artificial Intelligence -
COSC
159 |
| |
An introduction to the broad
field of artificial intelligence. Topics include problem solving by
searching, knowledge representation, reasoning, planning, decision
making, learning, perception, and language processing. Offered
spring term. Prereq:
COSC 66 or COSC 154;and
COSC 65. |
| Component-Based Software Construction -
COSC 162 |
| |
Introduction to software
components in the context of the object-oriented paradigm. Component
development, component selection and adaptation/customization,
component deployment and assembly/integration, and system
architecture. Industry standards such as JavaBeans, CORBA Component
Model, and Microsoft COM/DOM/COM+. Offered annually.
Prereq: COSC 61 or COSC 154; and MATH 90.
|
| Compiler Construction -
COSC 170 |
| |
Lexical analysis, parsing, code
generation, and optimization. Includes theoretical foundations and
the practical concerns of implementation. Offered spring term.
Prereq: COSC 65 and
COSC 152; or
COSC 152 and COSC 154. |
| Networks & Internets -
COSC 172 |
| |
Fundamentals of popular network
technologies, internet organization and underlying protocols, domain
administration, support of internet applications and distributed
systems, domain and internet-wide security. Offered annually.
Prereq: COSC 66 or COSC 154.
|
| Data Mining -
COSC 176 |
| |
Techniques for extracting and
evaluating patterns from large databases. Introduction to knowledge
discovery process. Fundamental tasks including classification,
prediction, clustering, association analysis, summarization, and
discrimination. Basic techniques including decision trees, neural
networks, statistics, partitional clustering, and hierarchical
clustering. Offered occasionally.
Prereq: COSC 159 or
COEN 130; and COSC
153. |
| Computer Hardware -
COEN 171 |
| |
Overview of computer system
design. Cost and performance specification. Design of arithmetic and
logic units. Fundamentals of central processor architecture and a
comparative study of computer instruction set architectures.
Detailed study of microprocessors, including instruction, execution
timing and other timing considerations. Discussions of memory and
I/O devices, including the interfaces to the CPU and I/O transfer
techniques. Study of common bus standards. COEN design elective in
the area of hardware engineering. Design elective for Electrical and
Electronics major. Offered spring term.
Prereq: COEN 30 with minimum
grade of C and EECE
112 with minimum grade of C; or COSC 65 or COSC 148 with minimum grade of C and EECE 112
with minimum grade
of C . |
| Object-oriented Software Engineering -
COEN 181 |
| |
Presents advanced software
engineering concepts in the context of object-oriented analysis and
design. Topics include: issues and applications, requirements
engineering, software specifications, modeling notations, software
quality: testing and correctness, software reuse, and reverse
engineering. COEN design elective in the area of software
engineering. Prereq: COEN 20 or COSC
61. |