Jaime Dávila is an associate professor of computer science at Hampshire College, where he has worked since 1999. He obtained his Ph.D. from the City University of New York in that same year.
His main research interest is in the area of genetic optimization of neural networks for human-like tasks, mainly for cooperative, team-based games. He is currently studying ways in which the coding of evolved parameters affect the performance of artificial multi-agent systems under environments with changing conditions. He is also interested in issues of technology and society, such as access to STEM education for underrepresented students, privacy and data collection on the Internet, and the effect of new media and new technology on the economy.
His papers have been presented at conferences such as the International Joint Conference on Neural Networks, the Congress on Evolutionary Computation, and the International Conference on Neural Information Processing.
This course is designed to give students a strong introduction to computer programming, with an emphasis on programming computer games. As the title reveals, we will be working in the Python programming language. By the end of the course successful students will be able to write programs of moderate difficulty, and will be able to use the Python pygames library to make use of graphic utilities with which to implement computer games. As a course that can provide a strong foundation for further computer science courses, this class will expose students to input/output operations, if-else structures, loops, functions, objects, and classes. No prior programming experience is necessary.
By the end of this course students have been exposed to the major topics involved in developing real-life applications that make use of data in order to dynamically generate websites. Emphasis is be placed on both standard database theory, such as normalization and integrity, and real-life deployment, installation, and maintenance of database driven websites. Prerequisite: At least one semester of college-level programming experience with a high level programming language.
Inspired by the Edward Snowden and National Security Agency events of the summer of 2013, this course will examine the ways in which current technology facilitates and even encourages the collection of information on individuals, the ways in which that information can be used, pros and cons of such tendencies, and a variety of techniques to either expand or restrict the sharing and collection of data. The course will both deal with the mathematical foundations of these techniques and its social implications. While students might opt to write programming code or delve into very technical matters as part of the course, this will be only one of several ways to engage with the course, and will not be required. No previous computer experience is required for the course.
Bigger-sized software programs, which are developed through a longer span of time, require looking into aspects of the software development cycle that are not necessary for smaller projects. This course will expose students to the design, implementation, testing, and maintenance of this type of projects, putting particular but not exclusive emphasis on agile development methods. Students will be involved in the actual GROUP implementation of a major piece of software, in conditions similar to those found in industry. Prerequisite: Students must have ample experience before the beginning of the course with the C, C++, or Java, or some other high level languages, in at least a semester of computer programming experience.
This course will introduce students to hands-on work in the artificial intelligence topics of neural networks and evolutionary computation, both as separate computer science fields and in collaboration with each other. While the course will start by exposing students to basic concepts in these fields, students will be expected to design, program and evaluate their own computer experiments. By the end of the semester successful students will have acquired important knowledge in the field of artificial neural networks and evolutionary computation, and research techniques for artificial intelligence and machine learning tasks more broadly defined. This course is programming-intensive. Prerequisite: At least a semester of solid experience with a high- level programming language.
This course will expose students to topics in computer programming and artificial intelligence by both reading primary literature on the topic and programming virtual creatures in high level programming languages. No previous programming experience is necessary. By the end of the course successful students will have acquired programming skills at an introductory level and will be ready for additional courses in computer science. In addition, students will have gained knowledge related to several general topics in the cognitive sciences, such as vision, artificial intelligence, neural networks, and evolution.
Jaime (Jaime) Davila
Associate Professor of Computer Science
Mail Code ASH
Adele Simmons Hall 204
893 West Street
Amherst, MA 01002