10.03.2014 Views

Current version - Indiana University South Bend

Current version - Indiana University South Bend

Current version - Indiana University South Bend

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

IU SOUTH BEND COURSE DESCRIPTIONS 4297<br />

CSCI-B 424<br />

CSCI-B 438<br />

CSCI-B 451<br />

PARAllel and distributed programming<br />

(3 cr.)<br />

P: CSCI-C 243. P or C: MATH-M 301.<br />

Overview of parallel computers, shared<br />

memory, message passing, MIMD and<br />

SIMD classifications. Understanding<br />

and use of message passing and<br />

synchronization facilities such as MPI.<br />

Study of parallel programming models<br />

such as master-slave, client-server,<br />

task-farming, divide-and-conquer,<br />

and pipelining. Performance analysis<br />

of parallel systems, execution time,<br />

time complexity, load balancing, and<br />

scalability. Credit not given for both<br />

CSCI-B 424 and CSCI-B 524.<br />

fundamentals of COMPUTER<br />

NETWORKS (3-4 cr.)<br />

P: CSCI-C 243, CSCI-C 335. Fundamental<br />

concepts and technologies used in design<br />

of computer networks. Architecture<br />

and design philosophy of Internet and<br />

basic performance issues. Low-level<br />

technologies like Ethernet and wireless.<br />

Packet switching and virtual circuits. Core<br />

protocols of the Internet, such as TCP and<br />

IP. Error control, congestion control, and<br />

routing.<br />

security in COMPUTing (3 cr.)<br />

P: CSCI-C 335. An introduction<br />

to computing security to include<br />

confidentiality, integrity and availability<br />

triad, cryptography, software security,<br />

operating system security, trusted<br />

operating system design and evaluation,<br />

authentication, network threats and<br />

defenses, security management, legal<br />

aspects of security, privacy and ethics.<br />

CSCI-B 503 ALGORITHMS DESIGN AND ANALYSIS (3 cr.)<br />

P: CSCI-C 243 and MATH-M 260 or<br />

MATH-M 365 or MATH-M 463. Models,<br />

algorithms, recurrences, summations,<br />

growth rates. Probabilistic tools,<br />

upper and lower bounds, worst-case<br />

and average-case analysis, amortized<br />

analysis, dynamization. Comparisonbased<br />

algorithms: search, selection,<br />

sorting, hashing. Information extraction<br />

algorithms (graphs, databases). Graph<br />

algorithms: spanning trees, shortest<br />

paths, connectivity, depth-first, breadthfirst<br />

search. Credit not given for both<br />

CSCI-C503 and C455. II<br />

CSCI-B 524<br />

parallelism in Programming<br />

languages and systems (3 cr.)<br />

P: CSCI-C 243, MATH-M 301. Overview<br />

of parallel computers, shared memory,<br />

message passing, MIMD and SIMD<br />

CSCI-B 538<br />

CSCI-B 541<br />

CSCI-B 551<br />

CSCI-B 553<br />

classifications. Understanding and use<br />

of message passing and synchronization<br />

facilities such as MPI. Study of parallel<br />

programming models such as masterslave,<br />

client-server, task-farming,<br />

divide-and-conquer, and pipelining.<br />

Performance analysis of parallel systems,<br />

execution time, time complexity, load<br />

balancing, and scalability. Credit not<br />

given for both CSCI-B 524 and B424.<br />

networks and distributed computing<br />

(3 cr.)<br />

P: CSCI-B 438. R: CSCI-C 435. Advanced<br />

concepts and technologies of computer<br />

networks. Protocols and protocol stacks.<br />

Client-server models. Distributed object<br />

technology. High-performance and<br />

high-bandwidth techniques. Distributed<br />

operating systems. I<br />

hardware system design i (3 cr.)<br />

P: CSCI-C 243, CSCI-C 335, PHYS-P<br />

303. Structured approach to hardware<br />

design, emphasizing hardwired and<br />

microprogrammed control. Boolean<br />

algebra, hardware building blocks,<br />

architecture and control, implementation<br />

issues. In the laboratory, students build<br />

a working computer using hardware<br />

prototyping technologies. Basic training<br />

in the use of design and simulation<br />

software. Lecture and laboratory. Credit<br />

not given for both CSCI-B 541 and CSCI-C<br />

421.<br />

elementary artificial intelligence<br />

(3 cr.)<br />

P: CSCI-C 251. Major issues and<br />

approaches in artificial intelligence.<br />

Principles of reactive, goal-based, and<br />

utility-based agents. Problem solving and<br />

search. Knowledge representation and<br />

design of representational vocabularies.<br />

Inference and theorem proving, reasoning<br />

under uncertainty, and planning.<br />

Overview of machine learning. Credit not<br />

given for both CSCI-B 551 and C463.<br />

neural and genetic approaches to<br />

artificial intelligence (3 cr.)<br />

P: Permission of instructor. Biologicallyinspired<br />

approaches to the design of<br />

intelligent systems. Distributed and<br />

perceptually-grounded representations.<br />

Temporal processing. Neural-network<br />

approaches to vision and natural language<br />

processing. Evolutionary computation.<br />

Additional topics may include an<br />

introduction to analogy computing,<br />

dynamical systems, and artificial life.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!