Cutting Plane using Java - optimization

I am working in my project using Java with Cplex library. But I'm stuck at applying cuttting plane. Is there any tutorial or article for that? Thanks for your help.

There are many examples included with CPLEX when you install CPLEX Optimization Studio (COS). For example, if COSDIR is the location where you installed the product, then the examples can be found at COSDIR/cplex/examples/src/java. In particular, you should look at the AdMIPex4.java and AdMIPex8.java examples. See the documentation for the new generic callbacks in CPLEX 12.8 or the legacy callbacks.

Related

Pointcloud to Model with CGAL complete beginner, Tutourial? Guide or tips?

I've stumbled upon CGAL and it seems amazing.
Anyone know of any simple ways I can test some of it's magic out without knowing any prior C++ or programming? Or a really thorough guide?
Just to get you an understanding of my general tech level(unrelated to CGAL) I know printf.. prints.. stuff.. but I have no idea how to put that into practice. And I've managed to install npm modules by slamming commands into cmd and run a module afterwards.
If there's no easy beginning to get a taste of this, other tips is also welcome if I have to take a longer route to understanding this.
What I want to achive is my input is pointcloud data scans -> magic/CGAL/ -> 3D models is my output
You can try the 3D polyhedron demo that contains most of the functionalities of CGAL.
You can compile it yourself by compiling the code in demo/Polyhedron from a release or use the pre-compiled windows demo available: demo + dlls to be extracted in the directory of the demo.
Also here is a WIP version of a tutorial that should be integrated in the official documentation soon.

Is it possible to use Microsoft Visual Studio to build an UI for a CPLEX Optimization Model?

I'm currently building a timetable model on CPLEX O.S. My question is: is it possible to connect it to Microsoft Visual Studio in order to create an UI to let the user enter the initial data and parameters? Or maybe let Excel be the data input interface and then have a V.S built interface to load that file and begin the optimization problem? I would like to make it as easier as possible to optimize a timetable using the model I'm creating. I've been searching for it and found something called Concert Technology, not sure if this is what I need, still learning about it.
Yes, this is absolutely possible. If you're going to be using Visual Studio, the easiest option is probably to create a GUI application using .NET. Then, you can consume the CPLEX .NET API from within your application. Another option would be to use C++, but that would probably be considerably more complex. There's really no difference between calling CPLEX from a GUI application versus calling CPLEX from a console application. Usually you would add some logic to a button click event handler that would build the model in CPLEX, solve it, and gather the solution information. Take a look at the CPLEX User's Manual, CPLEX .NET Reference Manual, CPLEX C++ Reference Manual, and the many examples that are included with CPLEX when you install the software.
Absolutely, as Alex and rkersh already said. It is much much simpler than people expect to just write your application as you want it to be in C# or C++ (or any of the other supported languages). Then just use the CPLEX Concert API calls into the CPLEX library to build and solve your model and retrieve the answers. It won't make any difference to the performance of your model whichever language you use. Using the CPLEX API means that it is just like any other library. CPLEX is just software like any other.
there are many options:
You can write everything in C++ or C# with the CPLEX Concert API https://www.ibm.com/support/knowledgecenter/SSSA5P_12.8.0/ilog.odms.cplex.help/CPLEX/GettingStarted/topics/tutorials/Cplusplus/cpp_synopsis.html
You may call OPL from C++ or C# with API https://www.ibm.com/support/knowledgecenter/SSSA5P_12.8.0/ilog.odms.ide.help/OPL_Studio/usroplinterfaces/topics/opl_interf_intro_cpp.html
You may try VSTO : https://www.ibm.com/support/knowledgecenter/en/SSSA5P_12.6.3/ilog.odms.ide.help/OPL_Studio/usroplinterfaces/topics/opl_interfaces_work_integrateExcel.html
You may call OPL from Excel

Dojo build profile.layers vs. profile.dependencies.layers?

Wow, this is totally confusing and the dojo 1.8 documentation seems a complete clusterf**k around build layers. Anybody have a clue what's going on there?
In the build script example profiles, the example amd.profile.js has profile.layers["dojo/dojo"] and the tutorial follows this same syntax.
Besides the tutorial, in the 1.8 build documentation there is no mention of this kind of structure, but of profile.dependencies.layers[n].
The documentation also references non-AMD syntax and, just to add another "layer" of confusion, there's also a profile.dependencies.layers[n].dependencies.
Which should I be using? Is this actually documented anywhere with any consistency or clarity?
I have learned that the Dojo 1.8 Reference Guide contains obsolete information regarding build profiles, but that the Dojo 1.8 Build tutorial is current:
http://dojotoolkit.org/documentation/tutorials/1.8/build/
That tutorial recommends this blog post for more information about layers and build optimization: http://www.sitepen.com/blog/2012/06/11/dgrid-and-dojo-nano-build/

How integrate a linear programming solver like CPLEX in VB.NET?

I want to solve a linear programming model which is build through VB.NET. In this context I have following questions,
a) How to call a CPLEX or any such solver (Coin-OR) through VB.NET?
(While doing so I do not want CPLEX window to be opened. i.e. It should solve it in the background.)
b) How to transfer the LP model to CPLEX? (Again I want to stay away from opening a new window and then write the model to CPLEX)
VB.NET understanding: Intermediate
Thanks
Microsoft Solver Foundation provides a plugin for CPLEX, and there are samples that shows both how to invoke the CPLEX plug-in and how to call MSF from VB.NET. You can download the standard MSF library from here.
CPLEX can be used in VB.NET through the CPLEX/Concert .NET API which is a standard API supplied with the solver and is pretty straightforward to use. There is a good documentation available including this example and this tutorial. Examples are in C# but should give you the idea how to use the API in any .NET language.
You could also use MS Solver Foundation but it incurs additional costs and the product is discontinued.

calculus engine in vb?

is there an easy to use library or engine for .NET that does calculus?
I posted an early version of some code I used in one of my classes in an answer to this thread:
Generated methods for polynomial evaluation (my answer includes classes for symbolic differentiation)
If I know exactly what you're looking for, I could try to post an updated version.
Google is suggesting you look through Wikipedia's list of free libraries that can do automatic differentiation, and see if any have a .NET or COM wrapper. EDIT: High-Performance Mark has pointed out that it appears you need symbolic differentiation, in which case these libraries won't help.
If you are keen, you possibly could create a .NET wrapper for one of the C++ libraries.