let b,c be two variables which will be determined in model and a is parameter. How to linearize the following condition. if b,c<a then t=a-b-c otherwise t=b-c. Thanks.

asked 10 Oct '17, 03:36

mmmmm's gravatar image

accept rate: 0%

edited 11 Oct '17, 15:16

Paul%20Rubin's gravatar image

Paul Rubin ♦♦

I've added the tag "conditional-constraint". If you look through the answers there, you might find something you can adapt. You'll need a pair of binary variables and big-M type constraints, one for each part of the antecedent ("if" condition), and another pair of big-M type constraints to enforce the consequents. Also, your antecedent needs to be a weak inequality (\(\le\)), not a strict inequality. Strict inequalities are taboo in most types of optimization model.


answered 11 Oct '17, 15:22

Paul%20Rubin's gravatar image

Paul Rubin ♦♦
accept rate: 19%

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: 10 Oct '17, 03:36

Seen: 392 times

Last updated: 11 Oct '17, 15:22

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