Optimization algorithm to apply to my system?

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
2 replies · 2K views
GregoryB82
Messages
1
Reaction score
0
I am at the moment working on a project in which I try to minimize the annual running costs of a chemical manufacturing plant. To predict annual running costs I created a model with over 50 inputs, including things such as the type of chemicals and equipment used at different points in the process, type of renewable system used to provide energy, type of air conditioning system used at the plant, etc. Some of these inputs are binary (yes/no), while others contain a number of choices (e.g. for renewable system we have a choice of wind/solar/biogas). The model outputs a single number (overall running costs).

Currently I am trying to optimize the system (i.e. find minimum cost) and I have studied some relevant literature. However, I am, as you might say, a optimization novice. From what I have read I do not think I have the computer power to apply dynamic programming to this system, so I am searching for a metaheuristic method such as Genetic Algorithm or PSO. However, much of the literature seems to apply these to continuous space or binary systems. I am confused as some of my variables have 3/4/5/6 possible choices. Would anybody have suggestions for how to solve my problem, or relevant literature applicable to my problem?

Also, since the model only outputs one number, would minimizing the cost be the fitness function? Many fitness functions I see in the literature seem complex, so I wonder if one can be this simple?

Apologies if these questions are stupid or unclear!

Thanks,

Grégory.
 
Physics news on Phys.org
I think you could use a genetic algorithm here. You make a solution vector of your 50 variables and then create a population of solutions by tweaking each one.

Then you need a fitness function to score each solution vector keeping the best and discarding the rest then mix and modify the solutions for the next generation and repeat the process and after a few iterations you'll hopefully have an approximately optimal solution.

https://en.wikipedia.org/wiki/Genetic_algorithm
 
  • Like
Likes   Reactions: GregoryB82
If all your independent variables have a finite number of discrete values, then your problem is an integer programming problem. There are algorithms to solve integer programming problems.
 
  • Like
Likes   Reactions: GregoryB82