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.
Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems
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)
Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems
Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems
Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems
Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems
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?

More Related Content

PPT
study Streaming Multigrid For Gradient Domain Operations On Large Images
PDF
icml2004 tutorial on spectral clustering part I
PDF
icml2004 tutorial on spectral clustering part II
PDF
Minimax optimal alternating minimization \\ for kernel nonparametric tensor l...
PDF
Program on Quasi-Monte Carlo and High-Dimensional Sampling Methods for Applie...
PDF
Particle filtering in Computer Vision (2003)
PDF
Stochastic Alternating Direction Method of Multipliers
PDF
Kernelization algorithms for graph and other structure modification problems
study Streaming Multigrid For Gradient Domain Operations On Large Images
icml2004 tutorial on spectral clustering part I
icml2004 tutorial on spectral clustering part II
Minimax optimal alternating minimization \\ for kernel nonparametric tensor l...
Program on Quasi-Monte Carlo and High-Dimensional Sampling Methods for Applie...
Particle filtering in Computer Vision (2003)
Stochastic Alternating Direction Method of Multipliers
Kernelization algorithms for graph and other structure modification problems

What's hot (19)

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

Viewers also liked (13)

PDF
Taking The Cloud Native
PDF
Build your Web browser & apps with nw.js
KEY
ENEA My Activities
PDF
PELAJARAN MATEMATIKA SMP
PPTX
Presentation
PDF
Bringing The Sexy Back To WebWorkers
PPTX
Evaluating Product System Behavior using Soft Computing in Product Structure ...
PPTX
SOLAR TRACKING SYSTEM BY USING MICROCONTROLLER
PPTX
distribution system fault mangement
PPT
Genetic algorithm
PPTX
Solar tree ppt
PPTX
Solar panel Technology ppt
PPT
Solar energy ppt
Taking The Cloud Native
Build your Web browser & apps with nw.js
ENEA My Activities
PELAJARAN MATEMATIKA SMP
Presentation
Bringing The Sexy Back To WebWorkers
Evaluating Product System Behavior using Soft Computing in Product Structure ...
SOLAR TRACKING SYSTEM BY USING MICROCONTROLLER
distribution system fault mangement
Genetic algorithm
Solar tree ppt
Solar panel Technology ppt
Solar energy ppt
Ad

Similar to Distributed Parallel Process Particle Swarm Optimization on Fixed Charge Network Flow Problems (20)

PDF
A Novel Methodology for Designing Linear Phase IIR Filters
PPTX
Presnt3
PPTX
ECCV WS 2012 (Frank)
PPT
PSO and Its application in Engineering
PDF
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
PPTX
TSIndexingIndexacao De Série ttemporal.pptx
PPTX
Optimization and particle swarm optimization (O & PSO)
PPT
dalrymple_slides.ppt
PDF
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
PDF
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
PDF
Optic flow estimation with deep learning
PDF
Lecture 02 internet video search
PDF
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
PPT
02 - raster topic in computer graphics.ppt
PPTX
machine learning.pptx
PDF
Phase Retrieval: Motivation and Techniques
PDF
swarm pso and gray wolf Optimization.pdf
PPTX
Finite Element Analysis of Truss Structures
PDF
4 satellite image fusion using fast discrete
PPTX
Convex optmization in communications
A Novel Methodology for Designing Linear Phase IIR Filters
Presnt3
ECCV WS 2012 (Frank)
PSO and Its application in Engineering
Efficient Hill Climber for Constrained Pseudo-Boolean Optimization Problems
TSIndexingIndexacao De Série ttemporal.pptx
Optimization and particle swarm optimization (O & PSO)
dalrymple_slides.ppt
Performance Comparison of Image Retrieval Using Fractional Coefficients of Tr...
Efficient Identification of Improving Moves in a Ball for Pseudo-Boolean Prob...
Optic flow estimation with deep learning
Lecture 02 internet video search
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
02 - raster topic in computer graphics.ppt
machine learning.pptx
Phase Retrieval: Motivation and Techniques
swarm pso and gray wolf Optimization.pdf
Finite Element Analysis of Truss Structures
4 satellite image fusion using fast discrete
Convex optmization in communications

Recently uploaded (20)

PDF
TicketRoot: Event Tech Solutions Deck 2025
PDF
Addressing the challenges of harmonizing law and artificial intelligence tech...
PDF
ment.tech-How to Develop an AI Agent Healthcare App like Sully AI (1).pdf
PDF
Rooftops detection with YOLOv8 from aerial imagery and a brief review on roof...
PDF
Child-friendly e-learning for artificial intelligence education in Indonesia:...
PDF
The Digital Engine Room: Unlocking APAC’s Economic and Digital Potential thro...
PDF
Examining Bias in AI Generated News Content.pdf
PPTX
Introduction-to-Artificial-Intelligence (1).pptx
PDF
CCUS-as-the-Missing-Link-to-Net-Zero_AksCurious.pdf
PDF
Altius execution marketplace concept.pdf
PDF
1_Keynote_Breaking Barriers_한계를 넘어서_Charith Mendis.pdf
PDF
FASHION-DRIVEN TEXTILES AS A CRYSTAL OF A NEW STREAM FOR STAKEHOLDER CAPITALI...
PDF
State of AI in Business 2025 - MIT NANDA
PDF
Secure Java Applications against Quantum Threats
PDF
NewMind AI Journal Monthly Chronicles - August 2025
PPTX
Report in SIP_Distance_Learning_Technology_Impact.pptx
PPTX
From Curiosity to ROI — Cost-Benefit Analysis of Agentic Automation [3/6]
PDF
Gestión Unificada de los Riegos Externos
PDF
Be ready for tomorrow’s needs with a longer-lasting, higher-performing PC
PPTX
AQUEEL MUSHTAQUE FAKIH COMPUTER CENTER .
TicketRoot: Event Tech Solutions Deck 2025
Addressing the challenges of harmonizing law and artificial intelligence tech...
ment.tech-How to Develop an AI Agent Healthcare App like Sully AI (1).pdf
Rooftops detection with YOLOv8 from aerial imagery and a brief review on roof...
Child-friendly e-learning for artificial intelligence education in Indonesia:...
The Digital Engine Room: Unlocking APAC’s Economic and Digital Potential thro...
Examining Bias in AI Generated News Content.pdf
Introduction-to-Artificial-Intelligence (1).pptx
CCUS-as-the-Missing-Link-to-Net-Zero_AksCurious.pdf
Altius execution marketplace concept.pdf
1_Keynote_Breaking Barriers_한계를 넘어서_Charith Mendis.pdf
FASHION-DRIVEN TEXTILES AS A CRYSTAL OF A NEW STREAM FOR STAKEHOLDER CAPITALI...
State of AI in Business 2025 - MIT NANDA
Secure Java Applications against Quantum Threats
NewMind AI Journal Monthly Chronicles - August 2025
Report in SIP_Distance_Learning_Technology_Impact.pptx
From Curiosity to ROI — Cost-Benefit Analysis of Agentic Automation [3/6]
Gestión Unificada de los Riegos Externos
Be ready for tomorrow’s needs with a longer-lasting, higher-performing PC
AQUEEL MUSHTAQUE FAKIH COMPUTER CENTER .

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 [email protected] 2University of Oklahoma, Industrial and Systems Engineering, Norman, OK [email protected] 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.
  • 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)
  • 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?