SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Distributed Parallel Process Particle Swarm
Optimization on Fixed Charge Network
Flow Problems
Corey Clark1 Charles Nicholson2
1Game Theory Labs, Dallas, TX
cclark@gametheorylabs.com
2University of Oklahoma, Industrial and Systems Engineering, Norman, OK
cnicholson@ou.edu
INFORMS Annual Meeting, 2013
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Outline
1 Introduction
The Problem
The Model
2 Problem Approaches
Optimal Search
Heuristic Search
3 Dynamically Distributed BPSO Approach
Algorithm
Architecture
4 Performance Results and Demonstration
Performance Results
Demonstration
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
The Problem
Problem Motivation: Cash Management2
National banks manage
vaults that store cash
Vaults have excess or
deficit (current / forecast)
Routing cash incurs
fixed and variable costs
Modeled as Time-space
fixed-charge network
flow problem1
1J. Kennington and C. Nicholson. “The Uncapacitated Time-Space Fixed-Charge
Network Flow Problem: An Empirical Investigation of Procedures for Arc Capacity
Assignment”. In: INFORMS Journal on Computing 22 (2010), pp. 326–337.
2M. Frost, J. Kennington, and A. Madhavan. “Optimizing cash management for large
scale bank operations”. In: International Journal of Operations Research and
Information Systems 1 (2010), pp. 17–31.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
The Model
Time-Space Fixed-Charge Network Flow Model
Graph
N is set of n spatial nodes; T is the set of t time periods, and ¯N
is the set of node-time pairs
A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
The Model
Time-Space Fixed-Charge Network Flow Model
Graph
N is set of n spatial nodes; T is the set of t time periods, and ¯N
is the set of node-time pairs
A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N
Variables
xirjs is flow on arc (i, r, j, s) ∈ A; yirjs is related binary variable
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
The Model
Time-Space Fixed-Charge Network Flow Model
Graph
N is set of n spatial nodes; T is the set of t time periods, and ¯N
is the set of node-time pairs
A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N
Variables
xirjs is flow on arc (i, r, j, s) ∈ A; yirjs is related binary variable
Parameters
Mirjs is an implied artificial arc capacity used in B&B modeling
cirjs and firjs are variable and fixed costs for arc (i, r, j, s)
Rir are the requirements at node (i, r) ∈ ¯N.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
The Model
TSFC Problem Formulation
Given a directed graph G = (¯N, A) the time-space fixed-charge
network flow model is formally stated as follows:
TSFC Problem
min
(i,r,j,s)∈A
(cirjsxirjs + firjsyirjs) (1)
s.t.
(i,r,j,s)∈A
xirjs −
(j,s,i,r)∈A
xjsir = Rir ∀(i, r) ∈ ¯N (2)
0 ≤ xirjs ≤ Mirjsyirjs ∀(i, r, j, s) ∈ A (3)
yirjs ∈ {0, 1} ∀(i, r, j, s) ∈ A (4)
This problem is NP-hard.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Optimal Search
Optimization Approach
Branch-and-Bound for the TSFC problem
1 Problem is solved with relaxed binary constraints
2 Choose an arc (i, r, j, s) ∈ A for branching
create new subproblem with yirjs = 1
create new subproblem with yirjs = 0
3 Solve the relaxed sub-problems (linear programs)
4 Use results to update bounds, determine optimality, fathom
nodes, and continued branching
5 Go to step 2
B&B performs a complete (implicit) search among all possible
network designs (branches) to find an optimal solution.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Optimal Search
Search Space
The set of all feasible solutions
is called a search space
Each point in the space
represents one feasible
solution
Every point has an associated
fitness value
The set of solutions and their
objective values form locations
and elevation in the search
space landscape
The search space can be
large and complex
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Heuristic Search
Heuristic Approach
Literature
Tabu search (Glover 1990)
Fixed-Charge Transportation Problem (Sun et al. 1998)
Genetic Algorithms (Holland 1975)
Non-linear Transportation Problem (Sheng et al. 2006)
Fixed-Charge Network Flow (Duhamel 2010)
Network Designs (Gen and Chang 2003)
Particle Swarm Optimization (PSO)
Real-valued PSO (Kennedy and Eberhart 1995)
Binary PSO (Kennedy and Eberhart 1997)
Many applications and enhancements since then, e.g.
Parsopoulos and Vrahatis 2007, Yin et. al 2010
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization
Particle position and velocity
Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k
Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization
Particle position and velocity
Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k
Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
The position Xi represents a solution, and has an
associated fitness value
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization
Particle position and velocity
Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k
Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
The position Xi represents a solution, and has an
associated fitness value
A swarm of n particles fly through the k-dimensional
solution space – updating their positions based on a
velocity function
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization
Particle position and velocity
Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k
Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
The position Xi represents a solution, and has an
associated fitness value
A swarm of n particles fly through the k-dimensional
solution space – updating their positions based on a
velocity function
Velocity is a function of the historical best solution found
individually by a particle and globally by the swarm
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization
Particle position and velocity
Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k
Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
The position Xi represents a solution, and has an
associated fitness value
A swarm of n particles fly through the k-dimensional
solution space – updating their positions based on a
velocity function
Velocity is a function of the historical best solution found
individually by a particle and globally by the swarm
The velocity is converted into a probability that is used to
modify the particle position
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary Particle Swarm Optimization Updates
Let Pi denote the best position visited by particle i
Let Pg denote the best position found by the swarm
The velocity function at iteration t + 1 is:
Vt+1
i = wVt
i + C1r1 Pi − Xt
i + C2r2 Pg − Xt
i
where w is an inertia factor that changes over time; C1, C2 are
constants; r1, r2 are random values uniform on [0, 1]
The transfer function that converts velocities to probabilities
T(vij) =
1
1 + evij
is used to update each bit the position according to:
xij =
1, if U(0, 1) < T(vij)
0, otherwise
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Algorithm
Binary PSO and the FCNF Problem
In our application of Binary PSO to
the Fixed-Charge Network Flow
Problem, each particle position
represents a network design.
Each position is a unique, pure
network problem which is solved to
determine the minimum cost of the
particular design.
The individual designs are entirely
independent of each other, which
makes this easy to parallelize.
X1 :
X2 :
X3 :
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Architecture
Distributed Accelerated Analytics Platform
Distributed Accelerated Analytics Platform (DAAP)
DAAP enables dynamic creation of a heterogeneous cluster
network using HTML5 technologies that provide multi-threaded
execution and low latency connections.
GLPK and GLPK.js
The GNU Linear Programming Kit (GLPK) package solves
large-scale LP and MIP problems.
GLPK.js: JavaScript interfaces to GLPK which allow GLPK to
be called from webpages on either the client side or the server
side.3
3H. Gourvest. GLPK.js. URL: https://github.com/hgourvest/glpk.js.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Architecture
Distributed Accelerated Analytics Platform
Distributed Accelerated Analytics Platform (DAAP)
DAAP enables dynamic creation of a heterogeneous cluster
network using HTML5 technologies that provide multi-threaded
execution and low latency connections.
GLPK and GLPK.js
The GNU Linear Programming Kit (GLPK) package solves
large-scale LP and MIP problems.
GLPK.js: JavaScript interfaces to GLPK which allow GLPK to
be called from webpages on either the client side or the server
side.3
Any web-enabled device can become part of a DAAP cluster
network and contribute computing power to solve LP problems.
3Gourvest, GLPK.js.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Problem Characteristics
We tested our approach on three different sized TSFC
Problems. Feasible instances were randomly generated and
the variable and fixed cost ranges were selected such as to
create difficult instances (Kennington and Nicholson 2010).
Problems
Variable Costs: U(0, 10)
Fixed Costs: U(20000, 60000)
Size Nodes Arcs
5n6p 30 245
10n21p 210 3,890
20n30p 600 23,000
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Approaches
Three approaches were tested:
Optimization: GLPK.js with default MIP techniques
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Approaches
Three approaches were tested:
Optimization: GLPK.js with default MIP techniques
Serial BPSO-FCNF
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Approaches
Three approaches were tested:
Optimization: GLPK.js with default MIP techniques
Serial BPSO-FCNF
Distributed BPSO-FCNF
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Approaches
Three approaches were tested:
Optimization: GLPK.js with default MIP techniques
Serial BPSO-FCNF
Distributed BPSO-FCNF
Devices used in the DAAP cluster include: MacBook
Pro,Surface Pro, iPhone, Windows laptop, iPad, Nexus 7
tablet
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Approaches
Three approaches were tested:
Optimization: GLPK.js with default MIP techniques
Serial BPSO-FCNF
Distributed BPSO-FCNF
Devices used in the DAAP cluster include: MacBook
Pro,Surface Pro, iPhone, Windows laptop, iPad, Nexus 7
tablet
A time limit was set at 10 minutes and best objective values
and number of network problems solved are reported.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Performance Results
Empirical Testing: Performance
Computational Time: 10 minutes
GLPK Serial Distributed Serial vs.
Problem Opt BPSO-FCNF BPSO-FCNF Distributed
5n6p
1.3M 937K 907K (37K)
285K 300K 1.3M (4.3x)
10n21p
N/A 7.36M 7.21M (150K)
5.2K 30K 68K (2.3x)
20n30p
N/A 21.16M 20.97M (190k)
3.2K 1.2K 3.3K (2.8x)
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Demonstration
I hope this works...
pso.gametheorylabs.com
1 Navigate to this website
2 Register your device as a Processing Node
3 Watch for the green “loaded” and “running” indicators
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Summary
Binary PSO (with modifications) is an effective option for
difficult Fixed-Charge Network Flow problems.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Summary
Binary PSO (with modifications) is an effective option for
difficult Fixed-Charge Network Flow problems.
Binary PSO for FCNF are naturally independent and thus
easily parallelized.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Summary
Binary PSO (with modifications) is an effective option for
difficult Fixed-Charge Network Flow problems.
Binary PSO for FCNF are naturally independent and thus
easily parallelized.
Using the DAAP technology, it is easy to create dynamic
cluster computing to address difficult MIP and problems
with such techniques.
Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary
Summary
Binary PSO (with modifications) is an effective option for
difficult Fixed-Charge Network Flow problems.
Binary PSO for FCNF are naturally independent and thus
easily parallelized.
Using the DAAP technology, it is easy to create dynamic
cluster computing to address difficult MIP and problems
with such techniques.
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Passive network-redesign-ntua
Passive network-redesign-ntuaPassive network-redesign-ntua
Passive network-redesign-ntua
IEEE NTUA SB
 
