Programming Distributed Collective Processes in the eXchange Calculus

要約

モノのインターネット (IoT) などの最近のトレンドは、ほぼすべての種類の環境にコンピューティング デバイスを高密度かつマルチスケールで導入するというビジョンを示唆しています。
エンジニアリング上の顕著な課題は、そのような計算エコシステムの集団的な適応動作のプログラミングを中心に展開しています。
これには、アンサンブル (連携するデバイスの動的グループ) や集合タスク (アンサンブルによって実行される共同アクティビティ) などの概念を捉えることができる抽象化が必要です。
この研究では、近隣デバイスと対話し、ほぼ同期したセンス-計算-インタラクトラウンドで実行されるデバイスの集合を考慮します。この計算は、センシング値と受信メッセージを出力および送信メッセージにマッピングする単一のプログラムによって行われます。
計算集団全体のプログラミングをサポートするために、アンサンブル形成ロジックとその集団タスクを一度に定義するために使用できる分散集団プロセスの抽象化を提案します。
私たちは、隣接する値 (隣接値から値へのマップ) に基づくコア関数型言語である eXchange Calculus (XC) で抽象化を形式化し、状態と相互作用が単一のプリミティブ交換を通じて処理され、対応する実装を FCPP 言語で提供します。
次に、マルチホップ メッセージの伝播と空間特性の分散モニタリングという 2 つのケース スタディを使用して、分散集合プロセスを実行します。
最後に、抽象化の機能と、さまざまな種類の分散コンピューティング アプリケーションへのその適合性について説明します。

要約(オリジナル)

Recent trends like the Internet of Things (IoT) suggest a vision of dense and multi-scale deployments of computing devices in nearly all kinds of environments. A prominent engineering challenge revolves around programming the collective adaptive behaviour of such computational ecosystems. This requires abstractions able to capture concepts like ensembles (dynamic groups of cooperating devices) and collective tasks (joint activities carried out by ensembles). In this work, we consider collections of devices interacting with neighbours and that execute in nearly-synchronised sense-compute-interact rounds, where the computation is given by a single program mapping sensing values and incoming messages to output and outcoming messages. To support programming whole computational collectives, we propose the abstraction of a distributed collective process, which can be used to define at once the ensemble formation logic and its collective task. We formalise the abstraction in the eXchange Calculus (XC), a core functional language based on neighbouring values (maps from neighbours to values) where state and interaction is handled through a single primitive, exchange, and provide a corresponding implementation in the FCPP language. Then, we exercise distributed collective processes using two case studies: multi-hop message propagation and distributed monitoring of spatial properties. Finally, we discuss the features of the abstraction and its suitability for different kinds of distributed computing applications.

arxiv情報

著者 Giorgio Audrito,Roberto Casadei,Ferruccio Damiani,Gianluca Torta,Mirko Viroli
発行日 2024-11-11 18:26:31+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.DC, cs.MA, cs.PL, D.1.3 パーマリンク