0% found this document useful (0 votes)
15 views27 pages

Introduction

Uploaded by

Andrea Rivera
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views27 pages

Introduction

Uploaded by

Andrea Rivera
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

g

in
er
ne
.A

gi
M

En

ón
Selected Topics of Optimization

Le
ila

s
em
gu

vo
ue
st
A
Dr. M. Angélica Salazar-Aguilar
r-

Sy

N
za

de
n
la

i
Graduate Program in Systems Engineering (PISIS)
Sa

a
am
Facultad de Ingenierı́a Mecánica y Eléctrica

om
Universidad Autónoma de Nuevo León
r

ón
og

ut
Pr

A
te

ad
ua

id
rs
d
ra

ve
G

ni
U

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content


Content

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content


Introduction to combinatorial optimization

Content

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Introduction to Operations Research

OR means to use scientific and mathematical techniques for making deci-


sions and solving problems. It is concerned with co-ordinating and control-
ling the operations or activities within an organization. It can be regarded as
use of mathematical and quantitative techniques to substantiate the deci-
sions being taken. OR helps to take decisions about operations and produc-
tion. It takes tools from subjects like mathematics, statistics, engineering,
economics, psychology, etc. and uses them to know the consequences of
possible alternative actions.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 1/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Methodology of OR

1 Problem definition
2 Data collection
3 Model formulation
4 Model solution
5 Validation of preliminary results
6 Results analysis
7 Implementation and monitoring

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 2/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Applications of OR

Production and facilities planning


Factory size and location decisions
Estimation of the number of required facilities
Preparation of forecasts for the various inventory items and
computation of economic order quantities and reorder levels
Scheduling and sequencing of production runs by proper allocation of
machines
Transportation loading and unloading
Products distribution
Estimate the fleet size needed to satisfy the customers
Determine the sequence in which customers must be served
Driver-truck allocation

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 3/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Applications of OR

Health care
Assessment of forecasting models for patients arrival at Emergency
Department
Scheduling elective surgeries in hospitals
Kidney exchange and stable matching

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 4/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Main components of an optimization model

Decision variables: these are used to described the decisions to be


made
Objective function: it is a function of the decision variables, it
establishes what the decision maker wants to minimize (cost) or
maximize (profits)
Constraints: these represent the limitations, conditions or
requirements of the problem (example, vehicle capacity, demand to be
satisfied, manpower, etc.)

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 5/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Definitions

A function f (x1 , x2 , ..., xn ) of x1 , x2 , ..., xn is a linear function if and


only if for some set of constants c1 , c2 , ..., cn ,
f (x1 , x2 , ..., xn ) = c1 x1 + c2 x2 + ..., cn xn .
For example, f (x1 , x2 ) = 2x1 + x2 is a linear function of x1 and x2 , but
f (x1 , x2 ) = x 2 1 x2 is not a linear function of x1 and x2 .

For any linear function f (x1 , x2 , ..., xn ) and any number b, the
inequalities f (x1 , x2 , ..., xn ) ≤ b and f (x1 , x2 , ..., xn ) ≥ b are linear
inequalities.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 6/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Definitions

A linear programming problem (LP) is an optimization problem for which


we do the following:
1 We attempt to maximize (or minimize) a linear function of the
decision variables. This function that is to be maximized or minimized
is called objective function
2 The values of the decision variables must satisfy a set of constraintss.
Each constraint must be a linear equation or linear inequality
3 A sign restriction is associated with each decision variable. For any
variable xi , the sign restriction specifies either that xi must be
nonnegative (xi ≥ 0) or that xi may be unrestricted in sign.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 7/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

The carpenter’s problem

Suppose that a carpenter makes tables and chairs and sells all the tables
and chairs he makes in a market.
He does not have a steady income and he wishes to optimize this situation.
So, the carpenter needs to determine how many tables and chairs he should
make in order to maximize his net income. He knows that the income he
receives per table sold is $500 and per chair sold is $300.
The carpenter works 8 hours a day from Monday to Friday and takes 2 hours
to make a table and 1 hour to make a chair. Also, each week he receives
50 units of raw material, of which he requires 1 unit for each table and 2
units for each chair he makes.

How can we fomulate this problem?

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 8/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

The carpenter’s problem

Decision variables
Let t be the number of tables to be produced.
Let c be the number of chairs to be produced.

The optimization model




 Max 500t + 300c = z
s.t. 2t + c ≤ 40


 t + 2c ≤ 50
t ≥ 0, c ≥0

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 9/1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

The Carpenter’s Problem

Solving the problem with the graphical method


Find the Optimal Point by moving the Z line.
c

40 (1) 2t + c ≤ 40
(2) t + 2c ≤ 50
t ≥ 0, c ≥ 0
25

Optimal Point (Z ) 500t + 300c = z

10

1 t
0 1 6 20 (1) 50 (2)

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 10 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

The Carpenter’s Problem

Optimal solution

40
In order to optimize his profit, the car-
penter should make 10 tables and 20
chairs for a total profit of $11000
25 B
(z = 500 × 10 + 300 × 20 = 11000)
20 C

