Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Chapter 0
Introduction
Discrete Structures for Computing on September 11, 2014
Contents
Course description
Course outline
Document
Some applications
Huynh Tuong Nguyen, Tran Huong Lan
Faculty of Computer Science and Engineering
University of Technology - VNUHCM
0.1
Contents
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
1 Course description
Course outline
Document
Contents
Course description
Course outline
Document
Some applications
2 Some applications
0.2
Context
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Global
• 6 principal chapters on 45 hours for courses & exercises.
• 10 Labs (10%), 1 Assignment (10%)
• 2 evaluations: mid-exam (MCQ - 60 minutes - 40%) + final
exam (MCQ + writing - 120 minutes - 40%)
Contents
Course description
Course outline
Document
Some applications
Aims
The content of this subject is mainly a great part of logic, set
theory and graph theory.
This is the mathematical base for many topics of Computational
Science
0.3
Subjects in general discrete mathematics course
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
☞ Logic
☞ Set theory
☞ Number theory
☞ Combinatorics: enumerative combinatorics, graph theory
☞ Algorithmics
Contents
Course description
Course outline
Document
Some applications
☞ Information theory
☞ Complexity theory
☞ Probability theory
☞ Proof
☞ Counting and Relations
0.4
Topics relational to the course
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
1 Theoretical computer science
2 Information theory
3 Logic
4 Set theory
5 Combinatorics
Contents
6 Graph theory
Course description
7 Probability
8 Number theory
Course outline
Document
Some applications
9 Algebra
10 Calculus of finite differences, discrete calculus or discrete analysis
11 Geometry
12 Topology
13 Operations research: scheduling
14 Game theory, decision theory, utility theory, social choice theory
15 Discretization
16 Discrete analogues of continuous mathematics
17 . . .
0.5
Introduction
Context
Huynh Tuong Nguyen,
Tran Huong Lan
Course outline
• Proof methods
• modular arithmetic over integers.
• induction, contradiction.
• Set theory
• relations, functions, cardinalities, relation, equivalence equation, partial order
• combinatorics: counting, principles of sum, multiplication, division, inclusion
and exclusion.
Contents
Course description
Course outline
Document
Some applications
• Graph theory
• directed, undirected, isomorphism
• weighted graphs, algorithm for finding shortest paths
• trees: features, binary trees, minimum spanning trees in connected and
weighted graphs
• flows network
• Probabilistics Modelling
• introductory random variables.
0.6
Document
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Book
Contents
Course description
• Discrete mathematics and applications - Kenneth H. Rosen.
(Vietnamese translation - NXB KHKT 1997)
• Discrete mathematics - Richard Johnsonbaugh, Willey, 1997
• Discrete mathematics with algorithms - Micheal O. Albertson & Joan P.
Course outline
Document
Some applications
Hutchinson, Willey, 1998
0.7
Introduction
Application
Huynh Tuong Nguyen,
Tran Huong Lan
•
it concerns a wide range of disciplines in various areas: science, technology,
business and commerce.
•
applied mathematicians are engaged in the creation, study and application of
advanced mathematical methods relevant to specific problems.
•
applied mathematics has assumed a much broader meaning and embraces such
diverse fields as communication theory, optimization, game theory and numerical
analysis.
•
today there is a remarkable variety of applications of mathematics in industry and
government, such as materials processing, design, medical diagnosis, development
of financial products, network management, weather prediction, etc.
Science
Engineers use technology, mathematics and
scientific knowledge to solve practical
problems. (wikipedia.org)
Contents
Course description
Course outline
Document
Some applications
Engineering
Technology
0.8
Introduction
Computing of algorithm complexity
Huynh Tuong Nguyen,
Tran Huong Lan
Know results
Size
n
10
102
103
104
105
106
O(log n)
3.10−9 s
7.10−9 s
10−8 s
1, 3.10−8 s
1, 7.10−8 s
2.10−8 s
Contents
Approximating of computational time
O(n)
O(n log n)
O(n2 )
O(2n )
10−8 s
3.10−8 s
10−7 s
10−6 s
10−7 s
7.10−7 s
10−5 s
4.1013 y
10−6 s
10−5 s
10−3 s
*
10−5 s
10−4 s
10−1 s
*
10−4 s
2.10−3 s
10s
*
10−3 s
2.10−2 s
17m
*
Course description
O(n!)
3.10−3 s
*
*
*
*
*
Course outline
Document
Some applications
0.9
Mathematical model
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Solver
• Simplex, GLPK
• CPLEX, MPL
• Excel, Mathlab, etc.
Contents
Course description
Course outline
Document
Some applications
0.10
Mathematical model
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Exercise
A bookseller A buys books from two publishers B, and C.
Publisher B offers a package of 5 mysteries and 5 romance novels
for $50, and publisher C offers a package of 5 mysteries and 10
romance novels for $150. The bookseller A wants to buy at least
2,500 mysteries and 3,500 romance novels, and he has promised C
(who has influence on the Senate Textbook Committee) that at
least 25% of the total number of books he purchases will come
from publisher C.
Question. How many packages should A order from each
publisher in order to minimize his cost and satisfy C ? What will
the novels cost him?
Contents
Course description
Course outline
Document
Some applications
0.11
Mathematical model
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Solution
Let x be the number of packages from Publisher B, and let y be
the number of packages from C.
Problem: Minimize C = 50x + 150y subject to
• 5x + 5y ≥ 2.500
Contents
Course description
Course outline
Document
Some applications
• 5x + 10y ≥ 3.500
• x − 4.5y ≤ 0
• x ≥ 0, y ≥ 0
Answer: Buy 484 packages from Publisher B and 108 from C for a
total cost of $40.400.
0.12
Graph
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
• Shortest path problem
• Min cut and maximum flow
• Vehicle Routing Problem
Contents
Course description
Course outline
Document
Some applications
0.13
Scheduling
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Contents
Course description
Course outline
Document
Some applications
0.14
Introduction
Scheduling
Huynh Tuong Nguyen,
Tran Huong Lan
Exercise
Problem 1||Tmax .
Given 8 jobs with processing times and due dates as follows:
Job
J1
J2
J3
J4
J5
J6
J7
J8
pi
1
2
2
3
3
4
4
3
di
25
16
19
7
18
22
27
8
Contents
Course description
Course outline
Document
Some applications
Let Ci be completion time of job Ji and let Ti = max(0, Ci − di ) its
tardiness.
Question. How to minimize Tmax = maxi Ti ? What is the minimum value of
Tmax ?
0.15
Introduction
Timetabling
Huynh Tuong Nguyen,
Tran Huong Lan
Example
In the bipartite graph below, the vertices P1 , . . . , P6 represent workers and
edges J1 , . . . , J6 of jobs. An edge connects a worker with a job if the worker
has the necessary qualifications to occupy this job. Here, all the edges have an
unit weight 1, mean that Pi has the skill(competence) to operate Jj if there is
an edge between Pi and Jj .
Contents
Course description
P1
P2
P3
P4
P5
P6
Course outline
Document
Some applications
J1
J2
J3
J4
J5
J6
0.16
Game and simulation
Sally Salon Game
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Contents
Course description
Course outline
Document
Some applications
0.17
Probabilistics Modelling
Introduction
Huynh Tuong Nguyen,
Tran Huong Lan
Calculating of Pi
Using a Monte-Carlo method to determine an approximate value
of π :
randomly draw a great number of points in a square of side 2, and
determine the ratio C/N where N is the total number of points,
and C the number of points whose distance to the center of the
square is ≤ 1).
Contents
Course description
Course outline
Document
Some applications
0.18