How to use variable in functions in Pyomo












0















I define a function in pyomo as below:



def func(model,i):

alpha = (model.a[i]+model.b[i])/2

X = model.W1[i] if i in model.Vc3 else model.W2[i]

return fuzz.trimf(np.array([X]), [model.a[i], alpha, model.b[i]])

model.func = Expression(model.VcT, rule = func)

def Cons003(model,i):
return model.Mu[i] - model.func(model,i) <= M * (1- model.P[i])

model.Cons003 = Constraint(model.VcT , rule = Cons003)

def Cons004(model,i):
return model.Mu[i] - model.func(model,i) >= M * (1- model.P[i])

model.Cons004 = Constraint(model.VcT , rule = Cons004)


When i execute the code i get error massage as:




No value for uninitialized NumericValue object




model.W1[i] and model.W2[i] are problems variables.



How can i solve this issue?



you can find model and data file in here.










share|improve this question

























  • please share your full code. Missing the "model" definition and some others..

    – Aaron_ab
    Dec 30 '18 at 20:52











  • I add model coda and data.

    – Soheil MT
    Dec 31 '18 at 4:31











  • What is fuzz.trimf() doing?

    – Qi Chen
    Dec 31 '18 at 19:56











  • It create triangular membership function.

    – Soheil MT
    Dec 31 '18 at 19:57
















0















I define a function in pyomo as below:



def func(model,i):

alpha = (model.a[i]+model.b[i])/2

X = model.W1[i] if i in model.Vc3 else model.W2[i]

return fuzz.trimf(np.array([X]), [model.a[i], alpha, model.b[i]])

model.func = Expression(model.VcT, rule = func)

def Cons003(model,i):
return model.Mu[i] - model.func(model,i) <= M * (1- model.P[i])

model.Cons003 = Constraint(model.VcT , rule = Cons003)

def Cons004(model,i):
return model.Mu[i] - model.func(model,i) >= M * (1- model.P[i])

model.Cons004 = Constraint(model.VcT , rule = Cons004)


When i execute the code i get error massage as:




No value for uninitialized NumericValue object




model.W1[i] and model.W2[i] are problems variables.



How can i solve this issue?



you can find model and data file in here.










share|improve this question

























  • please share your full code. Missing the "model" definition and some others..

    – Aaron_ab
    Dec 30 '18 at 20:52











  • I add model coda and data.

    – Soheil MT
    Dec 31 '18 at 4:31











  • What is fuzz.trimf() doing?

    – Qi Chen
    Dec 31 '18 at 19:56











  • It create triangular membership function.

    – Soheil MT
    Dec 31 '18 at 19:57














0












0








0








I define a function in pyomo as below:



def func(model,i):

alpha = (model.a[i]+model.b[i])/2

X = model.W1[i] if i in model.Vc3 else model.W2[i]

return fuzz.trimf(np.array([X]), [model.a[i], alpha, model.b[i]])

model.func = Expression(model.VcT, rule = func)

def Cons003(model,i):
return model.Mu[i] - model.func(model,i) <= M * (1- model.P[i])

model.Cons003 = Constraint(model.VcT , rule = Cons003)

def Cons004(model,i):
return model.Mu[i] - model.func(model,i) >= M * (1- model.P[i])

model.Cons004 = Constraint(model.VcT , rule = Cons004)


When i execute the code i get error massage as:




No value for uninitialized NumericValue object




model.W1[i] and model.W2[i] are problems variables.



How can i solve this issue?



you can find model and data file in here.










share|improve this question
















I define a function in pyomo as below:



def func(model,i):

alpha = (model.a[i]+model.b[i])/2

X = model.W1[i] if i in model.Vc3 else model.W2[i]

return fuzz.trimf(np.array([X]), [model.a[i], alpha, model.b[i]])

model.func = Expression(model.VcT, rule = func)

def Cons003(model,i):
return model.Mu[i] - model.func(model,i) <= M * (1- model.P[i])

model.Cons003 = Constraint(model.VcT , rule = Cons003)

def Cons004(model,i):
return model.Mu[i] - model.func(model,i) >= M * (1- model.P[i])

model.Cons004 = Constraint(model.VcT , rule = Cons004)


When i execute the code i get error massage as:




No value for uninitialized NumericValue object




model.W1[i] and model.W2[i] are problems variables.



How can i solve this issue?



you can find model and data file in here.







python-3.x pyomo






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 31 '18 at 4:30







Soheil MT

















asked Dec 30 '18 at 17:27









Soheil MTSoheil MT

64




64













  • please share your full code. Missing the "model" definition and some others..

    – Aaron_ab
    Dec 30 '18 at 20:52











  • I add model coda and data.

    – Soheil MT
    Dec 31 '18 at 4:31











  • What is fuzz.trimf() doing?

    – Qi Chen
    Dec 31 '18 at 19:56











  • It create triangular membership function.

    – Soheil MT
    Dec 31 '18 at 19:57



















  • please share your full code. Missing the "model" definition and some others..

    – Aaron_ab
    Dec 30 '18 at 20:52











  • I add model coda and data.

    – Soheil MT
    Dec 31 '18 at 4:31











  • What is fuzz.trimf() doing?

    – Qi Chen
    Dec 31 '18 at 19:56











  • It create triangular membership function.

    – Soheil MT
    Dec 31 '18 at 19:57

















please share your full code. Missing the "model" definition and some others..

– Aaron_ab
Dec 30 '18 at 20:52





please share your full code. Missing the "model" definition and some others..

– Aaron_ab
Dec 30 '18 at 20:52













I add model coda and data.

– Soheil MT
Dec 31 '18 at 4:31





I add model coda and data.

– Soheil MT
Dec 31 '18 at 4:31













What is fuzz.trimf() doing?

– Qi Chen
Dec 31 '18 at 19:56





What is fuzz.trimf() doing?

– Qi Chen
Dec 31 '18 at 19:56













It create triangular membership function.

– Soheil MT
Dec 31 '18 at 19:57





It create triangular membership function.

– Soheil MT
Dec 31 '18 at 19:57












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53979846%2fhow-to-use-variable-in-functions-in-pyomo%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53979846%2fhow-to-use-variable-in-functions-in-pyomo%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Monofisismo

Angular Downloading a file using contenturl with Basic Authentication

Olmecas