1 A D
t
0 1 10 20 (1) 50 (2)

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 11 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Introduction to combinatorial optimization

Combinatorial optimization problems (COs) have a finite number of


feasible solutions.
In a CO problem, the decision variables are discrete, i.e., where the
solution is a set, or a sequence, of integers or other discrete objects.
Most CO problems are NP-hard. The time needed to solve an
NP-hard problem grows exponentially with respect to the problem
size n.
Many CO problems can be formulated as Integer Linear Programming
(ILP) problems, and solved by an ILP solver.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 12 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

The assignment Problem

Given:
n employees i = 1, ..., n
n tasks j = 1, ..., n
cost cij for the assignment of employee i to task j
Goal:
Find an assignment of employees to tasks at minimal cost!

How can we formulate this problem?

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 13 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Modeling the assignment Problem


Decision variables
xij = 1 if employee i is assigned to task j, 0 otherwise.

Objective function
n X
X n
Minz = cij xij (assignment cost)
i=1 j=1

Constraints

n
X
xij = 1 i = 1, ..., n (each employee must perform a task)
j=1
Xn
xij = 1 j = 1, ..., n (each task must be performed)
i=1
xij ∈ {0, 1}
Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 14 / 1
Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Example of the assignment problem

A company has 4 machines available for assignment to 4 tasks. Any machine


can be assigned to any task, and each task requires to be processed by one
machine. The time required to set up each machine for the processing of
each task is given in the table below.

Time (hrs)
Task 1 Task 2 Task 3 Task 4
Machine 1 13 4 7 6
Machine 2 1 11 5 4
Machine 3 6 7 2 8
Machine 4 1 3 5 9

The company wants to minimize the total setup time needed for the pro-
cessing of all four tasks.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 15 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Mathematical model

Min z = 13x11 + 4x12 + 7x13 + 6x14 + 1x21 + 11x22 + 5x23 + 4x24 + 6x31 +
7x32 + 2x33 + 8x34 + 1x41 + 3x42 + 5x43 + 9x44
s.t:
(Assignment of machines to tasks)
x11 + x12 + x13 + x14 = 1
x21 + x22 + x23 + x24 = 1
x31 + x32 + x33 + x34 = 1
x41 + x42 + x43 + x44 = 1
(Assignment of tasks to machines)
x11 + x21 + x31 + x41 = 1
x12 + x22 + x32 + x42 = 1
x13 + x23 + x33 + x43 = 1
x14 + x24 + x34 + x44 = 1
xij ∈ {0, 1}
How can we solve it?
Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 16 / 1
Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

How is the set of feasible solutions?


For the first machine we have 4 options of tasks (n).
Once we assign one task to the first machine, we have 3 options of tasks
for the second one (n − 1). If we assigned tasks to the first and second
machines, we have 2 options of tasks for the third machine (n − 2).
Hence, after the assignment of tasks to the first, second, and third machines,
the fourth machine has only one option of task.
Number of feasible solutions
n n!
3 6
5 120
10 3628800
100 9.33 × 10157
1000 4.02 × 102567

The number of feasible solutions increases exponentially with n.


Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 17 / 1
Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Other variants of the assignment problem

What would be the model if each machine can perform any number of tasks?
What would be the model if machine 3 cannot process task 2 and machine
1 cannot process task 4?
What would be the model if task 3 must be performed by 3 machines
simultaneously?

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 18 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Problem vs problem instance

Problem: Given any set of points X, find a shortest round trip


Solution: Algorithm that finds shortest round trips for any X
Problem instance: Given a specific set of points P, find a shortest
round trip
Solution: Shortest round trip for P
Technically, problems can be formalized as sets of problem instances.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 19 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Example of a CO problem

Given: Set of points in the Euclidean plane


Objective: Find the shortest round trip

Notes:
a round trip corresponds to a sequence of points (= assignment of
points to sequence positions)
solution component: trip segment consisting of two points that are
visited one directly after the other
candidate solution: round trip
solution: round trip with minimal length

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 20 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Other examples of CO problems

finding shortest/cheapest round trips (TSP)


planning, scheduling, time-tabling
vehicle routing
location and clustering

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 21 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

CO problems

Combinatorial problems involve finding a grouping, ordering, or assignment


of discrete, finite set of objects that satisfies given conditions.
Feasible Solutions are candidate solutions that satisfy all given conditions.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 22 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

How to solve CO problems?

systematic enumeration
problem specific, dedicated algorithms
generic methods for exact optimization
heuristic methods

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 23 / 1


Introduction to operations research and combinatorial
Introduction to combinatorial optimization optimization

Complexity of combinatorial optimization problems

Fundamental question:
How hard is a given computational problem to solve?
Important concepts
Time complexity of a problem Π: Computation time required for
solving a given instance π of Π using the most efficient algorithm for
Π.
Worst-case time complexity: Time complexity in the worst case over
all problem instances of a given size, typically measured as a function
of instance size
Time complexity gives the amount of time taken by an algorithm as a
function of the input size.

Dr. Angélica Salazar (PISIS-FIME-UANL) Course Content 24 / 1

You might also like