2012 Summer University


Computer Science and Communication Systems (CSCS)

July 2-20, 2012


Haute Ecole d’Ingénierie et de Gestion du Canton de Vaud (HEIG-Vd)

SWISS-flag     Switzerland

Big Data

Today’s scientists and engineers are increasingly working in an international environments. Cultural diversity and communication in different languages are an enrichment of our work environment but they can also present challenges.

The goal of the International Summer University is to allow students from Switzerland, the United States and India to work together in an international environment to:

  • gain understanding of different cultures
  • allow students to develop a professional netwrok in Europe, in India and in the US
  • encourage students to pursue part of their studies or professional career abroad

Following the success of the 2007, 2008, 2009, 2010, 2011, 2012 and 2013 editions of the International University in Computer Science and Networking, a new edition will take place in Yverdon-les-Bains, Switzerland. Advanced courses in the field of information technology will be taught in English by professors from SJSU (San José State University, California), PES-IT (India) and HEIG-VD (Haute Ecole d’Ingénierie et de Gestion du Canton de Vaud).

This program rich in cultural and scientific exchange is undoubtedly beneficial, even necessary for future engineers. In addition to the academic program, students and instructors will participate in cultural activities in order to foster cultural exchange between all participants.

Presentation of the concept (.pdf)

For Swiss students

  • 20 hours/week of classes (4 courses)
  • Replaces a « cours à choix » (6th semester)
  • Required level in English: B2 or higher
  • Required technical courses: Object Oriented Programming and Networking notions
  • You should be a regular student at HEIG-Vd, 2nd year (Bachelor)
  • English refresher: June 5-12-19-26, 2012
  • A certificate of completion will be delivered to each student, with grades

Testamonies of students (SU-2011)

  • The strongest point, without hesitation, was the networking. Getting To meet so many students that are in the same work domain as myself was benefic. This summer university has widely opened doors of opportunities for my future professional career.
  • Altogether it’s a different enriching experience. Meeting new people and learning about their culture was the best part in this program which we do not get to do if we visit the country for just tourism.
  • The country itself is amazing, and I felt extremely fortunate to have my visit their heavily subsidized. The academic work was on par with my experiences at University in California, and the accommodations (specifically the housing and rail pass) made the entire trip very comfortable. I was particularly lucky to choose a lab partner with whom I got along very well, and visiting his family over the final weekend of the program was the highlight of my trip. I learned a great deal about Switzerland and its culture, and I definitely plan to return.
  • The whole thing was perfectly organized. It was indeed a great experience to study along with students from different countries. Cultural events and food was organized very well. Everything everywhere was very clean and neat. The level of importance and priority the Swiss people gave us was enormous. We were always treated very kindly and like one of their own. We got all the help we needed. Food, accommodation, cultural events, Communication regarding Higher Studies with different Lecturers and program organizers motivated the students to do their masters in Switzerland, Europe. I am inspired to do my masters now. I would like to thank each and every one who was involved in organizing, helping, coordinating the event wholeheartedly. Special thanks to Dr. Stephen Robert for coordinating the whole event for the Computer Science Summer University. I would be eagerly waiting for future Summer Universities abroad.
  • The program not only gave me an opportunity to interact and attend lectures of experts, but – most importantly – gave me an understanding of the culture and lifestyles of students and people of Switzerland and US. The program was very rich in technological and cultural exchange. It helped in bringing about a holistic development in me. The classroom atmosphere was very different from that we have in India and was great experience. The French course was very innovative. The course on Eco-computing was something new and interesting. I particularly enjoyed the cultural activities and the excursions/picnics where I got to know each other (teachers and students alike) more informally. These also helped me get a closer look at the rich Swiss culture and traditions. The trip to Moleson, Gruyere and Broc with friends, where I got to taste the authentic Swiss Cheese Fondue and Chocolates is one of the best trips I had in my life. I was very much touched by the hospitality of the Swiss. Their friendly nature, be it a fellow student or the lady in the canteen or a stranger on the street, made me feel very much at home.
  • Awsome!
  • Totally worth it.
  • A great experience with great encounters. Three weeks with only amazing memories.




  • Prof. Stephan Robert (Academic Program Coordinator), stephan dot robert at heig-vd dot ch
  • Prof. Laurence Larghi, laurence dot larghi at heig-vd dot ch,
  • Ms. Myriam Troenli Verratti myriam dot verratti-troenli at heig-vd dot ch
  • Ms. Lina Garcia lina dot garcia at vd dot ch


Faculty: Prof. Chris Tseng, Prof. Cay Horstmann, Prof. A. Srinivas, Prof. Jon Pearce, Prof. Stephan Robert

