CISP237 Java Programming I:
This course focuses on programming using the Java language. The Java programming language is used in a hands-on environment. This course introduces students to the JAVA compiler and the JAVA run time environment. Students are introduced to the concepts of object-oriented programming and design. The course covers Java expression, classes, inheritance, variables, operators, and flow control statements. This class is extended to include refined programming style and documentation techniques found in Sun Microsystems source code. Further, UML will be used to introduce simple design patterns.

CISP239 Java Programming II:
This course investigates advanced topics in object-oriented programming using the Java programming language. Data structures: trees, link list, Abstract Data Types, Binary trees, Graphs, Searching and Sorting Algorithms are covered. This class is extended to include: networking, JDBC, MVC, derby, Spring (low coupling and high cohesion), and the continued expansion of design patterns using UML.

CISP244 Introduction to Gaming Theory

The Text use in this course was "an introduction to Game Theory". The author, Professor of Economics at the University of Toronto Martin J. Osborne, says "Game Theory aims to help us understand situations in which decision-makers interact." Some of the topics covered in his text include: firms competing for business, political candidates competing for votes, jury members deciding on a verdict, animals fighting over prey, the role of threats and punishment in long-term relationships. A second text "A course in game Theory" written with his coauthor Ariel Rubinstein in the 1994 is also used by the instructor to further clarify the teaching of Game Theory.

This course presents an overview of game theory emphasizing an understanding of its theory expressed in simple mathematical terms. Topics include Nash equilibrium, mixed strategy equilibrium, and extensive, competitive and repetitive games. Selected programming exercises are assigned. Assigned programming groups will present (and play) their game at the end of the class.

CISP280 Artificial Intelligence
This course serves to present an introduction to the field of Artificial Intelligence. Topics include problem solving, search techniques (including game playing), inductive learning, decision trees, reasoning, and natural language understanding. Programming assignments include: Uncertainty management in rule-based expert systems, Fuzzy expert systems, Artificial Neural Networks, Evolutionary Computation, and Hybrid Intelligent Systems. A group project that demonstrated the use of Artificial Intelligence to solve a challenging problem will be presented at the end of the class.

back to Davenport University