[ojAlgo-user] ojAlgo v34 on Android (continued)
Mathematics, linear algebra and optimisation
Brought to you by:
apete
From: Zahar C. <no...@ma...> - 2013-10-31 10:56:21
|
Hi Anders, Excuse me for writing in a new thread, I haven't got your reply in a mail but can see it on sourceforge. For convenience, I am pasting my original mail with your reply at the end of this letter. Thank you for the CVS link, I was able to reach the source code. I used "v33" branch for my tests. MIP solver required java.lang.management API, and it is not present in Android, so I removed the corresponding function call in file VirtualMachine.java. After that I successfully modeled and run my MIP problem in my Android app. The results are as expected, but the performance is low. My test problem took 20 seconds to run (Samsung Galaxy S2, physical device) and it is only a third of my full-size problem. The full-size problem did not finish in 30 minutes. So it looks like my problem is not that small. The problem that took 20 seconds was around 50 integer variables and 150 constraints. Unfortunately, it is not useful for me. I need at least 20 times faster. However, I was happy that I was able run MIP on Android at all. I searched a lot for how to do it, and there are only a few options available. Pure java solver is the best way, but ojAlgo is the only pure java MIP solver I have found. The second way is to compile some open-source C/C++ libraries with JNI (like GLPK or lp_solve), but this has its own problems, and I can't find testimonies of anyone who has actually done that. Please tell me if you have any words of advice for my situation. Thanks a lot, Zahar *-------------------------------------------------------------------------------------------------------------------------- Re: [ojAlgo-user] ojAlgo v34 on Android <http://sourceforge.net/p/ojalgo/mailman/message/31572265/>* From: Anders Peterson <anders@op...> - 2013-10-28 18:20:53 The source code is definitely available. Where did you get that link? ojAlgo uses CVS, not SVN: https://sourceforge.net/p/ojalgo/code/ v34 cannot be compiled using java 5 or 6 without re-coding. One of the things that changed with v34 is the use of the fork-join framework (ForkJoinPool and ForkJoinTask). The MIP solver is (now) highly integrated with these classes - that redesign was part of the improvements that came with v34. Java 6 was never a target. Switching back to Java 5 should be roughly the same amount of work. My guess is that you'll find this to be too much work... /Anders On 28 okt 2013, at 18:10, Zahar Chikishev<nosound@...> wrote: > Hello, > > I wish to use ojAlgo to solve small MIP problems in my Android > application. The problem is that Android does not support Java 7 > compiled libraries. Version 33 of ojAlgo seems to work OK in my app, but > I prefer to use 34 since, as far as I understand, it includes major > improvements to MIP solver. > > So my question is, can version 34 be compiled on java 5 or 6? It is OK > if some functionality is lost, as long as simple MIP problems can be > solved. I tried to do it myself, but can't access the source code. I > understand that the following is SVN link: >https://ojalgo.svn.sourceforge.net/svnroot/ojalgo/ > but it gives errors. > > So my second question is how I can access the source code. Is it still > available? > > Thanks, > Zahar > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > >http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk > _______________________________________________ > ojAlgo-user mailing list > ojAlgo-user@... >https://lists.sourceforge.net/lists/listinfo/ojalgo-user > > |