Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | estella-walton |
View: | 214 times |
Download: | 0 times |
CS 450 MODELING AND SIMULATIONInstructor: Dr. Xenia Mountrouidou
(Dr. X)
CS 450 2
Who am I? You already know this!• Dr. X – Computer Scientist• PhD at North Carolina State University – Optical networks
performance • Worked for IBM – Software Performance Engineer• Post doc at College of William and Mary• Scuba diver, manga comics collector, science fiction
reader.
CS 450 3
What I did this summer?
CS 450 4
What I did this summer?
Research! • DDoS Simulation on GENI• MapReduce learning and implementation• Fauna simulation
CS 450 5
Course Objectives
At the end of this class you will be able to:• Design and develop discrete event simulations for
science and industry applications using high level languages
• Create computational models using appropriate assumptions and object oriented design principles
• Understand the concepts: discrete event simulation, continuous simulation, computational model, Monte Carlo simulation, and randomness
• Understand the design and implementation relationship between computer simulations and games.
CS 450 6
Why Simulate?
CS 450 7
CS 450 8
Why Simulate?
CS 450 9
Why Simulate?
CS 450 10
Why Simulate?
CS 450 11
Why Simulate?
CS 450 12
Why Simulate?
CS 450 13
Why do you need CS 450?• Big Data• Cost Sensitivity • Another programming skill in your toolbox• Jobs!
• Healthcare• Science• Military• Public policy• Engineering• …
• Lots of industry
CS 450 14
Why did you take CS 450?• Besides being a CS elective!• What are your interests?
CS 450 15
Lectures• We meet at 15:00-16:15, every M/W, at Merritt Penticoff
Science Bldg, Room 122• Check the schedule on the class webpage• Reading from book, slides, and examples will be posted
online• Lectures will be interactive.
• Case Studies:• Design a simulation and/or program a simulation• Submit your work!
• Lots of questions! (you know me…)
CS 450 16
Lectures• I will not talk more than half an hour (hopefully!)• I will have three breaks (at least) during this half hour.
You can bring up your questions during this time
• I would like all of you to question me or yourself whether you understand the material
• During lectures I may demonstrate coding snippets• C++ is my language of choice• Most of the times I will include Java and Python
CS 450 17
Software• Specialized simulation and game design tools
• OpenModelica• GameMaker
• High Level Language of your choice:• C#• Java• C++• Python
CS 450 18
How to get help• Join my office hours! M 1-3 pm, Tues 9-11 am, Wed 1-3
pm at MP 203 (2nd floor) or setup an appointment• Check the class website frequently• Use the textbooks:
• “The Guide to Computer Simulations and Games”, by Katrin Becker and J.R. Parker, Wiley
• “Computer Simulation Techniques: The definitive introduction!”, by Harry Perros, available online: http://www4.ncsu.edu/~hp/Site_1/Harry_Perros_page_files/COVER.pdf
• “Introduction to Computational Science”, by Angela B. Shiflet and George W. Shiflet, Princeton University Press.
CS 450 19
GradingLabs/Case Studies 20%
Homework 40%
Programming project 40%
Total 100%
Homework and Programming projects will be posted online on BlackBoard and on the class website
You will upload your completed assignments on BlackBoard
CS 450 20
Programming Project• Guidelines are posted on the website and BB• It can be done in pairs
• You need to send me an e-mail until the end of the second week of classes with your team members
• Each team member will evaluate his/her team mate
CS 450 21
Homework• It will involve:
• Analytical thinking• Computational thinking• Programming• A little bit of math
• Homework will be completed individually
CS 450 22
Policies• Cheating means “submitting, without proper attribution, any
computer code that is directly traceable to the computer code written by another person.”
• Or even better:• “Any form of cheating, including concealed notes during exams, copying or
allowing others to copy from an exam, students substituting for one another in exams, submission of another person’s work for evaluation, preparing work for another person’s submission, unauthorized collaboration on an assignment, submission of the same or substantially similar work for two courses without the permission of the professors. Plagiarism is a form of Academic Misconduct that involves taking either direct quotes or slightly altered, paraphrased material from a source without proper citations and thereby failing to credit the original author. Cutting and pasting from any source including the Internet, as well as purchasing papers, are forms of plagiarism.”
• I give students a failing homework grade for any cheating. • A second cheating attempt will be escalated
CS 450 23
Policies• You may discuss homework problems with classmates,
after you have made a serious effort in trying the homework on your own.
• You can use ideas from the literature (with proper citation).
• You can use anything from the textbooks/notes.• The code you submit must be written completely by
you.
CS 450 24
Policies• Read the collaboration policy carefully.• Late policy:
• 1% is reduced by every day the homework is late