Define production code as any code which is used by 3 people or more and lasted for at least a year in production. Research and educational code does not count. Sorry if you're a teacher or theoretical researcher :) Consultancy for helping someone else write production code does count.

I asked this question at Devoxx 2010, open to 3000 java programmers, who write production applications. Unlike on other questions, very few answered that they actually use A.I. algorithms. Here are the results. Note that most of them probably don't know half these algorithms (I didn't know half these algorithms until I specialized in it). What they don't know, they don't use.

asked 20 Nov '10, 09:48

Geoffrey%20De%20Smet's gravatar image

Geoffrey De ... ♦
accept rate: 6%

I'm not sure what qualifies as an AI algorithm (algorithms that have metaheuristic flavor?) because Branch-and-Bound/Branch-and-Cut were listed as heuristics -- I'm not sure that they are, because, in my mind, they are rigorous methods.

Anyway here are some actual commercial deployments of OR-related algorithms that I've encountered:

  • For planning and scheduling, the solution of MILPs are crucial. Branch-and-Bound, Branch-and-Cut etc. are very, very popular algorithms and are often found in production code. Constraint Programming is sometimes used as well, but mostly to generate cuts.
  • In a particular process simulation code that is being developed, the algorithm of choice for optimization is Differential Evolution (DE). DE is a metaheuristic that is competitive with GA. It has the advantage of being parallelizable, simple to code, and intuitive to interpret.

This may or may not qualify as an AI algorithm, but here it is:

  • Data mining tends to be done using statistical projection methods like PCA and PLS, therefore the NIPALS algorithm is overwhelmingly used in such applications. PCA/PLS are also used in plant monitoring and fault detection software.

answered 20 Nov '10, 16:24

Gilead's gravatar image

Gilead ♦
accept rate: 15%

A.I. is artificial intelligence. So all those algorithms qualify :)

(21 Nov '10, 19:27) Geoffrey De ... ♦

The tabu search implementation in Drools Planner is used in production, in some cases for over a year already (even though Planner was relatively young back then).


answered 23 Nov '10, 09:16

Geoffrey%20De%20Smet's gravatar image

Geoffrey De ... ♦
accept rate: 6%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported



Asked: 20 Nov '10, 09:48

Seen: 2,176 times

Last updated: 23 Nov '10, 09:16

OR-Exchange! Your site for questions, answers, and announcements about operations research.