Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Like this presentation? Why not share!

- Taking The Cloud Native by Corey Clark, Ph.D. 2114 views
- Build your Web browser & apps with ... by Yeti Sno 1676 views
- ENEA My Activities by matteodefelice 579 views
- Amazon to embrace solar energy for ... by Suyati Technologi... 786 views
- PELAJARAN MATEMATIKA SMP by Made Bagiada 256 views
- Presentation by Akul1501 126 views

1,767 views

Published on

We are currently in the process of converting JaHOVA OS into a high performance multithreaded game and simulation engine (GEn3CIS). One feature of GEn3CIS is its ability to distribute processing across any internet enabled device with a modern browser. Essentially this allows a user to take their phone, tablet, PC/Mac, etc and utilize there combined computing power to solve any complex simulation, learning, and/or optimization problem.

Published in:
Technology

No Downloads

Total views

1,767

On SlideShare

0

From Embeds

0

Number of Embeds

41

Shares

0

Downloads

13

Comments

0

Likes

2

No embeds

No notes for slide

- 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 deﬁcit (current / forecast) Routing cash incurs ﬁxed and variable costs Modeled as Time-space ﬁxed-charge network ﬂow 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 ﬂow 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 ﬂow on arc (i, r, j, s) ∈ A; yirjs is related binary variable Parameters Mirjs is an implied artiﬁcial arc capacity used in B&B modeling cirjs and firjs are variable and ﬁxed 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 ﬁxed-charge network ﬂow 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 ﬁnd 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 ﬁtness 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 ﬁtness 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 ﬁtness value A swarm of n particles ﬂy 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 ﬁtness value A swarm of n particles ﬂy 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 ﬁtness value A swarm of n particles ﬂy 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. 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 ﬁxed cost ranges were selected such as to create difﬁcult 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
- 21. 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
- 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 Serial BPSO-FCNF
- 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 Distributed 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 Devices used in the DAAP cluster include: MacBook Pro,Surface Pro, iPhone, Windows laptop, iPad, Nexus 7 tablet
- 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 A time limit was set at 10 minutes and best objective values and number of network problems solved are reported.
- 26. 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)
- 27. 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
- 28. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modiﬁcations) is an effective option for difﬁcult Fixed-Charge Network Flow problems.
- 29. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modiﬁcations) is an effective option for difﬁcult Fixed-Charge Network Flow problems. Binary PSO for FCNF are naturally independent and thus easily parallelized.
- 30. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modiﬁcations) is an effective option for difﬁcult 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 difﬁcult MIP and problems with such techniques.
- 31. Introduction Problem Approaches Dynamically Distributed BPSO Approach Performance Results and Demonstration Summary Summary Binary PSO (with modiﬁcations) is an effective option for difﬁcult 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 difﬁcult MIP and problems with such techniques. Questions?

No public clipboards found for this slide

×
### Save the most important slides with Clipping

Clipping is a handy way to collect and organize the most important slides from a presentation. You can keep your great finds in clipboards organized around topics.

Be the first to comment