For this kind of pre-sales and design questions I would suggest to talk to the party you buy your Cisco gear from (Partner/Reseller/Cisco Sales), but for what it is worth: it depends if these 20000 devices will (potentially) all connect at the same time or if you will only have e.g. 5000 simultaneous connections.
Assuming you mean 20,000 simultaneous connections, then indeed this cannot be handled by a single ASA but you can get multiple ASA 5585 and put them in a load-balancing setup (or if you consider using Anyconnect, you could put the ASAs in geographically different locations and use Optimal Gateway Selection on the client to find the nearest one). The ASA software has load-balancing functionality built-in so you do not need an external load balancer device.
Have a look at table 9 in this document for the specs of the top models:
Table of ContentsIntroductionVersion HistoryPossible Future
UpdatesDocuments PurposeNAT Operation in ASA 8.3+ SectionsRule Types
Network Object NATTwice NAT / Manual NATRule Types used per SectionNAT
Types used with Twice NAT / Manual NAT and Network Obje...
Table of Contents Introduction:This document describes details on how
NAT-T works. Background: ESP encrypts all critical information,
encapsulating the entire inner TCP/UDP datagram within an ESP header.
ESP is an IP protocol in the same sense that TCP an...