Assuming [Artist] and [Name] are consistent and reliable, you'll have no difficulty identifying duplicates. If that data is not reliable, you're unlikely to improve the situation by comparing [File Size] (which varies with duration, bitrate and compression). [Duration] would be better, but it's still difficult to compare things in a smartlist that aren't exactly equal. That could be done, but you'll still not be sure if one file is an original studio recording and the other an otherwise identical live or re-recording.
I suggest you start with a simple smartlist that just selects all duplicates (i.e., all files for which [Artist]-[Name] is not unique). You can review a file list of that grouped by Artist and sorted in a way that helps show the situation. Part of that will be a clear indication of whether the track is a single or a member of an album. You haven't provided enough information to suggest the best way to do that. If for singles [Album] is empty or 'Singles', then it's easy. If that's not a reliable indicator, maybe the [Filename (name)] is. If that contains an '_' and (maybe) not a ' - ', it's from an album. Or test [Filename (path) for the existence of an album folder.
For the sake of clarity, let's assume you've created a boolean expression field that by some reliable means is set to '1' for album tracks and is '0' for singles. If you're still not confident enough to delete all singles that are apparently duplicates, you can still use this in sorting them (e.g., the single appears first, and if there happens to be more than one album duplicate, they're sorted by duration). This will make them easy to assess visually for the decision to delete. If there are a lot of them and it seems clear they're all 'valid' duplicates, just select all the singles and delete them.