# Keivan Tafakkori M.Sc.

Industrial engineer focusing on leveraging optimization methods and artificial intelligence technologies using multiple programming languages to empower a business to achieve its goals!

## Heuristic optimization in Python

Following the previous articles on interfaces (+) and (exact) solvers (+) for optimization in Python, in this article, I introduce some packages that provide an easy-to-use “interface” for artificially intelligent algorithms (AIAs) (e.g., heuristics, meta-heuristics, math-heuristics, learn-heuristics, hyper-heuristics, or sim-heuristics). […]

## Support vector machine with Gekko in Python

In this blog post I model a support vector machine in Python. Previously, I modeled and solved the quadratic assignment problem (QAP) in Python using Pyomo (+). I described that the “similarity” of two facilities could be a reason for […]

## Pyomo for quadratic assignment problem

No matter if it is the assignment of departments to empty rooms in a building, machines to manufacturing cells, factories to geographical regions, products to racks in a warehouse, sensors to devices, edge computers inside the internet of things network, […]

## Flow shop scheduling with PuLP in Python

In previous articles, I modeled and solved a single machine scheduling problem. What if we have two resources that operate in a pre-determined sequence (but not in parallel) to process a set of similar jobs? The so-called “flow shop” scheduling […]

## Gekko for linear demand pricing

How can we decide on a product or service price using observed data over time? For example, a retailer may have changed the price for a specific product in multiple time slots of a week, tested the demanded quantity (sales) […]

## Single machine scheduling with PuLP

There are many use cases of operations research (OR) where the decision problem is finding an optimal sequence over time. For instance, we may be interested in allocating a resource (e.g., a machine, a human, a facility, a plane, a […]

## Using solvers for optimization in Python

Following the previous article on modeling and solving an optimization problem in Python using several “interfaces” (+), in this article, I try to provide a comprehensive review of open-source (OS), free, free & open-source (FOSS), and commercial “solvers,” which are […]

## Static facilities in supply chains

In this article, I propose a classification for static facilities in supply chains, i.e., those that are not mobile. Furthermore, as these facilities are static, their location becomes essential, and selecting a location is accompanied by strategic costs. Supply chains […]

## Optimization and modeling in Python

Operations Research (OR) involves experiments with optimization models. The aim is to find the best design, plan, or decision for a system or a human. Accordingly, these models consist of objectives and constraints. However, most of the available packages or […]

## Epsilon constraint optimization in Python

In previous posts, we have discussed using PuLP in python for the implementation of multi-objective linear optimization methods such as maximizing for one objective, then adding it as a constraint, and solving for the other objective (or applying a scalar […]