When driving NetLogo, I'd rather use Mathematica, not R. Yet I wonder if the RNetLogo package has advantages I'd be missing. Mostly speed, because the Mathematica Link has plenty of functionality.
Related
I'm planning to carry out a curve fitting task using genetic algorithms. For this purpose, I'm looking for an out of the box tool in python. Can you recommend such libraries? So far, I've come across scipy's optimize.differential_evolution. It looks promising, but before I dive into its specifics, I'd like to get a good sense of what other methods are out there, if any.
Thanks
I'm very new to coding, and need some help with a project of sorts. I have segments of video, and I need to be able to track the motion of an object(s) through these segments, and get data like a mapped path, average and instantaneous velocities, etc. I'm trying to do this in MATLAB, and have the 2016a version installed. Any help is greatly appreciated.
Without knowing exactly what project you're working on, I can guess that Matlab is the wrong tool for this job.
I've been using Matlab near-daily for about four years now, but when I want to track an object in a video, I use Tracker.
Matlab is a good language for a beginning programmer because you can start doing numerical calculations, and plotting the results, very quickly. More advanced programmers tend to use Matlab to process data (Mathworks has many useful libraries for things like Fourier Transforms); to do linear algebra; to do quick numerical analyses; and to build scientific models. These applications are mainly in math, science, and engineering.
If you want to learn Matlab, I recommend you find a project which plays to Matlab's strengths.
If you want to analyse images and videos, I recommend that you learn a language which is used professionally for this purpose, such as Python or Java.
Is it possible to use a MATLAB code on Scilab? Is that what is meant when saying that Scilab is a "clone" from MATLAB?
There is a tool to automatically convert Matlab source to Scilab source, it's called M2SCI. A script parses the Matlab source code and replaces Matlab-specific functions by Scilab ones. See the documentation of the mfile2sci function.
Yes you can use MATLAB code on scilab. See these links for more information:
http://help.scilab.org/docs/5.4.0/fr_FR/section_36184e52ee88ad558380be4e92d3de21.html
http://help.scilab.org/docs/5.4.0/en_US/index.html
I would not bet on it. But if your code is simple enough chances are good.
Problems are:
There is encrypted p-code in Matlab that Scilab will not be able to open.
Matlab usually comes with a number of toolboxes that might not be available to you (i think especially Simulink)
last but not least (i don't know about scilab) there usually are minute differences in how functions are implemented.
There are a number of projects out there trying to replicate/replace MATLAB:
Julia language: which has a relatively similar syntax to MATLAB and offers great performance, but still lacks a lot of toolboxes/libraries, as well as not having a GUI like MATLAB. I think this has the brightest future among all MATLAB alternatives.
Python language and its libraries NumPy and matplotlib: which is the most used alternative. I think at this moment the community is a couple of orders of magnitude even bigger than MATLAB. Python is the de facto standard in machine learning and data science at the moment. But still, the syntax and memory concept is a bit far from what people are used to in the MATLAB ecosystem. There are also no equivalent to SIMULINK, although Spyder and Jupyter projects have come a long way in terms of the development environment.
Octave: is basically a clone of MATLAB to a point they consider any incompatibility as a bug. If you have a long MATLAB code that you don't want to touch, this is the safest bet. But again no alternative for SIMULINK.
SciLab and it's fork ScicoLab are the best alternatives in terms of GUI, having a SIMULINK replica xcos / scicos and a graphical user interface development features. However the community is not as big as Octave and the syntax is not completely compatible. Sadly the Scilab development team has gone through a devastating family crisis leading to the software falling behind.
Honorary mention of Modelica language implementations OpenModelica and jModelica for being a superior alternative to SIMULINK-SimScape. You should know that you can load Modelica scrips also in xcos and scicos. If you want to kno wmore about JModelica you may see this post.
you may check the MATLAB's Alternativeto page to see more Free and Open source alternatives.
I have been using cvx for doing some experiments with my SDPs. Although it is very easy to use, it is quite slow. I cannot run reasonably large instances in reasonable time. Hence would like someone to point to some faster software.
You can find a list of Semidefinite Programming codes on Hans Mittelmann's Decision Tree for Optimization Software. At least some of the codes are implemented in Matlab (like cvx, right?) or have a Matlab interface.
I am writing programs that are based on robots navigating through mazes (would involve stochastic programming).
Since it will involve heavy matrix handling (plus point for MATLAB) and simulating a robot (plus point for Prolog), I am in a dilemma between the choice of MATLAB and Prolog.
Note: I do have MATLAB at my work environment, hence cost is not an issue.
As mentioned previously, I am not sure if you are looking for comparisons between MATLAB and Python or MATLAB and Prolog. I can speak to the former, at least: MATLAB provides fast linear algebraic computation and a great IDE... and that's about it. Python will cost you much fewer headaches (and dollars), and you can manage "heavy matrix handling" nearly as easily if you tack on Numpy in particular, or SciPy in general.
Also, VPython (Visual Python) is a great 3D visualization tool that uses Numpy under the hood. I developed a robot simulator using VPython; you can see screenshots and example code (for simple wall-following maze navigation) that you can check out in a recent blog post.