Serving the Quantitative Finance Community

 
User avatar
Andrew
Topic Author
Posts: 0
Joined: August 20th, 2001, 7:33 pm

Prolog Language Use in QF?

April 19th, 2007, 1:19 pm

I work extensively in data mining and KDD and I was curious if there was much use of the Prolog language (or similar programming languages) in solving problems in quantitative finance. I have seen some engines that work as solvers for bounded optimization problems in derivatives pricing, but I wonder about its broader use in numerical and boolean analytics.
 
User avatar
quantmeh
Posts: 0
Joined: April 6th, 2007, 1:39 pm

Prolog Language Use in QF?

April 19th, 2007, 4:45 pm

i didnt see a single person using prolog in usa in past 7 years. i got an impression that in place where you'd use prolog, here people would use LISP.
 
User avatar
DominicConnor
Posts: 41
Joined: July 14th, 2002, 3:00 am

Prolog Language Use in QF?

April 19th, 2007, 6:57 pm

Don't see it a lot these days. However, I know of two managers who have classical programming backgrounds who would see that as strong evidence of being able to do hard stuff.If you're really good at optimisation, like really good we have a job going where imperative programming skills aren't critical.(I wrote a Prolog interpreter in 1984..., those were the days)
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Prolog Language Use in QF?

April 19th, 2007, 7:04 pm

ah yes, Prolog was the darling of CS professors and departments in the 1980's. It was also central to Japan's fifth generation project. At the time we were all scared we'd lose our jobs to AI-based systems. I'm glad i chose C++ in 1989 Our company wrote a command-line expert language for MCAD in Prolog. Nice but not very suitable.5gen QuoteBy any measure the project was an abject failure. At the end of the ten year period they had burned through over 50 billion yen and the program was terminated without having met its goals. The workstations had no appeal in a market where single-CPU systems could outrun them, the software systems never worked, and the entire concept was then made obsolete by the internet.Ironically, many of the approaches envisioned in the Fifth-Generation project, such as logic programming distributed over massive knowledgebases, are re-interpreted in current technologies. OWL, the Web Ontology Language employs several layers of logic-based knowledge representation systems, while many flavors of parallel computing proliferate, including Multi-core (computing) at the low-end and Massively parallel processing at the high end. The Fifth-Generation project was aimed at solving a problem that is only now realized by the world at large.
Last edited by Cuchulainn on April 18th, 2007, 10:00 pm, edited 1 time in total.
 
User avatar
N
Posts: 0
Joined: May 9th, 2003, 8:26 pm

Prolog Language Use in QF?

April 19th, 2007, 7:17 pm

Didn't everyone program in Scheme in those days?
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Prolog Language Use in QF?

April 19th, 2007, 7:28 pm

QuoteOriginally posted by: NDidn't everyone program in Scheme in those days?After the brief encounter with AI I decided is was not for me (the Minsky blocks world was too 'difficult' for me), So, probabley yes.
 
User avatar
kilimanjaro
Posts: 0
Joined: March 23rd, 2007, 3:23 am

Prolog Language Use in QF?

April 19th, 2007, 7:29 pm

Logic programming is inherently way more parallel than anything you would do in C++ (unless you were writing nondeterministic search in C++). Prolog itself is pretty old-hat; people these days want constraint logic programming, tabled logic programming, inductive logic programming, etc. Sure, people overhyped Prolog; that's what happens when any exciting technology comes along. One of the advantages of logic programming over using a different paradigm is that some problems are naturally suited to the LP approach... it can save you a lot of time. But on the other hand, you aren't going to write device drivers in Prolog. It's just a tool for a job -- you don't use a screwdriver when you are working with nails. One of the downsides is that the LP paradigm treats problems so generally that if you want to improve performance you end up a) figuring out some tricky way to represent the problem more efficiently (not always easy), b) using cuts or other techniques that are impure and will inherently restrict how reasonable your software is, to both humans and machines, or c) implement the problem in a different language that forces you to write the search algorithm yourself (such as C++, for example). The third case seems to be the most common imho. So on that note, if you were skilled at Prolog or some similar language, it would definitely be to your advantage. Languages like Prolog amplify your ability to get things done. However, there will surely be resistance to it on two fronts: people don't generally understand logic programming, and you will probably find yourself working around the system or reimplementing stuff yourself when you have finished prototyping and want to actually deploy stuff.
Last edited by kilimanjaro on April 18th, 2007, 10:00 pm, edited 1 time in total.
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Prolog Language Use in QF?

April 19th, 2007, 7:41 pm

One major, major problem/challenge with any new technology is the _installed_customer_base_ If you don't have that base then it's end of the line. That's like a law of physics in software.Unfortunately, AI died in 1989 and OO entered (also much overhyped at the time) center-stage. And there were zillions of lines of C codethat had to be ported to 'a better C'.Medical equipment, CAD, telecom and other hardware systems ran on C...
Last edited by Cuchulainn on April 18th, 2007, 10:00 pm, edited 1 time in total.
 
User avatar
DominicConnor
Posts: 41
Joined: July 14th, 2002, 3:00 am

Prolog Language Use in QF?

April 19th, 2007, 8:17 pm

One of the sad things about AI has been the rise of neural nets, they seem to be a way of "solving" problems without ever understanding them.
 
User avatar
Andrew
Topic Author
Posts: 0
Joined: August 20th, 2001, 7:33 pm

Prolog Language Use in QF?

April 20th, 2007, 12:40 pm

Prolog certainly has a European background, it would seem. I never really used Lisp that much, so I have little to compare regarding logical programming methods. Most of my usage is and will be research and academic oriented, making me indifferent to many other implementation issues as long as my programs work.I was curious why there is much literature in Prolog in academic circles, but not so much in industry. I mean, it seems like a perfectly useful language for list processing and tree searching when rapid prototyping is the aim. I surely won't be concerned about how fast it runs unless I find that I have so many clauses that the search is too slow.