Welcome to blog contributor Roberto Castañeda Lozano, whose post on Financial Markets, Random Testing and Constraint Programming describes a system he developed as part of his Master’s thesis (which won a prize by the Swedish AI Society this year).

Two guest blog entries in a row, do you see a trend here? If you have developed a constraint application and want to present it to the world in a non-technical way, get in touch!

Posted on by hsimonis | Leave a comment

Financial Markets, Random Testing and Constraint Programming

Nowadays, all major financial markets use computer trading systems to support their trading activities. Because failures in these systems can cause serious economic damage, reliability is a top goal in their development.

Stock Exchange. By Travel Aficionado, from http://www.flickr.com/photos/travel_aficionado/2396814840/

The complex functionality that trading systems deliver makes testing them challenging. A tester with knowledge in the financial domain can generate test cases that cover the most usual trading scenarios, but it is practically impossible to come up with all the situations that will occur in production. At Cinnober, the company that develops the trading system TRADExpress, the manual generation of test cases is complemented with random testing, as an attempt to cover uncommon (yet possible) scenarios.
Continue reading

Posted in 2010, 66 Auxiliary to Financial and Insurance Activities, 66.11 Administration of Financial Markets, CP Conference, K Financial and Insurance Activities | Tagged , , , | 1 Comment

Context-Sensitive Call Control using Constraints and Rules

Telecommunications services like instant messaging or internet telephony bring increased flexibility to communicate at home, in the office or on the move. Their pervasiveness is also a source of disruptions and intrusions. Service providers are therefore looking for personalisation solutions allowing users to control the timing and modalities of their communications. In the case of telephony services, personalisation solutions are built around call control features. Technically, a feature is an increment of functionality that modifies the basic system behaviour. Dozens of call control features have been created to address concerns such as mobility, privacy, presentation, or billing (see Figure 1).

Figure 1: Feature and Feature Types

Features are designed as independent separate module and are exposed through feature catalogs (see Figure 2). A user selects from the catalog the set of features that he wants to be active during the session in which he is involved. He may also want to sequence the activation of the selected features in a particular way to better suit his needs (e.g., he may want to filter his incoming calls before diverting them). The features that the user has selected plus the ordering constraints that he has imposed on them constitute the feature subscription of the user.

Figure 2: An Example of a Catalog

Continue reading

Posted in 2008, 2010, 61 Telecommunications, 61.2 Wireless Telecommunications, Choco, CP Conference, ECAI, J Information and Communications, JAIR, Network, prototype | Leave a comment

The next blog entry will be a guest contribution by Luis Quesda from 4C, who describes joint work with David Lesaint, Deepak Mehta, Barry O’ Sullivan and Nic Wilson on a prototype call control system developed by a joint project of BT and 4C.

I’m sure you will enjoy this description of the 4CRules system, and perhaps this will encourage others to show us their work as well 🙂

Posted on by hsimonis | Leave a comment

Preview of Applications at CP2010 in St Andrews

Just a short note on the upcoming CP2010 conference in St. Andrews. It is a good year for constraint applications, with quite a number of application talks at the conference. I’ve got the following list from the conference programme:


  • 14:00 A Safe and Flexible CP-based Approach for Velocity Tuning Problems. Michaël Soulignac, Rueher Michel, Patrick Taillibert
  • 14:25 Constraint Programming for Mining n-ary Patterns. Mehdi Khiari, Patrice Boizumault, Bruno Cremilleux
  • 14:50 Testing Continuous Double Auctions with a Constraint-based Oracle. Christian Schulte, Roberto Castañeda Lozano, Lars Wahlberg
  • 15:15 Global Constraints on Feature Models. Ahmet Serkan Karata¸, Halit Oğuztüzün, Ali Doğru


  • 11:00 Contingency Plans for Air Traffic Management. Karl Sundequist Blomdahl, Pierre Flener, Justin Pearson
  • 11:25 An Integrated Business Rules and Constraints Approach to Data Centre Capacity Management. Roman van der Krogt, Jacob Feldman, James Little, David Stynes
  • 11:50 Load Balancing and Almost Symmetries for RAMBO Quorum Hosting. Laurent Michel, Alexander Shvartsman, Elaine Sonderegger, Pascal Van Hentenryck
  • 12:15 Context-Sensitive Call Control using Constraints and Rules. David Lesaint, Deepak Mehta, Barry O’Sullivan, Nic Wilson, Luis Quesada
  • 14:00 An Integrated Modelling, Debugging, and Visualisation Environment for G12. Andreas Bauer, Viorica Botea, Mark Brown, Matt Gray, Daniel Harabor, John Slaney
  • 14:25 An Empirical Study of Optimization for Maximizing Diffusion in Networks. Kiyan Ahmadizadeh, Bistra Dilkina, Carla Gomes, Ashish Sabharwal