Students: Sushma Baandekar, Jesus Rocha, Eli Young, Cody Randall, Ravi Gonga, Aaron Jensen, Sayali Deshpande, Anil Shrestha, Shawn Tice, Prasad Karthik, Vivek Purushothaman, Kejriwal Ankit, D.S. Sandesh, Kamath Vikram, Jérôme Amiguet, Jonathan Déspraz, Eric Engeström, Nicholas Helke, Kevin henzer, Patrick Jaquenoud, Mathieu Meylan, Mathieu Prêtre, Matthieu Reussner, Pierre-Alexandre Rieker, Joël Tingueli, Antoine Vigo, Nikita Vlasov, François-Xavier Obert


Big data analytics

Teacher: Prof. Chris Tseng, San Jose State University, USA

Big data consists of datasets that grow so large that they become difficult in capturing, storage, search, and analytics. Big Data is growing exponentially. One of the challenges is the analytics needed handle the unstructured and time sensitive nature of big data.

In this course we will study fundamental analytics techniques suitable for big data. These include basic analytic methods like K-Means Clustering, Association Rules, and Text Analytic. We will discuss how MapReduce/Hadoop can be used for analyzing unstructured data. Concept of XML/JSON and Amazon Web Service (AWS) for big data will also be introduced.

This class will include a hands-on data analysis project on generating and summarizing unstructured text data. IBM’s Unstructured Information Modeler, Splunk, or similar software will be used for this purpose. Students interested in taking this course are expected to have knowledge of data structure.

Scala for the impatient

Teacher: Prof. Cay Horstmann, San Jose State University, USA
Scala was created to be a « scalable » language, ranging from mundane scripting tasks to running the most massive backend systems, such as Twitter. That’s smart because you don’t have to learn a new language for every problem domain. Scala cleverly combines a small number of very powerful features, resulting in a language with far more power than Java or C++.

In this course, you will learn just enough Scala to be dangerous. Need to generate a hundred graphs. Rewrite the HTML in a thousand web pages? Write a mini-programming language without reinventing the wheel? Do number crunching and keep those processor cores busy–even if you know nothing about concurrency? Scala can do all that easily, and it is a lot of fun to wield that power.

The course has a « mini-lecture + lab » format. I lecture for 20-30 minutes. You do a short lab with a partner. I lecture again, you do another lab, etc. There will be a small-scale project.

Prerequisites: Intermediate Java or C++. Unwillingness to do the same routine task over and over (i.e impatience).

You need to bring a laptop to the course and install some software ahead of time.


Teacher: Prof. Jon Pearce, Chair of CS, San Jose State University, USA

The NetLogo language is based on an intriguing eco-oriented paradigm: virtual turtles swimming around in a virtual pond. Turtles are provincial. They know nothing of the pond beyond their limited field of vision. A turtle’s behavior is determined by a list of simple procedures that it perpetually executes. Turtles eat, mate, age, and die. They cheat and cooperate. They buy and sell. They hunt and flee. They spread rumors and diseases. They imitate their neighbors. Oh, I almost forgot, they can also draw.

Although turtles are provincial and their behavior simple, the behavior of the ecosystem as a whole (pond + turtles) can be surprisingly complex. Patterns emerge: self regulation, self organization, boom and bust cycles, synchronicity, flocking, rebelling, tipping points, evolution, even standards of morality.

NetLogo can be viewed as a laboratory for studying the emergent behavior of agent-based systems. Its ease of use (NetLogo is based on Logo, which was designed for children) makes it popular among biologists, economists, sociologists, chemists, physicists, and artists. Agent-based architectures are also interesting to computer scientists attempting to leverage massively parallel systems while avoiding the complexity of centralized control.
In this course we will use NetLogo to model complex systems. We will also explore the eco-oriented paradigm as an approach to games, ambient computing, and grid computing.

Multi-core architecture and programming

Teacher: Prof. A. Srinivas, PES Institute of Technology, India

Presentation Day 1.1
Presentation Day 1.2
Assignment compression

The present day processor technology has reached high levels of maturity in terms of performance. But the technology has physical constraints in terms of the number of transistors that it can accommodate, power handling abilities and the addressing problems. The processors have hit the clock speed limits that are directly related to the above parameters. With these in view, there is a natural need to migrate to multi-core architecture.
With the ever increasing need for faster execution time in specialized applications, the hardware has to support multiple simultaneous executions of threads, both for data and for instructions. This calls for a multi-core architecture that supports parallelism. This course aims to introduce a student to a detailed account of parallel hardware architectures in terms of multi-core technologies and also deals in detail with the programming artifacts that render the execution of applications very efficient on multi-core platforms. The course is aimed to be very hands-on.
Course objectives: At the end of the course, students will be able to:

  • Understand the need for multi-core architecture in terms of processor evolution for multcore, memory organization etc.
  • Understand the existing multi-core architectures, specially with case studies from Intel multi-core processors.
  • Develop expertise on multi-core programming in ‘C’ language and apply the same to problems of practical relevance.
  • Optimize multi-core programming code for effectively utilizing the power of multi-core.

