Översikt

  • Allmänt

    Please be kindly informed that using Chat GPT in doing assignments in this course is not allowed.

    Please note: In order to have your registration for this or any other course accepted in Sisu, the course must be included in your study plan. Check that this is the case and also check that you have the latest version of your study plan in place.

    Please also note: Professors or lecturers don't have permission to enrol students in Sisu. So, if you need to register after the deadline for the course in Sisu, please send a message to course-sci@aalto.fi. You can cc me, Riku Linna (riku.linna@aalto.fi), just in case if the people in learning services need a confirmation from me. If registering in Sisu cannot be done right away, send an e-mail to me, and I will add you to MyCourses (provided you have an aalto e-mail).

    Lecturer: 

         Riku Linna (riku.linna@aalto.fi)

    Teaching Assistants:  

         Trung Nguyen (trung.t.nguyen@aalto.fi)
         Yejun Zhang (yejun.zhang@aalto.fi)

    Lectures, Tuesdays 12:15

    Lecture hall D/ Y122, "Kandidaattikeskus" (Main Building). 

    Exercise sessions, Thursdays 10:15

    Y429c-d (Linux) - Y429c-d, "Kandidaattikeskus" (Main Building)

    While you are welcome to join, attendance is not required. The course is taken by returning weekly assignments and grading two or three assignment submissions weekly, using FeedbackFruits and taking the exam at the end. Deadlines for submission of solutions, peer grading, and feedback can be found under Assignments. Of the exercise points, 80 % of the points come from graded solutions 20 % of the points come from doing the peer grading.

    Please note that since the assignments are peer reviewed, unfortunately, you cannot come back next year and return possibly similar/same problems for grading.

    Grading The grade is determined by the exercises (appr. 70 %) and the exam (appr. 30 %).  Peer grading will constitute 20 % of the exercise points.

    The purpose of this course is to provide an understanding of fundamental concepts and computational methods of stochastic simulations and models. After completing the assignments the student will have a library of (skeleton) algorithms used in stochastic simulation and an understanding of how they work.


    Topics include:

    1. Simulating standard probability distributions. 

    2. Methods of simulating 'non-standard' distributions. Logarithmic binning.

    3. Markov processes and stochastic models.

    4. Monte Carlo (MC) method and Metropolis sampling.

    5. Markov Chain Monte Carlo (MCMC) method; Gibbs and Metropolis-Hastings sampling.

    6. Hamiltonian/Hybrid Monte Carlo (HMC) method.

    Literature: Parts of the books Taylor, Karlin (newer edition Pinsky, Karlin): An Introduction to Stochastic Modeling (Academic Press), and Wilkinson: Stochastic Modelling for Systems Biology (CRC Press). Lecture notes and other distributed material.

    The book Hossein Pishro-Nik, Introduction to Probability and Random Processes, freely available online is a good reference for some parts of the course: https://www.probabilitycourse.com 

    Prerequisites: 

    Basic programming skills. The programming language is Python. Jupyter notebook will be used. 


    • Tillgänglig om: Du tillhör gruppen L01 (SISU)
    • Fil icon

      November 19, 3:51 pm: A typo corrected on page 22.

    • Tillgänglig om: Du tillhör gruppen L01 (SISU)
      Mapp icon
      Ranmar RNG Mapp

      This is the Ranmarrandom number generator that was commonly used before Mersenne-Twister algorithm was written. After compiling them, one runs Rmarin first and then generates random numbers with Ranmar (see Lecture 1). This is here just if someone should be interested.

    • Fil icon

      Sep 11: Added one slide (page 20) where correspondence of Box-Muller transformation to the general transformation (slide 10) is shown.

      Sep 24: Removed a redundant sentence on slide 37.

    • Fil icon

      Modified Sep 25, 15:31: In addition to a couple of small changes, two pages (19 and 20) were added to clarify the relation between stationarity, reversibility and detailed balance of Markov chains.

    • Fil icon

      Edited Oct 8, 3:32 pm: Added a comment in the pseudocode, p. 47.

      Edited Oct 9, 5:11 pm: Added something on page 24.

    • Fil icon

      An outline of what we covered and what is important. I will probably modify this after the last lecture.


    • Tillgänglig om: Du tillhör gruppen L01 (SISU)
      Mapp icon
      Example exam Mapp

      Here's an old exam to give you some idea of what's ahead. You can ignore the first question, since nothing will be asked about random number generators. The questions here do not cover even close to everything that can be asked, of course. But something like this is to be expected: You need to remember some formal stuff to get started with a problem and you need to remember central concepts. First and foremost, you need to understand. There will be some short essay or mathematical questions where you need to know some central concept and be able to use, for example, the Bayes theorem to get a result of a couple of steps. For further info, see 'Exam stuff'.

    • Tillgänglig om: Du tillhör gruppen L01 (SISU)
      Mapp icon
      Books Mapp

      The book Hossein Pishro-Nik, Introduction to Probability and Random Processes, is a useful reference for some parts of the course: https://www.probabilitycourse.com 

    • Note! Only submitted  (executable) Jupyter notebooks will be peer reviewed; do not submit pdfs of notebooks. You may submit additional pdfs containing e.g. hand-written calculations.

      First and foremost: Please be aware that no extensions of deadlines will be granted. This sounds unfriendly, but as grading is done by peer reviewing, even one exception among the roughly 100 of you will create a lot of extra work to teachers.

      Exercise problems can be accessed from Tuesdays 10 am. The problem sheets are in folders Assignment 1 - 7 ( "Assignment" to distinguish from the submission items Exercise 1 - 7).

      Exercise solutions are to be submitted in FeedbackFruits, Exercises 1 -7, see the left panel on the course page. Each student will review solutions of at most three other students. Finally the student will acknowledge that their solution has been reviewed. There are deadlines for each of these tasks:

      • Exercise submission - 11.59 pm, Wednesday (the week following the one when the exercise session for the assignment was held)
      • Peer review can be started after the plots have been made available by the teacher at 10.00 am, Thursday. Peer review must be done by 11.59 pm, Sunday. Due to the way flagging is implemented in FF, reviewers leave a comment in every problem in the rubric. For example, "OK" is sufficient, even if the answer is not correct. Of course, one may also give a reason for reduced points.
      • Reflection on the received reviews - 11.59 pm, Tuesday. If you are sure you have received unjust peer review, you need to notify teachers by flagging. Search instructions on how to do it in FeedbackFruits by typing 'flag to teachers'.  Specify exactly the review, the rubric question and what is wrong with the review. Note that flagging must be done by the above deadline. No exceptions will be made.
      Submission of exercise solutions
      Exercises are to be submitted in FeedbackFruits as Jupyter notebooks with the results readily visible. (Reviewers are encouraged to run the notebooks, though, to see that they work.) 
        
      Using Chat GPT is not allowed. AI assistance is here to stay, however. In fairness, it is in place to note for all that JupyterLab has a very useful assistance tool. In order to learn, I would use it as an aid in small-scale things (the smallest being the syntax). 


      Do not include your name or student number in the report you submit. Doing this will violate the anonymity of peer review.

      There is an online help for FeedbackFruits. If you open the chat box on the left panel in FF you can search help by typing.

      Different problems will give you different numbers of points (percentage). However, each exercise will be weighted equally in the total outcome.

      Final score: 80 % assignment points + 20 % for peer reviewing three fellow student.

      All questions to TAs must be made one day before submission deadline at the latest. No questions will be answered on the submission day. In general, do not expect prompt replies on questions made in Slack. Urgent questions should be made in exercise sessions.




    • Mapp icon

      = set of problems. Submit your solutions in Exercise 1 (FeedbackFruits).

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 2 (FeedbackFruits).

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 3 (FeedbackFruits).

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 4 (FeedbackFruits).

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 5 (FeedbackFruits).

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 6 (FeedbackFruits).

      Edit Oct 11, 10 am: In problem 1. a) "maximises acceptance ratio" was changed to "maximises acceptance probability".

      Edit Oct 11, 2:37 pm: In problem 1. a) one more change of "acceptance ratio" to "acceptance probability" and "A" to "alpha".

    • Mapp icon

      = set of problems. Submit your solutions in Exercise 7 (FeedbackFruits).

      Edit Oct 17, 11 am: Added a note about grading if epsilon smaller than 0.1 needs to be used.

    • Tillgänglig om: Du tillhör gruppen L01 (SISU)
      Mapp icon
      Old lecture videos Mapp

      At a couple of requests, here's the link to old videos from the corona era. If you can't attend the lectures you should be fine with lecture slides and possibly some bits of the course books. However, if you think watching these old b-movies is useful, feel free to do so at your own risk; there might be some minor errors and some changes have and will be made this year.