The best application paper will be presented on Wednesday

  • 10:00 Distinguished paper (Applications Track) Applying Constraint Programming to Identification and Assignment of Service Professionals. Sigal Asaf, Haggai Eran, Yossi Richter, Daniel P. Connors, Donna L.Gresh, Julio Ortega, Michael J Mcinnis

I hope to learn more about these systems at the conference, and to perhaps convince some of the authors to guest-edit a blog post here. Stay tuned!

Posted in Uncategorized | Leave a comment

Bandwidth on Demand

Bandwidth on Demand (BoD) describes a network management problem, where users can request large amounts of bandwidth, but only for some fixed time interval. The network management tool must find out if such a request can be accommodated on the network, and if yes, must provision the network to provide the service at its start-time, and then remove the provisioning at the end of the service period. Parc Technologies and IC-Parc developed such a Bandwidth on Demand solution for Schlumberger in 2003, which was installed on their dexa.net network. I was working on the solver side of this project with Quanshi Xia from IC-Parc, while Nick Bradshaw and Peter Rylance from Parc Technologies worked on the overall system design and implementation. The project was managed by Barry Richards, the director of IC-Parc.

Need for BoD: 3D Seismic Data Analysis (from askchesapeake.com)

Continue reading

Posted in 2003, 61 Telecommunications, 61.1 Wired Telecommunnications, ECLiPSe, J Information and Communications, live application, Network | Leave a comment

Short Article on CPTV

A Short Article in Technology Ireland About CPTV

The work on CPTV (Constrained-Based Personalized TV Schedules) was sponsored by the Commercialization Fund of Enterprise Ireland, one of our national funding agencies, with support from the European Regional Development Fund. In the July/August issue of EI’s magazine, Technology Ireland, you can find a short write-up of the project on pages 14/15.

Posted in 2009, 59 Motion pictures video and TV, 59.1 Motion pictures video and TV programmes, ECLiPSe, J Information and Communications, prototype, Scheduling, Uncategorized | Leave a comment

Please tell me about application areas you want to see more about. This will help me to focus on areas of interest to you!

Posted on by hsimonis | Leave a comment

Train Crew Diagraming

This probably was the most complex and complicated project I was ever working on. And while we delivered the product and met the specification (we even got the bonus payment for solution quality), the system was never used operationally.

The problem is about train crew diagraming for the regional trains services in the north-west of England, centered on Manchester. Most trains used are diesel-powered units like this one:

NWT Type 153 at Carlisle (from Wikipedia)

Continue reading

Posted in 1999, 49 Land Transport, 49.1 Passenger rail transport, CHIP, H Transportation and Storage, industrial study, live application, Personnel, Transport, Uncategorized | Leave a comment

Open Flight Repair for Air Crew

Allocating air crew (flight deck and cabin crew) to cover the flights of an airline is typically done with a large-scale rostering application, which are often based on column generation techniques, resulting in very large-scale set covering problems. These tools generate a roster for a 4 week period or for one month, while running for several hours or even days.

SAS MD-80 (from Wikipedia)

What happens if the published schedule breaks, either because of illness of some crew member, or because some flight connections can not be reached in time, due to delays of earlier flights? This is where the TAP-AI application comes into play, a decision support tool for day-to-day management of “open flights”. Open flights are flights for which one or several previously allocated crew members will not be available. Usually, a replacement crew must be found with the right qualifications, and he must be notified in time to reach the flight, including all briefing and preparation tasks. At SAS (Scandinavian Airline System), finding solutions for these open flights was done by hand, a difficult, stressful job.
Continue reading

Posted in 1994, 51 Air Transport, 51.1 Passenger Air Transport, CHIP, H Transportation and Storage, live application, Personnel, Transport | 1 Comment