CS221: HMM and Particle Filters
CS221: HMM and Particle FiltersCS221: HMM and Particle Filters
CS221: HMM and Particle Filters
zukun
 
Particle Filters and Applications in Computer Vision
Particle Filters and Applications in Computer VisionParticle Filters and Applications in Computer Vision
Particle Filters and Applications in Computer Vision
zukun
 
Lca seminar modified
Lca seminar modifiedLca seminar modified
Lca seminar modified
Inbok Lee
 
An approach to incentive based reputation for communities of web services
An approach to incentive based reputation for communities of web servicesAn approach to incentive based reputation for communities of web services
An approach to incentive based reputation for communities of web services
Babak Khosravifar
 
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
zukun
 
Iwsm2014 an analogy-based approach to estimation of software development ef...
Iwsm2014   an analogy-based approach to estimation of software development ef...Iwsm2014   an analogy-based approach to estimation of software development ef...
Iwsm2014 an analogy-based approach to estimation of software development ef...
Nesma
 
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
Taiji Suzuki
 

Was ist angesagt? (19)

QMC Opening Workshop, Support Points - a new way to compact distributions, wi...
QMC Opening Workshop, Support Points - a new way to compact distributions, wi...QMC Opening Workshop, Support Points - a new way to compact distributions, wi...
QMC Opening Workshop, Support Points - a new way to compact distributions, wi...
 
