Introduction

advertisement
Math 3050
Discrete Mathematics
Discrete Mathematics deals with
• “Separated” or discrete sets of objects
(rather than continuous sets)
• Processes with a sequence of
individual steps
(rather than continuously changing processes)
Kind of problems solved by
discrete mathematics
• How many ways are there to choose a computer password?
• What is the probability of winning a lottery?
• Is there a link between two users in a social network?
• What is the shortest path between two cities using a
transportation system?
• How can a list of integers sorted in increasing order? How
many steps are required to do such a sorting?
Importance of
Discrete Mathematics
• Information is stored and manipulated by
computers in a discrete fashion
• Applications in many different areas
• Discrete mathematics is a gateway to more
advanced courses
• Develops mathematical reasoning skills
• Emphasizes the new role of mathematics
The new role of Mathematics
• Make the computer to solve the problem for you
• Modeling (vs. calculations)
• Using logic
– to choose the right model
– to write a correct computer program
– to justify answers
• Efficiency
– make the computer to solve the problem fast
– choose the more efficient model
Goals of Math 3050
• Study of standard facts of discrete mathematics
• Development of mathematical reasoning skills
(emphasis on modeling, logic, efficiency)
• Discussion of applications
Outline of Topics
• Auxiliary topics
– Sequences, Proofs, Induction, Recursion
• Main topics
– Graph Theory
– Counting Techniques
• Application areas
– Computer Science
– Discrete Optimization
– Discrete Probability
Situations where counting
techniques are used
You toss a pair of dice in a casino game.
You win if the numbers showing face up
have a sum of 7.
Question: What are your chances of
winning the game?
Situations where counting
techniques are used
To satisfy a certain degree requirement, you
are supposed to take 3 courses from the
following group of courses:
Math300, Math301, Math302, Math304,
Math305, Math306, Math308.
Question: In how many different ways the
requirement can be satisfied?
Situations where counting
techniques are used
 There are 4 jobs that should be processed
on the same machine.
(Can’t be processed simultaneously).
Here is an example of a possible schedule:
Job 3
Job 1
Job 4
Job 2
 Counting question: What is the number of all possible
schedules?
 Optimization question: Find a schedule that minimizes the
average completion time of the four jobs.
Examples of Graph Models:
Shortest Path Problem
 In a directed network, we have distances on arcs ;
source node s and sink node t .
3
a
1
1
1
2
s
d
4
7
c
2
t
2
1
b
4
5
2
e
 Goal: Find a shortest path from the source to the sink.
Examples of Graph Models:
Traveling Salesman Problem
There are n cities. The salesman
 starts his tour from City 1,
 visits each of the cities exactly once,
 and returns to City 1.
For each pair of cities i, j there is a cost cij associated with
traveling from City i to City j .
• Goal: Find a minimum-cost tour.
1
Examples of Graph Models:
Assignment Problem
• Given: n people and n jobs
Each person can be assigned to exactly one job
Each job should be assigned to exactly one person
Person-job compatibility is given by a directed network
(e.g., having a link A  x means “person A can do job x ”)
• Goal: Find an assignment of n jobs to n people
(if such an assignment exists).
• Example:
people
A
B
C
D
E
jobs
x
y
z
u
v
Download