Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Nikolaos Ploskas is active.

Publication


Featured researches published by Nikolaos Ploskas.


Applied Mathematics and Computation | 2015

Efficient GPU-based implementations of simplex type algorithms

Nikolaos Ploskas; Nikolaos Samaras

Recent hardware advances have made it possible to solve large scale Linear Programming problems in a short amount of time. Graphical Processing Units (GPUs) have gained a lot of popularity and have been applied to linear programming algorithms. In this paper, we propose two efficient GPU-based implementations of the Revised Simplex Algorithm and a Primal–Dual Exterior Point Simplex Algorithm. Both parallel algorithms have been implemented in MATLAB using MATLAB’s Parallel Computing Toolbox. Computational results on randomly generated optimal sparse and dense linear programming problems and on a set of benchmark problems (netlib, kennington, Meszaros) are also presented. The results show that the proposed GPU implementations outperform MATLAB’s interior point method.


GPU Programming in MATLAB | 2016

Parallel Computing Toolbox

Nikolaos Ploskas; Nikolaos Samaras

This chapter introduces the key features of MATLAB’s Parallel Computing Toolbox. Task- and data-parallel applications can be parallelized using the features provided by Parallel Computing Toolbox. After reading this chapter, you should be able to: • understand the key features of Parallel Computing Toolbox.


Journal of Computational Science | 2010

A computational evaluation of some free mathematical software for scientific computing

Themistoklis Glavelis; Nikolaos Ploskas; Nikolaos Samaras

Abstract The purpose of this paper is to present a computational comparison of some well-known free mathematical programs. Specifically, these programs are FreeMat, Mathnium, Octave, R and Scilab. All these programs are designed in order to be used either in the scientific community or the industry. Moreover, an additional aim of this paper is to propose open source alternative software which can replace commercial mathematical software. Several issues concerning available operating system platforms, data structures, languages’ structure, matrix operations, program modularization, libraries, packages, profiling tools and online help facilities are addressed in this paper. Discussions on their weaknesses and strengths characteristics are presented. Finally, a speed comparison of some frequently used algorithms, procedures and operations within software is also presented.


Journal of Systems and Software | 2014

GPU accelerated pivoting rules for the simplex algorithm

Nikolaos Ploskas; Nikolaos Samaras

Abstract Simplex type algorithms perform successive pivoting operations (or iterations) in order to reach the optimal solution. The choice of the pivot element at each iteration is one of the most critical step in simplex type algorithms. The flexibility of the entering and leaving variable selection allows to develop various pivoting rules. In this paper, we have proposed some of the most well-known pivoting rules for the revised simplex algorithm on a CPU–GPU computing environment. All pivoting rules have been implemented in MATLAB and CUDA. Computational results on randomly generated optimal dense linear programs and on a set of benchmark problems (Netlib-optimal, Kennington, Netlib-infeasible, Meszaros) are also presented. These results showed that the proposed GPU implementations of the pivoting rules outperform the corresponding CPU implementations.


Archive | 2013

A Parallel Implementation of the Revised Simplex Algorithm Using OpenMP: Some Preliminary Results

Nikolaos Ploskas; Nikolaos Samaras; Konstantinos G. Margaritis

Linear Programming (LP) is a significant research area in the field of operations research. The simplex algorithm is the most widely used method for solving Linear Programming problems (LPs). The aim of this paper is to present a parallel implementation of the revised simplex algorithm. Our parallel implementation focuses on the reduction of the time taken to perform the basis inverse, due to the fact that the total computational effort of an iteration of simplex type algorithms is dominated by this computation. This inverse does not have to be computed from scratch at any iteration. In this paper, we compute the basis inverse with two well-known updating schemes: (1) The Product Form of the Inverse (PFI) and (2) A Modification of the Product Form of the Inverse (MPFI); and incorporate them with revised simplex algorithm. Apart from the parallel implementation, this paper presents a computational study that shows the speedup among the serial and the parallel implementations in large-scale LPs. Computational results with a set of benchmark problems from Netlib, including some infeasible ones, are also presented. The parallelism is achieved using OpenMP in a shared memory multiprocessor architecture.


Archive | 2015

A Collaborative Spatial Decision Support System for the Capacitated Vehicle Routing Problem on a Tabletop Display

Nikolaos Ploskas; Ioannis Athanasiadis; Jason Papathanasiou; Nikolaos Samaras