Passive network-redesign-ntua
Passive network-redesign-ntuaPassive network-redesign-ntua
Passive network-redesign-ntua
 
CS221: HMM and Particle Filters
CS221: HMM and Particle FiltersCS221: HMM and Particle Filters
CS221: HMM and Particle Filters
 
Nelly Litvak – Asymptotic behaviour of ranking algorithms in directed random ...
Nelly Litvak – Asymptotic behaviour of ranking algorithms in directed random ...Nelly Litvak – Asymptotic behaviour of ranking algorithms in directed random ...
Nelly Litvak – Asymptotic behaviour of ranking algorithms in directed random ...
 
Particle Filters and Applications in Computer Vision
Particle Filters and Applications in Computer VisionParticle Filters and Applications in Computer Vision
Particle Filters and Applications in Computer Vision
 
Lca seminar modified
Lca seminar modifiedLca seminar modified
Lca seminar modified
 
Applied Machine Learning For Search Engine Relevance
Applied Machine Learning For Search Engine Relevance Applied Machine Learning For Search Engine Relevance
Applied Machine Learning For Search Engine Relevance
 
Lect5 v2
Lect5 v2Lect5 v2
Lect5 v2
 
Chapter 4 Image Processing: Image Transformation
Chapter 4 Image Processing: Image TransformationChapter 4 Image Processing: Image Transformation
Chapter 4 Image Processing: Image Transformation
 
