AI Chatbot Youtube Ad

AI Chatbot Youtube Ad — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Iubenda

    Iubenda

    iubenda (stylized in lowercase; Italian pronunciation: [juˈbɛnda]) is an Italian software company that develops tools intended to support website and application compliance with data protection and privacy regulations, including consent management platforms. The company was founded in 2011 in Milan by Andrea Giannangelo. In February 2022, the company was acquired by team.blue. == History == iubenda was founded in 2011 in Milan, Italy, initially focusing on automated privacy policy generation. In 2015, the company expanded its services to include cookie compliance tools following the implementation of ePrivacy regulations in Italy. In 2018, following the introduction of the General Data Protection Regulation (GDPR) in the European Union, iubenda expanded its products to include consent management and compliance documentation services. In February 2022, iubenda was acquired by team.blue, which obtained a majority stake in the company. Italian media described the acquisition as one of the largest Italian technology startup exits in recent years. In October 2022, iubenda acquired consentmanager, a Sweden-based consent management provider. In 2025, the company acquired CookieFirst, a Netherlands-based consent management platform. In 2025, iubenda partnered with AccessiWay, a digital accessibility company owned by team.blue. == Activities == iubenda develops software tools intended to support compliance with data protection and privacy regulations. Its products include generators for privacy policies, cookie banners, terms and conditions documents, and consent management platforms. The company’s consent management platform integrates with frameworks used for online advertising and privacy compliance, including Google's Consent Mode. The platform is designed to support compliance with regulatory frameworks including the GDPR in the European Union, the UK GDPR, Brazil’s LGPD, Switzerland’s FADP and privacy laws in the United States. Its tools can be integrated with content management systems, web applications, and other digital platforms, including WordPress. The company operates internationally, with a customer base of more than 150,000 organisations, primarily in Europe and the Americas.

    Read more →
  • GENESIS (software)

    GENESIS (software)

    GENESIS (The General Neural Simulation System) is a simulation environment for constructing realistic models of neurobiological systems at many levels of scale including: sub-cellular processes, individual neurons, networks of neurons, and neuronal systems. These simulations are “computer-based implementations of models whose primary objective is to capture what is known of the anatomical structure and physiological characteristics of the neural system of interest”. GENESIS is intended to quantify the physical framework of the nervous system in a way that allows for easy understanding of the physical structure of the nerves in question. “At present only GENESIS allows parallelized modeling of single neurons and networks on multiple-instruction-multiple-data parallel computers.” Development of GENESIS software spread from its home at Caltech to labs at the University of Texas at San Antonio, the University of Antwerp, the National Centre for Biological Sciences in Bangalore, the University of Colorado, the Pittsburgh Supercomputing Center, the San Diego Supercomputer Center, and Emory University. == Neurons and Neural Systems == GENESIS works by creating simulation environments for constructing models of neurons or neural systems. "Nerve cells are capable of communicating with each other in such a highly structured manner as to form neuronal networks. To understand neural networks, it is necessary to understand the ways in which one neuron communicates with another through synaptic connections and the process called synaptic transmission". Neurons have a specialized structure for their function, they "are different from most other cells in the body in that they are polarized and have distinct morphological regions, each with specific functions". The two important regions of a neuron are the dendrite and the axon. "Dendrites are the region where one neuron receives connections from other neurons. The cell body or soma contains the nucleus and the other organelles necessary for cellular function. The axon is a key component of nerve cells over which information is transmitted from one part of the neuron (e.g., the cell body) to the terminal regions of the neuron". The third important piece of a neuron is the synapse. "The synapse is the terminal region of the axon this is where one neuron forms a connection with another and conveys information through the process of synaptic transmission". Neural networks like the ones simulated with GENESIS software can quickly become highly complex and difficult to understand. "Just a few interconnected neurons (a microcircuit) can perform sophisticated tasks such as mediate reflexes, process sensory information, generate locomotion and mediate learning and memory. Even more complex networks, macrocircuits, consist of multiple embedded microcircuits. Macrocircuits mediate higher brain functions such as object recognition and cognition". GENESIS endeavors to simulate neural systems as they are found in nature. Often, "a neuron can receive contacts from up to 10,000 presynaptic neurons, and, in turn, any one neuron can contact up to 10,000 postsynaptic neurons. The combinatorial possibility could give rise to enormously complex neuronal circuits or network topologies, which might be very difficult to understand". == History == GENESIS was developed by Dr. James M. Bower, in the Caltech laboratory, and first released to the public in 1988 in association with the first Methods in Computational Neuroscience Course at the Marine Biological Laboratory in Woods Hole, MA. Full source code for the software was released in the same year under an open software model for development. It's now supported by the Computational Biology Initiative at the University of Texas at San Antonio and is available free along with tutorial guides on its use. P-GENESIS, a parallel version of GENESIS, was first run in 1990 on the Intel Delta, which was the prototype for the Intel Paragon family of massively parallel supercomputers. == How GENESIS Works == GENESIS is useful in creating a simulation environment for constructing models of neurobiological systems, such as: sub-cellular processes individual neurons networks of neurons neuronal systems The GENESIS system is complicated, but relatively easy to use. An individual can input commands through one of three ways: script files, graphical user interface, or the GENESIS command shell. These commands are then processed by the script language interpreter. "The Script Language Interpreter processes commands entered through the keyboard, script files, or the graphical user interface, and passes them to the GENESIS simulation engine. The simulation engine also loads compiled object libraries, reads and writes data files, and interacts with the graphical user interface". Below is a graphical representation of the user input process and a sample GENESIS output. == Applications == Most current applications for GENESIS involve realistic simulations of biological systems. It is usually used to simulate the behavior of larger brain structures, for example the cerebral cortex. These studies most often occur in lab courses in neural simulation at Caltech and the Marine Biological Laboratory at Woods Hole, Massachusetts. GENESIS can be used in combination with Yale University’s software called NEURON as a means for scientists to collaborate to construct a physical description of the nervous system. The GENESIS software can also be used with Kinetikit in the modeling of signal transduction pathways. GENESIS has been used in many studies. Some of these studies involve research that focuses on the development of software that would be useful across many disciplines. Others are studies of neurons, such as Purkinje cells. These studies used GENESIS to simulate Purkinje cells and could be useful for the planning and development of later experiments using the GENESIS software. There may also be biomedical applications of the software. For example, St. Jude Medical in Europe has developed an implanted GENESIS device.

    Read more →
  • Tree (abstract data type)

    Tree (abstract data type)

    In computer science, a tree is a widely used abstract data type that represents a hierarchical tree structure with a set of connected nodes. Each node in the tree can be connected to many children (depending on the type of tree), but must be connected to exactly one parent, except for the root node, which has no parent (i.e., the root node as the top-most node in the tree hierarchy). These constraints mean there are no cycles or "loops" (no node can be its own ancestor), and also that each child can be treated like the root node of its own subtree, making recursion a useful technique for tree traversal. In contrast to linear data structures, many trees cannot be represented by relationships between neighboring nodes (parent and children nodes of a node under consideration, if they exist) in a single straight line (called edge or link between two adjacent nodes). Binary trees are a commonly used type, which constrain the number of children for each parent to at most two. When the order of the children is specified, this data structure corresponds to an ordered tree in graph theory. A value or pointer to other data may be associated with every node in the tree, or sometimes only with the leaf nodes, which have no children nodes. The abstract data type (ADT) can be represented in a number of ways, including a list of parents with pointers to children, a list of children with pointers to parents, or a list of nodes and a separate list of parent-child relations (a specific type of adjacency list). Representations might also be more complicated, for example using indexes or ancestor lists for performance. Trees as used in computing are similar to but can be different from mathematical constructs of trees in graph theory, trees in set theory, and trees in descriptive set theory. == Terminology == A node is a structure which may contain data and connections to other nodes, sometimes called edges or links. Each node in a tree has zero or more child nodes, which are below it in the tree (by convention, trees are drawn with descendants going downwards). A node that has a child is called the child's parent node (or superior). All nodes have exactly one parent, except the topmost root node, which has none. A node might have many ancestor nodes, such as the parent's parent. Child nodes with the same parent are sibling nodes. Typically siblings have an order, with the first one conventionally drawn on the left. Some definitions allow a tree to have no nodes at all, in which case it is called empty. An internal node (also known as an inner node, inode for short, or branch node) is any node of a tree that has child nodes. Similarly, an external node (also known as an outer node, leaf node, or terminal node) is any node that does not have child nodes. The height of a node is the length of the longest downward path to a leaf from that node. The height of the root is the height of the tree. The depth of a node is the length of the path to its root (i.e., its root path). Thus the root node has depth zero, leaf nodes have height zero, and a tree with only a single node (hence both a root and leaf) has depth and height zero. Conventionally, an empty tree (tree with no nodes, if such are allowed) has height −1. Each non-root node can be treated as the root node of its own subtree, which includes that node and all its descendants. Other terms used with trees: Neighbor Parent or child. Ancestor A node reachable by repeated proceeding from child to parent. Descendant A node reachable by repeated proceeding from parent to child. Also known as subchild. Degree For a given node, its number of children. A leaf, by definition, has degree zero. Degree of tree The degree of a tree is the maximum degree of a node in the tree. Distance The number of edges along the shortest path between two nodes. Level The level of a node is the number of edges along the unique path between it and the root node. This is the same as depth. Width The number of nodes in a level. Breadth The number of leaves. Complete tree A tree with every level filled, except the last. Forest A set of one or more disjoint trees. Ordered tree A rooted tree in which an ordering is specified for the children of each vertex. Size of a tree Number of nodes in the tree. == Common operations == Enumerating all the items Enumerating a section of a tree Searching for an item Adding a new item at a certain position on the tree Deleting an item Pruning: Removing a whole section of a tree Grafting: Adding a whole section to a tree Finding the root for any node Finding the lowest common ancestor of two nodes === Traversal and search methods === Stepping through the items of a tree, by means of the connections between parents and children, is called walking the tree, and the action is a walk of the tree. Often, an operation might be performed when a pointer arrives at a particular node. A walk in which each parent node is traversed before its children is called a pre-order walk; a walk in which the children are traversed before their respective parents are traversed is called a post-order walk; a walk in which a node's left subtree, then the node itself, and finally its right subtree are traversed is called an in-order traversal. (This last scenario, referring to exactly two subtrees, a left subtree and a right subtree, assumes specifically a binary tree.) A level-order walk effectively performs a breadth-first search over the entirety of a tree; nodes are traversed level by level, where the root node is visited first, followed by its direct child nodes and their siblings, followed by its grandchild nodes and their siblings, etc., until all nodes in the tree have been traversed. == Representations == There are many different ways to represent trees. In working memory, nodes are typically dynamically allocated records with pointers to their children, their parents, or both, as well as any associated data. If of a fixed size, the nodes might be stored in a list. Nodes and relationships between nodes might be stored in a separate special type of adjacency list. In relational databases, nodes are typically represented as table rows, with indexed row IDs facilitating pointers between parents and children. Nodes can also be stored as items in an array, with relationships between them determined by their positions in the array (as in a binary heap). A binary tree can be implemented as a list of lists: the head of a list (the value of the first term) is the left child (subtree), while the tail (the list of second and subsequent terms) is the right child (subtree). This can be modified to allow values as well, as in Lisp S-expressions, where the head (value of first term) is the value of the node, the head of the tail (value of second term) is the left child, and the tail of the tail (list of third and subsequent terms) is the right child. Ordered trees can be naturally encoded by finite sequences, for example with natural numbers. == Examples of trees and non-trees == == Type theory == As an abstract data type, the abstract tree type T with values of some type E is defined, using the abstract forest type F (list of trees), by the functions: value: T → E children: T → F nil: () → F node: E × F → T with the axioms: value(node(e, f)) = e children(node(e, f)) = f In terms of type theory, a tree is an inductive type defined by the constructors nil (empty forest) and node (tree with root node with given value and children). == Mathematical terminology == Viewed as a whole, a tree data structure is an ordered tree, generally with values attached to each node. Concretely, it is (if required to be non-empty): A rooted tree with the "away from root" direction (a more narrow term is an "arborescence"), meaning: A directed graph, whose underlying undirected graph is a tree (any two vertices are connected by exactly one simple path), with a distinguished root (one vertex is designated as the root), which determines the direction on the edges (arrows point away from the root; given an edge, the node that the edge points from is called the parent and the node that the edge points to is called the child), together with: an ordering on the child nodes of a given node, and a value (of some data type) at each node. Often trees have a fixed (more properly, bounded) branching factor (outdegree), particularly always having two child nodes (possibly empty, hence at most two non-empty child nodes), hence a "binary tree". Allowing empty trees makes some definitions simpler, some more complicated: a rooted tree must be non-empty, hence if empty trees are allowed the above definition instead becomes "an empty tree or a rooted tree such that ...". On the other hand, empty trees simplify defining fixed branching factor: with empty trees allowed, a binary tree is a tree such that every node has exactly two children, each of which is a tree (possibly empty). == Applications == Trees are commonly used to represent or manipulate hierarchical data in ap

    Read more →
  • AlphaGo

    AlphaGo

    AlphaGo is a computer program that plays the board game Go. It was developed by the London-based DeepMind Technologies, an acquired subsidiary of Google. Subsequent versions of AlphaGo became increasingly powerful, including a version that competed under the name Master. After retiring from competitive play, AlphaGo Master was succeeded by an even more powerful version known as AlphaGo Zero, which was completely self-taught without learning from human games. AlphaGo Zero was then generalized into a program known as AlphaZero, which played additional games, including chess and shogi. AlphaZero has in turn been succeeded by a program known as MuZero which learns without being taught the rules. AlphaGo and its successors use a Monte Carlo tree search algorithm to find its moves based on knowledge previously acquired by machine learning, specifically by an artificial neural network (a deep learning method) by extensive training, both from human and computer play. A neural network is trained to identify the best moves and the winning percentages of these moves. This neural network improves the strength of the tree search, resulting in stronger move selection in the next iteration. In October 2015, in a match against Fan Hui, the original AlphaGo became the first computer Go program to beat a human professional Go player without handicap on a full-sized 19×19 board. In March 2016, it beat Lee Sedol in a five-game match, the first time a computer Go program has beaten a 9-dan professional without handicap. Although it lost to Lee Sedol in the fourth game, Lee resigned in the final game, giving a final score of 4 games to 1 in favour of AlphaGo. In recognition of the victory, AlphaGo was awarded an honorary 9-dan by the Korea Baduk Association. The lead up and the challenge match with Lee Sedol were documented in a documentary film also titled AlphaGo, directed by Greg Kohs. The win by AlphaGo was chosen by Science as one of the Breakthrough of the Year runners-up on 22 December 2016. At the 2017 Future of Go Summit, the Master version of AlphaGo beat Ke Jie, the number one ranked player in the world at the time, in a three-game match, after which AlphaGo was awarded professional 9-dan by the Chinese Weiqi Association. After the match between AlphaGo and Ke Jie, DeepMind retired AlphaGo, while continuing AI research in other areas. The self-taught AlphaGo Zero achieved a 100–0 victory against the early competitive version of AlphaGo, and its successor AlphaZero was perceived as the world's top player in Go by the end of the 2010s. == History == Go is considered much more difficult for computers to win than other games such as chess, because its strategic and aesthetic nature makes it hard to directly construct an evaluation function, and its much larger branching factor makes it prohibitively difficult to use traditional AI methods such as alpha–beta pruning, tree traversal and heuristic search. Almost two decades after IBM's computer Deep Blue beat world chess champion Garry Kasparov in the 1997 match, the strongest Go programs using artificial intelligence techniques only reached about amateur 5-dan level, and still could not beat a professional Go player without a handicap. In 2012, the software program Zen, running on a four PC cluster, beat Masaki Takemiya (9p) twice at five- and four-stone handicaps. In 2013, Crazy Stone beat Yoshio Ishida (9p) at a four-stone handicap. According to DeepMind's David Silver, the AlphaGo research project was formed around 2014 to test how well a neural network using deep learning can compete at Go. AlphaGo represents a significant improvement over previous Go programs. In 500 games against other available Go programs, including Crazy Stone and Zen, AlphaGo running on a single computer won all but one. In a similar matchup, AlphaGo running on multiple computers won all 500 games played against other Go programs, and 77% of games played against AlphaGo running on a single computer. The distributed version in October 2015 was using 1,202 CPUs and 176 GPUs. === Match against Fan Hui === In October 2015, the distributed version of AlphaGo defeated the European Go champion Fan Hui, a 2-dan (out of 9 dan possible) professional, five to zero. This was the first time a computer Go program had beaten a professional human player on a full-sized board without handicap. The announcement of the news was delayed until 27 January 2016 to coincide with the publication of a paper in the journal Nature describing the algorithms used. === Match against Lee Sedol === AlphaGo played South Korean professional Go player Lee Sedol, ranked 9-dan, one of the best players at Go, with five games taking place at the Four Seasons Hotel in Seoul, South Korea on 9, 10, 12, 13, and 15 March 2016, which were video-streamed live. Out of five games, AlphaGo won four games and Lee won the fourth game which made him recorded as the only human player who beat AlphaGo in all of its 74 official games. AlphaGo ran on Google's cloud computing with its servers located in the United States. The match used Chinese rules with a 7.5-point komi, and each side had two hours of thinking time plus three 60-second byoyomi periods. The version of AlphaGo playing against Lee used a similar amount of computing power as was used in the Fan Hui match. The Economist reported that it used 1,920 CPUs and 280 GPUs. At the time of play, Lee Sedol had the second-highest number of Go international championship victories in the world after South Korean player Lee Chang-ho who kept the world championship title for 16 years. Since there is no single official method of ranking in international Go, the rankings may vary among the sources. While he was ranked top sometimes, some sources ranked Lee Sedol as the fourth-best player in the world at the time. AlphaGo was not specifically trained to face Lee nor was designed to compete with any specific human players. The first three games were won by AlphaGo following resignations by Lee. However, Lee beat AlphaGo in the fourth game, winning by resignation at move 180. AlphaGo then continued to achieve a fourth win, winning the fifth game by resignation. The prize was US$1 million. Since AlphaGo won four out of five and thus the series, the prize will be donated to charities, including UNICEF. Lee Sedol received $150,000 for participating in all five games and an additional $20,000 for his win in Game 4. In June 2016, at a presentation held at a university in the Netherlands, Aja Huang, one of the Deep Mind team, revealed that they had patched the logical weakness that occurred during the 4th game of the match between AlphaGo and Lee, and that after move 78 (which was dubbed the "divine move" by many professionals), it would play as intended and maintain Black's advantage. Before move 78, AlphaGo was leading throughout the game, but Lee's move caused the program's computing powers to be diverted and confused. Huang explained that AlphaGo's policy network of finding the most accurate move order and continuation did not precisely guide AlphaGo to make the correct continuation after move 78, since its value network did not determine Lee's 78th move as being the most likely, and therefore when the move was made AlphaGo could not make the right adjustment to the logical continuation. === Sixty online games === On 29 December 2016, a new account on the Tygem server named "Magister" (shown as 'Magist' at the server's Chinese version) from South Korea began to play games with professional players. It changed its account name to "Master" on 30 December, then moved to the FoxGo server on 1 January 2017. On 4 January, DeepMind confirmed that the "Magister" and the "Master" were both played by an updated version of AlphaGo, called AlphaGo Master. As of 5 January 2017, AlphaGo Master's online record was 60 wins and 0 losses, including three victories over Go's top-ranked player, Ke Jie, who had been quietly briefed in advance that Master was a version of AlphaGo. After losing to Master, Gu Li offered a bounty of 100,000 yuan (US$14,400) to the first human player who could defeat Master. Master played at the pace of 10 games per day. Many quickly suspected it to be an AI player due to little or no resting between games. Its adversaries included many world champions such as Ke Jie, Park Jeong-hwan, Yuta Iyama, Tuo Jiaxi, Mi Yuting, Shi Yue, Chen Yaoye, Li Qincheng, Gu Li, Chang Hao, Tang Weixing, Fan Tingyu, Zhou Ruiyang, Jiang Weijie, Chou Chun-hsun, Kim Ji-seok, Kang Dong-yun, Park Yeong-hun, and Won Seong-jin; national champions or world championship runners-up such as Lian Xiao, Tan Xiao, Meng Tailing, Dang Yifei, Huang Yunsong, Yang Dingxin, Gu Zihao, Shin Jinseo, Cho Han-seung, and An Sungjoon. All 60 games except one were fast-paced games with three 20 or 30 seconds byo-yomi. Master offered to extend the byo-yomi to one minute when playing with Nie Weiping in consideration of his age. After winning its 59th game Master revealed itse

    Read more →
  • GOLOG

    GOLOG

    GOLOG is a high-level logic programming language for the specification and execution of complex actions in dynamical domains. It is based on the situation calculus. It is a first-order logical language for reasoning about action and change. GOLOG was developed at the University of Toronto. == History == The concept of situation calculus on which the GOLOG programming language is based was first proposed by John McCarthy in 1963. == Description == A GOLOG interpreter automatically maintains a direct characterization of the dynamic world being modeled, on the basis of user supplied axioms about preconditions, effects of actions and the initial state of the world. This allows the application to reason about the condition of the world and consider the impacts of different potential actions before focusing on a specific action. Golog is a logic programming language and is very different from conventional programming languages. A procedural programming language like C defines the execution of statements in advance. The programmer creates a subroutine which consists of statements, and the computer executes each statement in a linear order. In contrast, fifth-generation programming languages like Golog work with an abstract model with which the interpreter can generate the sequence of actions. The source code defines the problem and it is up to the solver to find the next action. This approach can facilitate the management of complex problems from the domain of robotics. A Golog program defines the state space in which the agent is allowed to operate. A path in the symbolic domain is found with state space search. To speed up the process, Golog programs are realized as hierarchical task networks. Apart from the original Golog language, there are some extensions available. The ConGolog language provides concurrency and interrupts. Other dialects like IndiGolog and Readylog were created for real time applications in which sensor readings are updated on the fly. == Uses == Golog has been used to model the behavior of autonomous agents. In addition to a logic-based action formalism for describing the environment and the effects of basic actions, they enable the construction of complex actions using typical programming language constructs. It is also used for applications in high level control of robots and industrial processes, virtual agents, discrete event simulation etc. It can be also used to develop Belief Desire Intention-style agent systems. == Planning and scripting == In contrast to the Planning Domain Definition Language, Golog supports planning and scripting as well. Planning means that a goal state in the world model is defined, and the solver brings a logical system into this state. Behavior scripting implements reactive procedures, which are running as a computer program. For example, suppose the idea is to authoring a story. The user defines what should be true at the end of the plot. A solver gets started and applies possible actions to the current situation until the goal state is reached. The specification of a goal state and the possible actions are realized in the logical world model. In contrast, a hardwired reactive behavior doesn't need a solver but the action sequence is provided in a scripting language. The Golog interpreter, which is written in Prolog, executes the script and this will bring the story into the goal state.

    Read more →
  • Hallin's spheres

    Hallin's spheres

    Hallin's spheres is a theory of news reporting and its rhetorical framing posited by journalism historian Daniel C. Hallin in his 1986 book The Uncensored War to explain the news coverage of the Vietnam War. Hallin divides the world of political discourse into three concentric spheres: consensus, legitimate controversy, and deviance. In the sphere of consensus, journalists assume everyone agrees. The sphere of legitimate controversy includes the standard political debates, and journalists are expected to remain neutral. The sphere of deviance falls outside the bounds of legitimate debate, and journalists can ignore it. These boundaries shift, as public opinion shifts. Hallin's spheres, which deals with the media, are similar to the Overton window, which deals with public opinion generally, and posits a sliding scale of public opinion on any given issue ranging from conventional wisdom to unacceptable. Hallin used the concept of framing to describe the presentation and reception of issues in public. For example, framing the use of drugs as criminal activity can encourage the public to consider that behavior anti-social. Hallin's work was later referred to in the controversial formulation of the concept of an opinion corridor, in which the range of acceptable public opinion narrows, and opinion outside that corridor moves from legitimate controversy into deviance. == Description == === Sphere of consensus === This sphere contains those topics on which there is widespread agreement, or at least the perception thereof. Within the sphere of consensus, "journalists feel free to invoke a generalized 'we' and to take for granted shared values and shared assumptions". Examples include such things as motherhood and apple pie. For topics in this sphere, journalists feel free to be advocating cheerleaders without having to be neutral or present any opposing view point and be disinterested observers." === Sphere of legitimate controversy === For topics in this sphere rational and informed people hold differing views within limited range. These topics are therefore the most important to cover, and also ones upon which journalists are seemingly obliged to remain disinterested reporters, rather than advocating for or against a particular view. Schudson notes that Hallin, in his influential study of the US media during the Vietnam War, argues that journalism's commitment to objectivity has always been compartmentalized. That is, within a certain sphere—the sphere of legitimate controversy—journalists seek conscientiously to be balanced and objective. The work of Walter Williams professor at the University of Missouri, Rod Petersen, advanced the idea that priming—controlling the narratives that media covers—can be the tool that media use to get deviant news subjects into the legitimate controversial circles of new coverage. === Sphere of deviance === Topics in this sphere are rejected by journalists as being unworthy of general consideration. Such views are perceived as being out of hand, unfounded, taboo, or of such minor consequence that they are not newsworthy. Hallin argues that in the sphere of deviance, "journalists also depart from standard norms of objective reporting and feel authorized to treat as marginal, laughable, dangerous". They either avoid mentioning or ridicule the controversial subject as outside the bounds of acceptable controversy; and they censor the individuals and groups who are associated with it. A simple example: a person claiming that aliens are manipulating college basketball scores might have difficulty finding sports media coverage for such a claim. A more political example: the US media regulator FCC's "Fairness Doctrine" aimed at radio stations, advocated balance between right and left political news and opinions, yet specified that broadcasters did not have to reserve any space or time for Communist viewpoints. == Uses of the terms == Craig Watkins (2001, pp. 92–94) makes use of the Hallin's spheres in a paper examining ABC, CBS, and NBC television network television news coverage of the Million Man March, a demonstration that took place in Washington, D.C., on October 16, 1995. Watkins analyzes the dominant framing practices—problem definition, rhetorical devices, use of sources, and images—employed by journalists to make sense of this particular expression of political protest. He argues that Hallin's three spheres are a way for media framing practices to develop specific reportorial contexts, and each sphere develops its own distinct style of news reporting resources by different rhetorical tropes and discourses. Piers Robinson (2001, p. 536) uses the concept in relation to debates that have emerged over the extent to which the mass media serves elite interests or, alternatively, plays a powerful role in shaping political outcomes. His article reviews Hallin's spheres as an example of media-state relations, that highlights theoretical and empirical shortcomings in the 'manufacturing consent' thesis (Chomsky, McChesney). Robinson argues that a more nuanced and bi-directional understanding is needed of the direction of influence between media and the state that builds upon, rather than rejecting, existing theoretical accounts. Hallin's theory assumed a relatively homogenized media environment, where most producers were trying to reach most consumers. A more fractured media landscape can challenge this assumption because different audiences may place topics in different spheres, a concept related to the filter bubble, which posits that many members of the public choose to limit their media consumption to the areas of consensus and deviance that they personally prefer.

    Read more →
  • Blockhead (thought experiment)

    Blockhead (thought experiment)

    Blockhead is a theoretical computer system invented as part of a thought experiment by philosopher Ned Block, which appeared in a paper titled "Psychologism and Behaviorism". Block did not personally name the computer in the paper. == Overview == In "Psychologism and Behaviorism", Block argues that the internal mechanism of a system is important in determining whether that system is intelligent and claims to show that a non-intelligent system could pass the Turing test. Block asks the reader to imagine a conversation lasting any given amount of time. He states that given the nature of language, there are a finite number of syntactically and grammatically correct sentences that can be used to start a conversation. Consequently, there is a limit to how many "sensible" responses can be made to the first sentence, then to the second sentence, and so on until the conversation ends. Block then asks the reader to imagine a computer which had been programmed with all the sentences in theory, if not in practice. Block argues that such a machine could continue a conversation with a person on any topic because the computer would be programmed with every sentence that it was possible to use so the computer would be able to pass the Turing test despite the fact that—according to Block—it was not intelligent. Block says that this does not show that there is only one correct internal structure for generating intelligence but simply that some internal structures do not generate intelligence. The argument is related to John Searle's Chinese room.

    Read more →
  • Stockfish (chess)

    Stockfish (chess)

    Stockfish is a free and open-source chess engine, available for various desktop and mobile platforms. It can be used in chess software through the Universal Chess Interface. Stockfish has been one of the strongest chess engines in the world for several years. It has won all main events of the Top Chess Engine Championship (TCEC) and the Chess.com Computer Chess Championship (CCC) since 2020 and, as of May 2026, is the strongest CPU chess engine in the world with an estimated Elo rating of 3653 in a time control of 40/15 (15 minutes to make 40 moves), according to CCRL. The Stockfish engine was developed by Tord Romstad, Marco Costalba, and Joona Kiiski, and was derived from Glaurung, an open-source engine by Tord Romstad released in 2004. It is now being developed and maintained by the Stockfish community. Stockfish historically used only a classical hand-crafted function to evaluate board positions, but with the introduction of the efficiently updatable neural network (NNUE) in August 2020, Stockfish 12 adopted a hybrid evaluation system that primarily used the neural network and occasionally relied on the hand-crafted evaluation. In July 2023, Stockfish removed the hand-crafted evaluation and transitioned to a fully neural network-based approach. == Features == Stockfish uses a tree-search algorithm based on alpha–beta search with several hand-designed heuristics. Stockfish represents positions using bitboards. Stockfish supports Chess960, a feature it inherited from Glaurung. Support for Syzygy tablebases, previously available in a fork maintained by Ronald de Man, was integrated into Stockfish in 2014. In 2018, support for the 7-man Syzygy was added, shortly after the tablebase was made available. Stockfish supports an unlimited number of CPU threads in multiprocessor systems, with a maximum transposition table size of 32 TB. Stockfish has been a very popular engine on various platforms. On desktop, it is the default chess engine bundled with the Internet Chess Club interface programs BlitzIn and Dasher. On mobile, it has been bundled with the Stockfish app, SmallFish and Droidfish. Other Stockfish-compatible graphical user interfaces (GUIs) include Fritz, Arena, Stockfish for Mac, and PyChess. Stockfish can be compiled to WebAssembly or JavaScript, allowing it to run in the browser. Both Chess.com and Lichess provide Stockfish in this form in addition to a server-side program. Release versions and development versions are available as C++ source code and as precompiled versions for Microsoft Windows, macOS, Linux 32-bit/64-bit and Android. == History == The program originated from Glaurung, an open-source chess engine created by Tord Romstad and first released in 2004. Four years later, Marco Costalba forked the project, naming it Stockfish because it was "produced in Norway and cooked in Italy" (Romstad is Norwegian and Costalba is Italian). The first version, Stockfish 1.0, was released in November 2008. For a while, new ideas and code changes were transferred between the two programs in both directions, until Romstad decided to discontinue Glaurung in favor of Stockfish, which was the stronger engine at the time. The last Glaurung version (2.2) was released in December 2008. Around 2011, Romstad decided to abandon his involvement with Stockfish in order to spend more time on his new iOS chess app. On 18 June 2014 Marco Costalba announced that he had "decided to step down as Stockfish maintainer" and asked that the community create a fork of the current version and continue its development. An official repository, managed by a volunteer group of core Stockfish developers, was created soon after and currently manages the development of the project. === Fishtest === Since 2013, Stockfish has been developed using a distributed testing framework named Fishtest, where volunteers can donate CPU time for testing improvements to the program. Changes to game-playing code are accepted or rejected based on results of playing of tens of thousands of games on the framework against an older "reference" version of the program, using sequential probability ratio testing. Tests on the framework are verified using the chi-squared test, and only if the results are statistically significant are they deemed reliable and used to revise the software code. After the inception of Fishtest, Stockfish gained 120 Elo points in 12 months, propelling it to the top of all major rating lists. As of May 2026, the framework has used a total of more than 20,100 years of CPU time to play over 10 billion chess games. === NNUE === In June 2020, Stockfish introduced the efficiently updatable neural network (NNUE) approach, based on earlier work by computer shogi programmers. Instead of using manually designed heuristics to evaluate the board, this approach introduced a neural network trained on millions of positions which could be evaluated quickly on CPU. On 2 September 2020, the twelfth version of Stockfish was released, incorporating NNUE, and reportedly winning ten times more game pairs than it loses when matched against version eleven. In July 2023, the classical evaluation was completely removed in favor of the NNUE evaluation. == Competition results == === Top Chess Engine Championship === Stockfish is a TCEC multiple-time champion and the current leader in trophy count. Ever since TCEC restarted in 2013, Stockfish has finished first or second in every season except one. Stockfish finished second in TCEC Season 4 and 5, with scores of 23–25 first against Houdini 3 and later against Komodo 1142 in the Superfinal event. Season 5 was notable for the winning Komodo team as they accepted the award posthumously for the program's creator Don Dailey, who succumbed to an illness during the final stage of the event. In his honor, the version of Stockfish that was released shortly after that season was named "Stockfish DD". On 30 May 2014, Stockfish 170514 (a development version of Stockfish 5 with tablebase support) convincingly won TCEC Season 6, scoring 35.5–28.5 against Komodo 7x in the Superfinal. Stockfish 5 was released the following day. In TCEC Season 7, Stockfish again made the Superfinal, but lost to Komodo with a score of 30.5–33.5. In TCEC Season 8, despite losses on time caused by buggy code, Stockfish nevertheless qualified once more for the Superfinal, but lost 46.5–53.5 to Komodo. In Season 9, Stockfish defeated Houdini 5 with a score of 54.5–45.5. Stockfish finished third during season 10 of TCEC, the only season since 2013 in which Stockfish had failed to qualify for the superfinal. It did not lose a game but was still eliminated because it was unable to score enough wins against lower-rated engines. After this technical elimination, Stockfish went on a long winning streak, winning seasons 11 (59–41 against Houdini 6.03), 12 (60–40 against Komodo 12.1.1), and 13 (55–45 against Komodo 2155.00) convincingly. In Season 14, Stockfish faced a new challenger in Leela Chess Zero, eking out a win by one point (50.5–49.5). Its winning streak was finally ended in Season 15, when Leela qualified again and won 53.5–46.5, but Stockfish promptly won Season 16, defeating AllieStein 54.5–45.5, after Leela failed to qualify for the Superfinal. In Season 17, Stockfish faced Leela again in the superfinal, losing 52.5–47.5. However, Stockfish has won every Superfinal since: beating Leela 53.5–46.5 in Season 18, 54.5–45.5 in Season 19, 53–47 in Season 20, and 56–44 in Season 21. In Season 22, Komodo Dragon beat out Leela to qualify for the Superfinal, losing to Stockfish by a large margin 59.5–40.5. Stockfish did not lose an opening pair in this match. Leela made the Superfinal in Seasons 23 and 24, but was crushed by Stockfish both times (58.5–41.5 and 58–42). In Season 25, Stockfish once again defeated Leela, but this time by a narrower margin of 52–48. Stockfish also took part in the TCEC cup, winning the first edition, but was surprisingly upset by Houdini in the semifinals of the second edition. Stockfish recovered to beat Komodo in the third-place playoff. In the third edition, Stockfish made it to the finals, but was defeated by Leela Chess Zero after blundering in a 7-man endgame tablebase draw. It turned this result around in the fourth edition, defeating Leela in the final 4.5–3.5. In TCEC Cup 6, Stockfish finished third after losing to AllieStein in the semifinals, the first time it had failed to make the finals. Since then, Stockfish has consistently won the tournament, with the exception of the 11th edition which Leela won 8.5–7.5. === Chess.com Computer Chess Championship === Ever since Chess.com hosted its first Chess.com Computer Chess Championship in 2018, Stockfish has been the most successful engine. It dominated the earlier championships, winning six consecutive titles before finishing second in CCC7. Since then, its dominance has come under threat from the neural-network engines Leelenstein and Leela Chess Zero, but it has continued to perform w

    Read more →
  • Focus recovery based on the linear canonical transform

    Focus recovery based on the linear canonical transform

    For digital image processing, the Focus recovery from a defocused image is an ill-posed problem since it loses the component of high frequency. Most of the methods for focus recovery are based on depth estimation theory. The Linear canonical transform (LCT) gives a scalable kernel to fit many well-known optical effects. Using LCTs to approximate an optical system for imaging and inverting this system, theoretically permits recovery of a defocused image. == Depth of field and perceptual focus == In photography, depth of field (DOF) means an effective focal length. It is usually used for stressing an object and deemphasizing the background (and/or the foreground). The important measure related to DOF is the lens aperture. Decreasing the diameter of aperture increases focus and lowers resolution and vice versa. == The Huygens–Fresnel principle and DOF == The Huygens–Fresnel principle describes diffraction of wave propagation between two fields. It belongs to Fourier optics rather than geometric optics. The disturbance of diffraction depends on two circumstance parameters, the size of aperture and the interfiled distance. Consider a source field and a destination field, field 1 and field 0, respectively. P1(x1,y1) is the position in the source field, P0(x0,y0) is the position in the destination field. The Huygens–Fresnel principle gives the diffraction formula for two fields U(x0,y0), U(x1,y1) as following: U ( x 0 , y 0 ) = 1 j λ ∫ ∫ U ( x 1 , y 1 ) e j k r 01 r 01 cos ⁡ θ d x 1 d y 1 {\displaystyle \mathbf {U} (x_{0},y_{0})={\frac {1}{j\lambda }}\int \!\int \mathbf {U} (x_{1},y_{1}){\frac {e^{jkr_{01}}}{r_{01}}}\cos \theta dx_{1}dy_{1}} where θ denotes the angle between r 01 {\displaystyle r_{01}} and z {\displaystyle z} . Replace cos θ by r 01 z {\displaystyle {\frac {r_{01}}{z}}} and r 01 {\displaystyle r_{01}} by [ ( x 0 − x 1 ) 2 + ( y 0 − y 1 ) 2 + z 2 ] 1 / 2 {\displaystyle [(x_{0}-x_{1})^{2}+(y_{0}-y_{1})^{2}+z^{2}]^{1/2}} we get U ( x 0 , y 0 ) = 1 j λ z ∫ ∫ U ( x 1 , y 1 ) exp ⁡ ( j k z [ 1 + ( x 0 − x 1 z ) 2 + ( y 0 − y 1 z ) 2 ] 1 / 2 ) 1 + ( x 0 − x 1 z ) 2 + ( y 0 − y 1 z ) 2 d x 1 d y 1 {\displaystyle \mathbf {U} (x_{0},y_{0})={\frac {1}{j\lambda z}}\int \!\int \mathbf {U} (x_{1},y_{1}){\frac {\exp(jkz[1+({\frac {x_{0}-x_{1}}{z}})^{2}+({\frac {y_{0}-y_{1}}{z}})^{2}]^{1/2})}{1+({\frac {x_{0}-x_{1}}{z}})^{2}+({\frac {y_{0}-y_{1}}{z}})^{2}}}dx_{1}dy_{1}} The further distance z or the smaller aperture (x1,y1) causes a greater diffraction. A larger DOF can lead to a more effective focused wave distribution. This seems to be a conflict. Here are the notations: Diffraction In a real imaging environment, the depths of objects comparing to the aperture are usually not enough to lead to serious diffraction. However, a long enough depth of the object can truly blurs the image. Effective Focus Small aperture, small blurring radius, few wave information. Loses details in comparing to a large aperture. In conclusion, diffraction explains a micro behavior whereas DOF shows a macro behavior. Both of them are related to aperture size. == Linear canonical transform == As the meaning of "canonical", the linear canonical transform (LCT) is a scalable transform that connects to many important kernels such as the Fresnel transform, Fraunhofer transform and the fractional Fourier transform. It can be easily controlled by its four parameters, a, b, c, d (3 degrees of freedom). The definition: L M ( f ( u ) ) = ∫ L M ( u , u ′ ) f ( u ′ ) d u ′ {\displaystyle L_{M}(f(u))=\int L_{M}(u,u')f(u')du'} where L M ( u , u ′ ) = { 1 b e − j π / 4 e [ j π ( d b u 2 ) − 2 1 b u u ′ + a b u ′ 2 ] , if b ≠ 0 d e j 2 c d u 2 δ ( u ′ − d u ) , if b = 0 {\displaystyle L_{M}(u,u')={\begin{cases}{\sqrt {\frac {1}{b}}}e^{-j\pi /4}e^{[j\pi ({\frac {d}{b}}u^{2})-2{\frac {1}{b}}uu'+{\frac {a}{b}}u'^{2}]},&{\mbox{if }}b\neq 0\\{\sqrt {d}}e^{{\frac {j}{2}}cdu^{2}}\delta (u'-du),&{\mbox{if }}b=0\end{cases}}} Consider a general imaging system with object distance z0, focal length of the thin lens f and an imaging distance z1. The effect of the propagation in freespace acts as nearly a chirp convolution, that is, the formula of diffraction. Besides, the effect of the propagation in thin lens acts as a chirp multiplication. The parameters are all simplified as paraxial approximations while meeting the freespace propagation. It does not consider aperture size. From the properties of the LCT, it is possible to obtain those 4 parameters for this optical system as: [ 1 − z 1 f λ z 0 − λ z 0 z 1 f + λ z 1 − 1 λ f 1 − z 0 f ] {\displaystyle {\begin{bmatrix}1-{\frac {z_{1}}{f}}\quad &\lambda z_{0}-{\frac {\lambda z_{0}z_{1}}{f}}+\lambda z_{1}\\-{\frac {1}{\lambda f}}\quad &1-{\frac {z_{0}}{f}}\end{bmatrix}}} Once the values of z1, z0 and f are known, the LCT can simulate any optical system.

    Read more →
  • Geopolitical ontology

    Geopolitical ontology

    The FAO geopolitical ontology is an ontology developed by the Food and Agriculture Organization of the United Nations (FAO) to describe, manage and exchange data related to geopolitical entities such as countries, territories, regions and other similar areas. == Definitions and examples == An ontology is a kind of dictionary that describes information in a certain domain using concepts and relationships. It is often implemented using OWL (Web Ontology Language), an XML-based standard language that can be interpreted by computers. A Concept is defined as abstract knowledge. For example, in the geopolitical ontology a non-self-governing territory and a geographical group are concepts. Concepts are explicitly implemented in the ontology with individuals and classes: An individual is defined as an object perceived from the real world. In the geopolitical domain Ethiopia and the least developed countries group are individuals. A class is defined as a set of individuals sharing common properties. In the geopolitical domain, Ethiopia, Republic of Korea and Italy are individuals of the class self-governing territory; and least developed countries is an individual of the class special group. Relationships between concepts are explicitly implemented by: Object properties between individuals of two classes. For example, has member and is in group properties, as shown in Figure 1. Datatype properties between individuals and literals or XML datatypes. For example, the individual Afghanistan has the datatype property CodeISO3 with the value "AFG". Restrictions in classes and/or properties. For example, the property official English name of the class self-governing territory has been restricted to have only one value, this means that a self-governing territory (or country) can only have one internationally recognized official English name. The advantage of describing information in an ontology is that it enables to acquire domain knowledge by defining hierarchical structures of classes, adding individuals, setting object properties and datatype properties, and assigning restrictions. == FAO ontology == The geopolitical ontology provides names in seven languages (Arabic, Chinese, French, English, Spanish, Russian and Italian) and identifiers in various international coding systems (ISO2, ISO3, AGROVOC, FAOSTAT, FAOTERM, GAUL, UN, UNDP and DBPediaID codes) for territories and groups. Moreover, the FAO geopolitical ontology tracks historical changes from 1985 up until today; provides geolocation (geographical coordinates); implements relationships among countries and countries, or countries and groups, including properties such as has border with, is predecessor of, is successor of, is administered by, has members, and is in group; and disseminates country statistics including country area, land area, agricultural area, GDP or population. The FAO geopolitical ontology provides a structured description of data sources. This includes: source name, source identifier, source creator and source's update date. Concepts are described using the Dublin Core vocabulary In summary, the main objectives of the FAO geopolitical ontology are: To provide the most updated geopolitical information (names, codes, relationships, statistics) To track historical changes in geopolitical information To improve information management and facilitate standardized data sharing of geopolitical information To demonstrate the benefits of the geopolitical ontology to improve interoperability of corporate information systems It is possible to download the FAO geopolitical ontology in OWL and RDF formats. Documentation is available in the FAO Country Profiles Geopolitical information web page. == Features of the FAO ontology == The geopolitical ontology contains : Area types: Territories: self-governing, non-self-governing, disputed, other. Groups: organizations, geographic, economic and special groups. Names (official, short and names for lists) in Arabic, Chinese, English, French, Spanish, Russian and Italian. International codes: UN code – M49, ISO 3166 Alpha-2 and Alpha-3, UNDP code, GAUL code, FAOSTAT, AGROVOC FAOTERM and DBPediaID. Coordinates: maximum latitude, minimum latitude, maximum longitude, minimum longitude. Basic country statistics: country area, land area, agricultural area, GDP, population. Currency names and codes. Adjectives of nationality. Relations: Groups membership. Neighbours (land border), administration of non-self-governing. Historic changes: predecessor, successor, valid since, valid until. == Implementation into OWL == The FAO geopolitical ontology is implemented in OWL. It consists of classes, properties, individuals and restrictions. Table 1 shows all classes, gives a brief description and lists some individuals that belong to each class. Note that the current version of the geopolitical ontology does not provide individuals of the class "disputed" territories. Table 2 and Table 3 illustrate datatype properties and object properties. == Geopolitical ontology in Linked Open Data == The FAO Geopolitical ontology is embracing the W3C Linked Open Data (LOD) initiative and released its RDF version of the geopolitical ontology in March 2011. The term 'Linked Open Data' refers to a set of best practices for publishing and connecting structured data on the Web. The key technologies that support Linked Data are URIs, HTTP and RDF. The RDF version of the geopolitical ontology is compliant with all Linked data principles to be included in the Linked Open Data cloud, as explained in the following. == Resolvable http:// URIs == Every resource in the OWL format of the FAO Geopolitical Ontology has a unique URI. Dereferenciation was implemented to allow for three different URIs to be assigned to each resource as follows: URI identifying the non-information resource Information resource with an RDF/XML representation Information resource with an HTML representation In addition the current URIs used for OWL format needed to be kept to allow for backwards compatibility for other systems that are using them. Therefore, the new URIs for the FAO Geopolitical Ontology in LOD were carefully created, using “Cool URIs for Semantic Web” and considering other good practices for URIs, such as DBpedia URIs. == New URIs == The URIs of the geopolitical ontology need to be permanent, consequently all transient information, such as year, version, or format was avoided in the definition of the URIs. The new URIs can be accessed For example, for the resource “Italy” the URIs are the following: http://www.fao.org/countryprofiles/geoinfo/geopolitical/resource/Italy identifies the non-information resource. http://www.fao.org/countryprofiles/geoinfo/geopolitical/data/Italy identifies the resource with an RDF/XML representation. http://www.fao.org/countryprofiles/geoinfo/geopolitical/page/Italy identifies the information resource with an HTML representation. In addition, “owl:sameAs” is used to map the new URIs to the OWL representation. == Dereferencing URIs == When a non-information resource is looked up without any specific representation format, then the server needs to redirect the request to information resource with an HTML representation. For example, to retrieve the resource “Italy”, which is a non-information resource, the server redirects to the HTML page of “Italy”. == At least 1000 triples in the datasets == The total number of triple statements in FAO Geopolitical Ontology is 22,495. At least 50 links to a dataset already in the current LOD Cloud: FAO Geopolitical Ontology has 195 links to DBpedia, which is already part of the LOD Cloud. == Access to the entire dataset == FAO Geopolitical Ontology provides the entire dataset as a RDF dump. The RDF version of the FAO Geopolitical Ontology has been already registered in CKAN and it was requested to add it into the LOD Cloud. == Example of use == The FAO Country Profiles is an information retrieval tool which groups the FAO's vast archive of information on its global activities in agriculture and rural development in one single area and catalogues it exclusively by country. The FAO Country Profiles system provides access to country-based heterogeneous data sources. By using the geopolitical ontology in the system, the following benefits are expected: Enhanced system functionality for content aggregation and synchronization from the multiple source repositories. Improved information access and browsing through comparison of data in neighbor countries and groups. Figure 3 shows a page in the FAO Country Profiles where the geopolitical ontology is described.

    Read more →
  • STUDENT

    STUDENT

    STUDENT is an early artificial intelligence program that solves algebra word problems. It is written in Lisp by Daniel G. Bobrow as his PhD thesis in 1964 (Bobrow 1964). It was designed to read and solve the kind of word problems found in high school algebra books. The program is often cited as an early accomplishment of AI in natural language processing. == Technical description == Within Project MAC at MIT, the STUDENT system was an early example of a question answering software, which uniquely involved natural language processing and symbolic programming. Other early attempts for solving algebra story problems were realized with 1960s hardware and software as well: for example, the Philips, Baseball and Synthex systems. STUDENT accepts an algebra story written in the English language as input, and generates a number as output. This is realized with a layered pipeline that consists of heuristics for pattern transformation. At first, sentences in English are converted into kernel sentences, which each contain a single piece of information. Next, the kernel sentences are converted into mathematical expressions. The knowledge base that supports the transformation contains 52 facts. STUDENT uses a rule-based system with logic inference. The rules are pre-programmed by the software developer and are able to parse natural language. More powerful techniques for natural language processing, such as machine learning, came into use later as hardware grew more capable, and gained popularity over simpler rule-based systems.

    Read more →
  • OpenCog

    OpenCog

    OpenCog is a project that aims to build an open source artificial intelligence framework. OpenCog Prime is an architecture for robot and virtual embodied cognition that defines a set of interacting components designed to give rise to human-equivalent artificial general intelligence (AGI) as an emergent phenomenon of the whole system. OpenCog Prime's design is primarily the work of Ben Goertzel while the OpenCog framework is intended as a generic framework for broad-based AGI research. Research utilizing OpenCog has been published in journals and presented at conferences and workshops including the annual Conference on Artificial General Intelligence. OpenCog is released under the terms of the GNU Affero General Public License. OpenCog is in use by more than 50 companies, including Huawei and Cisco. == Origin == OpenCog was originally based on the release in 2008 of the source code of the proprietary "Novamente Cognition Engine" (NCE) of Novamente LLC. The original NCE code is discussed in the PLN book (ref below). Ongoing development of OpenCog is supported by Artificial General Intelligence Research Institute (AGIRI), the Google Summer of Code project, Hanson Robotics, SingularityNET and others. == Components == OpenCog consists of: A graph database, dubbed the AtomSpace, that holds "atoms" (that is, terms, atomic formulas, sentences and relationships) together with their "values" (valuations or interpretations, which can be thought of as per-atom key-value databases). An example of a value would be a truth value. Atoms are globally unique, immutable and are indexed (searchable); values are fleeting and changeable. A collection of pre-defined atoms, termed Atomese, used for generic knowledge representation, such as conceptual graphs and semantic networks, as well as to represent and store the rules (in the sense of term rewriting) needed to manipulate such graphs. A collection of pre-defined atoms that encode a type subsystem, including type constructors and function types. These are used to specify the types of variables, terms and expressions, and are used to specify the structure of generic graphs containing variables. A collection of pre-defined atoms that encode both functional and imperative programming styles. These include the lambda abstraction for binding free variables into bound variables, as well as for performing beta reduction. A collection of pre-defined atoms that encode a satisfiability modulo theories solver, built in as a part of a generic graph query engine, for performing graph and hypergraph pattern matching (isomorphic subgraph discovery). This generalizes the idea of a structured query language (SQL) to the domain of generic graphical queries; it is an extended form of a graph query language. A generic rule engine, including a forward chainer and a backward chainer, that is able to chain together rules. The rules are exactly the graph queries of the graph query subsystem, and so the rule engine vaguely resembles a query planner. It is designed so as to allow different kinds of inference engines and reasoning systems to be implemented, such as Bayesian inference or fuzzy logic, or practical tasks, such as constraint solvers or motion planners. An attention allocation subsystem based on economic theory, termed ECAN. This subsystem is used to control the combinatorial explosion of search possibilities that are met during inference and chaining. An implementation of a probabilistic reasoning engine based on probabilistic logic networks. The current implementation uses the rule engine to chain together specific rules of logical inference (such as modus ponens), together with some very specific mathematical formulas assigning a probability and a confidence to each deduction. This subsystem can be thought of as a certain kind of proof assistant that works with a modified form of Bayesian inference. A probabilistic genetic program evolver called Meta-Optimizing Semantic Evolutionary Search, or MOSES. This is used to discover collections of short Atomese programs that accomplish tasks; these can be thought of as performing a kind of decision tree learning, resulting in a kind of decision forest, or rather, a generalization thereof. A natural language input system consisting of Link Grammar, and partly inspired by both Meaning-Text Theory as well as Dick Hudson's Word Grammar, which encodes semantic and syntactic relations in Atomese. A natural language generation system. An implementation of Psi-Theory for handling emotional states, drives and urges, dubbed OpenPsi. Interfaces to Hanson Robotics robots, including emotion modelling via OpenPsi. This includes the Loving AI project, used to demonstrate meditation techniques. == Organization and funding == In 2008, the Machine Intelligence Research Institute (MIRI), formerly called Singularity Institute for Artificial Intelligence (SIAI), sponsored several researchers and engineers. Many contributions from the open source community have been made since OpenCog's involvement in the Google Summer of Code in 2008 and 2009. Currently MIRI no longer supports OpenCog. OpenCog has received funding and support from several sources, including the Hong Kong government, Hong Kong Polytechnic University, the Jeffrey Epstein VI Foundation and Hanson Robotics. In 2013, OpenCog began providing AI solutions to Hanson Robotics, and in 2017, OpenCog became a founding member of SingularityNET. == Applications == Similar to other cognitive architectures, the main purpose is to create virtual humans, which are three dimensional avatar characters. The goal is to mimic behaviors like emotions, gestures and learning. For example, the emotion module in the software was only programmed because humans have emotions. Artificial General Intelligence can be realized if it simulates intelligence of humans. The self-description of the OpenCog project provides additional possible applications which are going into the direction of natural language processing and the simulation of a dog.

    Read more →
  • Kai's Power Tools

    Kai's Power Tools

    Kai's Power Tools (KPT) are a set of API plugins created by the German computer scientist Kai Krause in 1992 that were designed for use with Adobe Photoshop and Corel Photo-Paint. Kai's Power Tools were sold to Corel in 2000 when MetaCreations was closed. There are various versions of Kai's Power Tools. KPT 3, 5, 6, and X sets are compilations of different filters. The program interface features a reward-based function in which a bonus function is revealed as the user moves towards more complex aspects of the tool. == Filters == The KPT Convolver is a mathematics based filter; the level of precision and varying effects can be achieved by using numerical values of colour, tint, hue, saturation, contrast, brightness, luminosity, and posterize. The KPT Projector takes the current image or selection and offers a number of interactive perspective warp effects. To a large extent, with its draggable distortion handles and its moving, scaling and rotating options, this simply duplicates Adobe Photoshop's Free Transform capabilities. What is completely different is the ability to rotate the bitmap image in 3D space and to tile the results if desired. It can also animate the distortions by dragging keyframes from the preview window into an animation palette. KPT 6 will then preview the animation and output it to various sizes in avi or mov format. This animation capability is even more useful with the KPT Turbulence filter. This is another distortion filter, but one that treats the image as if it was completely liquid. The preview panel shows the animation in real time. The KPT Goo filter is used to produce a single frame freeform liquid distortion. This filter is available both with KPT 6 and the standalone version. It works by effectively turning a bitmap image into a liquid that can be interactively smeared, smudged, twirled, and pinched with the range of tools on offer. The obvious use is to distort photographic portraits into caricatures. KPT Materializer can create advanced surface textures based on bump maps that define troughs and peaks. It can use any external image for the basis of the bump map or alternatively the user can pick out the hue, saturation, luminance or red, green, or blue channel of the current image. It can then offset, scale and rotate the texture map, control its lighting, and even blend in a reflection map. The filter can be used for anything from providing an oil-painting feel to an entire image, to giving the illusion of depth to a selection. Also producing the impression of depth is the KPT Gel filter which uses various paint tools to synthesize photo-realistic 3D materials such as metals, liquids, or plastics. Gel painting is very different from traditional 2D painting as the brush strokes pool together when they touch and refract the underlying image. It can also manipulate 3D paint—once it has been added—by twirling, pinching, and carving it. The opposite is true of the Equalizer filter, which is used for applying variations on sharpening effects. The filter has three modes. The first mode, Equalizer, looks and works rather like the graphic equalizer on a stereo system, enabling adjustment of the level of pixel contrast within nine bands of different visual frequencies. The second mode, Contrast Sharpen, allows for increasing the contrast between light and dark areas in an image. The third mode, Bounded Sharpen, can sharpen an image without causing oversharpening, which can lead to halo effects. This feature is particularly useful when pulling out the detail in an image softened by resizing. KPT SceneBuilder is used for producing photorealistic 3D scenes by importing and rendering 3DS files. The main image window offers three tabs for editing in 2D and 3D mode and for setting up the object's final texture. Many users regard this filter as being the most impressive because it acts as a standalone 3D rendering tool and provides control over everything from transparency, reflection, refraction, bump mapping through to multiple light sources, and so on but without the ability to create or edit objects. The final filter, KPT SkyEffects, also has its roots in Metacreations' experience with 3D programs such as Bryce and RayDream. This filter is designed to simulate the interaction between the light from the sun or moon with no less than six atmospheric layers of haze, fog and cloud. The filter is typical of the KPT 6 collection as a whole: at times the interface is inspired and offers the ability to create beautiful reddening sunsets simply by interactively dragging the sun toward the horizon, producing realistic sunsets and moonscapes. == Other effects == Kai's Power Tools 6 features a lens flare effect for precisely managing the type of glow, halo, streaks, and reflection. The addition of a library of preset effects helps to overcome this by allowing the user to choose a standard effect and then interactively position the flare in the image preview. KPT 6 provides a new engine in the form of the KPT Reaction, which takes a reaction seed and turns it into a seamlessly tiling pattern based on a reaction diffusion process. It offers random noise, regular dots or reticulated voronoi patterns or a bitmap image itself as the seed. Corel has no plans for any updates.

    Read more →
  • Stewart Nelson

    Stewart Nelson

    Stewart Nelson is an American mathematician and programmer from The Bronx who co-founded Systems Concepts. == Biography == From a young age, Nelson was tinkering with electronics, aided and abetted by his father who was a physicist that had become an engineer. Stewart attended Poughkeepsie High School, graduating in the spring of 1963. From his first few days of High School, Stewart displayed his talents for hacking the international telephone trunk lines, along with an uncanny skill for picking combination locks, although this was always done as innocent entertainment. He simply loved the challenge of seeing how quickly he could accomplish this feat. His quirky sense of humor was always visible, as was his disdain for any rule that got in the way of his gaining knowledge. Stewart was an inspiration to the school's Tech-elec Club, as well as a ringleader in the founding of the school's pirate radio station. Nelson enrolled at MIT in 1963 and quickly became known for hooking up the AI Lab's PDP-1 (and later the PDP-6) to the telephone network, making him one of the first phreakers. Nelson later accomplished other feats like hard-wiring additional instructions into the PDP-1. Nelson was hired by Ed Fredkin's Information International Inc. at the urging of Marvin Minsky to work on PDP-7 programs at the MIT Computer Science and Artificial Intelligence Laboratory. Nelson was known as a brilliant software programmer. He was influential in LISP, the assembly instructions for the Digital Equipment Corporation PDP, and a number of other systems. The group of young hackers was known for working on systems after hours. One night, Nelson and others decided to rewire MIT's PDP-1 as a prank. Later, Margaret Hamilton tried to use the DEC-supplied DECAL assembler on the machine and it crashed repeatedly.

    Read more →
  • Liang Wenfeng

    Liang Wenfeng

    Liang Wenfeng (Chinese: 梁文锋; pinyin: Liáng Wénfēng; born 1985) is a Chinese entrepreneur and businessman who is the co-founder of the quantitative hedge fund High-Flyer, as well as the founder and CEO of its artificial intelligence company DeepSeek. Liang attended Zhejiang University, and began his career by applying machine learning methods to quantitative finance. Through High-Flyer, he built large-scale computing infrastructure that was later used to support artificial intelligence research, leading to the creation of DeepSeek in 2023. DeepSeek gained international attention following the release of DeepSeek-R1, which analysts described as demonstrating high-level performance with comparatively limited compute resources. In 2025, Liang was named to Time magazine's list of 100 Most Influential People in AI and Fortune's list of the Most Powerful People in Business. == Early life == Liang was born in 1985 in the village of Mililing (米历岭村), Qinba town (覃巴镇), Wuchuan city (吴川市), Guangdong. His parents were both primary school teachers. Liang was routinely praised by both locals and teachers alike. Even since middle school, Liang was recalled for being well-known for reading comic books, while also being very proficient in mathematics. == Education == After elementary school, Liang attended Wuchuan No. 1 Middle School. There, he quickly excelled in class and ranked highly amongst his peers. He taught himself high school and university-level mathematics courses. Liang then attended Wuchaun No. 1 High School. In these years, he developed hobbies of mathematical modeling and conducting research projects. Compared to his peers, he was always ranked highly. For every mathematics exam, he always ranked within the top three. He was also the top scorer in the Zhanjiang region of Guangdong for the college entrance exam. Thus, in 2002, Liang left high school early to further pursue his education at the university level at the young age of 17. Attending Zhejiang University at the age of 17, Liang earned a Bachelor of Engineering in Electronic Information Engineering in 2007 and his Master of Engineering in Information & Communication Engineering in 2010. His master's dissertation was titled "Study on Object Tracking Algorithm Based on Low-Cost PTZ camera" (基于低成本PTZ摄像机的目标跟踪算法研究). In his college years, DJI founder Wang Tao asked Liang to join as a co-founder. Liang declined the invitation to pursue artificial intelligence methodologies in financial markets. While he states that those around him had entrepreneurial mindsets, he himself valued academics. == Career == === Early career (2008–2016) === During the 2008 financial crisis, Liang formed a team with his classmates to accumulate data related to financial markets. He also led the team to explore quantitative trading using machine learning and other technologies. After his graduation, Liang moved to a cheap flat in Chengdu, Sichuan, where he experimented with ways to apply AI to various fields. These ventures failed, until he tried applying AI to finance. In 2013, Liang attempted to integrate artificial intelligence with quantitative trading and founded Hangzhou Yakebi Investment Management Co Ltd with Xu Jin, an alumnus of Zhejiang University. In 2015, they co-founded Hangzhou Huanfang Technology Co Ltd, which is today's Zhejiang Jiuzhang Asset Management Co Ltd. === High-Flyer (2016–2023) === In February 2016, Liang and two other engineering classmates co-founded Ningbo High-Flyer Quantitative Investment Management Partnership (Limited Partnership). The team relied on mathematics and AI to make investments. Much of the early startup culture was described by former employees to be "geeky" and "quirky," often seen as contrary to the existing culture in large Chinese tech companies. In 2019, Liang founded High-Flyer AI which was dedicated to research on AI algorithms and its basic applications. By this time, High-Flyer had over 10 billion yuan in assets under management. On 30 August 2019, Liang Wenfeng delivered a keynote speech entitled "The Future of Quantitative Investment in China from a Programmer's Perspective" at the Private Equity Golden Bull Award ceremony held by China Securities Journal, and sparked heated discussions. Liang stated that the criterion for determining what is quantitative or non-quantitative is whether the investment decision is made by quantitative methods or by people. Quantitative funds do not have portfolio managers making the decisions and instead are just servers. He also stated High-Flyer's mission is to improve the effectiveness of China's secondary market. In February 2021, Gregory Zuckerman's book The Man Who Solved the Market: How Jim Simons Launched the Quant Revolution was published. Liang wrote the preface for the Chinese edition of the book where he stated that whenever he encountered difficulties at work, he would think of Simons' words "There must be a way to model prices". In January 2025, Zuckerman wrote in The Wall Street Journal where he acknowledged this fact and stated he has been trying to get in touch with Liang but much like Simons, Liang is very secretive and difficult to contact. During 2021, Liang started buying thousands of Nvidia GPUs for his AI side project while running High-Flyer. Liang wanted to build something and it will be a game changer which his business partners thought was only possible from giants such as ByteDance and Alibaba Group. === DeepSeek (since 2023) === ==== DeepSeek begins ==== In May 2023, Liang announced High-Flyer would pursue the development of artificial general intelligence and launched DeepSeek. During that month in an interview with 36Kr, Liang stated that High-Flyer had acquired 10,000 Nvidia A100 GPUs before the US government imposed AI chip restrictions on China. That laid the foundation for DeepSeek to operate as an LLM developer. Liang also stated DeepSeek gets funding from High-Flyer. This was because when DeepSeek was founded, venture capital firms were reluctant in providing funding as it was unlikely that it would be able to generate an exit in a short period of time. Liang only personally holds 1% of the company, with 99% of the company being held by Ningbo High-Flyer Quantitative Investment Management Partnership (Limited Partnership). With DeepSeek's funding model, it lacks commercial pressure and rigid key performance indicators, enabling the company to deviate from previously established model architectures. ==== Early development ==== In July 2024, Liang was interviewed again by 36Kr. He stated that when DeepSeek-V2 was released and triggered an AI price war in China, it came as a huge surprise as the team did not expect pricing to be so sensitive. Liang's aggressive pricing of the language model forced domestic tech giants including Alibaba and Baidu to cut their own rates by over 95%. He also stated that as China's economy develops, it should gradually become a contributor instead of freeriding. What is lacking in China's innovation is not capital but a lack of confidence and knowledge on organizing talent into it. DeepSeek has not hired anyone particularly special and employees tend to be locally educated. When it comes to disruptive technologies, closed source approaches can only temporarily delay others in catching up. As the goal was long-term, DeepSeek sought employees who had ability and passion rather than experience. To retain a high talent density relative to larger firms like Bytedance or Baidu, DeepSeek aimed to maintain a low-hierarchy corporate culture, with members working in project-based groups, as well as competitive compensation. Liang emphasized his vision for DeepSeek employees to bring their "unique experience and ideas" instead of needing to be explicitly directed, with an overall bottom-up approach to division of labor. Liang noted that a significant outcome of this approach was the multi-head latent attention training architecture, which was attributed directly to a young DeepSeek researcher's personal interest. This advancement played a core role in reducing the cost of training the DeepSeek-V3 model, released in December 2024. ==== Release of DeepSeek-R1 ==== Also on 20 January 2025, DeepSeek, the company Liang founded and served as the CEO, released DeepSeek-R1, a 671-billion-parameter open-source reasoning AI model, alongside the publication of a detailed technical paper explaining its architecture and training methodology. The model was built using just 2,048 Nvidia H800 GPUs at a cost of $5.6 million, showcasing a resource-efficient approach that contrasted sharply with the billion-dollar budgets of Western competitors. The development of DeepSeek-R1 occurred amidst U.S. sanctions where Trump limited sales of Nvidia chips to China. By 27 January, DeepSeek surpassed ChatGPT to become the #1 free app on the United States iOS App Store. U.S. stocks plummeted, as more than $1 trillion was erased in market capitalization amid panic over DeepSeek. Technology journ

    Read more →