GMU Computer Science
Course List
# | Number | Title |
---|---|---|
1 | 100 | Principles of Computing |
This course is intended to help students learn to think in the manner necessary to fully grasp the n
|
||
intend student learn manner fulli grasp natur power digit world earli era internet person comput led
|
||
2 | 101 | Preview of Computer Science |
Offers a broad overview of computer science designed to provide students with an introduction to the
|
||
offer broad overview comput scienc design provid student introduct field comput scienc orient comput
|
||
3 | 105 | Computer Ethics and Society |
Intensive introduction to legal, social, and ethical issues surrounding software development and com
|
||
intens introduct legal social ethic issu surround softwar develop comput stress profession conduct s
|
||
4 | 112 | Introduction to Computer Programming |
Rigorous introduction to problem solving through development of computer programs. Focuses on identi
|
||
rigor introduct problem solv develop comput program focus identifi algorithm pattern problem describ
|
||
5 | 123 | Computing: From the Abacus to the Web |
Discusses the underlying computer science concepts behind existing and emerging technologies (such a
|
||
discuss underli comput scienc concept exist emerg technolog mail internet search engin blog comput g
|
||
6 | 211 | Object-Oriented Programming |
Thorough treatment of programming according to object-oriented principles. Introduces classes, inter
|
||
treatment program object orient principl introduc class interfac inherit polymorph singl dispatch me
|
||
7 | 222 | Computer Programming for Engineers |
Introduces object-oriented programming and elementary data structures. Emphasis on problems and lang
|
||
introduc object orient program elementari data structur emphasi problem languag featur relev engin
|
||
8 | 225 | Culture and Theory of Games |
Explores the theory, history, culture, and lore of games with particular emphasis on the varieties o
|
||
explor theori histori cultur lore game emphasi varieti comput game environ
|
||
9 | 261 | Introduction to a Second Language |
Advanced programming using Java programming language. Other languages may be offered at times.
|
||
advanc program java program languag languag offer time
|
||
10 | 262 | Introduction to Low-Level Programming |
Introduction to the language C, as well as operating system concepts, in UNIX, to prepare students f
|
||
introduct languag oper system concept unix prepar student topic system program
|
||
11 | 306 | Synthesis of Ethics and Law for the Computing Professional |
Practical course to become effective computer professional. Examines legal and ethical issues surrou
|
||
practic effect comput profession examin legal ethic issu surround comput technolog foundat build dea
|
||
12 | 310 | Data Structures |
Focuses on object-oriented programming with an emphasis on tools and techniques for developing moder
|
||
focus object orient program emphasi tool techniqu develop moder larg program topic includ implement
|
||
13 | 321 | Software Requirements and Design Modeling |
An introduction to concepts, methods, and tools for the creation of large-scale software systems. Me
|
||
introduct concept method tool creation larg scale softwar system method tool notat valid techniqu an
|
||
14 | 325 | Introduction to Game Design |
Game design, in various electronic entertainment technologies, involves a diverse set of skills and
|
||
game design electron entertain technolog involv divers set skill background narr art comput program
|
||
15 | 330 | Formal Methods and Models |
Abstract concepts that underlie much advanced work in computer science, with major emphasis on forma
|
||
abstract concept underli advanc work comput scienc major emphasi formal languag model comput logic p
|
||
16 | 332 | Object-Oriented Software Design and Implementation |
In-depth study of software design and implementation using a modern, object-oriented language with s
|
||
depth studi softwar design implement modern object orient languag support graphic user interfac comp
|
||
17 | 351 | Visual Computing |
Focuses on programming essential mathematical and geometric concepts underlying computer graphics. C
|
||
focus program essenti mathemat geometr concept underli comput graphic cover fundament topic comput g
|
||
18 | 367 | Computer Systems and Programming |
Introduces students to computer systems from a programmer's perspective. Topics include data represe
|
||
introduc student comput system programm perspect topic includ data represent assembl machin level re
|
||
19 | 390 | Research and Project Design Principles in Computing |
This course introduces students to the research and project design process within the computing fiel
|
||
introduc student research project design process comput field student learn tool trade work design p
|
||
20 | 391 | Advanced Programming Lab |
Programming-intensive lab course. Students refine problem-solving and programming skills while gaini
|
||
program intens lab student refin problem solv program skill gain experi teamwork focus data structur
|
||
21 | 425 | Game Programming I |
Introduction to technologies and techniques used in modern computer games. Teams will explore the va
|
||
introduct technolog techniqu modern comput game team explor facet complet design sophist tool includ
|
||
22 | 426 | Game Programming II |
Project-orientated continuation of CS 425 with an emphasis on the implementation of a complete game.
|
||
project orient continu emphasi implement complet game
|
||
23 | 440 | Language Processors and Programming Environments |
Survey of basic programming language processors and software development tools such as assemblers, i
|
||
survei basic program languag processor softwar develop tool assembl interpret compil topic includ de
|
||
24 | 444 | Introduction to Computational Biology |
Introduces computational methods in molecular biology. Covers a broad array of topics in bioinformat
|
||
introduc comput method molecular biologi cover broad arrai topic bioinformat comput biologi organ we
|
||
25 | 445 | Computational Methods for Genomics |
Fundamental principles and techniques for implementing computational algorithms to solve problems in
|
||
fundament principl techniqu implement comput algorithm solv problem biologi aris process larg volum
|
||
26 | 450 | Database Concepts |
Covers basics to intermediate knowledge for the design, implementation, and use of relational databa
|
||
cover basic intermedi knowledg design implement relat databas system topic includ entiti relationshi
|
||
27 | 451 | Computer Graphics |
Basic graphics principles and programming. Topics include scan conversion, transformation, viewing,
|
||
basic graphic principl program topic includ scan convers transform view light blend textur map advan
|
||
28 | 455 | Computer Communications and Networking |
Data communications and networking protocols, with study organized to follow layers of Internet Prot
|
||
data commun network protocol studi organ follow layer internet protocol suit tcp famili protocol top
|
||
29 | 463 | Comparative Programming Languages |
Key programming mechanisms described independently of particular machines or languages, including co
|
||
kei program mechan independ machin languag includ control bind procedur abstract type concurr includ
|
||
30 | 465 | Computer Systems Architecture |
Computer subsystems and instruction set architectures. Single-cycle, multiple-cycle, and pipeline ar
|
||
comput subsystem instruct set architectur singl cycl multipl cycl pipelin architectur memori hierarc
|
||
31 | 468 | Secure Programming and Systems |
Fundamental principles and techniques for implementing secure computer systems. Topics include secur
|
||
fundament principl techniqu implement secur comput system topic includ secur cryptographi basic vuln
|
||
32 | 469 | Security Engineering |
Covers the software subsystems that are involved in defending computer systems. Studies threats and
|
||
cover softwar subsystem involv defend comput system studi threat architect solut includ limit access
|
||
33 | 471 | Operating Systems |
Issues in multiprogramming. Covers concurrent processes and synchronization mechanisms; processor sc
|
||
issu multiprogram cover concurr process synchron mechan processor schedul memori file deadlock manag
|
||
34 | 475 | Concurrent and Distributed Systems |
Practical issues in designing and implementing concurrent and distributed software. Topics include c
|
||
practic issu design implement concurr distribut softwar topic includ concurr program synchron multit
|
||
35 | 477 | Mobile Application Development |
This project based course will teach fundamental principles of software development for the mobile d
|
||
project base teach fundament principl softwar develop mobil devic environ emphas applic numer academ
|
||
36 | 480 | Introduction to Artificial Intelligence |
Principles and methods for knowledge representation, reasoning, learning, problem solving, planning,
|
||
principl method knowledg represent reason learn problem solv plan heurist search natur languag proce
|
||
37 | 482 | Computer Vision |
Basic principles of visual perception and their implementation on computer systems. Topics include e
|
||
basic principl visual percept implement comput system topic includ earli visual process edg detect s
|
||
38 | 483 | Analysis of Algorithms |
Analyzes computational resources for important problem types by alternative algorithms and their ass
|
||
analyz comput resourc import problem type altern algorithm data structur mathemat rigor techniqu spe
|
||
39 | 484 | Data Mining |
Basic principles and methods for data analysis and knowledge discovery. Emphasizes developing basic
|
||
basic principl method data analysi knowledg discoveri emphas develop basic skill model predict perfo
|
||
40 | 485 | Autonomous Robotics |
Covers various basic topics in autonomous robotics, such as autonomous architectures and their inter
|
||
cover basic topic autonom robot autonom architectur interact physic hardwar elementari kinemat robot
|
||
41 | 490 | Design Exhibition |
Capstone course focusing on design and successful implementation of major software project, encompas
|
||
capston focus design success implement major softwar project encompass broad spectrum knowledg skill
|
||
42 | 498 | Independent Study in Computer Science |
Research and analysis of selected problems or topics in computer science. Topic must be arranged wit
|
||
research analysi select problem topic comput scienc topic arrang instructor approv depart chair regi
|
||
43 | 504 | Principles of Data Management and Mining |
Techniques to store, manage, and use data including databases, relational model, schemas, queries an
|
||
techniqu store manag data includ databas relat model schema queri transact line transact process dat
|
||
44 | 530 | Mathematical Foundations of Computer Science |
This course focuses on the topics of basic mathematical structures, mathematical logic and probabili
|
||
focus topic basic mathemat structur mathemat logic probabl theori applic concept problem solv formal
|
||
45 | 531 | Fundamentals of Systems Programming |
Introduces systems and network programming for UNIX and Windows using lectures and hands-on labs. Co
|
||
introduc system network program unix window lectur hand lab cover ansi program system librari api fo
|
||
46 | 540 | Language Processors |
Basic programming language processors such as assemblers, interpreters, and compilers. Topics includ
|
||
basic program languag processor assembl interpret compil topic includ design construct languag proce
|
||
47 | 550 | Database Systems |
An introduction to database management with focus on architecting databases and using them in applic
|
||
introduct databas manag focu architect databas applic topic cover includ data model entiti relations
|
||
48 | 551 | Computer Graphics |
Graphics principles and programming. Topics include graphics hardware, antialiasing, transformations
|
||
graphic principl program topic includ graphic hardwar antialias transform view illumin blend textur
|
||
49 | 555 | Computer Communications and Networking |
Techniques and systems for communication of data between computational devices and layers of Interne
|
||
techniqu system commun data comput devic layer internet protocol suit topic includ role media softwa
|
||
50 | 571 | Operating Systems |
Models of operating systems. Major functions including processes, memory management, I/O, interproce
|
||
model oper system major function includ process memori manag interprocess commun file directori shel
|
||
51 | 580 | Introduction to Artificial Intelligence |
Principles and methods for knowledge representation, reasoning, learning, problem solving, planning,
|
||
principl method knowledg represent reason learn problem solv plan heurist search natur languag proce
|
||
52 | 583 | Analysis of Algorithms |
Topics include analyzing sequential and parallel algorithmic strategies such as greedy methods, divi
|
||
topic includ analyz sequenti parallel algorithm strategi greedi method divid conquer strategi dynam
|
||
53 | 584 | Theory and Applications of Data Mining |
Concepts and techniques in data mining and multidisciplinary applications. Topics include databases;
|
||
concept techniqu data mine multidisciplinari applic topic includ databas data clean transform concep
|
||
54 | 600 | Theory of Computation |
Introduction to logic and proof techniques, formal languages, automata theory, and computational com
|
||
introduct logic proof techniqu formal languag automata theori comput complex specif topic includ reg
|
||
55 | 611 | Computational Methods for Genomics |
Covers fundamental principles and techniques for implementing computational algorithms to solve prob
|
||
cover fundament principl techniqu implement comput algorithm solv problem biologi aris process larg
|
||
56 | 630 | Advanced Algorithms |
Provides an overview of advanced algorithm design and analysis techniques. Topics include algorithms
|
||
overview advanc algorithm design analysi techniqu topic includ algorithm hash tabl matrix oper numbe
|
||
57 | 633 | Computational Geometry |
Basic principles and methods for computing in field of geometric modeling. Emphasizes data structure
|
||
basic principl method comput field geometr model emphas data structur repres geometr object algorith
|
||
58 | 635 | Foundations of Parallel Computation |
Covers three major parallel computing paradigms: MIMD computation, SIMD computation, and data flow c
|
||
cover major parallel comput paradigm mimd comput simd comput data flow comput emphas interfac algori
|
||
59 | 640 | Advanced Compilers |
Examines advanced compiler techniques such as code optimizations for sequential and parallel machine
|
||
examin advanc compil techniqu code optim sequenti parallel machin compil logic function object orien
|
||
60 | 650 | Advanced Database Management |
Study of the internal architecture of database systems. Topics include: physical data organization
|
||
studi intern architectur databas system topic includ physic data organ index queri process optim tra
|
||
61 | 657 | Mining Massive Datasets with MapReduce |
Covers the techniques to mine large datasets, including Distributed File Systems and Map-Reduce, sim
|
||
cover techniqu mine larg dataset includ distribut file system map reduc similar search data stream p
|
||
62 | 658 | Networked Virtual Environments |
Topics covered in lecture are: networked virtual environment overview, networking technology, networ
|
||
topic cover lectur network virtual environ overview network technolog network multimedia concept vir
|
||
63 | 662 | Computer Graphics Game Technologies |
Addresses some graphics game techniques including collision detection, levels of detail, physics-bas
|
||
address graphic game techniqu includ collis detect level detail physic base simul textur map shadow
|
||
64 | 667 | Biometrics and Identity Management |
Basic principles and methods for automatic authentication of individuals. Technologies include face,
|
||
basic principl method automat authent individu technolog includ face fingerprint iri recognit speake
|
||
65 | 672 | Computer System Performance Evaluation |
Theory and practice of analytical models of computer systems. Topics include open and closed multicl
|
||
theori practic analyt model comput system topic includ open close multiclass queu network singl mult
|
||
66 | 673 | Multimedia Computing and Systems |
Focuses on technological and development environments in developing multimedia applications. Project
|
||
focus technolog develop environ develop multimedia applic project involv experi multimedia author to
|
||
67 | 674 | Data Mining on Multimedia Data |
Covers advanced techniques for managing, searching, and mining of various types of data such as text
|
||
cover advanc techniqu manag search mine type data text web link imag time seri video audio issu rela
|
||
68 | 675 | Distributed Systems |
Issues in design and implementation of distributed systems and applications. Topics include distribu
|
||
issu design implement distribut system applic topic includ distribut commun paradigm middlewar coord
|
||
69 | 681 | Designing Expert Systems |
Design, construction, and evaluation of software systems that solve problems generally deemed to req
|
||
design construct evalu softwar system solv problem gener deem requir human expertis focus studi rele
|
||
70 | 682 | Computer Vision |
Study of computational models of visual perception and their implementation in computer systems. Top
|
||
studi comput model visual percept implement comput system topic includ earli visual process edg dete
|
||
71 | 683 | Parallel Algorithms |
Examines design and analysis of parallel algorithms. Material focuses on algorithms for both theoret
|
||
examin design analysi parallel algorithm materi focus algorithm theoret practic model parallel compu
|
||
72 | 684 | Graph Algorithms |
Data structures and analytical techniques to study graph algorithms. Data structures include disjoin
|
||
data structur analyt techniqu studi graph algorithm data structur includ disjoint set heap dynam tre
|
||
73 | 685 | Autonomous Robotics |
Reviews developments in intelligent autonomous systems. Studies applications of artificial intellige
|
||
review develop intellig autonom system studi applic artifici intellig comput vision machin learn rob
|
||
74 | 686 | Image Processing and Applications |
Concepts and techniques in image processing. Discusses methods for image capture, transformation, en
|
||
concept techniqu imag process discuss method imag captur transform enhanc restor encod student compl
|
||
75 | 687 | Advanced Artificial Intelligence |
Explores foundational issues of artificial intelligence, such as roles of knowledge and search, form
|
||
explor foundat issu artifici intellig role knowledg search formal knowledg infer symbol versu emerg
|
||
76 | 688 | Pattern Recognition |
Explores statistical pattern recognition and neural networks. Pattern recognition topics include Bay
|
||
explor statist pattern recognit neural network pattern recognit topic includ bayesian classif decis
|
||
77 | 689 | Planning Motions of Robots and Molecules |
Covers topics from artificial intelligence, algorithms and databases. Presents algorithms that model
|
||
cover topic artifici intellig algorithm databas present algorithm model simul physic biolog system f
|
||
78 | 695 | Topics in Computer Science |
Special topics in computer science not occurring in regular computer science sequence.
|
||
special topic comput scienc occur regular comput scienc sequenc
|
||
79 | 697 | Independent Reading and Research |
Students may undertake a course of study under supervision of consenting faculty member. Students us
|
||
student undertak studi supervis consent faculti member student submit written statement content tent
|
||
80 | 700 | Quantitative Methods and Experimental Design in Computer Science |
Integrated treatment of models and practices in experimental computer science. Topics include scient
|
||
integr treatment model practic experiment comput scienc topic includ scientif method appli comput wo
|
||
81 | 706 | Concurrent Software Systems |
Topics include concurrent programming languages and constructs, and specification, design, verificat
|
||
topic includ concurr program languag construct specif design verif valid concurr program student req
|
||
82 | 719 | Scalable Internet Services |
Discusses, from quantitative point of view, characteristics of most important technologies used to s
|
||
discuss quantit point view characterist import technolog support implement busi site includ topic ha
|
||
83 | 752 | Interactive Graphics Software |
Advanced graphics methods and tools. Topics include visualization, modeling, rendering, animation, s
|
||
advanc graphic method tool topic includ visual model render anim simul virtual realiti graphic softw
|
||
84 | 755 | Advanced Computer Networks |
Current and emerging issues in advanced computer networks and applications. Topics include software
|
||
current emerg issu advanc comput network applic topic includ softwar system packet cell switch netwo
|
||
85 | 756 | Performance Analysis of Computer Networks |
Analytical and simulation techniques for modeling and analyzing computer networks. Examines elementa
|
||
analyt simul techniqu model analyz comput network examin elementari queu analysi network queue rout
|
||
86 | 773 | Real-Time Systems Design and Development |
Real-time systems and principles supporting design and implementation. Emphasizes fundamental result
|
||
real time system principl support design implement emphas fundament result real time schedul theori
|
||
87 | 774 | Computational Vision |
Studies recent advances in development of machine vision algorithms and knowledge-based vision syste
|
||
studi recent advanc develop machin vision algorithm knowledg base vision system topic includ scalesp
|
||
88 | 775 | Advanced Pattern Recognition |
Covers statistical pattern recognition, neural network, and statistical learning theory approaches.
|
||
cover statist pattern recognit neural network statist learn theori approach topic includ decis theor
|
||
89 | 777 | Human-Computer Intelligent Interaction |
Current and emerging issues in human-computer intelligent interaction, and human-centered systems an
|
||
current emerg issu human comput intellig interact human center system applic topic includ video proc
|
||
90 | 779 | Topics in Resilient and Secure Computer Systems |
Covers study of alternate computer security, including how these methods can be combined in a layere
|
||
cover studi altern comput secur includ method combin layer defens factor affect select architectur r
|
||
91 | 782 | Machine Learning |
Surveys machine learning concerning development of intelligent adaptive systems that are able to imp
|
||
survei machin learn develop intellig adapt system improv learn input data problem solv experi topic
|
||
92 | 787 | Decision Guidance Systems |
Decision-guidance systems support an iterative process of giving actionable recommendations to and e
|
||
decis guidanc system support iter process give action recommend extract feedback human decis maker g
|
||
93 | 788 | Autonomic Computing |
Studies self-managing, self-optimizing, self-configuring, self-tuning, self-healing, and self-protec
|
||
studi manag optim configur tune heal protect comput system analyz exampl autonom system techniqu des
|
||
94 | 795 | Advanced Topics in CS |
Advanced topics not occurring in regular sequence.
|
||
advanc topic occur regular sequenc
|
||
95 | 798 | Project Seminar |
Master's degree candidates undertake a project using knowledge gained in MS program.
|
||
master degre candid undertak project knowledg gain program
|
||
96 | 799 | Thesis |
Original or expository work evaluated by committee of three faculty members.
|
||
origin expositori work evalu committe faculti member
|
||
97 | 800 | Computer Science Colloquium |
Students are required to attend colloquia including talks by distinguished speakers, faculty candida
|
||
student requir attend colloquia includ talk distinguish speaker faculti candid mason faculti
|
||
98 | 811 | Research Topics in Machine Learning and Inference |
Presents unifying principles that underlie diverse methods, paradigms, and approaches to machine ear
|
||
present unifi principl underli divers method paradigm approach machin earn infer review learn infer
|
||
99 | 818 | Topics in Computer Systems |
Discussion of current research topics in computer systems. Topics vary according to faculty interest
|
||
discuss current research topic comput system topic vari faculti interest topic includ peer peer comp
|
||
100 | 880 | Research Topics in Artificial Intelligence |
Special topics in artificial intelligence not occurring in regular computer science sequence. Notes:
|
||
special topic artifici intellig occur regular comput scienc sequenc note requir substanti student pa
|
||
101 | 884 | Advanced Topics in Computer Vision and Robotics |
Covers recent developments. Topics motivated by applications to autonomous robotic systems, mobile r
|
||
cover recent develop topic motiv applic autonom robot system mobil robot navig multirobot system hum
|
||
102 | 895 | Research Topics in CS |
Advanced topics not occurring in regular sequence.
|
||
advanc topic occur regular sequenc
|
||
103 | 896 | Directed Reading and Research |
Reading and research on a specific topic under the direction of a faculty member.
|
||
read research specif topic direct faculti member
|
||
104 | 990 | Dissertation Topic Presentation |
Students put together a professional presentation of a research proposal and present it for critique
|
||
student put profession present research propos present critiqu fellow student interest faculti equiv
|
||
105 | 998 | Doctoral Dissertation Proposal |
Work on a research proposal that forms the basis for a doctoral dissertation.
|
||
work research propos form basi doctor dissert
|
||
106 | 999 | Doctoral Dissertation |
Dissertation research under the supervision of the dissertation director.
|
||
dissert research supervis dissert director
|
||