MLHEP 2015: Introductory Lecture #3
MLHEP 2015: Introductory Lecture #3MLHEP 2015: Introductory Lecture #3
MLHEP 2015: Introductory Lecture #3
 
Fd25951958
Fd25951958Fd25951958
Fd25951958
 
Numerical smoothing and hierarchical approximations for efficient option pric...
Numerical smoothing and hierarchical approximations for efficient option pric...Numerical smoothing and hierarchical approximations for efficient option pric...
Numerical smoothing and hierarchical approximations for efficient option pric...
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebra
 
An approach to incentive based reputation for communities of web services
An approach to incentive based reputation for communities of web servicesAn approach to incentive based reputation for communities of web services
An approach to incentive based reputation for communities of web services
 
Mc td
Mc tdMc td
Mc td
 
MCQMC 2020 talk: Importance Sampling for a Robust and Efficient Multilevel Mo...
MCQMC 2020 talk: Importance Sampling for a Robust and Efficient Multilevel Mo...MCQMC 2020 talk: Importance Sampling for a Robust and Efficient Multilevel Mo...
MCQMC 2020 talk: Importance Sampling for a Robust and Efficient Multilevel Mo...
 
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
cvpr2009 tutorial: kernel methods in computer vision: part II: Statistics and...
 
Iwsm2014 an analogy-based approach to estimation of software development ef...
Iwsm2014   an analogy-based approach to estimation of software development ef...Iwsm2014   an analogy-based approach to estimation of software development ef...
Iwsm2014 an analogy-based approach to estimation of software development ef...
 
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
PAC-Bayesian Bound for Gaussian Process Regression and Multiple Kernel Additi...
 

Andere mochten auch

Taking The Cloud Native
Taking The Cloud NativeTaking The Cloud Native
Taking The Cloud Native
Corey Clark, Ph.D.
 
PELAJARAN MATEMATIKA SMP
PELAJARAN MATEMATIKA SMPPELAJARAN MATEMATIKA SMP
PELAJARAN MATEMATIKA SMP
Made Bagiada
 