Course content:

  • Introduction to Multi-core Architecture: Motivation, Parallel computing platforms, Distinction between multi-core architecture and hyper threading, Amdahl’s Law.
  • Overview of Threading: Threading above the operating system, Threads inside the Hardware and inside OS, Application programming models and threading, Virtual Machines and Platforms, Runtime Virtualization.
  • Task and data flow decomposition, Parallel programming Patters, Examples.
  • Threading and Parallel Programming: Synchronization, Critical sections, deadlock, Semaphores, Locks, Messages, Fence, Barrier.
  • Threading APIs: Threading APIs for Microsoft Windows, WIN32/MFC Thread APIs, Creating and managing threads, Thread Synchronization
  • OpenPM: A portable solution for threading, Data race conditions, Managing shared and private data, Loop scheduling and partitioning, OpenMP library functions, OpenMP environment variables, compilation, debugging, Performance evaluation.
  • Multithreaded Debugging techniques: Debugging multithreaded applications in Windows- Threads window, Trace points, Breakpoint filters
  • Threading on Intel Multicore Processors: Hardware based Threading, Threading from Intel, Hyperthreading Technology, Comparison between multiprocessors and multi-core, Multi-core power considerations
  • Course Schedule: 2 hrs of Theory and 2 hrs of Lab for 12 working days (Total : 48 hrs)

Evaluation: 100 Marks
Continuous Assessment: 70 Marks
Five Programming Assignments : 50 marks
Mini Project : 20 marks
End Semester Exam for 2 hrs: 30 marks
Grading: Relative grading with respect to the class average

Past Courses

  • Multiprocessor Programming (Prof. Englert, CSULB)
  • Constraint Programming (Prof. Ebert, CSULB)
  • Artificial Intelligence and Games (Dr. Feldmann, HEIG-Vd)
  • Computer Graphics Applications (Prof. Teoh, SJSU)
  • Scala (Prof. Horstman, SJSU)
  • Image Processing (Prof. Kocher, HEIG-Vd)
  • Introduction to CUDA programming (Prof. Robert, HEIG-Vd)
  • Multicore and concurrent programming (Prof. Dasguptha, ASU)
  • Web technologies (Prof. Monge, CSULB)
  • Java EE6 for Elvis (Prof. Horstman, SJSU)
  • Machine Intelligence (Prof. Andrès, HEIG-Vd)
  • Linear and Non linear Image processing (F06a, Cheseaux, map)(Prof. Kocher, HEIG-Vd)
  • Introduction to Ubiquitous Computing (Prof. Liechti, HEIG-Vd)
  • Introduction to Bioinformatics (Prof. Sami Khuri, SJSU)
  • Eco-Computing (Prof. Pearce, SJSU)
  • Introduction to Python (Natasha Khuri, SJSU)
  • Spatial localization and identification of objects based on video streams (Dr. De Siebenthal, HEIG-Vd)
  • Wireless Network Security (Dr. Rubinstein, HEIG-Vd)
  • Computer and Network Security (Prof. Dasguptha, ASU)
  • Search Engines, Open Source Software (Prof. Horstman)
  • Global Software Computing (Prof. Collofello, ASU)
  • Service-Oriented Computing (Prof. Chen, ASU)
  • Web Application Vulnerabilities (Prof. Buchs, HEIG-Vd)
  • Rich Internet Applications (Prof. N. Khuri, SJSU)
  • Agent based systems and Object Oriented Modelling (Prof. Pearce, SJSU)
  • Development of data centric J2EE Web Applications (Prof. Monge, CSULB)
  • Grid Computing (Prof. Courelis, CSUF)
  • Malware analysis (Prof. Buchs, HEIG-Vd)
  • Evolutionary algorithms (Prof. S. Khuri, SJSU)
  • Distributed computing (Prof. Englert, CSULB)




Student accommodations will be located near Lausanne (Morges, Marcelin), 20 minutes by train from Yverdon-les-Bains. Lausanne, the capital of the Swiss Canton of Vaud, is a medium sized city and host to the International Olympic Committee and two major universities (EPFL and Unil). Located at the lake of Geneva and 30 minutes from the Alps, Lausanne is a perfect place for outdoor activities. Since Lausanne is in the center of Europe, just 1 hour away from France, 2 hours from Italy, 2 hours from Germany, it is a perfect starting point to explore other European countries. The large student population makes for a lively nightlife and arts community. You’ll also find a number of quality restaurants and two dozen museums of note, including the Olympic Museum and the offbeat Collection de l’Art Brut.

You will have access to a common kitchen with ovens, microwave ovens, hobs. Furthermore we will distribute cutlery, plates, bowls…

Pedestrian map: Rail station (gare)-> Marcelin (15 minutes walk)
Map of the « campus » (your dorms are located in building 10)
Bus shedule
Studio check-out, Bed and dishes recommendations

Emergency numbers

Police, 118
Fire brigades/pompiers, 117
Vital emergencies/Urgences vitals, 144
Non-vital emergencies/Urgences non vitales, 0848 133 133
Poisonings/intoxications, 145