IBM / AMLSim

The AMLSim project is intended to provide a multi-agent based simulator that generates synthetic banking transaction data together with a set of known money laundering patterns - mainly for the purpose of testing machine learning models and graph algorithms. We welcome you to enhance this effort since the data set related to money laundering is critical to advance detection capabilities of money laundering activities.
Apache License 2.0
251 stars 81 forks source link

Fan-In & Fan-Out SAR transactions all have the same amount #43

Open FluxB opened 3 years ago

FluxB commented 3 years ago

I noticed that all SAR transaction created with a FanOutTopology and a FanInTopology have the exact same transaction amounts for a given originator (resp. beneficiary). From looking at the code I think this is not intended. Also from an AML perspective I would say this is unwanted. Do you know what is going on?

See below a screenshot of how the data looks like: image

FluxB commented 3 years ago

I debugged it, and the cause for that behaviour is that minAmount and maxAmount of the FanOutTypology and FanInTopology are identical. Hence calling getRandomAmount will always result in the same amount.

I checked the file transaction_graph_generator.py, and indeed the logic that is written there seems to intend that both minAmount and maxAmount, written to the file alert_members.csv, are the same for these topologies.

I am not sure however if this is expected behavior for an AML Topology. The Fan-In / Fan-Out patterns certainly are important for many types of crime, but I would have thought that typically the amounts sent in/out vary in a certain range. I would have expected to see round amount transactions with similar, but not identical sizes.

Either way, I think this issue can be closed for now?

HanSeoulOh commented 2 years ago

@FluxB sorry that this is off topic but you seem to be one of the only ones able to build this repo. I'm wondering where did you source the dependencies necessary to run the amlsim build shell file? I was not able to source the dependencies from the links provided and thus I'm not able to build the .jar. Your help is much appreciated!

Currently having issues finding an appropriate webgraph version.. the only one i can find is 3.6.10 which is throwing me build errors.

FluxB commented 2 years ago

@HanSeoulOh I've downloaded all jars manually, following the requirements listed here: https://github.com/IBM/AMLSim/wiki/Quick-Introduction-to-AMLSim It was a bit cumbersome, but I could find the correct versions for all of them in the typical repositories (jar downloads, apache etc). I will zip them and send to you via mail