distribution system fault mangement
distribution system fault mangementdistribution system fault mangement
distribution system fault mangement
Manjunath Ds
 
Solar panel Technology ppt
Solar panel Technology pptSolar panel Technology ppt
Solar panel Technology ppt
Gourav Kumar
 
Solar energy ppt
Solar energy pptSolar energy ppt
Solar energy ppt
shubhajit_b
 

Andere mochten auch (13)

Taking The Cloud Native
Taking The Cloud NativeTaking The Cloud Native
Taking The Cloud Native
 
Build your Web browser & apps with nw.js
Build your Web browser & apps with nw.jsBuild your Web browser & apps with nw.js
Build your Web browser & apps with nw.js
 
ENEA My Activities
ENEA My ActivitiesENEA My Activities
ENEA My Activities
 
PELAJARAN MATEMATIKA SMP
PELAJARAN MATEMATIKA SMPPELAJARAN MATEMATIKA SMP
PELAJARAN MATEMATIKA SMP
 
Presentation
PresentationPresentation
Presentation
 
Bringing The Sexy Back To WebWorkers
Bringing The Sexy Back To WebWorkersBringing The Sexy Back To WebWorkers
Bringing The Sexy Back To WebWorkers
 
Evaluating Product System Behavior using Soft Computing in Product Structure ...
Evaluating Product System Behavior using Soft Computing in Product Structure ...Evaluating Product System Behavior using Soft Computing in Product Structure ...
Evaluating Product System Behavior using Soft Computing in Product Structure ...
 
SOLAR TRACKING SYSTEM BY USING MICROCONTROLLER
 SOLAR  TRACKING  SYSTEM  BY  USING  MICROCONTROLLER SOLAR  TRACKING  SYSTEM  BY  USING  MICROCONTROLLER
SOLAR TRACKING SYSTEM BY USING MICROCONTROLLER
 
distribution system fault mangement
distribution system fault mangementdistribution system fault mangement
distribution system fault mangement
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Solar tree ppt
Solar tree pptSolar tree ppt
Solar tree ppt
 
Solar panel Technology ppt
Solar panel Technology pptSolar panel Technology ppt
Solar panel Technology ppt
 
Solar energy ppt
Solar energy pptSolar energy ppt
Solar energy ppt
 

Ähnlich wie Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems

PSO and Its application in Engineering
PSO and Its application in EngineeringPSO and Its application in Engineering
PSO and Its application in Engineering
Prince Jain
 
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
CSCJournals
 
Lecture 02 internet video search
Lecture 02 internet video searchLecture 02 internet video search
Lecture 02 internet video search
zukun
 
An Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of PointsAn Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of Points
Kasun Ranga Wijeweera
 

Ähnlich wie Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems (20)

A Novel Methodology for Designing Linear Phase IIR Filters
A Novel Methodology for Designing Linear Phase IIR FiltersA Novel Methodology for Designing Linear Phase IIR Filters
A Novel Methodology for Designing Linear Phase IIR Filters
 
Presnt3
Presnt3Presnt3
Presnt3
 
ECCV WS 2012 (Frank)
ECCV WS 2012 (Frank)ECCV WS 2012 (Frank)
ECCV WS 2012 (Frank)
 
PSO and Its application in Engineering
PSO and Its application in EngineeringPSO and Its application in Engineering
PSO and Its application in Engineering
 
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization ProblemsEfficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
 
Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO) Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO)
 
dalrymple_slides.ppt
dalrymple_slides.pptdalrymple_slides.ppt
dalrymple_slides.ppt
 
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
 
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
 
Optic flow estimation with deep learning
Optic flow estimation with deep learningOptic flow estimation with deep learning
Optic flow estimation with deep learning
 
Lecture 02 internet video search
Lecture 02 internet video searchLecture 02 internet video search
Lecture 02 internet video search
 
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
 
machine learning.pptx
machine learning.pptxmachine learning.pptx
machine learning.pptx
 
