[Os-project-managers] Question about OSxLParserdata, OSInstance, OSOption

Kipp Martin kmartin at chicagobooth.edu
Tue Dec 21 10:06:41 EST 2010


Hi Gus:

>>> }//getVariableLowerBounds
>> I agree that this is faster. But remember what I wrote earlier about
>> the danger of memory pollution? If you give the user access to your
>> memory in this way, you run the risk that they overwrite your memory.
>> I do not consider this safe.

As mentioned in previous email, no they can't, this was made 
intentionally private.
> 
> Can I summarize the state of affairs as follows: The constitution  
> requires OSInstance, OSResult and OSOption, but for efficiency it may  
> be more expeditious to switch to a flat storage scheme. Is that fair?

Yes, absolutely, Jun has made this point a number of times.
> 
> 
> Can I also ask about set() methods? I noticed that OSParseosil.y  
> stores things into the OSInstance object directly; for example in line  
> 1109:
> 
> osinstance->instanceHeader->name = pelementText;
> 
> or in line 1440:
> 					osinstance->instanceData->variables->var[varcount]->lb
>          = atofmod1( osillineno,attText, attTextEnd);
> 
> One of the things that is slowing me down is the endless writing and  
> invoking of set() methods to get the data into the OSOption object.  
> Was that even necessary? Should I have left in the old

No it was not necessary.
> 
> osoption->general->serviceURI = $3;
> 
> in place of
> 
> if (osoption->setServiceURI($3) == false)
>         osolError(...)

Yes, probably so.  I even asked you about this specific point and we 
discussed it. I was surprised you wanted to use the set methods but did 
not object.
> 
> 
> These are nagging questions, and I am more and more thinking that  
> maybe Bjarni had it right all along --- that an XML schema with flat  
> structure would have been a lot easier. (Witness:  
> m_mdVariableLowerBounds, postfix notation, etc.)

No, I do not agree. I am with Jun on this one. The constitution says 
nothing about the internal scheme for get and set methods and flat is 
perfectly acceptable.

There is a MAJOR difference between OSInstance and OSResult/OSOption. 
In general OSInstance will contain much bigger things (such as the 
entire A matrix versus just the solver options). Also I envision the 
same OSInstance object being used many times within for example a branch 
and bound scheme. Efficiency is really important for large problems. 
However, I see the same OSOption being read only once.
> 
> I am getting more and more confused about this. It seems to be a  
> *MAJOR* point to discuss on the 29th. BTW, I am not sure how we should  
> handle that. I completely forgot that the university closes between  

I think so.

> Christmas and New Year (or rather, I forgot that we were this far  
> advanced in the year already), so it looks like I won't have the  
> conference call available. We may have to use skype instead.

I guess Skype. I am here in Hawaii and do not have access to University 
phone.

Cheer
> 
> Cheers
> 
> gus
> 
> _______________________________________________
> Os-project-managers mailing list
> Os-project-managers at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/os-project-managers


-- 
Kipp Martin
Professor of Operations Research
and Computing Technology
Booth School of Business
University of Chicago
5807 South Woodlawn Avenue
Chicago, IL 60637
773-702-7456
kmartin at chicagobooth.edu
http://www.chicagobooth.edu/faculty/bio.aspx?person_id=12825325568
http://projects.coin-or.org/OS



More information about the Os-project-managers mailing list