CPSC 531: Systems Modeling and Simulation

Professor Carey Williamson

Fall 2017

Assignments

CPSC 531 will have four assignments. In aggregate, the assignments count 40% toward your final grade in CPSC 531. Each assignment will be graded on a percentage scale. All assignments will be equally weighted (40 marks each, with each contributing 10% toward your final grade), even though they might not be of equal difficulty. Some assignments may have extra bonus credit for optional features specified in the assignment description.

The assignments will involve programming in C, C++, or Java. There will be one assignment due about every 3 weeks during the semester, with a slight gap around midterm exam time.

Some possible ideas for assignments are the following: Vegas card games; π estimation; car wash model; ICT elevators; Banff park entry; Bruny Island ferry; restaurant model; hospital bed management; paging strategies for virtual memory management; buffer management strategies in queues; Web proxy caching; Netflix video streaming; and simulation modeling of wireless channel access protocols.

The actual assignments will be released here early in the semester. In fact, here they are now:

Assignments are to be done individually. You can use sample code provided by your instructor or TA, and you can discuss solution approaches and debugging problems with your 531 colleagues, but the code that you submit for marking must be your own. Plagiarism of code from Internet Web sites or from other students will not be tolerated.

Assignment solutions are to be submitted electronically (via email to jwhudson@ucalgary.ca, with one or more attachments, but not .zip file attachments) to your TA for grading, on or before the stated deadline. Late submissions will be penalized 4 marks per day (or portion thereof) beyond the stated deadline. A sample solution for each assignment will be posted approximately one week after the assignment due date.

Lab Info

The official computer laboratory facilities for CPSC 531 are housed in the CPSC Computer Labs, located on the 1st floor of Math Sciences. Remote access to selected CPSC computers is also possible.

We will be using Linux and/or Windows as the default operating system environment for the programming assignments in this course. The programming assignments will be done in C, C++, or Java (your choice). You can use your own computational resources (e.g., laptop, home PC) for your assignments if you wish, but please ensure that your solutions work in the environment that the TA will be using for grading.