The Vehicle Routing Problem (VRP) is a well-known combinatorial optimization problem. The Capacitated Vehicle Routing Problem (CVRP) is a widely studied variant of the VRP. Although many Decision Support Systems (DSS) have been implemented to support decision makers solve real life problems of the VRP and its variants, these systems do not allow multiple decision makers to collaborate with each other and explore different scenarios on a specific problem. Recent advances in hardware and software have enabled a new generation of tabletop displays that can sense multiple inputs from different users at the same time. In this paper, we present a collaborative spatial DSS for the CVRP on a tabletop display that allows two decision makers to collaborate with each other in order to find the best possible solution. The locations of the customers to serve are added using interactive Google Maps. The DSS extracts the geographical information of the selected locations, finds the distances between them and solves the problem. The proposed DSS has been implemented using Java, TUIO protocol, jsprit and Google Maps.


International Journal of Computer Mathematics | 2015

A computational comparison of scaling techniques for linear optimization problems on a graphical processing unit

Nikolaos Ploskas; Nikolaos Samaras

Preconditioning techniques are important in solving linear problems, as they improve their computational properties. Scaling is the most widely used preconditioning technique in linear optimization algorithms and is used to reduce the condition number of the constraint matrix, to improve the numerical behavior of the algorithms and to reduce the number of iterations required to solve linear problems. Graphical processing units (GPUs) have gained a lot of popularity in the recent years and have been applied for the solution of linear optimization problems. In this paper, we review and implement ten scaling techniques with a focus on the parallel implementation of them on GPUs. All these techniques have been implemented under the MATLAB and CUDA environment. Finally, a computational study on the Netlib set is presented to establish the practical value of GPU-based implementations. On average the speedup gained from the GPU implementations of all scaling methods is about 7×.


decision support systems | 2012

A Web-Based Decision Support System Using Basis Update on Simplex Type Algorithms

Nikolaos Ploskas; Nikolaos Samaras; Jason Papathanasiou

Linear Programming is a significant and well-studied optimization methodology. Simplex type algorithms have been widely used in Decision Support Systems. The computation of the basis inverse is a crucial step in simplex type algorithms. In this paper, we review and compare three basis update methods. We incorporate these methods on the exterior and the revised simplex algorithm in order to highlight the significance of the choice of the basis update method in simplex type algorithms and the reduction that can offer to the solution time. We perform a computational comparison in which the basis inverse is computed with three updating methods. Finally, we have implemented a web-based Decision Support System that assists decision makers in the selection of the algorithm and basis update method in order to solve their Linear Programming problems.


GPU Programming in MATLAB | 2016

CUDA-accelerated libraries

Nikolaos Ploskas; Nikolaos Samaras

This chapter presents the CUDA-accelerated libraries, like cuBLAS , cuFFT , cuRAND , cuSOLVER , cuSPARSE , NPP , and Thrust , that are incorporated into the CUDA Toolkit. These libraries provide highly optimized algorithms that can be incorporated into MATLAB applications through MEX files. Examples are presented for each library. After reading this chapter, you should be able to use: • CUDA Basic Linear Algebra Subroutines (cuBLAS) library to accelerate BLAS operations.


balkan conference in informatics | 2013

The impact of scaling on simplex type algorithms

Nikolaos Ploskas; Nikolaos Samaras

One of the most significant and well-studied optimization problems is the Linear Programming problem (LP). Many algorithms have been proposed for the solution of Linear Programming problems (LPs); the main categories of them are: (i) simplex-type or pivoting algorithms, (ii) interior-point methods (IPM) and (iii) exterior point simplex type algorithms (EPSA). Prior to the application of these algorithms, some preconditioning techniques are executed in order to improve the computational properties of LPs. Scaling is the most widely used preconditioning technique and is used to reduce the condition number of the constraint matrix, reduce the number of iterations required to solve LPs and improve the numerical behavior of the algorithms. The aim of this paper is to present a computational study of the impact of scaling prior to the application of the aforementioned algorithms. In the computational study that we have conducted, we calculate both the CPU time and the number of iterations with and without scaling for a set of sparse randomly generated optimal LPs. The scaling techniques that we applied to the above mentioned algorithms are: (i) arithmetic mean, (ii) equilibration, and (iii) geometric mean scaling techniques. Computational results showed that equilibration is the best scaling technique and that the effect of scaling is significant to IPM and revised simplex algorithm, while EPSA is scaling invariant.

Collaboration


Dive into the Nikolaos Ploskas's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge