Coder Social home page Coder Social logo

scnshen / psoalgorithms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wangxh329/psoalgorithms

0.0 1.0 0.0 5.74 MB

This is my undergraduate thesis about high-performance discrete particle swarm optimization (PSO) algorithm and software development of application on JSSP problem.

MATLAB 64.74% C# 35.26%

psoalgorithms's Introduction

High-Performance Discrete Particle Swarm Optimization (PSO) Algorithm and Software Development of Application on JSSP

Abstract

  • Conducted research to study industrial Job-shop Scheduling Problem(JSSP), and designed a coding and decoding scheme.
  • Prototyped and implemented the Cooperative PSO algorithm for optimizing JSSP problem in MATLAB.
  • Discovered optimal combination of parameters for CPSO algorithm using Response Surface Methodology(RSM).
  • Designed 8 JSSP testing cases for CPSO algorithm with optimal parameters, and mapped correlated algorithm convergence curve and scheduling Gantt Graphs.
  • Conducted performance analysis from two aspects.
    • Algorithm Improvement: CPSO algorithm reduced at most 17.68% error to theoretical optimal solution compared to that of standard PSO algorithm;
    • Parameter Optimization: approximately 87.5% of 8 test cases results made better performances with aforementioned optimal parameters than original parameters did.
  • Developed a user-friendly desktop client: PSO-related JSSP software system in C# and SQL Server, providing the capability for users to obtain fast results by inputting key parameters.

Algorithm Design

Standard PSO Algorithm

standard PSO algorithm

standard PSO algorithm

Cooperative PSO Algorithm

cooperative PSO algorithm

cooperative PSO algorithm

Performance Analysis

Designed 8 JSSP benchmark testing cases(FT06,FT10,FT20,LA01,LA21,LA26,LA31,LA36) for performance analysis:

Algorithm Improvement

Mainly compared the results of JSSP benchmarks solved by PSO algorithm and CPSO algorithm:

makespan

makespan

optimization rate

optimization rate

average relative error

average relative error

standard deviation

standard deviation

Parameter Optimization

Discovered optimal combination of parameters for CPSO algorithm using Response Surface Methodology(RSM), and about 87.5% of test cases had better performances than the original parameters did:

parameter optimization

parameter optimization

Software Development

Developed a user-friendly desktop client: PSO-related JSSP software system in C# and SQL Server, providing the capability for users to obtain fast results by inputting key parameters.

Infrastructure Design

infrastructure design

infrastructure design

Function Design

function design

function design

Database Design

  • results

results table

results table

  • users

users table

users table

Software Screenshot

  • Login and register

login and register

login and register

  • Parameter settings

parameter settings

parameter settings

  • Scheduling result and history

schedule history

schedule history

gantt graph

gantt graph

  • Users

users management

users management

psoalgorithms's People

Contributors

wangxh329 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.