Slashdot Mirror


MATLAB Programming Contest Winner Announced

gooru writes "The MATLAB programming contest winner has been announced. It is a semi-annual programming contest organized by the MathWorks. What makes the contest truly interesting is the final phase is open source. Contestants may submit as many entries as they want and can tweak other entries."

22 of 224 comments (clear)

  1. MORTAL MATLAB by Anonymous Coward · · Score: 4, Funny

    The next contest should be to the death. Execute those who fail it. There can only be one. Then we'll see some real open source programming.

  2. Comment removed by account_deleted · · Score: 5, Informative

    Comment removed based on user account deletion

  3. Be Wary of Conclusions about Programming Contests by reporter · · Score: 3, Interesting
    Invariably, in contests of this nature, people are apt to draw specious conclusions from the results of the contest. In a recent programming contest involving teams of students from across the globe, the American teams performed poorly. Professor Matloff then rebutted the cries for government intervention to increase the quality and quantity of computer-science students.

    Now, this Matlab contest is positioned to lead to the same silly cries. So, allow me to present a link to Professor Matloff's excellent article to head off any silly speculations about the decline of American technical prowess.

  4. Re:Down with MATLAB by Daniel+Dvorkin · · Score: 4, Informative

    I do as much as possible of my work (bioinformatics) in Numerical Python. It's really nice to have the power of a general-purpose programming language as well as a numerical feature set that has equivalents for nearly every special-purpose MATLAB function I've ever needed. YMMV.

    --
    The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
  5. Comment removed by account_deleted · · Score: 3, Informative

    Comment removed based on user account deletion

  6. TLL280 in 13 seconds? by Anonymous Coward · · Score: 3, Interesting

    I guess for their speed programming award they are allowed to have prior source. If this wasn't the case, the author would have written it at 393 characters per second!

    I'm beginning to wonder if this was rather some sort of PR effort rather than a true programming challenge.

  7. Re:Down with MATLAB by Strontium-90 · · Score: 5, Interesting

    If you're doing symbolic work, then Mathematica is the program to go with. But if you're doing numerical linear algebra and either don't need the speed of C/C++/Fortran or don't want to deal with those languages, it's kind of hard to beat Matlab. One nice combo is Maple/Matlab. Maple can call Matlab for numerical linear algebra work, and Matlab can call Maple for symbolic work.

    Despite all of the people who complain about Matlab being unstable and using up resources, I've always found that running the command-line version of Matlab is fast and stable. The GUI version has some nice features, but they usually aren't essential to the work that I do.

  8. Try Sci-Lab by reporter · · Score: 5, Informative
    Try Sci-Lab. Its functionality is about 1 order of magnitude greater than that of Octave. Sci-Lab has an extensive library of signal processing functions that equal the capability of Matlab.

    I use Sci-Lab regularly. With Sci-Lab, I have no need to dole out bucks for the commercial version: Matlab.

  9. I Always Write my MATLAB Open Source by schestowitz · · Score: 4, Interesting

    All my MATLAB code is Open Source. And I am the most popular author (jointly with Luigi Rosa) this month. http://www.mathworks.nl/matlabcentral/reports/file exchange/top10Authors/

    --
    My Linux - (L)ove (I)s (N)ever (U)tterly eXPensive
  10. Comment removed by account_deleted · · Score: 3, Informative

    Comment removed based on user account deletion

  11. Comment removed by account_deleted · · Score: 3, Informative

    Comment removed based on user account deletion

  12. The Problem by HillaryWBush · · Score: 5, Informative

    Imagine a sandbox in which there are ants, sugar cubes, anthills, and rocks. Ants like sugar: collectively they want to bring as many sugar cubes as possible back to their anthills before sunset.

    For this contest, you will write the control program that each ant carries with it. Ants, being so small, have some limitations, of course. Each ant can carry no more than one sugar cube at a time. Further, each ant can only see her local vicinity. Your program, which is run sequentially for each ant, knows only what that ant knows. Thus you must bring about the best possible global outcome based only on local conditions. The ants don't have any memory as such, but they can leave behind a chemical trail to guide themselves and others across the sandbox landscape.

    Your score is determined by how much progress you make moving food towards and into the anthills. Ideally your ants will move all the sugar cubes onto anthills. Practically this may not be possible; do the best you can. You receive credit even by moving one sugar cube one step closer to an anthill.

  13. Can't get engineers to use anything else by Latent+Heat · · Score: 3, Informative
    After an entire semester introducing a framework to do certain numerical computations in Java, and explaining that most of the Matlab functions are implemented in Fortran, C/C++, and more recently Java and that Matlab is really just a way of scripting numerical algorithms written in those other languages, students go off and do their semester project in Matlab.

    Matlab is the Visual Basic of numerical computing -- a hodge-podge of grafted-on features. Yes, it gets a job done, yes it promotes code reuse because of the extensive numerical and graphing libraries, but as a "teaching language" it is weak on important concepts, and it is proprietary as all anything, turning engineering colleges into trade schools for MathWorks. And once engineering students glom on to it, you cannot, just cannot get them to use anything else.

    I don't care if they implement a numerical algorithm in C++ or if they implement a numerical algorithm in Java -- both of those languages are pretty much callable from anything else on a wide variety of platforms. Yeah, you can call into Matlab too, but is there a free runtime you can download like with Java? And any kind of numerical algorithm using looping instead of built-in vector operations is going to be dog slow, so it is useless for any "production" use (in an academic environment, production use is where you throw a problem at it that taxes the capacity of whatever generation computers you have -- otherwise it is a toy numerical problem where everything you can discover with it has already been done.)

  14. When did Matlab become commercial? by Asprin · · Score: 3, Interesting


    When I last used Matlab, we used it just for the matrix calculator and, IIRC, it was free. When did it become a commercial product? Did I miss something or was just not paying attention back then?

    --
    "Lawyers are for sucks."
    - Doug McKenzie
    1. Re:When did Matlab become commercial? by Camel+Pilot · · Score: 3, Informative

      Yes you missed something. Matlab sells software subscriptions for around $2k per year and extra for application specific modules - I would call that commercial.

      They ticked me off last year when we late for our subscription payment and they charged us 20% for an adminstration fee which accounted for around $3500.

      This is why I read above about SciLab with interest. I would love to find a solution that meets our needs so can cancel our subscription and hopeful convince others where I work to convert.

      Mathworks has achieved a sort of monopolist position with certain engineering and scientific fields and behaves accordingly

  15. Comment removed by account_deleted · · Score: 4, Informative

    Comment removed based on user account deletion

  16. Re:contests... octave.. by fireboy1919 · · Score: 4, Informative

    A lot of these items are FUD.
    1) You can choose any editor you want to write your matlab code. You just need to run it in octave. Since octave has a command line interpreter, you can show the result with any editor that can display the results of a run command (emacs will do this, too)
    2) Yeah...it has readline, but that's about it.
    3) Poster asked, besides being free...this is part of the price.
    4) Not true. Any code not written in C, which is a good many of the numerical algorithms Matlab includes, have available source so that you can integrate the algorithms into any finished products (Matlab is for prototyping).

    Other than that, you're asking for more than is really needed to extend the functionality.
    5) Octave has a code repository. If they like what you write they use it. In other words, you can contribute to Octave.

    6) Your fault/FUD. It took me about ten minutes.

    7) I didn't have to. More FUD? Obviously this isn't a universal procedure.

    8) I've never looked at my License file. I never track what it's doing. This has never been an issue.

    9) See issue #3

    10) Is this even a reason?

    11) See issue #4

    12) Obviously you don't have very good reasons. I will present some good reasons after we get through this.

    13) This is true of Matlab as well. Try typing "ls" in Matlab and see what happens.

    14) See issue #3

    Having said all that, let me tell you why you should be using Octave.

    The biggest reason is the free as beer thing. Matlab+ all packages needed is astronomically expensive. It's a big deal. We're not talking Microsoft-who-sells-to-consumers expensive - we're talking big-contractors-who-work-for-Engineering-firms expensive. It's kind of like the difference in price between Oracle and Postgres.

    However, SOMETIMES it's worth it. As an Engineering student, I've tried and used regularly Matlab's image toolbox, Matlab's neural net toolbox, and their symbolic toolbox, and compared it to the normal canned algorithms.

    Matlab is very, very good. They put an extra polish on every algorithm they write. In general, they're better written, and produce more clever results than anything else. Keep in mind that I was dealing with underconstrained problems, so the issues where matters of estimation. Matlab got more accuracy or faster convergence out of it's canned algorithms than you'd get if you wrote them straight from the descriptions supplied by the algorithm's authors.

    Having said that, it's quite likely that there are certain areas that Octave will probably eventually fall behind. Symbolic work is one, I think, since their symbolic toolbox is actually an interface to Maple's symbolic engine, which they rent.

    Maple doesn't have the manpower to compete with the OSS people writing computer algebra systems. IMHO, right now it's about tied. Three years ago Maple was ahead.

    --
    Mod me down and I will become more powerful than you can possibly imagine!
  17. not a troll -- MW is more evil than M$ by EccentricAnomaly · · Score: 4, Interesting

    An open source matlab contest is the same animal as if Microsoft held an open source Excel or Visual Basic contest... except that Matlab costs a lot more, and Mathworks tend to be a lot more evil in its licensing terms.

    Matlab costs about $3500... but at my work, somehow it costs $70,000 a year because of some weird ass licensing scheme matlworks sticks large government labs with. I've tired to convince my project that for that money it makes more sense just to hire programmers to add whatever features we need to octave and go tell mathworks to fuck themselves.

    Oh, and by the way... all of that money is still not enough to get you bug reports noticed. For that you need to pay for some sort of premiere program.

    --
    There are 10 types of people in this world, those who can count in binary and those who can't.
    1. Re:not a troll -- MW is more evil than M$ by nicsterrr · · Score: 4, Interesting

      It's even worse than this.. The origins of Mathworks was an open source system created by an academic and improved by other contributors.

      One day a business man came along and convinced the creator to leave academia in order to exploit his open source creation by closing the source and selling it to existing users.

      Ten years later, Mathworks is a semi-monopoly in numeric computing in academia.

  18. Re:Does one of the entries... by headhot · · Score: 3, Informative

    um.. i=0:1:10.
    Or do you mean address the first element with 0? Who cares if you start with zero, get used to it and move on.

    If you use Matlab in a Unix enviornment ^c works.

  19. Re:Just how bad is MATLAB? by alphakappa · · Score: 4, Insightful

    You have dissed the language while it is amply clear that you have never used it. However let me clear this up - Matlab may not have the advanced features of c/c++, but it is designed to be a prototyping language - something that will help you test your algorithms fast. You can write code that will solve your differential equations, or do some signal processing with just a few lines - working with matrices becomes extremely simple since you don't have to worry about coding the intricacies of matrix manipulation. It makes FORTRAN look retarded as far as usability and speed of coding goes. It is definitely not as fast as programs created in C/FORTRAN, but it's not the speed of the code that's the objective here -it's how fast you can write up some code.

    --
    "When the only tool you own is a hammer, every problem begins to resemble a nail." - Abraham Maslow (1908-1970)
  20. MATLAB serial key cracker by julie-h · · Score: 4, Funny

    I submitted the algorithm that MathWorks uses for generating the MatLab serial key.

    It have a user friendly gui and everything, so I had hoped it had a chance.