As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm looking for a good easy to use Java based Quadratic Programming (QP) solver.
Googling around I came across ojAlgo (http://ojalgo.org).
However, I was wondering if there are any other/better alternatives.
Have a look at Apache Commons Math. I haven't used ojalgo, and I really can't say I've used Commons Lang enough to be able to provide you with a lot of details, but it did do what I needed.
Description from their website:
Commons Math is a library of
lightweight, self-contained
mathematics and statistics components
addressing the most common problems
not available in the Java programming
language or Commons Lang.
Guiding principles:
Real-world application use cases determine development priority.
This package emphasizes small, easily integrated components rather
than large libraries with complex
dependencies and configurations.
All algorithms are fully documented and follow generally
accepted best practices.
In situations where multiple standard algorithms exist, a Strategy
pattern is used to support multiple
implementations.
Limited dependencies. No external dependencies beyond Commons
components and the core Java platform
(at least Java 1.3 up to version 1.2
of the library, at least Java 5
starting with version 2.0 of the
library).
SuanShu has implemented the Active Set method to solve quadratic programming problem.
Examples are found here:
http://redmine.numericalmethod.com/projects/public/repository/entry/Examples/src/main/java/com/numericalmethod/suanshu/examples/QuadraticProgramming.java
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
If you need to choose the language to write your integration tests, what language would you pick? (from the above, or maybe another language).
The requirements that I think the language should meet are at least the following: fast, reasonable IDE, easy to learn.
Thanks!
I'd say Groovy is probably the best choice.
It offers significant advantages over Java (closures, list/map literals, very compact implementation of mocks)
It's very easy to learn incrementally for anyone familiar with Java (Scala is much more different, and many also consider the language inherently more difficult)
Groovy is pretty well supported by IDE plugins by now
The speed of the language is almost certainly not going to matter for integration tests, as the system being tested will probably contain much larger overheads (especially if a database is involved)
However, if you're already using Scala elsewhere (especially in the system under test) and can assume youre developers to be familiar with it, Scala may be a better choice.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I've read this discussion on Stackoverflow, but it's been over two years since it was asked. I am a beginning Java programmer and have little knowledge of appreciated and widely-used libraries for this platform.
Of course I do use some libraries (JUnit, parts of Spring), but I'd love to have a list of libraries, that every Java developer should know (i.e. Hibernate, Velocity..?). I am interested in every field of Java applications.
What would you recommend for me (or any other beginner) to check out?
Here is a good list of Java libraries you should know about.
https://java-source.net/
Every beginner should spend more time learning core java. There are no all-around libraries. Most if not all libraries are problem/domain specific...
My oppinion...
Apache commons has many libraries (like copying a stream to another). In the Java EE web application area the Spring framework provided independent utility libraries (like file upload servlet filter and for dependency injection), that meanwhile becomes less important because of the simplifications in Java EE.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I want to rewrite some signal processing code of mine from C++ to Java. I wind up with matrices of complex numbers (numbers with imaginary components). I need to find the inverse of an NxN complex matrix, as well as the principle eigenvector.
There are several Java libraries to do this with real numbers, but I couldn't find anything that supported complex numbers. I found one library but it was proprietary and had to be licensed.
Has this been implemented anywhere?
I can always wrap the needed C code with JNI, but I was doing this to avoid platform dependence.
I'd recommend Apache Commons Math. I believe that it carries on from where JAMA left off.
In a past university course, I worked with JAMA.
There is a java LAPACK that's basically an automatic translation of the FORTRAN one: http://www.netlib.org/java/f2j/ . The packaged sources don't include the complex ones unfortunately, but you can apply the same technique to those, I guess. Might be a lot of effort though, and I can't vouch for the performance to be satisfactory.
Also have a look at JavaNumerics at http://math.nist.gov/javanumerics/#libraries . They have a quite comprehensive list of things that might help you.
I recommend Michael Thomas Flanagan's Java Scientific Library: http://www.ee.ucl.ac.uk/~mflanaga/java/index.html
I found it much easier to use than the others mentioned in this post so far.
cern.colt is worth trying.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I want to use math functions for data mining and analytics purpose.
I need an opinion about a library that I can use for this purpose with java.
Do you have any recommendations?
There is colt.
The Colt library provides fundamental general-purpose data structures optimized for numerical data, such as resizable arrays, dense and sparse matrices (multi-dimensional arrays), linear algebra, associative containers and buffer management.
The Jet library contains mathematical and statistical tools for data analysis, powerful histogramming functionality, Random Number Generators and Distributions useful for (event) simulations, and more.
The CoreJava library contains C-like print formatting. The Concurrent library contains standardized, efficient utility classes commonly encountered in parallel & concurrent programming.
Apache Commons Math might be helpful. So might JAMA.
UPDATE: In the 2.5 years since I last answered this, I've become aware of Apache's Mahout and WEKA. Both are excellent Java libraries for data analysis.
Both are more appropriate answers for the narrower concern of data mining.
JScience is certainly worth a look. Some examples involving rational arithmetic and unit conversion are seen here, here and here.
java.lang.Math
has got a lot of useful math functions.
Your question is a little vague but check out Weka.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have a client currently thinking about using SeeBeyond / Sun's JCAPS product, does anyone on SO have any positive or negative experiences using / developing for it ?
SeeBeyond/JCAPS might not have a future now that Oracle has bought Sun.
JCAPS 6 is quite convenient for Integration problematic (hospital in my case); however the design pattern used here (Message routing) might be a bit complicated to set up from scratch.
JCAPS 6 is also far better, easier, faster ... than it's ancestor eGate:)
I done JCAPS for a while now, If you try using JDeveloper it may be harder since you need to set up a lot of other stuff rather than just code for your needs. For example like ant build and also apache web service.
If you focus on developing a fast integration, JCAPS would be better. But then again, you still need to do some performance tuning before it is really good. Not so sure about TIBCO since they are well known also.
maybe rather look into using JDeveloper. Its user interface is very similar to jcaps, and very easy to use.
As far as developing SOA solutions go, Java CAPS is very useful.
However, Oracle's plan for this product is not that clear. They said they would not have any new feature releases; instead, they will have only maintenance releases. They are focusing on Weblogic SOA product suit.