The Department of Computer Science at the University of Iowa would like to share our research and our passion for this work with you and your students. To this end, we would like to introduce our speakers bureau, a list of faculty in our department who would love to present their work to your students! Our goal is to provide a single point of contact to set up faculty talks from our department. We also provide a list of possible talk topics, so you have an idea what we can offer. Ideally, by making it easier to organize colloquia and other presentations at your school, we will see you more often!
Below is a list of our faculty who have volunteered, as well as sample talks they already have prepared. If you would like to set up a talk, please send an e-mail to Prof. Sriram Pemmaraju with ideal dates and times and any preferred speakers or talks, and he will work to find a speaker available to fit your schedule. If you aim for a particular speaker, feel free to coordinate directly with them (though please copy email@example.com, too).
Mobile sensing applications are an emerging class of mobile applications that take advantage of the increasing sensing, computational, storage, and networking capabilities of mobile devices. Chipara’s research focuses on the systems, networking, and software engineering aspects of developing mobile health (mHealth) systems that continuously monitor and infer the health status of patients. His work combines the design of communication protocols, middleware, and programming tools with large-scale real-world deployments of working systems.
Recent visit: Grinnell College (fall 2015)
Automated formal verification techniques have the potential to provide rigorous assurances about the satisfaction of desired properties of a system. The properties in question here often capture security, privacy, safety, or even functional requirements of a system. Automated formal verification techniques, however, are often presumed not to scale when applied to complex, real systems. In this talk, I will offer three examples as evidence to demonstrate that the above conventional wisdom does not hold invariably. In these examples, we leverage formal verification techniques to achieve a higher level of privacy, security, and safety in complex systems.
First, I will show how we used techniques from logic programming and runtime monitoring to efficiently detect whether an organization's business practice is compliant with a real privacy regulation (i.e., the US Health Insurance Portability and Accountability Act). Second, I will demonstrate how we took advantage of techniques from program analysis and model checking to check whether a given protocol implementation satisfies some expected properties. I will conclude my talk by demonstrating how we benefited from efficient runtime monitoring techniques to ensure that an autonomous research vehicle from a reputed car company does not violate safety properties.
Increasing use of computers to satisfy needs and rights (e.g., voting, purchases, payments) means designers must ensure accessability for increasingly diverse populations and computing devices. This talk outlines challenges and opportunities in design to achieve that goal for children, older adults, and people with lower socio-economic status.
Recent visits: Knox College (fall 2012), Cornell College (fall 2013)
An investigation of problems in a 2006 election in Sarasota County, FL. Finding out went wrong at the polls took 4 years, with investigations into classical forensics, hacking, and human-factors research. The results indicate some of the difficulties in designing computer systems that maintain forensic evidence while preserving security and privacy.
Recent visit: Wartburg College (fall 2012)
Applications in data science rely on two computing paradigms: tuned high performance parallel programs and data analytics. While historically the differences between these paradigms were good reason to separate them into different systems, recent changes in hardware and, as a result, fast data processing techniques, call this separation into question. First I’ll discuss hardware trends and the requirements of data-intensive scientific applications. Then, I’ll talk about two systems that bring high performance parallel computing and data analytics closer together: 1) Grappa, an extension of C++ that allows the user to write data-intensive parallel code without worrying about all the complexities of programming a cluster of computers and 2) Radish, a system that compiles database-style queries (e.g., SQL) into parallel code.
With widespread adoption of multicore processors and graphics processors (GPUs) for general computation, it is vital that parallel programming techniques become part of the standard toolbox when developing commercial and research applications. Scientific computing provides a wide range of problems that can efficiently utilize these processors.
Over the last two decades, randomization has been recognized as a powerful tool in the design of algorithms. There are now many instances where randomization improves either the simplicity or the speed (or both) of algorithms. Also, randomization has become indispensible in new computational settings, for example in the context of online or streaming algorithms or in the context of wireless networks. This talk will provide accessible examples of the power of randomization in the design of algorithms starting with classical examples such as primality testing algorithms to recent examples of data streaming algorithms.
Recent visits: Cornell College (fall 2012), Knox College (spring 2014), Grinnell College (fall 2014), University of Wisconsin La Crosse (fall 2015)
One in six people have a disability, whether hidden or apparent. It is important for designers to create technologies that are accessible to people of different backgrounds. First, this talk will outline the research that I and others have conducted in computer science to improve access and wellness for people with disabilities. Then, I will focus on two of my research projects: 1) Eyes-Free Yoga, an accessible yoga exercise game that provides auditory instructions and feedback for people who are blind or low vision, and 2) Eyes-Free Art, a system that allows people who are blind or low vision to explore 2D paintings using audio techniques. Finally, I will discuss future research opportunities in accessibility and computer science.
Computational epidemiology lies at the intersection of computer science, engineering, statistics, and health care. Our goal is to inform public and hospital policy decisions on topics such as: disease surveillance, disease prevention measures, and outbreak containment. Covers our work, including computational models, simulations, and visualization for the spread of disease.
Recent visits: Grinnell College (fall 2012), St. Ambrose University (fall 2013), University of Illinois Chicago (spring 2014), Cornell College (fall 2015), Central College (fall 2015)
People get away with a lot of stuff on Facebook that they wouldn't get by in real-life. For example, a large fraction of profiles on Facebook are fake and are used to infiltrate our friend networks, spy on our personal information, launch spam, etc. Little is known about who creates and operates these fake profiles, and how they make money. This talk discusses research at the University of Iowa on investigating underground activities on Facebook.
Recent visits: Knox College (fall 2015)
Text mining is an exciting area of study that underlies a wide variety of entrepreneurial initiatives especially with Web data. For example, when applied to social media such as Twitter and YouTube we can find out interesting details such as the hottest topics, the most influential posters, which subjects attract the most attention from the public, how long does it take for an idea to spread etc. This talk highlights the many opportunities that arise with text mining.
Recent visit: Coe College (fall 2013), Drake University (fall 2015)
Discusses recent work to provide lighter-weight verification using strongly typed languages. Instead of relying on proving correctness, this approach expresses properties in the code using a rich type system. One goal is to support a continuum, where developers can select how much of their code to verify. Recent research examples are discussed.
Recent visits: Truman State University (fall 2012), St. Ambrose College (fall 2012), St. Ambrose-Knox College IEEE meeting (fall 2013), Grinnell College (fall 2013)
Learn about the capabilities of Nao humanoid robots and see them in action. Get a brief introduction to what is involved in programming them, and watch the robots dance, act, and perform magic tricks. More on the UI CS Performing Robots can be found here.
Recent visits: K-12 and university outreach
An introductory talk on formal verification of software, including: motivation for program verification; comparison of formal verification versus testing; and an overview of modern techniques for automating verification. Focuses on Iowa's research in the area.
Machine learning has become one of the core data-driven technologies. It has created tremendous value in various domains. In this talk, I will introduce machine learning and its relationship with big data. In particular, I will talk about what machine learning is, how to conduct machine learning, what the applications of machine learningare, etc. I will also give some suggestions on how to learn machine learning for students.