Register
Submit a solution
The challenge is finished.

Challenge Overview



We have a new Banking customer in South America who would like to explore the capabilities of crowdsourcing and machine Learning. This is for an executive demo, so it is okay if the story seems a little contrived we are just trying to showcase some possibilities of powerful tools and talented Topcoder developers. The end goal of this challenge is to provide some machine learning examples that will help the bank identify new opportunities from their existing customers.

 

 The Bank has a product called "Libranzas." It is set up through an agreement between the bank and other companies, which allows them to enjoy lower interests on loans for the company's employees. Payments on such loans are deducted monthly from the employee's payroll.

 

The companies under the agreements, report monthly to the bank informing disbursements that correspond to loan payments and that have been deducted from that monthly payroll. These reports consist of an Excel spreadsheet that contains at least the following columns:

 
  • LOAN ID. It is a unique number per loan per person.

  • PERSON ID/NAME. ID is unique per person.

  • AGREEMENT ID. It is a unique identifier for the agreement between the bank and the company.

  • COMPANY ID/NAME. ID is a tax identifier unique per company.

  • TOTAL LOAN AMOUNT. How much the person requested.

  • REMAINING LOAN AMOUNT. How much of the total amount the person still has to pay.

  • DISBURSEMENT AMOUNT. How much is being presently disbursed.

  • DUE DEBT AMOUNT. Any amount that is due at present.

  • PAYMENT DATE

  • PAYMENT DUE DATE

  • NEXT PAYMENT DATE

 

The spreadsheet is processed by a RPA (robotic process automation) job. This RPA job should call your solution via a REST call. It can include any of the values of the columns above as input parameters. The Company ID/Name seems to be the most obvious however you are welcome to use others as well. You do not need to know anything about the RPA job we just want to help set the context. We require you to build a REST service that the bank's RPA job will POST the above spreadsheet into row by row. Using the CompanyId/Name for unique record identification makes most sense but you may use other data points as well.  You may assume that you have a complete table of all the banks customers and all the products used.

 



You will need to create this lookup table on your own in your solution if you should choose to do so.  You may also query any public APIs for additional information such as financial data related to the companies. One possible solution may take the company name from RPA job and find other customers who are similarly based on the financial data like industry or market cap or company data like the number of employees or even a  combination of these. Once you have identified similarly company profiles then you can look up the products that they use that the primary company does not. This approach is not that much different than the Netflix Movie Recommendations algorithm. This is only a suggestion and you are welcome to be creative and come up with a totally unique solution as well. Remember the goal is to showcase your work in an executive demo to highlight the ability of crowdsourcing and the power or machine learning.
 

 

For this challenge, almost anything is fair game as long as it can be shown and has some sort of HTML output. You will be responsible for supplying or finding your own data or public services. IBM's Watson or TensorFlow are great places to start but are not required. We have a strict deadline of July 19th which is not flexible so there will be no extensions granted. 

 


Final Submission Guidelines

 Your submission should include any code you have written as well as documentation that describes how it should be deployed. In addition, you will be required to provide a one page power point (or gdoc presentation) of the features and architecture of your solution. A quick video of your solution is highly desired but not mandatory. It would be preferred if your solution is deployed on a hosted service we can see it in action but if you must run it locally based on the time constraints that is understandable and points will not be deducted, however, your video and ppt need to be rock solid.   

ELIGIBLE EVENTS:

2017 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30058344