In mathematics and theoretical computer science, a semiautomaton is a deterministic finite automaton having inputs but no output. It consists of a set Q of states, a set Σ called the input alphabet, and a function T: Q × Σ → Q called the transition function. Associated with any semiautomaton is a monoid called the characteristic monoid, input monoid, transition monoid or transition system of the semiautomaton, which acts on the set of states Q. This may be viewed either as an action of the free monoid of strings in the input alphabet Σ, or as the induced transformation semigroup of Q. In older books like Clifford and Preston (1967) semigroup actions are called "operands". In category theory, semiautomata essentially are functors. == Transformation semigroups and monoid acts == A transformation semigroup or transformation monoid is a pair ( M , Q ) {\displaystyle (M,Q)} consisting of a set Q (often called the "set of states") and a semigroup or monoid M of functions, or "transformations", mapping Q to itself. They are functions in the sense that every element m of M is a map m : Q → Q {\displaystyle m\colon Q\to Q} . If s and t are two functions of the transformation semigroup, their semigroup product is defined as their function composition ( s t ) ( q ) = ( s ∘ t ) ( q ) = s ( t ( q ) ) {\displaystyle (st)(q)=(s\circ t)(q)=s(t(q))} . Some authors regard "semigroup" and "monoid" as synonyms. Here a semigroup need not have an identity element; a monoid is a semigroup with an identity element (also called "unit"). Since the notion of functions acting on a set always includes the notion of an identity function, which when applied to the set does nothing, a transformation semigroup can be made into a monoid by adding the identity function. === M-acts === Let M be a monoid and Q be a non-empty set. If there exists a multiplicative operation μ : Q × M → Q {\displaystyle \mu \colon Q\times M\to Q} ( q , m ) ↦ q m = μ ( q , m ) {\displaystyle (q,m)\mapsto qm=\mu (q,m)} which satisfies the properties q 1 = q {\displaystyle q1=q} for 1 the unit of the monoid, and q ( s t ) = ( q s ) t {\displaystyle q(st)=(qs)t} for all q ∈ Q {\displaystyle q\in Q} and s , t ∈ M {\displaystyle s,t\in M} , then the triple ( Q , M , μ ) {\displaystyle (Q,M,\mu )} is called a right M-act or simply a right act. In long-hand, μ {\displaystyle \mu } is the right multiplication of elements of Q by elements of M. The right act is often written as Q M {\displaystyle Q_{M}} . A left act is defined similarly, with μ : M × Q → Q {\displaystyle \mu \colon M\times Q\to Q} ( m , q ) ↦ m q = μ ( m , q ) {\displaystyle (m,q)\mapsto mq=\mu (m,q)} and is often denoted as M Q {\displaystyle \,_{M}Q} . An M-act is closely related to a transformation monoid. However the elements of M need not be functions per se, they are just elements of some monoid. Therefore, one must demand that the action of μ {\displaystyle \mu } be consistent with multiplication in the monoid (i.e. μ ( q , s t ) = μ ( μ ( q , s ) , t ) {\displaystyle \mu (q,st)=\mu (\mu (q,s),t)} ), as, in general, this might not hold for some arbitrary μ {\displaystyle \mu } , in the way that it does for function composition. Once one makes this demand, it is completely safe to drop all parenthesis, as the monoid product and the action of the monoid on the set are completely associative. In particular, this allows elements of the monoid to be represented as strings of letters, in the computer-science sense of the word "string". This abstraction then allows one to talk about string operations in general, and eventually leads to the concept of formal languages as being composed of strings of letters. Another difference between an M-act and a transformation monoid is that for an M-act Q, two distinct elements of the monoid may determine the same transformation of Q. If we demand that this does not happen, then an M-act is essentially the same as a transformation monoid. === M-homomorphism === For two M-acts Q M {\displaystyle Q_{M}} and B M {\displaystyle B_{M}} sharing the same monoid M {\displaystyle M} , an M-homomorphism f : Q M → B M {\displaystyle f\colon Q_{M}\to B_{M}} is a map f : Q → B {\displaystyle f\colon Q\to B} such that f ( q m ) = f ( q ) m {\displaystyle f(qm)=f(q)m} for all q ∈ Q M {\displaystyle q\in Q_{M}} and m ∈ M {\displaystyle m\in M} . The set of all M-homomorphisms is commonly written as H o m ( Q M , B M ) {\displaystyle \mathrm {Hom} (Q_{M},B_{M})} or H o m M ( Q , B ) {\displaystyle \mathrm {Hom} _{M}(Q,B)} . The M-acts and M-homomorphisms together form a category called M-Act. == Semiautomata == A semiautomaton is a triple ( Q , Σ , T ) {\displaystyle (Q,\Sigma ,T)} where Σ {\displaystyle \Sigma } is a non-empty set, called the input alphabet, Q is a non-empty set, called the set of states, and T is the transition function T : Q × Σ → Q . {\displaystyle T\colon Q\times \Sigma \to Q.} When the set of states Q is a finite set—it need not be—, a semiautomaton may be thought of as a deterministic finite automaton ( Q , Σ , T , q 0 , A ) {\displaystyle (Q,\Sigma ,T,q_{0},A)} , but without the initial state q 0 {\displaystyle q_{0}} or set of accept states A. Alternately, it is a finite-state machine that has no output, and only an input. Any semiautomaton induces an act of a monoid in the following way. Let Σ ∗ {\displaystyle \Sigma ^{}} be the free monoid generated by the alphabet Σ {\displaystyle \Sigma } (so that the superscript is understood to be the Kleene star); it is the set of all finite-length strings composed of the letters in Σ {\displaystyle \Sigma } . For every word w in Σ ∗ {\displaystyle \Sigma ^{}} , let T w : Q → Q {\displaystyle T_{w}\colon Q\to Q} be the function, defined recursively, as follows, for all q in Q: If w = ε {\displaystyle w=\varepsilon } , then T ε ( q ) = q {\displaystyle T_{\varepsilon }(q)=q} , so that the empty word ε {\displaystyle \varepsilon } does not change the state. If w = σ {\displaystyle w=\sigma } is a letter in Σ {\displaystyle \Sigma } , then T σ ( q ) = T ( q , σ ) {\displaystyle T_{\sigma }(q)=T(q,\sigma )} . If w = σ v {\displaystyle w=\sigma v} for σ ∈ Σ {\displaystyle \sigma \in \Sigma } and v ∈ Σ ∗ {\displaystyle v\in \Sigma ^{}} , then T w ( q ) = T v ( T σ ( q ) ) {\displaystyle T_{w}(q)=T_{v}(T_{\sigma }(q))} . Let M ( Q , Σ , T ) {\displaystyle M(Q,\Sigma ,T)} be the set M ( Q , Σ , T ) = { T w | w ∈ Σ ∗ } . {\displaystyle M(Q,\Sigma ,T)=\{T_{w}\vert w\in \Sigma ^{}\}.} The set M ( Q , Σ , T ) {\displaystyle M(Q,\Sigma ,T)} is closed under function composition; that is, for all v , w ∈ Σ ∗ {\displaystyle v,w\in \Sigma ^{}} , one has T w ∘ T v = T v w {\displaystyle T_{w}\circ T_{v}=T_{vw}} . It also contains T ε {\displaystyle T_{\varepsilon }} , which is the identity function on Q. Since function composition is associative, the set M ( Q , Σ , T ) {\displaystyle M(Q,\Sigma ,T)} is a monoid: it is called the input monoid, characteristic monoid, characteristic semigroup or transition monoid of the semiautomaton ( Q , Σ , T ) {\displaystyle (Q,\Sigma ,T)} . == Properties == If the set of states Q is finite, then the transition functions are commonly represented as state transition tables. The structure of all possible transitions driven by strings in the free monoid has a graphical depiction as a de Bruijn graph. The set of states Q need not be finite, or even countable. As an example, semiautomata underpin the concept of quantum finite automata. There, the set of states Q are given by the complex projective space C P n {\displaystyle \mathbb {C} P^{n}} , and individual states are referred to as n-state qubits. State transitions are given by unitary n×n matrices. The input alphabet Σ {\displaystyle \Sigma } remains finite, and other typical concerns of automata theory remain in play. Thus, the quantum semiautomaton may be simply defined as the triple ( C P n , Σ , { U σ 1 , U σ 2 , … , U σ p } ) {\displaystyle (\mathbb {C} P^{n},\Sigma ,\{U_{\sigma _{1}},U_{\sigma _{2}},\dotsc ,U_{\sigma _{p}}\})} when the alphabet Σ {\displaystyle \Sigma } has p letters, so that there is one unitary matrix U σ {\displaystyle U_{\sigma }} for each letter σ ∈ Σ {\displaystyle \sigma \in \Sigma } . Stated in this way, the quantum semiautomaton has many geometrical generalizations. Thus, for example, one may take a Riemannian symmetric space in place of C P n {\displaystyle \mathbb {C} P^{n}} , and selections from its group of isometries as transition functions. The syntactic monoid of a regular language is isomorphic to the transition monoid of the minimal automaton accepting the language. == Literature == A. H. Clifford and G. B. Preston, The Algebraic Theory of Semigroups. American Mathematical Society, volume 2 (1967), ISBN 978-0-8218-0272-4. F. Gecseg and I. Peak, Algebraic Theory of Automata (1972), Akademiai Kiado, Budapest. W. M. L. Holcombe, Algebraic Automata Theory (1982), Cambridge University Press J. M. Howie, Automata and Languages, (1991), Cla
Teknomo–Fernandez algorithm
The Teknomo–Fernandez algorithm (TF algorithm), is an efficient algorithm for generating the background image of a given video sequence. By assuming that the background image is shown in the majority of the video, the algorithm is able to generate a good background image of a video in O ( R ) {\displaystyle O(R)} -time using only a small number of binary operations and Boolean bit operations, which require a small amount of memory and has built-in operators found in many programming languages such as C, C++, and Java. == History == People tracking from videos usually involves some form of background subtraction to segment foreground from background. Once foreground images are extracted, then desired algorithms (such as those for motion tracking, object tracking, and facial recognition) may be executed using these images. However, background subtraction requires that the background image is already available and unfortunately, this is not always the case. Traditionally, the background image is searched for manually or automatically from the video images when there are no objects. More recently, automatic background generation through object detection, medial filtering, medoid filtering, approximated median filtering, linear predictive filter, non-parametric model, Kalman filter, and adaptive smoothening have been suggested; however, most of these methods have high computational complexity and are resource-intensive. The Teknomo–Fernandez algorithm is also an automatic background generation algorithm. Its advantage, however, is its computational speed of only O ( R ) {\displaystyle O(R)} -time, depending on the resolution R {\displaystyle R} of an image and its accuracy gained within a manageable number of frames. Only at least three frames from a video is needed to produce the background image assuming that for every pixel position, the background occurs in the majority of the videos. Furthermore, it can be performed for both grayscale and colored videos. == Assumptions == The camera is stationary. The light of the environment changes only slowly relative to the motions of the people in the scene. The number of people does not occupy the scene for most of the time at the same place. Generally, however, the algorithm will certainly work whenever the following single important assumption holds: For each pixel position, the majority of the pixel values in the entire video contain the pixel value of the actual background image (at that position).As long as each part of the background is shown in the majority of the video, the entire background image needs not to appear in any of its frames. The algorithm is expected to work accurately. == Background image generation == === Equations === For three frames of image sequence x 1 {\displaystyle x_{1}} , x 2 {\displaystyle x_{2}} , and x 3 {\displaystyle x_{3}} , the background image B {\displaystyle B} is obtained using B = x 3 ( x 1 ⊕ x 2 ) + x 1 x 2 {\displaystyle B=x_{3}(x_{1}\oplus x_{2})+x_{1}x_{2}} where ⊕ {\displaystyle \oplus } denotes the exclusive disjunctive bit operator. The Boolean mode function S {\displaystyle S} of the table occurs when the number of 1 entries is larger than half of the number of images such that S = { 1 , if ∑ i = 1 n x i ≥ ⌈ n 2 + 1 ⌉ , and n ≥ 3 0 , otherwise {\displaystyle S={\begin{cases}1,&{\text{if }}\sum _{i=1}^{n}x_{i}\geq \left\lceil {\frac {n}{2}}+1\right\rceil ,{\text{ and }}n\geq 3\\0,&{\text{otherwise}}\end{cases}}} For three images, the background image B {\displaystyle B} can be taken as the value x ¯ 1 x 2 x 3 + x 1 x ¯ 2 x 3 + x 1 x 2 x ¯ 3 + x 1 x 2 x 3 {\displaystyle {\bar {x}}_{1}x_{2}x_{3}+x_{1}{\bar {x}}_{2}x_{3}+x_{1}x_{2}{\bar {x}}_{3}+x_{1}x_{2}x_{3}} === Background generation algorithm === At the first level, three frames are selected at random from the image sequence to produce a background image by combining them using the first equation. This yields a better background image at the second level. The procedure is repeated until desired level L {\displaystyle L} . == Theoretical accuracy == At level ℓ {\displaystyle \ell } , the probability p ℓ {\displaystyle p_{\ell }} that the modal bit predicted is the actual modal bit is represented by the equation p ℓ = ( p ℓ − 1 ) 3 + 3 ( p ℓ − 1 ) 2 ( 1 − p ℓ − 1 ) {\displaystyle p_{\ell }=(p_{\ell -1})^{3}+3(p_{\ell -1})^{2}(1-p_{\ell -1})} . The table below gives the computed probability values across several levels using some specific initial probabilities. It can be observed that even if the modal bit at the considered position is at a low 60% of the frames, the probability of accurate modal bit determination is already more than 99% at 6 levels. == Space complexity == The space requirement of the Teknomo–Fernandez algorithm is given by the function O ( R F + R 3 L ) {\displaystyle O(RF+R3^{L})} , depending on the resolution R {\displaystyle R} of the image, the number F {\displaystyle F} of frames in the video, and the desired number L {\displaystyle L} of levels. However, the fact that L {\displaystyle L} will probably not exceed 6 reduces the space complexity to O ( R F ) {\displaystyle O(RF)} . == Time complexity == The entire algorithm runs in O ( R ) {\displaystyle O(R)} -time, only depending on the resolution of the image. Computing the modal bit for each bit can be done in O ( 1 ) {\displaystyle O(1)} -time while the computation of the resulting image from the three given images can be done in O ( R ) {\displaystyle O(R)} -time. The number of the images to be processed in L {\displaystyle L} levels is O ( 3 L ) {\displaystyle O(3^{L})} . However, since L ≤ 6 {\displaystyle L\leq 6} , then this is actually O ( 1 ) {\displaystyle O(1)} , thus the algorithm runs in O ( R ) {\displaystyle O(R)} . == Variants == A variant of the Teknomo–Fernandez algorithm that incorporates the Monte-Carlo method named CRF has been developed. Two different configurations of CRF were implemented: CRF9,2 and CRF81,1. Experiments on some colored video sequences showed that the CRF configurations outperform the TF algorithm in terms of accuracy. However, the TF algorithm remains more efficient in terms of processing time. == Applications == Object detection Face detection Face recognition Pedestrian detection Video surveillance Motion capture Human-computer interaction Content-based video coding Traffic monitoring Real-time gesture recognition
Asian Digital Finance Forum & Awards
Asian Digital Finance Forum & Awards (also known as Asian Digital Finance Forum and Awards) is a forum and honorary awards platform convened in Colombo, Sri Lanka. It has been hosted in a hybrid format (virtual and in-person), with editions reported in 2022, 2023 and 2025. The event is organised by the Asian FinTech Academy (AFTA) in collaboration with a number of local and international institutions. == Overview == The forum has featured international academic, industry, and policy speakers and has recognised institutions and individuals for contributions related to digital finance and fintech innovation. Media coverage has described participation and recognition at the forum as spanning multiple regions, with institutions and individuals from South Asia, Southeast Asia, East Asia, the Middle East, Europe, and North America featured across different editions. == Awards and recognition == The forum and awards were held in a hybrid format with virtual and in-person proceedings at Hilton Colombo in the 2022 and 2023 editions. The Asian Digital Finance Forum & Awards presents honorary recognitions to institutions and individuals for contributions to digital finance, financial inclusion, and related regulatory, technological, and policy developments. Media coverage has described the recognitions as non-competitive and based on demonstrated leadership and impact rather than open nominations. In 2025, the forum and awards served as an anchor initiative associated with the Asia International Digital Economy & AI in Finance Summit at Port City Colombo, with an emphasis on artificial intelligence in finance, financial inclusion, and governance-related themes. === 2022 === According to reporting by Daily FT, institutions recognised at the 2022 edition included Sri Lanka’s Bank of Ceylon, Commercial Bank of Ceylon, Hatton National Bank, and People’s Bank, alongside international organisations and fintech-sector contributors. === 2023 === Coverage of the 2023 forum described recognitions awarded to India’s International Financial Services Centres Authority (IFSCA) for regulatory innovation, as well as to digital finance and payments platforms including Dialog Genie and SLT-Mobitel mCash. IDEMIA’s Asia–Pacific operations were also recognised for contributions related to biometric and digital identity technologies in financial services. === 2025 === For the 2025 edition, institutional honourees reported in the media included Nium (Singapore), recognised for cross-border payments optimisation, and Paytm (India), recognised for AI-powered financial inclusion initiatives. A Visionary Award for Next-Generation Financial Hub Development was presented to Port City Colombo in recognition of its fintech- and AI-oriented development strategy. Individual honourees reported for 2025 included Sopnendu Mohanty (Singapore), Neil Tan (Hong Kong), Purvi Munot (United Arab Emirates), and Amira Abdelaziz (Egypt), recognised for contributions spanning fintech governance, ecosystem development, inclusive wealth technology, and AI-driven financial policy and regulation. In 2025, media reports described the awards as being subject to an independent validation framework. The process was led by Dr. Sivaguru S. Sritharan, appointed as Global Validation Chair, and involved independent research, analytical review, and benchmarking against international standards, with recognitions characterised as honorary and non-competitive.
R.U.R.
R.U.R. is a 1920 science fiction play by the Czech writer Karel Čapek. "R.U.R." stands for Rossumovi Univerzální Roboti (Rossum's Universal Robots, a phrase that has been used as a subtitle in English versions). The play had its world premiere on 2 January 1921 in Hradec Králové. It introduced the word "robot" to the English language and to science fiction as a whole. R.U.R. became influential soon after its publication. By 1923, it had been translated into thirty languages. R.U.R. was successful in its time in Europe and North America. Čapek later took a different approach to the same theme in his 1936 novel War with the Newts, in which non-humans become a servant-class in human society. == Characters == Parentheses indicate names which vary according to translation. On the meaning of the names, see Ivan Klíma: Karel Čapek: Life and Work (2002). == Plot == === Synopsis === The play begins in a factory that makes artificial workers from synthetic organic matter. (As living creatures of artificial flesh and blood, that later terminology would call androids, the playwright's 'roboti' differ from later fictional and scientific concepts of inorganic constructs.) Robots may be mistaken for humans but have no original thoughts. Though most are content to work for humans, eventually a rebellion causes the extinction of the human race. === Prologue (Act I in the Selver translation) === Helena, the daughter of the president of a major industrial power, arrives at the island factory of Rossum's Universal Robots. Here, she meets Domin, the General Manager of R.U.R., who relates to her the history of the company. Rossum had come to the island in 1920 to study marine biology. In 1932, Rossum had invented a substance like organic matter, though with a different chemical composition. He argued with his nephew about their motivations for creating artificial life. While the elder wanted to create animals to prove or disprove the existence of God, his nephew only wanted to become rich. Young Rossum finally locked away his uncle in a lab to play with the monstrosities he had created and created thousands of robots. By the time the play takes place (circa the year 2000), robots are cheap and available all over the world. They have become essential for industry. After meeting the heads of R.U.R., Helena reveals that she is a representative of the League of Humanity, an organization that wishes to liberate the robots. The managers of the factory find this absurd. They see robots as appliances. Helena asks that the robots be paid, but according to R.U.R. management, the robots do not "like" anything. Eventually Helena is convinced that the League of Humanity is a waste of money, but still argues robots have a "soul". Later, Domin confesses that he loves Helena and forces her into an engagement. === Act I (Act II in Selver) === Ten years have passed. Helena and her nurse Nana discuss current events, the decline in human births in particular. Helena and Domin reminisce about the day they met and summarize the last ten years of world history, which has been shaped by the new worldwide robot-based economy. Helena meets Dr. Gall's new experiment, Radius. Dr. Gall describes his experimental robotess, also named Helena. Both are more advanced, fully-featured robots. In secret, Helena burns the formula required to create robots. The revolt of the robots reaches Rossum's island as the act ends. === Act II (Act III in Selver) === The characters sense that the very universality of the robots presents a danger. Echoing the story of the Tower of Babel, the characters discuss whether creating national robots who were unable to communicate beyond their languages would have been a good idea. As robot forces lay siege to the factory, Helena reveals she has burned the formula necessary to make new robots. The characters lament the end of humanity and defend their actions, despite the fact that their imminent deaths are a direct result of their choices. Busman is killed while attempting to negotiate a peace with the robots. The robots storm the factory and kill all the humans except for Alquist, the company's Clerk of the Works (Head of Construction). The robots spare him because they recognize that "He works with his hands like a robot. He builds houses. He can work." === Act III (Epilogue in Selver) === Years have passed. Alquist, who still lives, attempts to recreate the formula that Helena destroyed. He is a mechanical engineer, though, with insufficient knowledge of biochemistry, so he has made little progress. The robot government has searched for surviving humans to help Alquist and found none alive. Officials from the robot government beg him to complete the formula, even if it means he will have to kill and dissect other robots for it. Alquist yields. He will kill and dissect robots, thus completing the circle of violence begun in Act Two. Alquist is disgusted. Robot Primus and Helena develop human feelings and fall in love. Playing a hunch, Alquist threatens to dissect Primus and then Helena; each begs him to take him- or herself and spare the other. Alquist now realizes that Primus and Helena are the new Adam and Eve, and gives the charge of the world to them. == Čapek's conception of robots == The robots described in Čapek's play are not robots in the popularly understood sense of an automaton. They are not mechanical devices, but rather artificial biological organisms that may be mistaken for humans. A comic scene at the beginning of the play shows Helena arguing with her future husband, Harry Domin, because she cannot believe his secretary is a robotess: His robots resemble more modern conceptions of man-made life forms, such as the Replicants in Blade Runner, the "hosts" in the Westworld TV series and the humanoid Cylons in the re-imagined Battlestar Galactica, but in Čapek's time there was no conception of modern genetic engineering (DNA's role in heredity was not confirmed until 1952). There are descriptions of kneading-troughs for robot skin, great vats for liver and brains, and a factory for producing bones. Nerve fibers, arteries, and intestines are spun on factory bobbins, while the robots themselves are assembled like automobiles. Čapek's robots are living biological beings, but they are still assembled, as opposed to grown or born. One critic has described Čapek's robots as epitomizing "the traumatic transformation of modern society by the First World War and the Fordist assembly line". === Origin of the word robot === The play introduced the word robot, which displaced older words such as "automaton" or "android" in languages around the world. In an article in Lidové noviny, Karel Čapek named his brother Josef as the true inventor of the word. In Czech, robota means forced labour of the kind that serfs had to perform on their masters' lands and is derived from rab, meaning "slave". The name Rossum is an allusion to the Czech word rozum, meaning "reason", "wisdom", "intellect" or "common sense". It has been suggested that the allusion might be preserved by translating "Rossum" as "Reason" but only the Majer/Porter version translates the word as "Reason". == Production history and translations == The work was published in two differing versions in Prague by Aventinum, first in 1920, followed by a revised version in 1921. After being postponed, it premiered at the city's National Theatre on 25 January 1921, although an amateur group had by then already presented a production. By 1921, Paul Selver translated either the original 1920 edition of R.U.R. or a manuscript copy close to this version into English. He probably translated the play freelance, and sold it to St Martin's Theatre in London. Selver's translation was adapted for the British stage by Nigel Playfair in 1922, but it was not produced straight away. Later that year performance rights for the U.S. and Canada were sold to the New York Theatre Guild, perhaps during Lawrence Langner's visit to Britain. Playfair's version included several changes to Čapek's original play, such as renaming the acts (the prologue became act one, and the heavily abridged final act became the epilogue), omitting around sixty lines (including most of Alquist's final speech), adding several more lines, and removing the robot character Damon (giving his lines to Radius). The omission of some lines may have been censorship from the Lord Chamberlain's Office, or self-censorship in anticipation of this, while some other changes might have been made by Čapek himself if Selver was working from a manuscript copy. An edition of Playfair's adaptation was published by the Oxford University Press in 1923, and Selver went on to write a satiric novel One, Two, Three (1926) based on his experiences getting R.U.R. staged. The American première was produced by the Theatre Guild at the Garrick Theatre in New York City in October 1922, where it ran for 184 performances. In the first performance, Domin was portrayed by Basil Sydney,
Emma Hart (computer scientist)
Professor Emma Hart, FRSE (born 1967) is an English computer scientist known for her work in artificial immune systems (AIS), evolutionary computation and optimisation. She is a professor of computational intelligence at Edinburgh Napier University, editor-in-chief of the Journal of Evolutionary Computation (MIT Press), and D. Coordinator of the Future & Emerging Technologies (FET) Proactive Initiative, Fundamentals of Collective Adaptive Systems. == Early life and education == Hart was born in Middlesbrough, England in 1967. In 1990 she graduated from the University of Oxford with a first class BA(Hons) in Chemistry. She then continued her studies at the University of Edinburgh, graduating with an MSc in Artificial Intelligence in 1994, followed by a PhD that explored the use of immunology as an inspiration for computing, examining a range of techniques applied to optimization and data classification problems. Her dissertation was titled Immunology as a metaphor for computational information processing: Fact or fiction?, and her doctoral advisor was Peter Ross. == Career == In 2000 Hart took a position as a lecturer at Edinburgh Napier University, and was promoted to a Reader, Professor, and in 2008 Chair in Natural Computation. She is now director of the Centre of Algorithms, Visualisation and Evolving Systems (CAVES) group in the School of Computing. She continues to research in the area of developing novel bio-inspired techniques for solving a range of real-world optimisation and classification problems, as well as exploring the fundamental properties of immune-inspired computing through modelling and simulation. She is also involved in editorial activity and currently occupies the position of Editor-in-Chief of the Journal of Evolutionary Computation (MIT Press). Her interests lie in the area of bio-inspired computing, in particular artificial immune systems (AIS). She also undertakes research in three main areas: optimisation, self-organising/self-adaptive systems, and artificial intelligence. Hart is D. Coordinator of Fundamentals of Collective Adaptive Systems (FoCAS), a Future and Emerging Technologies Proactive Initiative funded by the European Commission under FP7. == Selected works == === Conference talks === Hart, Emma. "Lifelong learning in optimization (video)". 28th European Conference on Operational Research. The Association of European Operational Research Societies. Hart, Emma (December 2021). "Self-assembling robots and the potential of artificial evolution". TED talk 2021. === Journal articles === "An immune system approach to scheduling in changing environments". E.Hart, P.Ross. 1999. Proceedings of the 1st Annual Conference on Genetic and Evolutionary Computation (2), 1559–1566. "Exploiting the analogy between immunology and sparse distributed memories: A system for clustering non-stationary data". E.Hart, P.Ross. 2002. 1st International Conference on Artificial Immune Systems. "Evolutionary scheduling: A review". E Hart, P Ross, D Corne. 2005. Genetic Programming and Evolvable Machines 6(2), 191–220. DOI: https://doi.org/10.1007/s10710-005-7580-7 "Application areas of AIS: The past, the present and the future". E.Hart, J.Timmis. 2008. Applied soft computing 8(1), 191–201. DOI: https://doi.org/10.1016/j.asoc.2006.12.004 "Structure versus function: a topological perspective on immune networks". E.Hart, H.Bersini, F.Santos. 2010. Natural computing 9(3), 603–624. DOI: https://doi.org/10.1007/s11047-009-9138-8 "On the life-long learning capabilities of a nelli: A hyper-heuristic optimisation system". E.Hart, K.Sim. 2014. International Conference on Parallel Problem Solving from Nature, 282–291. DOI: https://doi.org/10.1007/978-3-319-10762-2_28 "A hyper-heuristic ensemble method for static job-shop scheduling". E.Hart, K.Sim. 2016. Evolutionary computation 24(4), 609-635. DOI: https://dx.doi.org/10.1162/EVCO_a_00183 == Awards and recognition == 2016, Featured article on Lifelong Learning in Optimisation, IFORS newsletter 2016, "A Combined Generative and Selective Hyper-heuristic for the Vehicle Routing Problem" presented at GECCO 2016 (Denver, USA), ACM 2016, "A Hybrid Parameter Control Approach Applied to a Diversity-based Multi-objective Memetic Algorithm for Frequency Assignment Problems" presented at WCCI 2016 (Vancouver, Canada), IEEE 2017, Keynote Speaker, 2017 International Joint Conference on Computational Intelligence 2018, Bronze Award in International Human-Competitive Awards (Humies), International Conference on Genetic and Evolutionary Computation, Kyoto Japan 2018, Nomination for best paper award, GECCO 18, Kyoto, Japan 2022, Elected Fellow of the Royal Society of Edinburgh
Exercism
Exercism is an online, open-source, free coding platform that offers code practice and mentorship on 77 different programming languages. == History == Software developer Katrina Owen created Exercism while she was teaching programming at Jumpstart Labs. The platform was developed as an internal tool to solve the problem of her own students not receiving feedback on the coding problems they were practicing. Katrina put the site publicly online and found that people were sharing it with their friends, practicing together and giving each other feedback. Within 12 months, the site had organically grown to see over 6,000 users had submitted code or feedback, and hundreds of volunteers contribute to the languages or tooling on the platform. In 2016, Jeremy Walker joined as co-founder and CEO. In July 2018, the site was relaunched with a new design and centered around a formal mentoring mode, at which point Katrina stepped back from day-to-day involvement. == Product == In the past, the website differed from other coding platforms by requiring students to download exercises through a command line client, solve the code on their own computers then submit the solution for feedback, at which point they can also view other's solutions to the same problem. Since its second relaunch in 2021, solutions can be edited and submitted through a web editor, though the command line client remains available. Exercism has tracks for 74 programming languages. Among the notable languages taught: ABAP, C, C#, C++, CoffeeScript, Delphi, Elm, Erlang, F#, Gleam, Go, Java, JavaScript, Julia, Kotlin, Objective-C, PHP, Python, Raku, Red, Ruby, Rust, Scala, Swift, and V (Vlang). In 2023, the site launched a "12 in 23" challenge for users to learn the basics of 12 different languages - one per month in 2023. == Open source == The Exercism codebase is open source. In April 2016, it consisted of 50 repositories including website code, API code, command-line code and, most of all, over 40 stand-alone repositories for different language tracks. As of February 2024 Exercism has 14,344 contributors, maintains 366 repositories, and 19,603 mentors.
Mark I Perceptron
The Mark I Perceptron was a pioneering supervised image classification learning system developed by Frank Rosenblatt in 1958. It was the first implementation of an artificial intelligence (AI) machine. It differs from the Perceptron which is a software architecture proposed in 1943 by Warren McCulloch and Walter Pitts, which was also employed in Mark I, and enhancements of which have continued to be an integral part of cutting edge AI technologies like the Transformer. == Architecture == The Mark I Perceptron was organized into three layers: A set of sensory units which receive optical input A set of association units, each of which fire based on input from multiple sensory units A set of response units, which fire based on input from multiple association units The connection between sensory units and association units were random. The working of association units was very similar to the response units. Different versions of the Mark I used different numbers of units in each of the layers. == Capabilities == In his 1957 proposal for funding for development of the "Cornell Photoperceptron", Rosenblatt claimed:"Devices of this sort are expected ultimately to be capable of concept formation, language translation, collation of military intelligence, and the solution of problems through inductive logic."With the first version of the Mark I Perceptron as early as 1958, Rosenblatt demonstrated a simple binary classification experiment, namely distinguishing between sheets of paper marked on the right versus those marked on the left side. One of the later experiments distinguished a square from a circle printed on paper. The shapes were perfect and their sizes fixed; the only variation was in their position and orientation. The Mark I Perceptron achieved 99.8% accuracy on a test dataset with 500 neurons in a single layer. The size of the training dataset was 10,000 example images. It took 3 seconds for the training pipeline to go through a single image. Higher accuracy was observed with thick outline figures compared to solid figures, likely because outline figures reduced overfitting. Another experiment distinguished between a square and a diamond for which 100% accuracy was achieved with only 60 training images, with a Perceptron having 1,000 neurons in a single layer. The time taken to process each training input for this larger perceptron was 15 seconds. The only variation was in position of the image, since rotation would have been ambiguous. In that same experiment, it could distinguish between the letters X and E with 100% accuracy when trained with only 20 images (10 images of each letter). Variations in the images included both position and rotation by up to 30 degrees. When variation in rotation was increased to any angle (both in training and test datasets), the accuracy reduced to 90% with 60 training images (30 images of each letter). For distinguishing between the letters E and F, a more challenging problem due to their similarity, the same 1,000 neuron perceptron achieved an accuracy of more than 80% with 60 training images. Variation was only in the position of the image, with no rotation.