我有几个if-else语句。我想使用cplex
来解决使用java的问题而我不知道如何在if-else
中制定cplex
。我有这样的声明:
if (stock[i][t] <=Seuil || stock[i][t] <= livraison[i][t] )
then ( order[i][t]==Q && stock[i][t+1] == stock[i][t]-livraison[i][t]+order[i][t]);
与stock[i][t]
和stock[i][t]
:决策变量
Seuil
,livraison[i][t]
和Q
已知(参数)
答案 0 :(得分:0)
你的问题不明确。我认为您使用的是OPL语言,因为您在语句中使用了“then”这个词。如果是,那么你的陈述的class Entry(Widget):
name = StringProperty('Example')
date = StringProperty('00/00/0000')
status = StringProperty('static/right.png')
def on_touch_down(self, touch):
super(Entry, self).on_touch_down(touch)
popup = Mypopup(name=self.name)
popup.open()
return True
class MainScreen(FloatLayout):
def __init__(self, **kargs):
super(MainScreen, self).__init__(**kargs)
layout = GridLayout(cols=1, spacing=10, size_hint_y=None)
layout.bind(minimum_height=layout.setter('height'))
for i in range(10):
layout.add_widget(Entry(name='Facebook', date='12/12/2012', status='static/right.png'))
for i in range(10):
layout.add_widget(Entry(name='Facebook', date='12/12/2012', status='static/wrong.png'))
scroll = ScrollView(size_hint=(1, None), height=Window.height)
scroll.add_widget(layout)
self.add_widget(scroll)
部分
if
混合决策变量和参数/数据/已知量。
如果您正在尝试建模if-then条件,那么您将不得不引入二进制变量来表示不同的逻辑条件。
答案 1 :(得分:0)
如果您使用OPL,则可以使用逻辑约束。 让我给你一个代码中的小例子:
int Seuil=5;
range I=1..4;
range T=1..3;
int order[i in I][t in T]=i+t;
int Q=1;
dvar int stock[I][T] in 0..10;
dvar int livraison[I][T] in 0..10;
subject to
{
forall(i in I,t in T:(t+1) in T)
(stock[i][t] <=Seuil || stock[i][t] <= livraison[i][t] )
=> ( order[i][t]==Q && stock[i][t+1] == stock[i][t]-livraison[i][t]+order[i][t]);
}
问候