Phase Retrieval: Motivation and Techniques
Phase Retrieval: Motivation and TechniquesPhase Retrieval: Motivation and Techniques
Phase Retrieval: Motivation and Techniques
 
Finite Element Analysis of Truss Structures
Finite Element Analysis of Truss StructuresFinite Element Analysis of Truss Structures
Finite Element Analysis of Truss Structures
 
4 satellite image fusion using fast discrete
4 satellite image fusion using fast discrete4 satellite image fusion using fast discrete
4 satellite image fusion using fast discrete
 
Convex optmization in communications
Convex optmization in communicationsConvex optmization in communications
Convex optmization in communications
 
The Traveling Salesman Problem: A Neural Network Perspective
The Traveling Salesman Problem: A Neural Network PerspectiveThe Traveling Salesman Problem: A Neural Network Perspective
The Traveling Salesman Problem: A Neural Network Perspective
 
Output Units and Cost Function in FNN
Output Units and Cost Function in FNNOutput Units and Cost Function in FNN
Output Units and Cost Function in FNN
 
An Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of PointsAn Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of Points
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Kürzlich hochgeladen (20)

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems

  • 1. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems Corey Clark1 Charles Nicholson2 1Game Theory Labs, Dallas, TX cclark@gametheorylabs.com 2University of Oklahoma, Industrial and Systems Engineering, Norman, OK cnicholson@ou.edu INFORMS Annual Meeting, 2013
  • 2. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Outline 1 Introduction The Problem The Model 2 Problem Approaches Optimal Search Heuristic Search 3 Dynamically Distributed BPSO Approach Algorithm Architecture 4 Performance Results and Demonstration Performance Results Demonstration
  • 3. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary The Problem Problem Motivation: Cash Management2 National banks manage vaults that store cash Vaults have excess or deficit (current / forecast) Routing cash incurs fixed and variable costs Modeled as Time-space fixed-charge network flow problem1 1J. Kennington and C. Nicholson. “The Uncapacitated Time-Space Fixed-Charge Network Flow Problem: An Empirical Investigation of Procedures for Arc Capacity Assignment”. In: INFORMS Journal on Computing 22 (2010), pp. 326–337. 2M. Frost, J. Kennington, and A. Madhavan. “Optimizing cash management for large scale bank operations”. In: International Journal of Operations Research and Information Systems 1 (2010), pp. 17–31.
  • 4. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary The Model Time-Space Fixed-Charge Network Flow Model Graph N is set of n spatial nodes; T is the set of t time periods, and ¯N is the set of node-time pairs A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N
  • 5. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary The Model Time-Space Fixed-Charge Network Flow Model Graph N is set of n spatial nodes; T is the set of t time periods, and ¯N is the set of node-time pairs A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N Variables xirjs is flow on arc (i, r, j, s) ∈ A; yirjs is related binary variable
  • 6. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary The Model Time-Space Fixed-Charge Network Flow Model Graph N is set of n spatial nodes; T is the set of t time periods, and ¯N is the set of node-time pairs A is the set of arcs: (i, r, j, s) where (i, r) ∈ ¯N, (j, s) ∈ ¯N Variables xirjs is flow on arc (i, r, j, s) ∈ A; yirjs is related binary variable Parameters Mirjs is an implied artificial arc capacity used in B&B modeling cirjs and firjs are variable and fixed costs for arc (i, r, j, s) Rir are the requirements at node (i, r) ∈ ¯N.
  • 7. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary The Model TSFC Problem Formulation Given a directed graph G = (¯N, A) the time-space fixed-charge network flow model is formally stated as follows: TSFC Problem min (i,r,j,s)∈A (cirjsxirjs + firjsyirjs) (1) s.t. (i,r,j,s)∈A xirjs − (j,s,i,r)∈A xjsir = Rir ∀(i, r) ∈ ¯N (2) 0 ≤ xirjs ≤ Mirjsyirjs ∀(i, r, j, s) ∈ A (3) yirjs ∈ {0, 1} ∀(i, r, j, s) ∈ A (4) This problem is NP-hard.
  • 8. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Optimal Search Optimization Approach Branch-and-Bound for the TSFC problem 1 Problem is solved with relaxed binary constraints 2 Choose an arc (i, r, j, s) ∈ A for branching create new subproblem with yirjs = 1 create new subproblem with yirjs = 0 3 Solve the relaxed sub-problems (linear programs) 4 Use results to update bounds, determine optimality, fathom nodes, and continued branching 5 Go to step 2 B&B performs a complete (implicit) search among all possible network designs (branches) to find an optimal solution.
  • 9. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Optimal Search Search Space The set of all feasible solutions is called a search space Each point in the space represents one feasible solution Every point has an associated fitness value The set of solutions and their objective values form locations and elevation in the search space landscape The search space can be large and complex
  • 10. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Heuristic Search Heuristic Approach Literature Tabu search (Glover 1990) Fixed-Charge Transportation Problem (Sun et al. 1998) Genetic Algorithms (Holland 1975) Non-linear Transportation Problem (Sheng et al. 2006) Fixed-Charge Network Flow (Duhamel 2010) Network Designs (Gen and Chang 2003) Particle Swarm Optimization (PSO) Real-valued PSO (Kennedy and Eberhart 1995) Binary PSO (Kennedy and Eberhart 1997) Many applications and enhancements since then, e.g. Parsopoulos and Vrahatis 2007, Yin et. al 2010
  • 11. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Particle position and velocity Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k
  • 12. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Particle position and velocity Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k The position Xi represents a solution, and has an associated fitness value
  • 13. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Particle position and velocity Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k The position Xi represents a solution, and has an associated fitness value A swarm of n particles fly through the k-dimensional solution space – updating their positions based on a velocity function
  • 14. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Particle position and velocity Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k The position Xi represents a solution, and has an associated fitness value A swarm of n particles fly through the k-dimensional solution space – updating their positions based on a velocity function Velocity is a function of the historical best solution found individually by a particle and globally by the swarm
  • 15. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Particle position and velocity Xi = (xi1, xi2, . . . , xik ) xij ∈ {0, 1} for j = 1, 2, . . . , k Vi = (vi1, vi2, . . . , vik ) vii ∈ [−vmax , vmax ] for j = 1, 2, . . . , k The position Xi represents a solution, and has an associated fitness value A swarm of n particles fly through the k-dimensional solution space – updating their positions based on a velocity function Velocity is a function of the historical best solution found individually by a particle and globally by the swarm The velocity is converted into a probability that is used to modify the particle position
  • 16. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary Particle Swarm Optimization Updates Let Pi denote the best position visited by particle i Let Pg denote the best position found by the swarm The velocity function at iteration t + 1 is: Vt+1 i = wVt i + C1r1 Pi − Xt i + C2r2 Pg − Xt i where w is an inertia factor that changes over time; C1, C2 are constants; r1, r2 are random values uniform on [0, 1] The transfer function that converts velocities to probabilities T(vij) = 1 1 + evij is used to update each bit the position according to: xij = 1, if U(0, 1) < T(vij) 0, otherwise
  • 17. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Algorithm Binary PSO and the FCNF Problem In our application of Binary PSO to the Fixed-Charge Network Flow Problem, each particle position represents a network design. Each position is a unique, pure network problem which is solved to determine the minimum cost of the particular design. The individual designs are entirely independent of each other, which makes this easy to parallelize. X1 : X2 : X3 :
  • 18. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Architecture Distributed Accelerated Analytics Platform Distributed Accelerated Analytics Platform (DAAP) DAAP enables dynamic creation of a heterogeneous cluster network using HTML5 technologies that provide multi-threaded execution and low latency connections. GLPK and GLPK.js The GNU Linear Programming Kit (GLPK) package solves large-scale LP and MIP problems. GLPK.js: JavaScript interfaces to GLPK which allow GLPK to be called from webpages on either the client side or the server side.3 3H. Gourvest. GLPK.js. URL: https://github.com/hgourvest/glpk.js.
  • 19. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Architecture Distributed Accelerated Analytics Platform Distributed Accelerated Analytics Platform (DAAP) DAAP enables dynamic creation of a heterogeneous cluster network using HTML5 technologies that provide multi-threaded execution and low latency connections. GLPK and GLPK.js The GNU Linear Programming Kit (GLPK) package solves large-scale LP and MIP problems. GLPK.js: JavaScript interfaces to GLPK which allow GLPK to be called from webpages on either the client side or the server side.3 Any web-enabled device can become part of a DAAP cluster network and contribute computing power to solve LP problems. 3Gourvest, GLPK.js.
  • 20.
  • 21. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Problem Characteristics We tested our approach on three different sized TSFC Problems. Feasible instances were randomly generated and the variable and fixed cost ranges were selected such as to create difficult instances (Kennington and Nicholson 2010). Problems Variable Costs: U(0, 10) Fixed Costs: U(20000, 60000) Size Nodes Arcs 5n6p 30 245 10n21p 210 3,890 20n30p 600 23,000
  • 22. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Approaches Three approaches were tested: Optimization: GLPK.js with default MIP techniques
  • 23. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Approaches Three approaches were tested: Optimization: GLPK.js with default MIP techniques Serial BPSO-FCNF
  • 24. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Approaches Three approaches were tested: Optimization: GLPK.js with default MIP techniques Serial BPSO-FCNF Distributed BPSO-FCNF
  • 25. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Approaches Three approaches were tested: Optimization: GLPK.js with default MIP techniques Serial BPSO-FCNF Distributed BPSO-FCNF Devices used in the DAAP cluster include: MacBook Pro,Surface Pro, iPhone, Windows laptop, iPad, Nexus 7 tablet
  • 26. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Approaches Three approaches were tested: Optimization: GLPK.js with default MIP techniques Serial BPSO-FCNF Distributed BPSO-FCNF Devices used in the DAAP cluster include: MacBook Pro,Surface Pro, iPhone, Windows laptop, iPad, Nexus 7 tablet A time limit was set at 10 minutes and best objective values and number of network problems solved are reported.
  • 27. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Performance Results Empirical Testing: Performance Computational Time: 10 minutes GLPK Serial Distributed Serial vs. Problem Opt BPSO-FCNF BPSO-FCNF Distributed 5n6p 1.3M 937K 907K (37K) 285K 300K 1.3M (4.3x) 10n21p N/A 7.36M 7.21M (150K) 5.2K 30K 68K (2.3x) 20n30p N/A 21.16M 20.97M (190k) 3.2K 1.2K 3.3K (2.8x)
  • 28.
  • 29.
  • 30.
  • 31.
  • 32. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Demonstration I hope this works... pso.gametheorylabs.com 1 Navigate to this website 2 Register your device as a Processing Node 3 Watch for the green “loaded” and “running” indicators
  • 33. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modifications) is an effective option for difficult Fixed-Charge Network Flow problems.
  • 34. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modifications) is an effective option for difficult Fixed-Charge Network Flow problems. Binary PSO for FCNF are naturally independent and thus easily parallelized.
  • 35. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modifications) is an effective option for difficult Fixed-Charge Network Flow problems. Binary PSO for FCNF are naturally independent and thus easily parallelized. Using the DAAP technology, it is easy to create dynamic cluster computing to address difficult MIP and problems with such techniques.
  • 36. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modifications) is an effective option for difficult Fixed-Charge Network Flow problems. Binary PSO for FCNF are naturally independent and thus easily parallelized. Using the DAAP technology, it is easy to create dynamic cluster computing to address difficult MIP and problems with such techniques. Questions?