4
votes

I am evaluating Wolfram Mathematica 8 for a university course project.

I am having difficulties to define a Goal Programming model. First because I am really scarce in math :) Second, because what I found in the official documentation (look for "Multiobjective Optimization: Goal Programming") is poor.

I am trying to define a little model for allocation of resources in maintenance phase of a software project. This is the informal model definition:

Informal Goal Programming model

Don't worry about the Curly Phi function. It is an activation function that returns 1 if the number of hours exceeds a threshold. The threshold is the average number of hours that a bug needs in order to be solved.

Please don't comment about the usefulness of this model: it is not an objective of the course. Moreover, the number of hours here is casual, for testing.

I am requesting help to express this informal model into a Mathematica Goal Programming model. That is, I am having problems with the syntax and the built-in functions.

Please comment here if you need additional information, I will provide them.

For moderators: the tags linear-goal-programming and model-definition could be useful here but I don't have the reputation to create them.

1
Isn't this just constrained Optimization / linear programming? - Verbeia
it would be. Unfortunately, the activation function is not linear (it uses ArcTan). - user237076
@dgraziotin Could try NMinimize for this. Either make one objective into a constraint, or else optimize some convex combination of the two objectives. - Daniel Lichtblau

1 Answers

1
votes

Here is how I solved it. Probably :) My professor will tell.

Of course it is not elegant, keep in mind that I am using Mathematica since a couple of weeks and I have never done such type of development before.

It uses a regular Goal Programming model like the one proposed by Ignizio, J.P. (1978).

There is just one "step" of minimization for now.

I provide the screenshots, if some of you is interested in the source-code just write a comment with some contact details.

GP model part 1GP model part 2

1: A Review of Goal Programming: A Tool for Multiobjective Analysis. James P. Ignizio The Journal of the Operational Research Society , Vol. 29, No. 11 (Nov., 1978), pp. 1109-1119 http://www.jstor.org/stable/10.2307/3009359