Optimization Programming - Which Algorithm?

In summary, the speaker conducted research at a REU this summer, focusing on optimizing the power output of a wind farm using a genetic algorithm. They are now looking to improve the model and possibly publish a paper. Some ideas they have for improvement include implementing a more accurate wake model, adding a local search function, using an Artificial Bee Colony Algorithm, and importing GIS maps to avoid unsuitable turbine locations. The speaker is particularly interested in finding a way to model the upper boundary of a wind farm's power output, as this has not been done before and would allow for a perfect optimization comparison. They are also considering using CFD for the wake model, but this may be costly and unnecessary. Lastly, they mention the need to compare their optimized
  • #1
grantwilliams
67
0
Hey guys! I need a little help in continuing my research i did this summer.

So a little background information:

This summer i conducted research at a REU where i focused on optimizing the power output of a wind farm by modeling wind turbine locations within a constrained space. I wrote a genetic algorithm that was pretty efficient at finding wind turbine layouts that produced energy more effectively than an evenly spaced grid with a wind direction modeled based on wind direction probabilities found on a real wind farm. I really enjoyed the research and the math, physics, and programming that went along with it and i would like to improve the model. I have a couple of ways I'm considering doing so.

The model i wrote is a vectorized, and parallelized genetic algorithm with a relatively simple wake model based on the distance and angle between two turbines (not a computation fluid dynamics wake). My research mentor allowed to me to come up with my own project idea and implement it fully by myself, but she also believes the work i did is good enough to publish so I am currently going through the steps of editing my paper for publication. I would like to conduct more research in the same field and attempt to ready another paper for publication by the end of this school year.

These are some of the ideas i currently have:

  • Implement a more accurate wake model and write the function in a way that it can be used on graphics cards
  • Add a local serach function within the genetic algorithm
  • Try a Articifial Bee Colony Algorithm (ABC)
  • Write a model that can import GIS maps and attempt to intelligently avoid locations where trubines couldn't be placed based on geographical features
  • Code the Genetic Algorithm to adaptively change its mutation rate based on effectiveness of solutions
  • Find a way to model the upper boundary of a wind turbine farm's power output assuming there are wake interactions


The idea I am most interested in is finding a way to model the upper bound of the wind farm's power output. No one has published a way to do so yet, and it would allow researchers to test their model against a perfectly optimized layout. For an example of what I am talking about see theThe lower boundary of the traveling salesman problem

If you need anymore information please ask, I would be happy to provide it!
 
Technology news on Phys.org
  • #2
Interesting project, well done.

grantwilliams said:
Implement a more accurate wake model and write the function in a way that it can be used on graphics cards
Are you currently using the wake model used in WAsP http://www.wasp.dk/Products-og-services/WAsP/WakeEffectModel? Moving to a CFD solution would introduce many significant problems including (i) much of the software and algorithms used are proprietory - consultancies make a lot of money advising on wind farm design; (ii) any CFD calculation is going to increase the cost of your objective function by many orders of magnitude, even if offloaded to GPUs.

Besides, "if it ain't broke, don't fix it" - have you looked at the predicted results and compared them with field data?
grantwilliams said:
Write a model that can import GIS maps and attempt to intelligently avoid locations where trubines couldn't be placed based on geographical features
Terrain has a huge effect on optimal turbine siting - indeed this is one area where CFD is routinely used. I'm not sure what you mean by "couldn't be placed based on geographical features" though?
grantwilliams said:
Find a way to model the upper boundary of a wind turbine farm's power output assuming there are wake interactions
According to Betz's law this is approximately 59% of the kinetic energy of the wind entering the farm. Wake interactions don't reduce this further. It would also be useful to compare your optimised layouts with other concepts, such as a regualr grid oriented to maximise power from the prevailing wind direction and a Poisson grid.
 

What is optimization programming?

Optimization programming is a branch of computer science that involves creating mathematical models to find the best possible solution for a given problem. It is used in various fields such as engineering, economics, and business to optimize processes and systems.

What are some common types of optimization algorithms?

Some common types of optimization algorithms include gradient descent, genetic algorithms, simulated annealing, and linear programming. Each type of algorithm has its own strengths and weaknesses, and the choice of which one to use depends on the specific problem at hand.

How do optimization algorithms work?

Optimization algorithms work by iteratively searching for the best solution to a problem. They use mathematical techniques to determine the direction in which the objective function (the function that needs to be optimized) should be modified in order to reach the optimal solution.

What is the difference between local and global optimization?

Local optimization algorithms find the best solution within a limited area of the search space, while global optimization algorithms aim to find the best solution in the entire search space. Local optimization algorithms are faster but may not always find the absolute best solution, while global optimization algorithms take longer but are more likely to find the optimal solution.

How do I determine which optimization algorithm to use?

The choice of optimization algorithm depends on the type of problem, the complexity of the objective function, and the desired level of accuracy. It is important to understand the strengths and weaknesses of each algorithm and to carefully consider the specific problem before selecting an algorithm.

Similar threads

  • Programming and Computer Science
Replies
2
Views
1K
Replies
1
Views
932
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
4
Views
4K
  • General Engineering
Replies
7
Views
2K
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
29
Views
3K
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
1
Views
3K
Replies
2
Views
2K
Back
Top