Engineering Department, UMass Boston XXXXXXXXXXSpring 2021
ENGIN 322: Probability and Random Processes
Project #1: Data Communications
In this project, you will simulate a message passing system where characters in a message are converted
into their ASCII representation and transmitted as data bits across a channel with additive random noise.
The received signal is converted into data bits and these bits are used to recreate the original message.
Observe the sample Matlab script message_passing.m. This script generates a character string, converts
the string to ASCII values, converts the ASCII values into an a
ay of bits, turns the bits back into ASCII
values, and finally converts the ASCII values back into a message string. In part I of the project, create two
functions based on the existing code: one to encode the message and one to decode the bits. Modify the
message_passing script so that it uses these functions.
function [ bits_tx ] = my_encode( my_message )
function [ message_rx ] = my_decode( bits_rx )
In part II, add a noise component to the signal before determining the received bits. Use the Matlab randn()
function to add random noise with Gaussian distribution and parameters ??2 and ?? representing the
variance and mean, respectively. Start with values ?? = 0.1 and ?? = 0. Explore what happens to your
message when you change the values of ?? and ??.
Question 1: As you change ?? and ??, what happens to your message? Why?
Question 2: Consider the noise parameters ?? = 0.1 and ?? = 0.25. How can you change the parameter
DECISION_LEVEL to improve the performance of this message passing system?
In Part III, you will analyze the bit e
ors caused by the noise. In this case, you can randomly generate an
ay of bits rather than using a message. First, setup the code to generate bits_tx, add noise, and
determine bits_rx. Next, determine the number of e
ors by comparing the values of bits_tx and bits_rx.
Finally, determine the percentage of bits that are received in e
or (i.e., the bit e
or rate or BER).
Question 3: Using your knowledge of the Gaussian distribution, determine (a) the theoretical probability
that a transmitted 0 is received as a 1, and (b) the theoretical probability that a transmitted 1 is received
as a 0.
Question 4: From your answer to question 3, determine the theoretical probability of getting a bit e
when each transmitted bit is a 1 with probability ??.
Question 5: How does the theoretical results from questions 3/4 compare with what you see in simulation?
• Coding and Results: 30%
• Theoretical Analysis: 40%
• Written Report: 30%
Coding and Results: This portion of the project will be graded based on the implementation of code as
described for Part I, II, and III above. Results should be described in a RESULTS section of your written
eport which should include a description of the observed outcomes as well as some depiction of the
esults from your code (e.g., plotting BER vs. ??).
Theoretical Analysis: This portion of the project will be graded based on your answers to the questions in
Parts II and III. Be sure to clearly indicate the answers for each of the questions within your written report.
Written Report: The written report should be submitted on blackboard by midnight on March 9. The report
should be 2-4 pages including an overview of the project, expected outcomes, your analysis method,
esults, and observations. You may include any code as an appendix.
NOTE: You may choose to work with a partner on this project. If you do, I expect that the written report
will be more detailed and should be 5-6 pages.
Course Name: _________________________________
University of Massachusetts, Boston
Semester: Spring 2020
Instructor: Dr. Michael Rahaim
Project Report for:
Student ID: _____________________________________
I pledge to uphold the governing principles of the Code of Student Conduct of the University of Massachusetts Boston. I will refrain from any form of academic dishonesty or deception, cheating, and plagiarism. I pledge that all the work submitted here is my own, and that I have clearly acknowledged and referenced other people’s work. I am aware that it is my responsibility to turn in other students who have committed an act of academic dishonesty; and if I do not, then I am in violation of the Code. I will report to formal proceedings if summoned.
Project Overview 3
Expected Outcomes 3
Analysis Method 3
Results and Observations 3
Experimental Results 3
Theoretical Results 3
NOTE: To automatically update ToC, right click above and select “Update Field”
Describe the project objectives and relation to the course content.
ief hypothesis of what you expect (or expected) to see prior to implementing this project
Describe your process for modifying and executing code for each part of the project along with any theoretical background needed for your results.
Results and Observations
Provide graphical results as a figure or set of figures demonstrating the outcome of your project along with a description of your observations and answers to any questions in the project description.
Figures and outcomes related to the code that you’ve written
Additional figures and outcomes connecting the theoretical results to theory (and answers to any questions defined in the project description).
Figure 1: Include a caption for any figures added to your report. Note that you can group the figure and the figure caption text box together to make things easier if you need to move the figure.
Briefly summarize your results and the observed connection to course content along with any specific course material that was used in the process of implementing this project
Insert code as an appendix and reference the code when writing your report
NOTE: Do not include appendices in your page count.